- Milyen okostelefont vegyek?
- Samsung Galaxy S23 Ultra - non plus ultra
- iPhone topik
- Xiaomi 15 - kicsi telefon nagy energiával
- Samsung Galaxy S21 FE 5G - utóirat
- Vivo X200 Pro - a kétszázát!
- Nem várt platformon a OnePlus Nord 5
- Megérkezett a Google Pixel 7 és 7 Pro
- Samsung Galaxy Watch5 Pro - kerek, de nem tekerek
- 45 wattos vezeték nélküli töltés jön az új iPhone-ba
-
Mobilarena
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
tvamos
nagyúr
Az IAR is jo! Sot, neha meg jobb is.
Szóval amíg a delay a legfőbb utasítás, addig kár is próbálkozni az ARM vonallal...
Miert? A foprogram megy delay-el, minden masra, amit pontosan kel idoziteni, ott a megszakitas. Kulso, timer, stb. En is szokok ilyen programot irni, ahol kvazi delay-ben var a proci.No mindegy is, nagyon kenyelmes a framework... de az IAR EWB + STM studo is nagyon faja! Imadom, hogy milyen jol lehet folyamatosan monitorozni a belso valtozokat. Meg ilyesmi... kar, hogy a melohelyen most a Freescale/NXP vonalat nyomjak.
-
zka67
őstag
válasz
Janos250 #2798 üzenetére
Szia, én is mindenkinek inkább az ARM vonalat ajánlanám, csak előnyei vannak neki az arduinohoz képest. És nem kicsik.
A legtöbb ARM proci 3.3V-ról működik, ahogy nagyon sok periféria is manapság, viszont a legtöbb lábuk 5V toleráns. Azaz magyarul szintillesztők nélkül lehet összekötni őket, szemben az arduinoval. (Az STM-nél figyelni kell, mert nem minden lába 5V toleráns, az NXP-nek viszont igen)
A sebességről meg ne is beszéljünk, lásd 8 bit vs. 32 bit, és 16MHz vs. 48-tól a csillagos égig.
A Keil fordítója meg olyan jó, hogy néha én is hanyatt esek tőle.
De ahhoz, hogy ARM procikat használjanak, el kellene szakadniuk az embereknek a delay használatától. A legtöbb gyártó minden procijához ad előre megírt könyvtárakat, külön-külön az összes, a prociban levő perifériájához, demóprogramokat, stb, stb... hogy amíg az emberek nem tanulják meg a perifériákat közvetlenül használni, addig se okozzon nekik gondot. (A közvetlenül alatt értem, hogy sok mindent jóval gyorsabban tud végrehajtani a proci, ha nem a könyvtár rutinokat használják, hanem direktben a perifériákat). Én nem vagyok híve annak, hogy megírunk egy programot úgy, hogy az bármelyik gyártó prociján fusson majd, és legfeljebb gyorsabb procit használunk. Úgysem fog, úgyis bele kell nyúlni a programba, akkor meg miért ne használjuk ki a lassabb proci képességeit maximálisan?
Az arduinoban is lehetne direktben használni ezeket a dolgokat, de itt még egyetlen egy hsz-ban se láttam ilyet. Még megszakítást sem, pedig az alapvető dolog a mikrokontrolleres világban.
Szóval amíg a delay a legfőbb utasítás, addig kár is próbálkozni az ARM vonallal...
Üdv.
Zoli -
Janos250
őstag
válasz
fpeter84 #2791 üzenetére
Sokáig a PIC-eket használtam, de ma inkább az Arduinot használom.
A PIC kétségtelen előnye, hogy rengeteg féle típus van, rengeteg periféria készlettel. A DIP tokozás előnye a próbapanelok könnyű alkalmazhatósága.
További előnye, hogy a cég által gyártott programok és leírások koherens egységet alkotnak. A fordítók elég jók, de - amikor utoljára használtam - a komolyabbak fizetősek voltak. Nagy sorozatú ipari célra, szerintem is mindenképpen előnyös.
Ezzel szemben az Arduino nyílt rendszer, rengeteg programot találsz rá ingyen, de bizony elég gyakran meg kell nézni a forráskódot, hogy biztonságosan használd. A koherencia álom. Még a beépített ledek címe sem állandó.
Előnye, hogy nagyon sok kész hardvert, kiegészítő panelt is lehet hozzá olcsón venni ebay-en. PIC-re ez nem áll.
Ha a kész panelen (Pl. UNO) bejátszod a programot, akár legyártott nyákba is ültethetsz ugyanolyan csipet, és működik. Előny, hogy minden láb ki van vezetve dugdosható csatlakozóra. Minden rajta van, a táp IC-től kezdve (ez persze gyengus) soros, vagy USB csatlakozásig.
Érdemes az UNO helyett más lapokat használni.
STM32F103C8T6-ARM-STM32-Minimum-System-Development-Board-Module-For-Arduino (850 Ft). Használom, tetszik:
Core: ARM 32 Cortex-M3 CPU. 72MHz work frequency. 64K flash memory, 20K SRAM. 2.0-3.6V power, I/O.
Nagyobb méretben 1400 Ft.
STM32 ARM Cortex-M3 Leaflabs Leaf Maple Mini Module for Arduino 1200Ft.
Ha WiFi is számításba jöhet, akkor ESP8266 (ESP12-E). "It's running at 80MHz 64KBytes of instruction RAM 96KBytes of data RAM 64KBytes boot ROM"
ESP12-E (670 Ft) Hozzá lapka 80 Ft Picike, és nagyszerű :-)
NodeMcu Lua ESP8266 CH340G ESP-12E Wireless WIFI Internet Development Board (1100 Ft)
Kiegészítő panel NodeMcu-hoz egy csomó csatlakozással (Pl. több GND csatlakozás) 1200Ft
OTA WeMos D1 CH340 WiFi Development Board ESP-12E ESP8266 For Arduino IDE (UNO "szerű" panelon) 2000 Ft
Ha több minden kell, pl nem csak ADC hanem DAC is:
STM32F103ZET6 144-PIN Core Development Board For Arduino 2500-5000 Ft.
(Ezt még nem próbáltam, úton van. 2600-ért vettem, de mások 4500 körül adják. Remélem tényleg be is jön)
MCU: STM32F103ZET6 (144pin) Core work at up to 72M frequency 512KB Flash and 64KB RAM -
fpeter84
senior tag
Nagy alkatrész áruházakban / ebayen / aliexpressen nem találtam értelmes áron, csak kész devboard-okat. Te találtál valahol, vagy free sample formájában jutottál hozzá? A TSSOP-vel az a bajom hogy házilag gyártott nyáknál addig a vezeték szélességig már nagyon problémás lemenni, valamint ha nincsen forrasztásgátló lakk akkor forrasztani is nehéz mert mindenhová bemászik az átok ón/forrasztópaszta és nehéz kivadászni. SOIC és TQFP már nem gond, de az alá nem szívesen megyek, csak minőségi gyártatott nyákkal...
-
fpeter84
senior tag
A DIP<>SMD konverter nagy, minek tennék egy 2.5x5cm-es pacát oda ahová elég egy 8-14 lábú apróság is? Mondom, van cél amire a balta jobb és van amire a véső
Nyilván a Texas féle LDC1000-re gondolsz - ugyan papíron létezik TSSOP tokozásban ami szintén elég szerencsétlen már, de normális forrást nem találtam ilyen tokozással csak a házilag gyakorlatilag kezelhetetlen WSON meg QFN-el, ezért kerestem saját megoldást rá... Ha csak 1-2-t szeretnék megépíteni akkor nyilván lehetne ügyeskedni és free sample-t kérni, de utánpótlás már nem lesz így belőle és az ilyen játékot sem szeretem mert előbb utóbb tényleg letiltják az országot a free sample lehetőségéről és akkor már azt se kapja meg az ember ami tényleg indokolt...
-
tvamos
nagyúr
válasz
fpeter84 #2791 üzenetére
Nem győztél meg. Én inkább ajánlok egy STM32-t annak, aki nem ragaszkodik az Arduino frameworkhöz. Az ebay-en is van egy rakat Cortex M3 alapú panel.
Ebay-ről gombokért van dip konverter.
Azt nem tudom, hogy te mit, honnan szerzel be. Én azt tapasztaltam, ha nem tudok elsétálni a cuccért, mindegy, hogy a szomszéd faluból, vagy az EU-ból akárhonnan jön a cumó.Induktivitás mérésre én a Texas új Induktivitás / digitális konvertert próbáltam tavaly, azt nagyon egyszerű használni. Az MSP430-at is imádom.
-
fpeter84
senior tag
Az olcsósága és itthoni könnyű beszerezhetősége és sok típus DIP tokozása szól a PIC-ek mellett, és az Arduino-k által használt procikhoz képest rengeteg opcionális periféria: belső opamp, komparátor, DAC, periheral pin select, belső drótozhatóság a modulok között, stb stb. A DIP tokozással könnyebb breadboard-ozni és a prototípus nyák gyártása (lézeres vasalós) is egyszerűbb feladat. Tudom hogy bizonyos cortex altípusoknak is vannak mindenféle hasznos extra perifériái, de sok smd láb, ha nyákon veszed akkor sokszorosába kerül ugyanaz és a minimális méretet is rendesen megdobja...
Most többek között egy olyan projekten dolgozok, hogy egy hajó trim lap hidraulikus munkahengereinek az induktív pozícióvisszajelzését valamint vezérlését szeretném megoldani. Az induktivitás kissé szélsőséges tartományokban mozog, bőven kilóg az átlagos L-meter projektekből, de azért csak sikerült jó kiindulási alapot találnom egy oszcillátor kapcsolásra, ami a 30-250 mH (nem uH!) tartományban is képes szépen rezgésbe jönni, és pár tized voltos 40-90KHz-es szinusz-szerű jel jön ki belőle. Ha ezt egy mezei arduino uno/nano-val szeretném feldolgozni, akkor az 1 tranzisztorból és pár passzív alkatrészből álló LC körhöz kell először egy komparátor, majd mivel a 90KHz apró elmozdulásaihoz a uC InputCapture-je nem elég ezért kell hozzá egy bináris osztó (74HC590), és mindez 2 csatornára minimum 3 nagyobb csipp plussz a körítésük, és még ez után jön a nano. Ha csak monitorozni szeretném, akkor mindez egyetlen 8 lábú PIC12F1840-essel megoldható, mert a belső komparátor muxolható a lábak között, a komparátornak belülről lehet a programozható DAC-ból negatív referenciát adni, a kimenetét belül át lehet kötni a számlálóba ami képes hardveres osztásra így már lehet vele precízen mérni is, 2 lábra mehet egy kvarc hogy minimalizáljuk a hőfüggőségét, és még marad 2 láb a soros kommunikációnak. Ha ez kevés, akkor a köv fokozat a 14 lábú PIC16F18323 ami még mindig nagyon apró nyákot jelent de sok plussz lábat ad a szivattyú és szelepek vezérlésére is...
Mindennek megvan a maga felhasználási területe... A baltával fát vágunk, a vésővel faragunk - bár lehetne fordítva is, de nem ideális
-
fpeter84
senior tag
válasz
Teasüti #2789 üzenetére
Az EEPROM használata irtó egyszerű: [link]
Azért arra figyelni kell vele kapcsolatban, hogy ~100e írási ciklust emleget a doksi - ez elég soknak tűnik első körben, de ha valaki mondjuk másodpercenként ír 1 adott byte-ot, akkor bő 1 nap üzemmel ki lehet végezni - tehát ezt elsősorban a ki/bekapcsoláskor, dinamikus paraméterváltoztatáskor illik írni, de nem állandó loggolásra használni pl...
-
Teasüti
nagyúr
válasz
fpeter84 #2788 üzenetére
A konstansokat az Arduino.org learning szekciója szerint egy progmem flag-gel kell bélyegezni, hogy a flash-be kerüljenek és ránézésre elég bonyolult behívni a ram-ba futás közben.
Ezt megoldhatták volna intuitívabban is... De van egy eeprom is, az még érdekes lehet adatot tárolni, majd arra kíváncsi leszek. Remélem egyszerűbb használni az idevonatkozó library-vel, mint a flash olvasós függvényeket!Az ám! Ram-ot üríteni hogy lehet? Mármint megszabadulni az ideiglenes adatoktól.
Valamint van-e bármilyen szerepe a globális és helyi változóknak? [Globális ami a setup() előtt deklarált és lokális ami a loop()-ban?]
Gondolok itt pl arra, hogy a ciklusban létrehozott változók törlődnek a ciklus végén?
Köszönöm! -
fpeter84
senior tag
válasz
Teasüti #2784 üzenetére
AREF: csökkenteni lehet vele az analóg mérés tartományát, ezáltal növelni a pontosságot. Alapból a 10bit, 1024 lépcsős felbontás kb 5mV-os felbontást ad, de ha mondjuk csak pár száz mV-ot szeretnél vele mérni akkor egy külső referenciával (akár feszosztó is lehet) beállítod 0.5V-ra az AREF-et, és 0.5mV-os felbontással számolhatsz... Okosabb típusoknál lehet akár külön AREF+ és AREF-, amivel még szűkebb tartományt is ki lehet jelölni a tápfesz és föld között tetszőlegesen...
A változók biztosan a RAM-ba, de már egy tök üres program is bekajál 9 byte-ot - ne kérdezd hogy mit tesz oda a fordító... De játszhatsz vele, és nézd hogy fordítás után milyen statisztikát ír rá az IDE... Valószínűleg van itt ott optimalizálási hibákból adódó pazarlás is, pl: ugye az alaphelyzet 9 byte használt
char x;
void setup() {
x = 1;
}
void loop() {
}ez 10 byte-ot eszik, de ha annak az x-nek ugyanezt az értéket már inicializáláskor is megadom, akkor meg 11 byte-ot ír, pedig elméletben ugyanarról változóról beszélünk - erre tud itt valaki magyarázatot adni?
char x = 1;
void setup() {
x = 1;
}
void loop() {
}A konstansok pedig elméletben a flash-be kerülnek, de most ahogy próbálgatom, 1 byte-al se nő ettől a program mérete...
const char y = 10;
char x = 1;
void setup() {
x = 1;
}
void loop() {
x = y;
} -
Teasüti
nagyúr
Uhm erre kérhetnék némi magyarázatot?
"The Uno has 6 analog inputs, labeled A0 through A5, each of which provide 10 bits of resolution (i.e. 1024 different values). By default they measure from ground to 5 volts, though is it possible to change the upper end of their range using the AREF pin and the analogReference() function."
Köszönöm!
-
Teasüti
nagyúr
-
v2_rider
tag
válasz
fpeter84 #2776 üzenetére
Az 1000hz-el csak hasra ütés szerűen mondtam valamit. Lehet, hogy csak 500hz lesz. Realtime kell mindenképp, de nem kellene hosszan pufferelni. 1, de max 2 sec szerintem. Igazából maga a projekt egy injektor szinkronizáló lenne. Ez annyiból áll, hogy van egy 1-5V-os analog vákuum mérő szenzor, az menne az analog bemenetre. Viszont ez a vákuum elég gyorsan változik. Ennek a változásnak a "görbéjét" szeretném megjeleníteni. Ha mondjuk 1500-as motor fordulatszámmal számolunk, akkor az másodpercenként 25-ször rajzol meg egy fel és lefutási görbét. Tehát akár 1 másodpercenként lehetne törölni a puffert nyugodtan.
-
tvamos
nagyúr
válasz
fpeter84 #2777 üzenetére
Nem kell... ha mondjuk veletlen generatort csinalsz...
(#2778) gyapo11 válasza fpeter84 (#2777) üzenetére
Ott a vedodioda, majdcsak megvedi.(#2776) fpeter84 válasza v2_rider (#2767) üzenetére
Nem tudom, hogy mit szeretsz azon a PIC-en, en inkabb egy Cortex M-et ajanlanek. Van Arduino is. Mondjuk a Teensy 3.2. Ha nem kell az Arduino, akkor ott vannak a STM32 Discovery board-ok. (En azt szeretem. Plane, ha ingyen kapom.)
-
gyapo11
őstag
válasz
fpeter84 #2777 üzenetére
Mivel a kérdésben a feszosztó egy analóg input bemenetre megy, a lebegésnek itt nincs értelme. 0-5 V között lebeghet. Vagyis nem az a baj, hogy lebeg, hanem az, hogy ha nincs ellenállás a föld felé, akkor 5 V fölé mehet a bemeneten a feszültség.
Mielőtt valaki élesben próbálgatná érdemes bevetni valamelyik áramkör szimulátort, olcsóbban megmutatja a dolgokat. -
fpeter84
senior tag
válasz
Teasüti #2769 üzenetére
Azthiszem zka67 foglalta össze legjobban a lebegő bemeneti láb problémáját: a lényeg hogy mindig határozott potenciálra kell húzni a digit bemenetet, különben érhetnek meglepetések és rejtélyes hibákkal fogsz küzdeni...
A feszosztóra is nehéz lenne az Ohm törvénynél, és az itt lévő rajznál és kalkulátornál egyszerűbb magyarázatot adni.
Próbáltam kitúrni a doksijából hogy mi a minimum feszültség az 1 jelszinthez illetve a maximum a 0-hoz, de sugárban hányok ezektől az ömlesztett doksiktól amiket összetákoltak az Atmelnél - a PIC-ek doksijai nagyságrendekkel rendezettebbek és átláthatóbbak
Mindenesetre 5V tápfesz esetén saccra 3V felett már biztosan 1, 1V alatt már biztosan 0 a digit beolvasás értéke... Szóval a feszosztót úgy kell méretezni, hogy az autó 12-14V-ja (és még biztonsági ráhagyás) 3-5V nagyságrendűre csökkenjen vissza - erre írtam a 100K / 33-47K párosokat példának. Áramot is lehetne számolgatni, doksiból turkálni, de ökölszabálynak szerintem jó az hogy 10-100K nagyságrenden maradva jól fog működni... Ennél aprólékosabban akkor érdemes vele foglalkozni, ha pl gombelemről kellene évekig elműködnie a kapcsolásnak
-
fpeter84
senior tag
válasz
v2_rider #2767 üzenetére
Mint tvamos kérdezte, fontos pont hogy realtime megjelenítést vagy bufferelést és utána tetszőleges megjelenítést szeretnél? Ha az utóbbi, akkor 1000Hz mintavételezés mellett milyen hosszan kellene felvenni? Ez se mindegy, mert ez a sebesség másodpercenként 2KB memóriát jelent 10-12 bites (tárolva akkor is 2 byte) ADC felbontás mellett... A Nano/Uno atmega328-nek 2, a Leonardo 32u4-nek 2.5, a mega2560-nak 8KB memóriája van "csak". A Due SAM3X8E ARM-ja más kategória, annak már 96KB RAM-ja van. Esetleg a PIC32-k között vannak még fél MB RAM-mal rendelkező típusok is...
-
tvamos
nagyúr
válasz
Teasüti #2769 üzenetére
Olyasmi, mint amikor az oszcilloszkóp probjának a végét megfogod az ujaddal ott lesz egy jel a levegôbôl. (Te vagy az antenna.)
A kimenetben van egy csomó tranzisztor. Azok akkot is ott vannak, ha bemenetnek konfigurálod. Mind szivárog kicsit. Nem tudod, hova áll be. Ez mind a hômérséklettel változik. Ráadásul, mind kondenzátor is, amiket töltöget, meg kisütöget. Tehát az idôvel minden változik, folyamatosan.De én még mindig azt mondom, érdemes ezt kipróbálni akkor, amikor van egy kis idô próbálgatni.
-
Teasüti
nagyúr
Köszönöm, a lehúzó ellenállás így már világos.
A feszosztó is kezd letisztulni; csak egy gondolat: a leágazás egyik szerepe a második ellenállással a közös GND volna? Az egyik projektnél láttam ilyet, ahol a motort egy 9V-os elem hajtotta és a negatív pólusát kellett összekötni a földdel. Bár magyarázat nem járt mellé, csak egy előírás, hogy több táp esetén ezt kell csinánié'. -
zka67
őstag
válasz
Teasüti #2770 üzenetére
Szia, azt hiszem a lényeget nem mondták el, és ezért nem érted a dolgot.
A manapság gyártott procikban MOS tranzisztorokat használnak. Ezek "térvezérlésű" tranzisztorok, azaz nem árammal, hanem feszültséggel vezérlik őket. A bemenetük a GATE, ami rendesen el van szigetelve a tranzisztor többi részétől, azaz kapacitást képez. Ez a kapacitás képes töltéseket összeszedni a "levegőből" is, ha nincs semmi a GATE-re kötve, és ha megfelelő mennyiség összegyűlt, akkor kinyithat a tranyó. Csak úgy, a "semmitől". Ezért kell valamelyik potenciálra kötni a "lógó" bemeneteket egy nagyobb értékű ellenállással. Azért használnak nagyobb értékűt, hogy ha aktiválod a bemeneteket, ne zabálja feleslegesen a tápot. Használhatnál pl. 100 ohmos ellenállásokat is, de több tíz bemenet esetén ha kiszámolod, akár amperes nagyságrend is lehetne a feleslegesen elfolyó áram. Túl nagy értéket (>1Mohm) sem szoktak használni, mert ha hosszabb vezeték megy a lábra, akkor az képes annyi töltést összeszedni, hogy még az ellenálláson keresztül is kinyit a tranyó. Ahogy valaki írta is, a 10kohm-os ellenállás tökéletes választás otthoni használatra, kísérletezésre.
Üdv.
Zoli -
Teasüti
nagyúr
De ha a kapcsoló nyitva van a bemenet előtt, akkor miért is lebeg? Nincs rajta semmi egy darab dróton kívül, max zajt szedhet össze azon a pár centin, nem?
Ha bármiféle bekötés nélkül beolvasok egy bemenetet, akkor is lebegni fog? A felhúzó és lehúzó különbsége gondolom csak annyi, hogy a földre vagy tápra van-e kötve az ellenállás túlsó vége.Hmm, ez segített kicsit a megértésben, köszönöm!
Az a task tiszta szégyen, mikor az egész letöltés pár sor javaszkriptben az XML tábla natív kiolvasásával mindenféle buta split helyett.
Mondjuk épp ezért az IDE kódolása egy kis könnyű olvasmány volt csak a projekt könyvben. -
Teasüti
nagyúr
válasz
Gergosz2 #2764 üzenetére
Fpeter84:
Olvastam a lebegésről, ez ugyanaz a jelenség, mikor a PWM kimenetre mérnek rá multival terhelés nélkül és mindig közel 5V-ot kapnak eredményül?
Feszosztó: az áramkör egésze nem egy [második ellenállásnak] felel meg az első után? Tehát ugyanaz az áram megy arra, mint ami a leágazás felé a tényleges második ellenálláson, vagy ez bullshit? Bár nem, mert csomóponti törvény... Szóval gondolom ti ránézésre tudjátok szimulálni fejben mi történik az áramkörben?Illetve analóg bemenetnél a map(x, 12, 0, 5, 0) elektronikai megfelelőjére volna szükség.
Tvamos:
A Kirchoff törvények lényege megvan, meg elvileg a potenciálkülönbségből eredő áramlási irányok is érthető, csak azután ránézek egy kapcsolási rajzra és wtf... -
v2_rider
tag
Sziasztok.
Szeretnék némi infót. A terv az lenne, hogy egy 1-5V analóg jelet kiadó szenzor jelét kellen feldolgozni. Ez a jel viszonylag gyorsan változik, mondjuk 1000 hz-es. LCD kijelzőn szeretném az idő és amplitudó diagramot megjeleníteni. Milyen cuccokat lenne érdemes rendelni? Nyilván az analóg szenzor az adott, csak a döbbi cuccra lennék kíváncsi. Előre is köszi. -
bacus
őstag
válasz
Teasüti #2762 üzenetére
pedig ez sem bonyolultabb mint a tasker
, az időjárás taskod évek óta használom.
A lényeg, egy digit bemenet ne tudjon lebegni, ezért vagy le kell kötni a földre, vagy fel 5V-ra. Így, ha máshonnan nincs semmi jel, akkor is van határozott bemenete. Ne feledd, itt nem jó a nem értelmezett tartományba engedni egy bemenetet.
Nézzünk egy lehúzó ellenállásos példát. Adott egy bemenet, amire egy gombbal kapcsolsz 5V-t.
Amikor lenyomod a gombot, a bemenet határozottan 5V lesz, hiszen a gomb egy rövid zár. De mi van, ha nem nyomod a gombot? Akkor "lóg" a levegőbe, és ki van téve sok mindennek (csernobiltól barátnő hisztije), és hol 1V lesz rajta, hol 4V, hol 0V. Olyan ez mint egy nem inicializált változó, aminek nem adsz értéket, lekérdezed, számolsz vele és nem várt viselkedést kapsz. Itt jön képbe a lehúzó ellenállás, egyszerűen a bemenetet lekötjük a földre. Azért kell az ellenállás, hiszen a gomb lenyomásával nem szeretnénk a tápot rövidre zárni. Ezen az ellenálláson gomb lenyomása alatt áram folyik, Ohm bácsi akinek azért elég széles körben ismert a törvénye meg is határozta az összefüggést, ami alapján számolható.
A gomb felengedett állapotában az ellenálláson nem folyik áram (amíg bemenetnek van deklarálva a láb, meg amíg belül van még a füst az ic-ben, mert ha már kiszabadult onnan, akkor ez nem feltétlen igaz)Egy szó mint száz, az ellenállás meghatározásához figyelembe kell venni, hogy mennyi áramot akarunk átfolyatni az ellenálláson, ezt bírnia kell a tápnak, a kapcsolónak, a vezetéknek, és persze az ellenállásnak is. Nem érdemes sem túl kicsire méretezni, sem túl nagyra. Ha nincs kedved számolni, akkor 5V nál használj 10KOhmost.
Azt, hogy mikor le, mikor felhúzó ellenállást kell alkalmazni, az függ, hogy mi legyen pl az alapértelmezett bemenet. Ha gomb nyomáskor 0V-t akarok, akkor felhúzó kell, alapértelmezett 1 lesz, mikor nem nyomod a gombot. Vannak alkatrészek, pl egy 3 lábú hőmérő ic, aminél megmondja a gyártó, hogy a digit lábat fel kell húzni 5V-ra, hogy működjön..
Az analóg bemenethez nem feltétlen kell le v. felhúzó ellenállás, ez függ attól amit rákötsz. Ott nincs nem értelmezett szint, de ott sem jó, ha nincs jel !
A feszültség osztóhoz minimum elő kell venni egy 8. osztályos fizika könyvet és átlapozni soros, párhuzamos, vegyes kapcsolás, eredő ellenállás. Röviden: Adott egy egyszerű soros áramkör, amire feszültséget kapcsolva, az áram megindul, átfolyik mindkét ellenálláson. Megint csak Ohm bácsi tv szerint számolható, hogy adott ellenálláson mekkora feszültségek lesznek, de a sorba kapcsolt ellenállásokon eső feszültségeket összeadva megkapod a rá kapcsolt feszültséget, mondhatjuk fordítva is, hogy a rá kapcsolt feszültség megoszlik az ellenállásokon.
Miért kell két ellenállás? Az egyszerűbb válasz, hogy nem kell minden esetben. Az áramkörödnek (annak a résznek amit így bekötsz) is lesz egy ellenállása, ha ezt ismered, akkor a másik ellenállást ehhez méretezve is lehet feszültséget osztani. Példa, az áramköröd (fekete doboz, nem tudjuk mi az) 10KOhm ellenállású, 6V-t szeretnél rákapcsolni a 9V-os elemről. 5KOhmot sorba kötsz, feszültség megoszlik, áram folyik, happység van, a 9V táp 15KOhmot kap, le tudja adni az áramot elég tartósan, nem melegszik, stb.Általában azonban nem így van ! Egyrészt nem tudod az ellenállást, másrészt pl egy arduino bemenete nem úgy működik mint egy rezisztiv rész, pl egy analóg bemenetre akarsz adni 2-3V-t (ezt akarod tudni, hogy mekkora, de nem akarod, hogy ott áram folyjon). A csak sorba kötsz egy ellenállást, akkor oda igen nagy ellenállást kell sorba köss, és ráadásnak maga a bemeneti fesz sem lesz stabil, stb.
A párhuzamos kapcsolásnál, ha a két ellenállás nem egy nagyságrendbe esik, akkor bár a feszültség esés ugyanakkora a nagyobbik ellenálláson nagyságrenddel kisebb áram folyik, ami azt jelenti, hogy ez többé kevésbé elhanyagolható. (100x aránynál ugye 1% lesz). Nos ebből kifolyólag a méretezésnél nem foglalkozol vele, tisztán rezisztiv alkatrészekkel méretezed a feszültség osztót, majd a bemenetre kötöd az így osztott feszültséget, ami azonnal beleszól mindenbe, de jó méretezésnél csak 1% eltérés lesz... -
fpeter84
senior tag
válasz
Teasüti #2762 üzenetére
Fel/lehúzó ellenállás: anélkül "lebeg" a láb amikor a kapcsoló nyitva van - nem garantálható hogy tényleg 0 vagy 1 lesz rajta, viszont egy pár K ellenállással biztosra lehet menni. Az ATMEGA328P doksijából ki kellene túrni hogy minden lába tudja e, de elvileg van olyanja hogy szoftverből bekapcsolható internal pull-up, tehát az adott láb biztosan logikai 1-re kerül, a kapcsolóval meg földre lehet húzni - így elkerülhető a plussz alkatrész. (kivéve a prell/bounce jelenség, de ez még ráér)
Feszosztó: a feszosztó az 2 ellenállás, 1-el csak áramot tudsz korlátozni, de az adott kötési mód a bejövő feszültséget is arányosan letöri. Most csak hasraütésből - ki kéne ezt is túrni a manual-ból - de úgy 2-3V-tól már biztosan logikai 1-nek tekinti olvasáskor a digit láb állapotát. Tehát ha mondjuk az autóból érkező 12-14V-os jelet szeretnéd detektálni, akkor R1=100K, R2=33-47K, akkor a lábra érkező jel biztonságosan mindig a 3-5V-os tartományba fog esni...
Közvetlenül egybként akkor sem illik összekötni 2 áramkört, ha egymástól független tápról mennek. Pl ha 2 arduino beszélget egymással sorosporton vagy akárhogy máshogy, akkor illik a lábak közé berakni egy-egy soros 1-10K ellenállást, különben ha egyik oldalt kikapcsolod, akkor a digit lábon keresztül próbálhat egy kis áramot szipkázni magának a másiktól. Elég bolondbiztosra tervezték ezeket a kontrollereket, leginkább csak jelentős túlfesszel lehet kárt okozni bennük, de ez nem boldogít ha a tiéd éppen mégis megsérül...
"Ilyenből szokott sokat tanulni az ember"
Na ja, amikor véletlenül követed el a hibát, és már napok óta szívsz vele hogy miért nem azt csinálja amit vársz tőle...
-
tvamos
nagyúr
válasz
Teasüti #2762 üzenetére
Ahhoz, hogy megértsem a lehúzó ellenállás létjogosultságát, ahhoz ismernem kéne a digitális áramkörök lelki világát?
A Kirchhoff-törvényeket kéne először!Tehát 5V -> kapcsoló/szenzor -> bemenet. Ez így miért nem jó? Vagy ha az 5V-ot ha közvetlen rádugom a bemenetre? Mi azzal a baj? Azt hinném mér rajta egy 5V-ot az ADC, aztán mindenki örül.
Ne hallgass senkire! Próbáld ki, és meglátod. -
Teasüti
nagyúr
válasz
fpeter84 #2759 üzenetére
Ahhoz, hogy megértsem a lehúzó ellenállás létjogosultságát, ahhoz ismernem kéne a digitális áramkörök lelki világát? Hiába kutakodok a neten, még nem leltem kielégítő válaszra, hogy tényleg megértsem. A működése se nagyon érthető, hogy lehúzza a földre, mert az "közelebb" van, meg hasonló magyarázatok. Meg a high/low inverz mibenléte...
Ugyanez a feszültségosztónál: miért kell tovább vinni a földre a második ellenállással az áramot? Ahelyett, hogy csak az első ellenállásom volna meg utána az alacsonyabb feszültségű áramkör, amibe be akarok csatlakozni.
Vagyis a leágazást nem értem a földre, ahelyett, hogy egyetlen ellenállással menne tovább elágazás nélkül.Meg a projektekben sem értem, hogy miért kell a mindenféle speciális ellenállás és kapcsoló után lehúzó ellenállás ahelyett, hogy közvetlen az analóg bemenetre kötnénk az 5V-ot? Tehát 5V -> kapcsoló/szenzor -> bemenet. Ez így miért nem jó? Vagy ha az 5V-ot ha közvetlen rádugom a bemenetre? Mi azzal a baj? Azt hinném mér rajta egy 5V-ot az ADC, aztán mindenki örül.
Köszönöm!
-
távcsőves
senior tag
Üdv mindenkinek!
Kérdésem lenne. Arduino UNO ISP használható lenne Atmel Studio programmal pl ATtiny13a-hoz kód feltöltésre? Vagy, ha Atmel Studio-t szeretnék használni mindenképp vennem kell programozót? Ha igen, melyik az ami szükséges? (Ár nagyon fontos, abszolút hobby célok. Ezért is kezdenek érdekelni ezek az apróságok, mert pl Arduino Pro mini is overkill az én kis projektjeimhez.) Szintén ehhez kapcsolódik még egy kérdésem, Atmel Studio-ban készített kód kisebb méretű-e, mint az Arduino IDE-vel készített kód?
Elnézést, ha nem jó helyre írtam, de nem találtam kimondott Atmel fórumot. Válaszokat előre is köszönöm!
-
fpeter84
senior tag
válasz
Teasüti #2758 üzenetére
A relét se ingyen adják, sőt!
Egyébként első nekifutásra ezeket találtam: [link], [link] - kínából nyilván olcsóbb, csak arra többet is kell várni
Nincsen egy elektronikai alkatrészbolt a közeledben? Úgyis kellhet még sokminden - ellenállások, kondik, ilyesmik - nem tudom mit kapsz a starter készletben...
Egyébként digitális bemenetnek az opto-s leválasztás a legegyszerűbb... [link] - ehhez már csak egy soros ellenállás kell a bemenő oldalra - kb 0.68-1K 12-14V mellett
szerk: az még lemaradt hogy kimenet esetén a reléből csak a legkisebbeket tudná meghajtani közvetlenül a uC lába, de oda is kell 1 schottky mert a tekercs hajlamos nagyfesz tüskéket generálni ami kiütheti az egész procit. Átlagos autós relét már nem is tudna behúzni, ahhoz mindenképpen kell az előzőekben linkelt N-MOSFET vagy tranzisztoros (a FET jobb, kevesebb a szivárgó áram, nagyobb a terhelhetősége, kevésbé melegszik) kapcsolás + schottky a relével párhuzamosan. Ilyen paneleket egyébként lehet kompletten is venni 1-2-4-8 relével - ezeken elvileg rajta van minden [link]
-
Teasüti
nagyúr
válasz
fpeter84 #2757 üzenetére
Még úgy se éri meg relézni a bemeneten, ha csak kapcsolónak kell? Teszem azt figyelni egy világító berendezés bekapcsolását. Ehhez mindegy, hogy lassú, vagy csattog. A drága meg relatív, mikor 4 db Schottky diódáért elkérnek több, mint egy fontot...
Ebay-en se filléresek sajnos. -
fpeter84
senior tag
válasz
Teasüti #2754 üzenetére
Szerintem ne relékben gondolkodj, nettó önszivatás - lassú, zizeghet (prell), csattog, fogyaszt, drága - félvezetőkkel sokkal egyszerűbb megoldani, de tényleg!
Kimenet: a fogyasztó pozitívja fixen a tápon (biztosíték persze kell valahová), a MOSFET pedig földre húzza és ezzel kapcsolja be
Ha egyéb félvezetős áramkört akarnál bekapcsolni arra nem feltétlenül használható, mert ha valami egyéb bekötésén keresztül kezd földelni az minimum parajelenséget okozhat, de akár tönkre is mehet. De LED/izzó/relé/motor stb stb ilyesmik kapcsolására ideális mert minimális a szivárgó áram, alig melegszik...
Digit és analóg bemenet: a kulcsszó a feszosztó! 2 ellenállás az egész, itt van egy kalkulátor hozzá... Ha autóról, vagy valami más külső jelforrásról van szó akkor ajánlott még 2 schottky-t is betervezni - ezek megeszik a túlfeszt, tüskéket...
Izolált digit bemenethez pedig opto:
A felhúzó ellenállás az arduinok bizonyos lábain el is hagyhatóak, mert van bekapcsolható belső felhúzó rajta...
-
Gergosz2
veterán
válasz
DrojDtroll #2752 üzenetére
Én úgy csináltam. Ha jött egy megszakítás, akkor növeltem egy változót , loopban pedig X ms elteltével fordulatszámot számoltam belőle.
-
Teasüti
nagyúr
válasz
Janos250 #2753 üzenetére
Köszönöm!
A kimenet egyszerű. A digitális bemenetre is relét tervezek (12V behúzza a relét, ami kapcsolja a deszka 5V és pin2-13 lábait), hacsak nem indokolja vmi a bonyolult megoldást (optocoupler és pár ellenállás).
Az analóg bemenetre nincs megoldásom még, azon hogy lehetne 0-1x Volt közti feszültséget mérni? -
Janos250
őstag
válasz
Teasüti #2733 üzenetére
Nem tudod csak úgy "felemelni". Nincs 12V-os mikrokontroller.
Helyette az Arduino lábával egy "villanykapcsolót" tudsz kapcsolni, ami be- illetve kikapcsolja a 12V-ot.
A "villanykapcsoló" relé, illetve FET.
FET-ből az IRL típusjelűek általában megfelelőek.
[link]
http://www.hqelektronika.hu/hu/category/tranzisztor_fet
Kulcsszó legyen IRL.
vagy ebay.
Reléből ebayen olyat is találsz, amit az Arduino tud kapcsolni.
Itt egy alapszintű leírás:
http://kkft.bme.hu/~johnny/Diplomamunka_OcskoSzabina_2011.pdf
30, 34. oldal
14, 18. ábra
Itt a PIC helyére gondolj Arduinot! -
tvamos
nagyúr
válasz
DrojDtroll #2748 üzenetére
Ha egy csatornán kezeled a felfutó éleket, akkor 400Hz. Ha mindkettőn mindkét élet, akkor 1600Hz. Én nem hiszem, hogy ez gond lehet. Megszakításból csinálnám...
-
Gergosz2
veterán
válasz
DrojDtroll #2748 üzenetére
Ilyet csináltam, de 600 pulse/rotation-os disk-el. Azt hiszem az 50-es volt, de négy motort kezelt egyszerre egy UNO. (PinChangInterrupttal lehet mókolni még, hogy ne csak két külső megszakítást kezeljen.)
Ez attól függ, hogy mit számoltatsz vele közben. Hajtásoknál gyakran szoktuk azt csinálni, hogy külön alapjelképzőt teszünk be, de ha csak egyszerűen fordulatszámot akarsz tartani vele akkor szerintem nem lesz gond.
-
tvamos
nagyúr
válasz
DrojDtroll #2746 üzenetére
Igen, használtam, de nem arduinoval. Annál sokkal komolyabb dologhoz kellett. Szóval az arduino framework integrációról gőzöm sincs. Mi a kérdés amúgy?
-
tvamos
nagyúr
válasz
DrojDtroll #2744 üzenetére
Biztos, hogy rotary encoderre gondolsz, vagy incremental encoder? Ez a lego robot prodzsekt?
-
DrojDtroll
veterán
Rotary enkódert használt már valaki?
-
fpeter84
senior tag
válasz
Teasüti #2740 üzenetére
ezekre a cuccokra rákeresve remek tutorialokat lehet találni netszerte, én nem félnék belevágni...
- arduino stepper motor ULN2003
- arduino 1602 LCD
- arduino IR remote receiver
...stb... egyébként ezt találtam hozzá: [link] továbbá a sparkfun, adafruit stb oldalakon érdemes nézelődni
szerk: de tényleg megveheted az eredetit is - nem akarok turkálni a zsebedben, ha neked nem fáj ekkora összeg akkor nyugodtan! csak ha én összeszámolnám hogy az utóbbi 7-8 évben hány ezer dollárt fizettem ki kína felé, és ha azokból mind eredeti/márkás/drága verziót vettem volna akkor hány tízezer $-ra rúgna, hát inkább már az ezrekbe se akarok belegondolni
-
fpeter84
senior tag
válasz
Teasüti #2738 üzenetére
Ha nem esik nehezedre ennyit kiadni akkor hajrá, hülyeségnek semmiképpen nem nevezem a kit-et mert tanulásra, indító rúgásnak tényleg lehet jó - csak én úgy viszonyítok, hogy abból a pénzből úgy 36db Uno-t küld a kínai
Azért nézz utána az Arduino oldalán, hogy mi is van abban a csomagban, és hasonlítsd össze ezzel: [link] - ha csak a könyv a különbség, akkor az nem biztos hogy megér +18e-et
-
Teasüti
nagyúr
válasz
fpeter84 #2737 üzenetére
Azt hiszem értem.
Viszont nagyon szimpatikus nekem ez a kezdő készlet, lehet akkor azt csinálom, hogy veszek mellé külön egy jobb felszereltségű vasat, hacsak nincs tipped véletlenül egy kezdő csomagra Due-val Uno helyett.
Nekem izgalmasnak tűnnek azok a jópofa kis tutorial-ok a sok kacattal. -
fpeter84
senior tag
válasz
Teasüti #2734 üzenetére
A szépséghibája az Uno-nak hogy ez az egyetlen sorosportja, és ezt használja a bootloader programfeltöltője is
(TXD)PD1
(RXD)PD0Amikor az IDE a segédcsipp TX lábán ad a proci bootloadere felé az RX lábára, akkor a külső passzív módon adó forrás - mint pl egy GPS vevő ami másodpercenként küldi magától az NMEA 0183 mondatokat - bezavarhat a programozásba, amikor pedig a proci bootloadere a TX lábán válaszolgat a segédcsipp RX-e felé, akkor azt meg fogja kapni a külső eszköz is, és bezavarhat annak a viselkedésébe. Ezt elkerülendő célszerű a külső eszközt minimum kikapcsolni, de esetleg le is húzni a vezetékeit. Macera, soros célra jobb egy olyan kontrollert használni aminek vagy több portja van (Mega2560), vagy natív USB-n megy a programozás (32U4 család) vagy mindkettő egyszerre (Due)...
Ha címezhető LEDsort használsz, akkor nincsen szükséged semmi kapcsoló áramkörre. Egyszerűen rácsatlakozol a buszrendszerére - a gyorsabb WS2801 ha jól láttam akkor SPI felületen, a lassabb WS2812 pedig tetszőleges szoftverből kapcsolgatott IO lábra megy, tehát egyik sem üti a sorosportot. Viszont több összekapcsolásánál, vagy ha pl mobilról elérhetőre szeretnéd megcsinálni - kékfog, wifi, stb ezekre is vannak pár dolláros kínai megoldások - akkor már szükség lehet arra is...
Többek között pl itt is jól látszik az Uno lábkiosztása: [link]
Az 1 vezetékes LEDsornak csak egy tetszőleges digit kimenet kell. A 2 vezetékes gyorsabb az SPI-re megy, ami az SCK/MOSI/MISO, de ebből csak 2-t használ, az órajelet meg az adat kimenetet, olvasni nem lehet őt sem -
Teasüti
nagyúr
Nekem nem ez a szakterületem, valószínűleg én nem tudom kifejezni magam rendesen. Próbálom több megközelítésből leírni, de úgy érzem elbeszélünk egymás mellett. Ettől függetlenül nagyra értékelem a segítséget, köszönöm!
A NeoPixel egyetlen Data pin-jére mivel kellene csatlakozni?
Ez nem csak egyirányú kommunikáció?Ahha, ok. Ez a cucc közönséges digitális kimenetre csatlakozik, abból meg van egy pár...
Akkor tárgytalan. -
Teasüti
nagyúr
válasz
fpeter84 #2732 üzenetére
Őőő amatőr kérdés: az Unon az RX és TX portok nem adat közvetítésre valók?
Nem a TX-et kell befogni a címezhető szalag vezérlésére?Szeretnék egy starter kit-et, hisz a mostani elektronikai ismereteim egy óvodás szintjén vannak (nos, volt elektro tárgyam a gépész szakon, de csak fizikai szinten, ami nem is érdekelt), szeretnék megismerkedni azokkal az alkatrészekkel, amik a csomagban vannak.
Meg végigmenni a könyvben lévő projekteken.
Ha ezen átrágom magam, utána lehet csak egy ujjgyakorlat lesz összerakni amit szeretnék. -
Teasüti
nagyúr
Miért nem tudom megértetni magam veled?
Unon van 6 analóg bemenet és 14 digitális ki- és bemenet ha jól látom.
Mindegyik 5V-os.
A cél, hogy az összes portot 12V-os feszültségre emeljem, a bemeneteket és kimeneteket is, mindegyiket a saját funkciójának megtartásával.
Hol írtam olyat, hogy 20 kimenet kell?
Nekem egy 12V-os Uno kéne, így ahogy írom, slussz. -
fpeter84
senior tag
válasz
Teasüti #2730 üzenetére
A csomagból a könyv nekem nem érne egy fillért sem - szerintem minden ilyen anyag elérhető online is. A többi dolog jópofa, de az Uno erősen alap cucc - pl egyik nagy fogyatékossága hogy csak 1 sorosportja van, ami egyben a programozó portja is, valamint a flash/RAM se sok, könnyű olyan lib-eket találni, amelyek kilógnak az erőforrásaiból. Természetesen van amire ez is elég, csak a 28e-et picit soknak érzem érte
A Mega2560-nak 4 sorosportja van amiből csak 1 osztozik a programozó funkcióval, az Atmega32U4-et használó Leonardo és Pro Micro-nak ugyan csak 1 sorosa van, viszont a programozó felület az USB-n megy így ez szabadon marad. Ráadásul az utóbbit könnyebb egy breadboard-ba belebökni és körbeépíteni...
Jól látom, hogy UK-ba rendelnéd? Ez helyben van, és a szett árából 13 darabot házhoz visz belőle Neked a postás
Eredeti vs kínai: egyrészt bizonyos típusok a tápjukban különböznek, másrészt van olyan aminél az eredetin egy USB-s atmel adja az USB>soros programozó illesztést, a kínaiakon meg általában a CH340g chip, de az utóbbi szerintem igen keveseknek okoz gondot. Pár egzotikus projektben ugyan láttam olyat pl hogy az eredeti UNO-n a segédcsippnek lecserélték a firmware-jét és befogták USB host/device célra, pl billentyűzet, egér, stb, de ez tényleg perverz megoldás, hiszen ott van a fenti 32U4 ami önmaga USB-s típus. Mostanra már az Androidos IDE is támogatja a CH340g-t, úgyhogy már tényleg nem tudom hol nem elég ez is. De a 32U4-en a natív USB miatt biztosan nem lehet probléma. Mellesleg a kínai többnyire nem "hamisítvány" mivel OpenSource - max akkor lehet hamisítványnak nevezni, ha minden felirat rajta azt állítja hogy eredeti Made in Italy...
Breadboard, LCD kijelző, minden van EU-n belülről is ha nem akarsz várogatni a még olcsóbb kínaira - érdemes az ebay.co.uk-on nézelődni (EU only szűréssel) valamint az eu.banggood.com -on is nagy a választék az Arduino SCM rovatban.
Ha egyesével címezhető RGB LED sort veszel (WS2801 gyors de drágább, WS2812 lassabban címezhető de olcsóbb) akkor nem is nagyon kell más hozzá mint az alap Arduino deszka - max azért érdemes breadboard-ot is beszerezni meg még ezt azt hogy legyenek gombjaid is a vezérléséhez, ne csak a soros konzolon utasíthasd. Illetve ha hosszabb a LED sor akár ajánlott egy tápegység beszerzése is, mert az USB-ből kinyerhető áram erősen limitált... Ez lehet akár egy normális mobiltöltő is - ehhez is lehet kapni pl Micro USB csatlakozó kivezetést, de lehet egy mezei 5.5/2.1-es hengeres végű csati is ha éppen ilyened akad otthon 5V-os.
-
tvamos
nagyúr
válasz
soldi3r #2729 üzenetére
Az eredetit meg kell fizetni! Legalább nem a hülye kínai usb-serial ic van rajta.
(#2726) Teasüti válasza gyapo11 (#2722) üzenetére
Miért csinálnának olyat? Az Unot eléggé meg kell erőszakolni, hogy 20 kimenete legyen. Oké, unalmamban, régen csináltam AVR-rel 128 csatornás matrix kijelzőt, ahol minden cdatorna PWM volt, de ez már felesleges! -
Teasüti
nagyúr
-
fpeter84
senior tag
A digit potis ötlet több sebből vérzik: egyrészt minek külső DC-DC konverter, ha a PWM-el akkor már saját DC-DC konvertert is lehet csinálni? Ennek mondjuk azért nincsen értelme, mert csak a feszültség szabályzása még nem elég a LED áramkorlátozásához, az áramot is mérni kell (sönt, műverősítő, stb), akkor meg ott az a sokkal egyszerűbb kapcsolás amit linkeltem, ami maga áramkorlátoz.
A másik probléma viszont közvetlenül technikai jellegű: a legtöbb digit potméter A-B-Wiper lábaira nem szabad nagyobb feszt kötni, mint a digit oldal tápfesze. Azért vannak kivételek, kerestem már ilyesmit és volt olyan ami függetlenül felmehet 20-30V-ig, viszont az valami házilag kezelhetetlen tokozásban létezett csak, talán QFN vagy BGA...
PWM vs. PWM: azért ne keverjük, mert itt többféle megoldás is felmerült... Egyrészt a LED fényerejét lehet úgy szabályozni, hogy ráadod a max áramot és ki/bekapcsolgatod nagyon gyorsan - amikor a kitöltési tényezővel játszol, attól lesz PWM. Viszont a kapcsüzemű tápok nem a fogyasztót (jelen esetben a LED) kapcsolgatják ki be a PWM-el, hanem az induktivitás/kondi páros segítségével indukálnak kisebb/nagyobb feszültséget mint a betáp
Autós integrálás, CAN busz: ugyan léteznek shield-ek pl MCP2515-el vagy SJA1000-el, de minek ilyen kívülről illesztett problémás dologgal szórakozni, ha ott van a Due-ben akár 2 CAN csatorna is? Tökéletesen működő lib-ek vannak hozzá, pont most dolgozok egy NMEA2000 (hajós) hálózatra csatlakozáson, és könnyedén át tudom verni az ilyen bemenettel rendelkező navi/kijelző egységet, el tudom vele hitetni hogy én vagyok a mélységmérő, motorvezérlő, stb... Autóban még nem próbálkoztam vele - az A6 C5-ösöm alapjában véve még nem CAN-lelkű, de bizonyos komfort cuccok már CAN buszon ülnek úgyhogy gondoltam rá hogy nézelődök majd kicsit ott is...
Sok PWM csatorna kérdése: ugyan mint említettem, a PIC-nek vannak olyan típusai amiben akár 30 PWM csatorna is akad, de ezekkel a típusokkal szerintem nem fogsz kész fejlesztőpanelt találni mint az Arduino-k, hanem saját nyákot kellene hozzá tervezni, ami nem kezdő projektnek való mert csalódás és kedv-vesztés lesz csak belőle. Viszont "hálózatba" is lehet fűzni 2-3 Arduino-t soros/SPI/I2C/tetszőleges buszrendszeren keresztül - nyilván ehhez saját protokollt kell álmodni, de szerintem ez a legegyszerűbb megoldás...
Szerintem vegyél valamilyen Arduino-t, egy breadboard-ot, egy kisebb LED sort, pár FET-et és egyéb alkatrészt és kezdj el ismerkedni ezzel a világgal először asztalon, és akkor még sok igény/ötlet merülhet fel benned. Aztán ha megy, akkor lehet vagy saját shield-et tervezni és gyártani/gyártatni, vagy prototípus nyákon összedrótozni az egészet... Kínából olcsóbb, EU-n belülről picit drágább de még mindig megfizethető, itthoni boltokból elég drága minden, de kétségtelenül ez a leggyorsabb beszerzési forrás... Szerintem tudunk segíteni összevadászni egy induló szettet, ha tudod hogy honnan vennéd...
-
gyapo11
őstag
Járműbe szerintem tranyóval/fettel egyszerű az illesztés. Ha 12 V-ot kell valamire rátenni, akkor egy npn és egy pnp tranyó meg két ellenállás, ha testre kell húzni, akkor meg elég egy npn esetleg darlington plusz egy ellenállás a bázisra. És ezek jók a 24 V-os járművekbe is.
-
Teasüti
nagyúr
Jah hogy jah! Ok, leesett.
(Technikailag az nem PWM vezérlés, vagy igen? Hisz a buck konverter feszültséget szabályoz.)
Viszont a címezhető led szalagokkal nem lesz szükség PWM vezérlésre, csak adatbuszra. Az Uno 6 PWM csatornája meg több mint elég az egyéb feladatokra.Így a továbbiakban a kérdésem az volna, hogy létezik-e olyan kész megoldás, amivel lényegében 12V-ra lehet illeszteni az összes portot? (Nem csak néhányat.)
-
Teasüti
nagyúr
-
Teasüti
nagyúr
Bevallom elég nehéz követni. Mire is kell a poti?
Szerk: jaah, értem. De én nem kézzel szeretném vezérelni a ledeket, effektezni szeretném.Keresgéltem I/O shield-et, de nem találok megközelítőleg sem olyat, ami kezel 12 voltot mindkét irányba.
Ha már jármű, akkor a szalagból is inkább 12V legyen, mivel más feladatot is szeretnék még adni a vezérlőnek.
Olyan nincs, ami az Uno összes kivezetését 12V-hoz illeszti (az se volna baj, ha tápot is adna)? Tehát a bemeneti és a kimeneti oldalon is.Laikusként kérdezem, sajnos nem elektronikai végzettségem van.
Keresgéltem az illesztésről és bemenetre találtam pár megoldást. Az egyik vmi optocoupler volt, ami leválasztja a nagyobb feszültségű kört a bemenetről.
Kérdésem az volna, hogy nem célszerűbb és egyszerűbb egy relét használni erre? Az is leválasztja az autó elektromos rendszerét, majd az Arduino saját lábait (5V, gnd, pin, etc.) kapcsolná a relé össze.Köszönöm!
-
Teasüti
nagyúr
válasz
fpeter84 #2710 üzenetére
Épp akartam írni mit fedeztem fel.
Ezzel már az Uno 6 csatornája is elég lehet.
A proci ha szóba került, az Arduino szoftvere nem tud véletlenül szimulálni? Futási sebességre esetleg? -
fpeter84
senior tag
válasz
Teasüti #2708 üzenetére
Hát a 30 csatorna már igen magas elvárás - ugyan a dsPIC családban látok olyat amiben van ennyi, de 144p TQFP tokozásban - nem lehetetlen beforrasztani jobb minőségű gyártatott nyákra kézzel, de lehet nem ezzel kellene kezdened
Akkor ha még semmit nem szereztél be, lehet érdemes más vonalon elindulni mint a rengeteg PWM csatornás forrás: keress rá hogy WS2812 led strip - ezek egyedileg pixelenként címezhető láncot alkotnak és cirka bármivel meg lehet hajtani - max a címzési sebességben számíthat hogy Nano/Uno vagy valami izmosabb procit választasz... Létezik belőle 5 és 12V verzió is - de az utóbbi nem tudom elviseli e a 14-et - lehet szerencsésebb az 5V-ost választani és egy jó hatásfokú kapcsüzemű tápról adni neki ezt.
Más hasonló vezérlőcsippes RGB láncok is léteznek, keresgélj kicsit ebben a témakörben hogy milyen alternatívák léteznek még...
@tvamos:
Nyilván a legprofibb megoldáshoz kell keresni egy PWM vezérelhető áramgenerátor cél-IC-t
szerk: egyébként én bátran ajánlom a filléres kínai arduino változatokat mert eddig csalódnom egyben sem kellett, max vannak apró módosításokból származó korlátaik (esetleg előnyeik is) amivel jó tisztában lenni. Az alap Due-k eddigi tapasztalataim alapján 100% azonos klónok, és azért nem teljesen mindegy hogy 50$ az eredeti, vagy 12$ free shipping az Aliexpress-ről
-
Teasüti
nagyúr
válasz
fpeter84 #2705 üzenetére
Még egy se, csak most szeretnék belevágni az egész műfajba. Maplin-ben láttam először egy Uno személyében, gondolom ott nem gagyit árulnak.
Szóval van benne buck converter a tápnak, de a be- és kimenetre gondolom ne küldjek 12 voltot... Igen, készre szerelt áram korlátolt rgb led szalagokat szeretnék működtetni, színenként külön csatorna ha jól sejtem, szóval jól jönne úgy kb 30 csatorna, hogy könnyű dolgom legyen megtanulni a C++-t... -
fpeter84
senior tag
Igen, a szürke téglalapban lévő nélkül (de ott se látok olyat ami kérdéses lehetne), fix módban használtam már több LED COB modulhoz is - a FET típusát most így nem tudom mit használtam hozzá, a lényeg hogy az RDS(on) ellenállás értéke minél kisebb legyen, annál kevésbé fog melegedni...
-
fpeter84
senior tag
válasz
Teasüti #2704 üzenetére
Egyben nem rémlik ilyen megoldás...
Melyik Arduino-d van és kínai vagy eredeti? Az eredeti Uno (MC33269) és Mega2560 (NCP1117) LDO-ja papíron absolute max rating 20V, a Nano (UA78M05) pedig 35V, tehát rákötheted az autó hálózatára. A kínai Uno/Mega/Due mind olyan gagyi (AMS)1117-es LDO-t kapnak ami még a bő 12V-tól is néha elfüstöl, az autóban órák/napok kérdése csak a döglés - gyakorlati tapasztalat. A Due eredeti és kínai másolata egy és ugyanaz (a legtöbb, ellenőrizni nem árt azért) és egy LM2734 DC-DC step-down van rajta ami 20V-ig küldhető terhelhető...
Ha olyan kínai Arduino-d van amit nem köthetsz direktben a 14V-ra, akkor pl: [link]
PWM csatornából mennyire lenne szükséged? A Due-nak pl alapból is 12 csatornája van címkézve, de alternatív lábakon még további 4-5 csatorna elérhető. Ilyen shield persze nem lesz hozzá, lehet kénytelen leszel forrasztgatni kicsit - prototípus nyák, FET, ellenállások, tranzisztor...
Milyen LED-eket szeretnél meghajtani? Natúr LED, vagy kész szalag/modul amiben van áramkorlátozó ellenállás is? Utóbbi lehet problémás, mert ha nagyon ki van centizve az árama akkor 12V-on lehet jó, de a 14V már megölheti... Ha bízol az áramkorlátjában akkor egyszerűbb megoldással is rá lehet adni a tápot (esetleg még plusszban sorbakötni adott méretezésű ellenállást):
Ha biztosra akarsz menni, akkor áramkorlátozós PWM meghajtás:
Az utóbbinál az R2 méretezését majd matekozni kell, hogy jól legyen beállítva a maximális áram, itt írják le az elméletét... Ez a kör nem engedi megfutni az áramfelvételét és PWM-el kapcsolgatható is (a szürke rész egyébként el is hagyható, akkor csak fixen áramkorlátoz vezérlés nélkül)...
-
Teasüti
nagyúr
Sziasztok!
Ismertek olyan shield-et, amivel járművek 12-14,4 voltos rendszerére lehet közvetlenül kapcsolni az Arduino-t (táppal együtt)? 12V led szalagokat szeretnék vezérelni PWM-el.
(Meg egyéb világításokat.)
Tehát ilyen feszültségű input és output kellene, a kimenetnek el kéne bírnia egy-két ampert.
Extrának ha esetleg még bővítené a PWM csatornák számát, az volna a tökéletes 2in1 számomra.Analfabéta vagyok a témában - ez lesz az első mikrovezérlős projektem - így jó volna egy out-of-the-box kész megoldás.
Köszönöm! -
DrojDtroll
veterán
Valakinek ilyen kettő vagy négy oldalú karja nincs kis szervóhoz?
Új hozzászólás Aktív témák
Hirdetés
- HP Elitebook 840 G3 laptop (15,6FHD/I5-G8/8GB/256SSD/Magyar/Win11)
- AMD Ryzen 5 5500 - GTX 1080Ti 11Gb - MSI B450 Max
- HP Zbook 15 G3 laptop (15,6FHD/I7-G6/16GB/256SSD/AMD2GB/MagyarVilágítós/Win11)
- Apple iPhone 13 128GB, Kártyafüggetlen, 1 Év Garanciával
- Apple iPhone 13 Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
- DELL PowerEdge R730xd 12LFF rack szerver - 2xE5-2680v3,64GB RAM,4x1GbE,H330 RAID v ZFS
- Csere-Beszámítás! AMD Számítógép PC Játékra! R5 5500 / RX 5700XT / 32GB DDR4 / 256SSD+1TB HDD
- TELJES KÖRŰ IT BESZERZÉS
- DDR5 16GB 8GB 32GB 4800MHz 5600MHz RAM Több db
- Samsung Galaxy S23 128GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: PC Trade Systems Kft.
Város: Szeged