-
IT café
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
-
nessh
tag
Sziasztok,
Szeretném megépíteni ezt:
https://ucexperiment.wordpress.com/2019/08/21/arduino-bbq-fan-temperature-controller/Mennyire lenne macerás ha a kijelzőt le akarnám cserélni 2sorosra ami mutatja a jelenlegi és a cél hőmérsékletet is?
(élőben még csak nem is láttam arduino-t, programozni nem tudok )Előre is köszi!
-
weiss
addikt
Na jó, de én LCD-t mondtam, képen meg LED van De igazad van, figyelmetlen voltam, mert látom, hogy ez ilyen libes 7 szegmenses, nem a kódból írja ki a számokat rá. Másik .h fájlt include-olsz, picit átírod a displayTemp függvényt, és kész is.
I did nothing, the pavement was his enemy!
-
nessh
tag
Jaj az LCD nem tűnt fel bocs, jogos.
Huh, asszem optimista voltam, szerintem maradok az eredeti setupnál
Annyit még légyszi mondjatok meg hogy, ez a gomb jó lehet-e a projekthez:
https://www.ebay.com/itm/KEYESTUDIO-Momentary-Push-Button-Switch-Module-for-Arduino-DIY-Project/132730793806?hash=item1ee75f2f4e:g:14AAAOSwbrRbZSAU[ Szerkesztve ]
-
nagyúr
Azt értettem én, hogy két soros kijelzőt kérdeztél
Csak én abból indultam ki, hogy ebből a fajta ledes kijelzőből még nem láttam két sorosat, ehelyett pedig egy akár egy 2x16-os, akár egy grafikus, akár egy oled kijelző szerintem csökkentené a funkcionalitását az eszköznek, a láthatóságát tekintve. Szoftveresen pedig a két egyforma kijelző szerintem kevesebb módosítást igényel, mintha a meglévő kiírást akarnánk adaptálni egy nagyobb kijelzőre.
Az, ha felváltva mutatná a jelenlegi és a cél hőmérsékletet, se kívánna több változtatást szoftveresen (én ezt választanám, ha nekem készülne a dolog, sőt, én úgy csinálnám, hogy gombnyomásra írja ki a beállított hőfokot, mondjuk 2mp-ig, meg módosítás közben, utána csak a valódi hőfokot jelezze kia kódot megnézve pont ezt csinálja, 5mp-ig mutatja a beállított hőmérsékletet, utána pedig a valódi hőmérsékletet mutatja ).
Ha döntöttél a hardverről, írj be ide és segítünk a szoftver részében.[ Szerkesztve ]
-
gyapo11
őstag
Megvenni hozzá mindent könnyű. Van esély rá, hogy egy valahonnan letöltött kóddal működik is. De van esély arra is, hogy nem fog működni, és akkor meg vagy lőve, meg az is valószínű, hogy változtatni akarsz valamit a letöltött kódon, mint ezzel a kétsoros kijelzéssel, és akkor megint meg vagy lőve. Szóval én azt mondanám, hogy az arduino inkább azoknak fekszik, akik kicsit programozni is tudnak, kicsit az elektronikához is értenek.
De ne add föl, csak legyen türelmed ha valami gubanc van.menyország -> mennyország, akadáj -> akadály, jótálás -> jótállás, Iphoneal > Iphone-nal, kisuly > kisujj, csővet > csövet
-
nessh
tag
"a kódot megnézve pont ezt csinálja, 5mp-ig mutatja a beállított hőmérsékletet, utána pedig a valódi hőmérsékletet mutatja"
upsz"Ha döntöttél a hardverről, írj be ide és segítünk a szoftver részében"
Akkor sztem most marad az eredeti setup és kapásból rendelek 2 soros kijelzőt. Ha működik az eredeti akkor jön a kijelző csere -
nessh
tag
Fura amúgy mert a ahol a projekt leírása van ott a képen lévő gomb olyan mint a 4 lábasok, de a "connection matrixban" az látszik hogy 3 lábat kötött be...
Ez is jó lehet?
https://www.ebay.com/itm/10Pcs-Tactile-Push-Button-Switch-Tact-Switch-for-Arduino-12V-4P-DIP-6mmx6mmx5mm-/193011379814?_trksid=p2349624.m46890.l49292 -
-
nagyúr
Háh! Ugyeugye?
Sima ügy, UNO helyett eleve egy ESP8266-t vagy ESP32-t vegyél (pl. wemos, ttgo vagy lolin), a kód erre is le fog fordulni, csak a digitális kimeneteket kell megváltoztatni.
A webes részt meg később megírod.u.i.: legközelebb, ha linkelsz valamit, légyszi használd a szövegszerkesztő alatt a "link beszúrása" gombot, hogy a link kattintható legyen.
[ Szerkesztve ]
-
Janos250
őstag
Véletlenül botlottam bele, hogy valaki az Arduino (nagybetűs) String-re is megcsinálta a StringStream osztályt.
https://gist.github.com/arcao/3252bb6e5e52493f03726ec32e61395c
Használta már valaki? Mi a tapasztalat vele? Lehet rendesen használni, ha pl. csinálunk vele egy virtuális soros portot, amire felteszünk valami szöveget, ha valami szenzor, vagy hasonló (pl. GPS) kezelő programját akarjuk kipróbálni? Valami többsoros String-et mintaadatokkal felteszünk rá, és azt olvastatjuk a programmal?
Használta már valaki. Az ESP32-n persze van rendes stringstream, de azt nem tudtam, hogy StringStream is van. Ott jól jön ilyen virtuális soros port gyártásra, vagy más FIFO objektum létrehozására.Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
nagyúr
Tényleg kisebb. És olcsóbb is. Például ez itt: [link]
Valójában az UNO az, ami indokolatlanul nagy, de a mikrokontroller, ami benne van, azon is picike, csak az egyéb alkatrészek miatt (usb-uart chip, feszültség regulátor, stb) olyan nagy a lap. De az főleg oktatási célból készült. Sokkal kisebb tőle az arduino nano, ugyanarra a mikrokontrollerre (ATmega328P) épül, azonos lábkiosztással. -
Janos250
őstag
Nekem is éppen most is ez van bedugva az USB-n a PC-be
Bangoodról drágább a szállítás, de viszonylag gyorsan itt van. Alin olcsóbb, de néha két hónap múlva is csak várja az ember, hogy mikor jön már meg.[ Szerkesztve ]
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
Én utoljára ezt vettem, bár akkor éppen 5 $ volt, most drágább.
UK-ból 1-2 hét alatt itt van.
https://www.banggood.com/Geekcreit-ESP32-WiFi+bluetooth-Development-Board-Ultra-Low-Power-Consumption-Dual-Cores-Pins-Unsoldered-p-1214159.html?cur_warehouse=UKAz amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
nessh
tag
Na rendeltem egy kezdő kitet, hozzá többi cuccot ami kell a projekthez és a későbbi upgradehez rendeltem egy kijelzős esp32-t.
Előbb megycsinálom az alapot, utána megpróbálom sorban fejlesztgetni.[ Szerkesztve ]
-
repvez
addikt
oké és ha bekötöm igy a GPS-t akkor utána hogy áll vissza za eredeti állapotra vagy , hogy tudom használni, hogy normális adatokat kapjak?
Meg mi a különbség ha 10k ohmos és 120 ohmos ellenállásokat teszek és akkozött amit
János250 irt, hogy 10kohmos és annak a felét ami gyakorlatikag a 4.7kohm lenne. -
KoVee84
senior tag
Sziasztok!
Segítsetek nekem lsz, mert első projektemre készülök és nulláról indulok.
Szeretnék egy e-ink kijelzős képkeretet készíteni, ami hetente más-más szöveget jelenít meg (hasonlót, mint ezen a videón, de nekem elég a fekete fehér).Aztán közben találtam egy ilyet: Lilygo T5
Jól gondolom, hogy ez egy minden az egyben eszköz, tehát áramot adok neki vagy 18650-es akku bele és működni fog?Kösz előre is
-
nagyúr
válasz repvez #14435 üzenetére
Janos250 feszültségosztót javasolt, a GPS RX lábára, ami az arduino 5V-os kimenő jelét alakítja 3,3V-ra, így védi a GPS modult a túlfeszültségtől.
Amit én írtam, az felfelé húzza a GPS kimenő 3V-os jelét a TX lábon, 5V-ra, hogy az arduino tudja értelmezni, mert neki valószínűleg kevés a 3V ahhoz, hogy magas értéknek értelmezze, vagy pont elég, de egy kis külső zavar elég, hogy elrontsa a kommunikációt. A 10k felhúzza a vonalat 5V-ra, a 120Ω pedig védi a portot a visszafelé folyó áramtól.
A kétféle ellenállás kombinációt nem ugyanúgy kell bekötni!
Amit én írtam, nem elegáns/hivatalos/végleges megoldás, csak egyfajta dirty hack, hogy kiderüljön, az alacsony jelszint okozza-e a kommunikációs problémát, vagy más. Hivatalosan használhatsz helyette például CD4050 szintillesztő ic-t, de mivel ellenállás van otthon, gondoltam a teszthez elég lesz ez is.[ Szerkesztve ]
-
repvez
addikt
na összeraktam a kapcsolást, de még mielött rátenném a panelre biztosra akarok menni, hogy ez igy jo:
[link]
A piros vezeték az 5V, abba a 10k ellenállás a másik vége a fehér arduino RX És a 100 ohm-ba kapcsolodik +20ohm ellenállás megy a fekete GPS TX-hez.
A föld meg direkten -
Janos250
őstag
Belekotortam GPS-es dobozomba, és kiderült, van benne 3 db. M8N GPS, amit még soha nem használtam.
Tilos feltenni olyan kérdést, amiben a "minek" substring szerepel. Elég nekem egy személy is, aki felteszi ezeket a kérdéseket.
Nem ugyanaz a panel, ami repveznek van, de ugyanaz a chip.
Ilyenből az M8N:
https://www.aliexpress.com/item/32971264096.html
Nosza, rátettem egy Arduinora némi forrasztgatás után.
Elindítottam azt a programot, amit neki is javasoltunk, ami semmit nem csinál, csak a GPS-ről jövő adatsort kiírja. Szépen működik, alapbeállítás 9600 baud, és csak a szövegesen értelmezhető mondatok jönnek, azok a binárisak, amik neki jöttek mellette azok nem jönnek alapállapotban. Megnéztem a leírást, van olyan beállítás, hogy "vegyesen" jönnek a bináris és a text adatok, ahogy neki. Ebből az látszik, hogy jó a GPS-e, csak úgy van beállítva, hogy minkét típust küldi. Na akkor próbáljuk ki egy könyvtári programmal: file/példák/u-blox GNSS/Low Power Elindul, de kiírja, hogy "Failed to initialize GNSS module". Azóta semmi életjelet nem ad. Belenéztem a programba: azzal kezdi, hogy feltölt mindenféle átállításokat a GPS-re, majd tesz, vesz, és ha neki nem tetszik a dolog, kiírja ezt a hibaüzenetet az átállítgatások UTÁN. Nagyszerű, akkor nézzük az u-blox hivatalos u-center programját. Nem látja, akárhogy próbálgatom. Hát, akkor próbáljunk egy firmware frissítést, mert azok után alapállapotban szokás indulni. Úgy tűnik felmegy, de ugyanúgy nem csinál semmit. Akkor hardware reset. Van rajta egy ilyen láb. A helyzet változatlan.
Szóval az u-blox chip nincs felkészítve arra, hogy ha neki nem tetsző adatot kap, vissza lehessen állítani alapállapotba, és az Arduino program sincs arra felkészítve, hogy ne azzal kezdje, hogy mindenfélét átállítgat. Tehát csak óvatosan ezekkel a könyvtári programokkal, bár az évek során - ezen kívül - soha nem tapasztaltam olyat, hogy egy program elcseszte volna a chipet.
Majd próbálkozok másikkal, de egyelőre hagyom.[ Szerkesztve ]
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz repvez #14441 üzenetére
Felesleges. Amit próbáltam, összehasonlítottam az általad képen megadottakkal. Tökéletesen egyezik. A gond nem az, hogy az Arduino rosszul értelmezné az adatot, hanem jön a bináris adat is.
Azt a programot ne használd, ami nálam zűrt okozott!
Bár lehet, hogy véletlen volt.Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
repvez
addikt
válasz Janos250 #14443 üzenetére
És akkor mi a konkluzio, lehet használni directen 5V-ra kötve ahogy a példa videokba mutatják, hogy semmi ellenállás csak a 4 vezeték az 5V, GND és a Tx,RX és igy jó?
ÉS az miért van, hogy az összes videoban mindenki a RX-et a GPS RX lábára a TX-et a GPS Tx lárára teszi és müködik?
És sehol máshol nem emlitették, csak a linkelt videonál, hogy a program feltöltésekor ne legyen bedugva a TX,RX láb.
Ha müködik a GPS, akkort csak a programot kell ugy megirni, hogy kiválogassa a szugséges dolgokat és a bináris kodot meg figyelmen kivul hagyja?
És ezekszerint az én chipen a 115200as baudra van állitva vagy már ez is a átállitás miatt van? -
Janos250
őstag
válasz repvez #14444 üzenetére
A GPS Tx lábát közvetlenül lehet kötni az Arduino Rx lábára. Amint a korábban küldött ábrád tapasztalata mutatja, nem hibázik. Ez legfeljebb azt okozhatná, hogy hibásan olvas, de el nem ront semmit.
A GPS Rx lába már problémásabb, bár valaki írta, hogy neki nem okozott zűrt. De ez az összekötés csak akkor kell, ha nem csak olvasol, hanem át is akarod állítani a GPS-t, ami ugyebár lehet bonyás. A feltöltés alatt azért nem lehet rátenni a GPS-t, mert te így az Arduinonak azt a soros (UART) portját használod, amit a feltöltésnél is használ. Ha a softwareserial soros portot használod, akkor nem kell széthúzni feltöltésnél. Nyugodtan próbálgathatod azt is, ha a GPS Rx portjára nincs kötve semmi, nem lehet zűr, mert akkor csak olvas róla, nem tud rá tölteni, nem tudja átállítani.
Miért keresztbe a lábakat?
Mert a szabályos az, ha a KIMENETI csatlakozót Tx-el (transmit), a BEMENETIT meg Rx-el (receive) jelöljük mindkét oldalon, tehát ami a GPS-en kimenet (Tx) az megy az Arduino bemeneti (Rx) lábára. Lehet, hogy van olyan panel, ahol nem szabályosan van feliratozva. Ha a korábbi pici programban a Serial helyett software serialt írsz, próbálgathatod, akkor nem kell lehúzni feltöltéskor, mert akkor az
Arduino másik lábára teszed, mert egy másik soros portot használsz a program feltöltésre, és másikat a GPS jelének olvasására.
Zűrt kizárólag akkor tudsz csinálni, ha az Arduino kimeneti (Tx) lábát is összekötöd a GPS-el, mert akkor küldesz is rá adatokat, amik átírhatják a beállításait. Ahhoz, hogy a bináris adatokat ne küldje, ahhoz át kellene írni, de elég bonyolult, mert binárisan összerakott adatsort kell rá kiküldeni, és azt - mint látjuk - ha elrontja az ember, könnyen téglásítja a GPS-t. Persze levélnehezéknek még akkor is jól mutat.
Igen, elég szétválogatni, és eldobni a bináris adatokat, mert a szöveges mondatok JÓK!
Baud: valamikor valaki átállította 115200-ra. Gyanúm szerint a panel gyártója, de ez semmi gondot nem okoz, ha nem százméteres kábellel akarod összekötni.[ Szerkesztve ]
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
Janos250
őstag
válasz repvez #14444 üzenetére
Az ellenállásos verzió az Arduino Rx lábához addig volt aktuális, ameddig még nem tudtuk, hogy hibás-e a kommunikáció. Azzal a megoldással ugyanis stabilabb az átvitel.
Normál esetben nem okoz zavart az se, ha egy-két bit elromlik, az átvitel során, mert minden mondat (=sor ) végén van kontrollszumma, és ha az rossz, akkor azt a mondatot eldobja.Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
nagyúr
válasz repvez #14441 üzenetére
Jó, erre gondoltam, de a 120 nem sarkalatos érték, használhatsz helyette pl 200Ω-ot, vagy ekörül, amit nem kell kettőből összetenni. De ahogy Janos250 írja, nem ez lesz a gond. És kötheted direktbe, ha eddig nem ment tőle tönkre, akkor valószínűleg már nem is fog. Egy-egy 100-200Ω ellenállást beköthetsz azért a kettő közé (úgy, ahogy most), ártani nem árt, viszont védi a GPS-t a magasabb feszültségtől.
A program feltöltésekor bármit dugsz az RX/TX lábra, valószínűleg meg fogja akadályozni a feltöltést, ezt nem is kell nagyon magyarázni, csak gondold végig, hogy a programfeltöltés ezen a két lábon keresztül történik! Utána tudod saját célra használni, de a feltöltés mindenképp ezen történik (kivéve, ha ICSP-n keresztül töltesz fel kódot, de ezt most hagyjuk). -
repvez
addikt
[link] találtam ilyen manuált is hozzá, itt irják, hogy van benne DC-DC rész, ami redukálja a feszt ha magasabb a táp fesz 2.5 nél.
A másik, csak a tisztánlátás végett.
Nekem aki mostanába látott ilyet elöször mint arduino. Meg ahogy olvasom, hogy akár gyerekeknek is ajánljak , akik meg akarnak ismerkedni a programozással elektronikával.
Na ehhez ugy gondolom, hogy az a logikus, ha minden egységesen van jelölve, hogy mit hova kell dugni, tehát az 5V az a modul 5V jére jell a GND meg a GND-be
Ha ezt a logikát követik mindenhol akkor a RX pin is a GPS RX pinjéhez kellene kötni (azt már a arduino boardon kellett volna gyárilag megcserélni a chip bekötést, hogy az RX/TX páros összejöjjön és ne zavarja be a felhasználókat.
Ez egy kicsit olyan, mintha az 5V-t a GND ba kellene a modulon kötni, mert logikusan úgy zárod az áramkört.
illetve sehol nem olvastam a arduino for dummies könyvben sem, mint kikötést, hogy ha az RX pint használod azt csak a TX pinre lehetne kötni a modulokon.
illetve amikor csak random digital pinre voltak rádugva (10,11) akkor nem volt külön meghatározva , hogy melyik az RX és melyik a TX,Csak a kommentben, de a kodnál már nem volt megkülönböztetve sehol sem.Meg azt is jó lenne ha már az első oldalon közölnék, ezekbe a manuálokba, hogy ha USB-n töltöd az adatokat akkor ezeket a pineket ne használd mert gondot okozhat.
Ezek szerint mégsincs egségesitve , hogy ki mit csinálhat.
Mert ahány videot megnézek a témában mindenki másképp csinálja, csak az az egy fucsa van, hogy mindenkinek müködik, csak nálam nem ugy ahogy kellene.
Mert van aki direkten dugja rá ugyan azokra a pinekre, van aki direkten használja az 5V-ot, van aki a3.3V ot használja és van aki felcseréli a pineket mégis mindenkinél müködik.[ Szerkesztve ]
-
Janos250
őstag
válasz repvez #14448 üzenetére
Gondolj bele, ha magyar nyelven írnák:
kimenet, bemenet
Ami a GPS-en kimenet (Tx), az az Arduinon bemenet (Rx)
Akkor hogy lehetne egységesíteni? A GPS kimenetére is azt írni, hogy bemenet, vagy az Arduino bemenetére azt írni, hogy kimenet.
Ami az egyiken kimenet, az a másikon bemenet. Ha a benzines kannából benzint szivattyúzol a kocsi tankjába, akkor az a kannán kimenet, a tankon bemenet.Hogyan jelölnéd, amikor két Arduinot kötsz össze? Na, ugye?
Az SPI már a Te logikád szerint oldotta meg.
van:
MOSI: Master Output Slave Input, vagy Master Out Slave In
MISO: Master Input Slave Output, vagy Master In Slave Out
Itt a MISO a MISO-hoz,
MOSI a MOSI-hoz megy.A 10,11-nél is szigorúan meg volt határozva, hogy melyik a kimenet, és melyik a bemenet.
[ Szerkesztve ]
Az amerikaiak $ milliókért fejlesztettek golyóstollat űrbéli használatra. Az oroszok ceruzát használnak. Én meg arduinot.
-
repvez
addikt
válasz Janos250 #14449 üzenetére
értem a logikát és az értelmét, de a kapcsolás egyszerüsitése miatt megléphették volna, hogy magát az arduino nano-t vagy bármelyik boardot, ugy is mindenki veszi vagy ha nem akkor már érti a dolgát.
igy megoldhatták volna a boardon ezt a cserét.A többi már a kódon és a board belső elektronikáján kellene , hogy melyik mit csinál.
Az I2C esetében is a SDA SCL lábakat is ugyan oda kell kötni nem kell felcserélve,
Ezen a logika mentén , az lenne, hogy mindent oda kell tenni amire a felirat szol igy nem lehet elrontani a kötést. Most egy kicsit ez olyan mintha a kor alaku csovet egy négyzet alaku foglalatba kell dugni a négyzet alakut meg a kor alakuba.