-
PROHARDVER!
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
-
válasz
Victoryus #14778 üzenetére
A delayMicroseconds(2); szerepe a program indulása után gyakorlatilag véget ér, tekintve, hogy a trigPin a loop kezdetén eleve LOW állapotú, ezért nem értem, hogy ez hogy befolyásolhat bármit.
Esetleg a delayMicroseconds(10); növelésével lehetne az impulzus hosszát növelni a nagyobb távolság érdekében, de ez a pontosságot csökkentheti. Vagy a loop végén a delay(100); értékét növelni, kevesebb mérés is javíthat a teljesítményen. A mérések eredményeiből én mozgó átlagot szoktam számoltatni, a pontosságot drasztikusan tudja növelni (a sebesség rovására). -
-
válasz
Victoryus #12574 üzenetére
Erre teremtette az Úr a Raspberry Pi-t.
1 perces Google keresés eredményei: [1. projekt] [2. projekt] -
válasz
Victoryus #11436 üzenetére
Az van, hogy a wemos-on valószínűleg megsütötted az 5V konvertert, amikor a 3 cellát rákötötted... A szenzor shield pedig az 5V felől tápolja valószínűleg a lapot, és az 5V-ból 3.3V-ot előállító konverter még ép (ez elég nagy mázli).
Ha ez vigasztal, egy kínai uno lapon nekem is sikerült megsütnöm a Vin lábra kötött konvertert, de nekem elég volt hozzá egy 7,4V-os 2S li-po akksi...Az 5V lábról túl nagy áramot vettem le két szervó motorral, és ennyi elég volt hozzá.
Egy filléres 5V buck konverterrel át tudod hidalni a problémát (nekem is arról megy azóta gond nélkül). -
-
válasz
Victoryus #11430 üzenetére
Ellenőrizd, hogy a gpio0, gpio2 magas, a gpio15 pedig alacsony szinten van-e, amikor rákapcsolod a tápot a shield-re, különben a lap nem tud helyesen bootolni! Forrás
Szerintem az lehet, hogy vmi okból a 3 láb közül az egyik nem megfelelő szinten van, ha ezt te okoztad vmi okból (a fényképen nem látok erre utaló nyomot), akkor javítsd, ellenkező esetben egy-egy 10k ellenállást köss a megfelelő pinek és a 3.3V vagy a gnd közé. -
-
brickm
őstag
válasz
Victoryus #11410 üzenetére
Én átnézném azt a boardot, hogy milyen jelszintek vannak (és azok mennyire stabilak elinduláskor)
No elolvastam ezt a Git posztot. Ahogy gondoltam, reset után belebeg a GPIO láb, amit egy PULLUP, tehát nem föld felé, hanem táp felé húzó ellenállással orvosolnak. Illetve föld felé egy hidegítő kondival, hogy lereszkessen.
Done -
válasz
Victoryus #11409 üzenetére
Közben találtam hasonló eseteket... Ez az esp-nek a balfaszsága, bentragad boot módban vagy valami ilyesmi... ráadásul hiába nyomja az ember az EN-t, akkor se indítja el a programot 10-ből 9x...
GitHubon azt írják kell egy ellenállás a föld meg az EN gomb közé. Ennyi szívást... biztos nem bíznék ilyen alaplapra komolyabb feladatot, még virágöntözést se. Gyárilag selejt tulajdonképpen.
Pedig már majdnem örültem, hogy kész. Én már kééész vagyok idegileg tőle.
-
Janos250
őstag
válasz
Victoryus #11406 üzenetére
Fogalmam sincs így ránézésre, de:
1. én lekérdezném, hogy sikerült-e a WiFi.softAPConfig
2. meg a WiFi.softAP
3. ez nem kellene? : WiFi.mode(WIFI_AP);
4. Valami rémlik régebbről, hogy nekem csak akkor működött jól, ha a
WiFi.softAPConfig
a
WiFi.softAP + utána várakozás
után volt. Ennek a logikáját azóta se értettem meg.Valami ilyesmire gondolnék:
WiFi.mode(WIFI_AP);
WiFi.softAP(ssid, password);
delay(100); // vagy több
IPAddress ip(192, 168, 1, 1);
IPAddress mask(255, 255, 255, 0);
WiFi.softAPConfig(ip, ip, mask);Nem vagyok olyan gépnél, hogy próbáljam.
-
válasz
Victoryus #11406 üzenetére
Jó lett volna látni az udp-s példakódot is, amelyik működik.
Elsőnek próbáld meg, hogy innen:
void loop() {
handleUDPServer();
//delay(1);
}kikommenteled a delay-t:
void loop() {
handleUDPServer();
delay(1);
}Régebben olvastam itt a topikban, hogy ha túl sokáig fut a loop, akkor az nem jó az esp-nek, bár a hiba logban nem látok wdt-hez kapcsolódó hibaüzenetet, de hátha bejön.
-
válasz
Victoryus #11403 üzenetére
Rámértem egy lidl-ös elemtesztettel, 2,3V-ot írt... Aztán frissítettem 1000-re a frekvenciát, majd újra 30000-re és így most megvan a 12,5 V max az A motornál. Be van kötve az EN1 pin is. A motorvezérlő ráadásul ellátja táppal az alaplapot is, ezt eddig nem is vettem észre, csak most, hogy jéé, megy usb nélkül is.
Viszont az még mindig nem tiszta, hogy az EN1 feltétlen kell neki? Nem lehet az In1,In2-vel szabályozni a fordulatszámot? -
válasz
Victoryus #11397 üzenetére
Ezeket tapasztalati úton tudtam meg, de ha időben észrevetted volna, hogy nagyon melegszik, és rákérdezel, el is mondtam volna. Sajnos előbb nem jutott eszembe...
Itt írtam az én kínlódásomról a pwm-mel. Egészen 32Hz-ig kellett levinnem a frekit egy másik driverrel (L9110s), hogy legyen teljesítmény, és ne melegedjen. Ezzel a shield-del magasabb frekin is működött, de én sosem próbáltam 8,4V-nál nagyobb táppal. -
válasz
Victoryus #11389 üzenetére
Az 5V pin ugyanolyan jó neki, mint az usb, egy baj van csak, közvetlenül nem érdemes rákötni, mert ha 3.9V alá merül az akksi, bizonytalanná válik a működése, miután az onboard regulátor kb 0.6V-tal többet igényel, mint a kimeneti feszültség (3.3V). Kellene hozzá egy külső 3.3V boost-buck konverter.
-
válasz
Victoryus #11384 üzenetére
Valamiért azt hiszed, hogy a szervó vezérlés a shield-en történik, vagy hogy driver kell hozzá, de nem. A szervó vcc és gnd ágát értelemszerűen 5V-ra és gnd-ra kötöd, a sárga vezetéket, ami a signal, pedig egy tetszőleges lábra a kontrolleren, a többit megoldja a kontroller a servo lib-en keresztül, timerrel, a driver pedig benne van magában a szervóban. A shield szervó pinjei is csak azért nem döglöttek, mert azok csak szimplán kivezetik az egyik pin-t a kontrollerről.
-
válasz
Victoryus #11382 üzenetére
Persze, hogy nem jó, a 0 és 1 a serial tx/rx, ha azokra kötsz valamit, ami fel vagy lehúzza a lábakat, jó eséllyel nem tudod feltölteni a programot.
Ezen kívül a programban 1 és 3 láb szerepel, miközben a 0 és 1 van bekötve.
digitalWrite(in1, 50); //elvileg fordulatszám
ez nem lesz soha fordulatszám, legfeljebb
analogWrite(in1, 50); //elvileg fordulatszám
-
-
válasz
Victoryus #11377 üzenetére
// Connection pins:
int in1 = 3; // IN1 zöld kábel
int in2 = 1; // IN2 kék kábel
//int pot = A1; // potentiometer middle pin to control speed of the DC motor
void setup()
{
Serial.begin(115200); //start Serial
pinMode(in1, OUTPUT);
pinMode(in2, OUTPUT);
}
void loop()
{
digitalWrite(in1, 50); //elvileg fordulatszám
digitalWrite(in2, 1); //elvileg az irány
delay (1000);Hogy lehet ebbe életet lehelni? Nem értem. Le kell venni az en1 en2 jumpert ahhoz, hogy végre a fordulatszámot is megkapja a vezérlő? Így az égvilágon semmit se csinál. Nem találok hozzá leírást.
-
válasz
Victoryus #11359 üzenetére
Az M1,M2 kimeneteknél nem lehet, hogy csavarás közben valahogy túlhúztad és megszakadt az átvezetés az alaplapi vezetősáv és az aljzat közt? Én megpróbálnám tesztelés céljából a motor kivezetéseit valahogy hozzányomni a vezetősávhoz (persze lehetőleg rövidzárlat okozása nélkül). Nehezen hiszem el, hogy bármilyen módon tönkrement volna a driver elektronika, hiszen mindenféle védelem van beépítve, túlmelegedés, rövidzár, esd, és a motor önindukciója ellen is védve van.
-
zsolti_20
senior tag
válasz
Victoryus #11352 üzenetére
Mit értessz az alatt hogy "aksi tartóba elektronikát"? Jól gondolom hogy az érintkezőkre gondolsz? Nem jöhet szóba esetleg ez?Készen tudsz rendelni bármilyen méretben. Gondolom ALI-ról is 4-5 hét mire megjön így ebay-es forrás is jó lehet.
Az utolsó képen az M1-nél csak az egyik csavar van emghúzva és csak az M1 egyik pinoutjához megy vezeték. Próbáld meg hogy a másik kábelt is az M1-hez teszed.
-
válasz
Victoryus #11352 üzenetére
Korai volt az öröm... az M1. M2-re kötve semmit nem csinál a dc motor.
M3, M4-re kötve megy. Megdöglött az a 2 motor kimenete ezek szerint a shieldnek? Tegnap még jó volt, meg ma 2 körig. Kicsit strapabíróbbra számítottam. Tegnap azért nem tolatott, mert a földre kötöttem a motor egyik kábelét. De mondom, ma végre rájöttem, helyreraktam, ment is a hátramenet. Ez kinyírhatta esetleg?
Maximális fordulaton még nem is használtam, csak most a dc teszt programmal. Nem raktam hirtelen előre-hátramenetbe se. -
válasz
Victoryus #11292 üzenetére
A távirányítós projektem heti állása:
Megszívtam a forrasztópákával, mert eu-s raktárból rendeltem, de kínából jön, így még kb. 3 hét mire ideér. A 3d nyomtatás is lassabban halad a tervezettnél, mert hiába méretpontosak az alkatrészek a program szerint, a valóságban igencsak rájuk fér a csiszolás. Megint módosítani, újranyomtatni, városi könyvtárban meg nem kapkodják el a dolgot... Végül is ezelőtt sose foglalkoztam 3d modellekkel meg nyomtatással se, de tetszik
Folyt.köv. Lehet majd írok valami cikket belőle. -
PHM
addikt
válasz
Victoryus #11290 üzenetére
Jó, csak a rajzon véletlenül párhuzamosan kötötted a ledeket.
Sorbakötve rendben van a matek.
Viszont most nézem, hogy az ULN2003-nál zavar van az erőben.
Annak ugyanis open collector-os kimenete van, ami azt jelenti,
hogy a negatívot kapcsolja. Tehát a ledek a pozitív tápra fognak
kapcsolódni, s a másik végük a kimenetekre.
Figyelj majd a helyes polaritásra.
Ja, és az ULN 2003 COM pontját nem feltétlen muszáj a pozitív tápra kötni,
annak induktív terhelésnél van szerepe. -
válasz
Victoryus #11288 üzenetére
Azért kérdeztem, mert ha fordítva, a Vcc és a pin közé kötnéd a ledeket (alacsony jelszintre kapcsol), akkor úgy több áramot képes elviselni, asszem 26mA-ig rendben vagy. Mivel az esp8266 gpio-k hivatalosan 5V toleránsak, ha 5V-ra kötöd a ledeket, akár hármat is tudnál sorba kötve egy lábról üzemeltetni, külön driver nélkül (ellenállás persze ide is kell). De persze egy uln2003 lenne az igazán megnyugtató megoldás (arra is úgy kell kötni a ledeket, hogy a tápra megy a másik lábuk), ha tudsz neki helyet szorítani (külön tartót nyomtatni nemigen kell neki, hiszen egy chipről van szó, beforrasztod rá a ledeket stb aztán teszel rá egy zsugorcsövet és benyomod az egészet egy kevésbé látható résbe.
-
PHM
addikt
válasz
Victoryus #11285 üzenetére
4db NPN tranzisztor, + bázisellenállás, vagy egy ULN2003.
A kollektorokra/kimenetekre mehetnek a ledek, persze megfelelő
előtét ellenállással.
A tápfeszültség szabadon választott, célszerűen a fő táp, azaz a
két 18650 pozitívja.
Fehér/kék ledből kettőt, alacsonyabb nyitófeszültségűből akár hármat
is sorbaköthetsz. Soros kötésnél összeadódik a nyitófeszültség, de
azonos lesz a ledek árama, párhuzamos kötésnél az áram adódik össze,
de azonos (1 lednyi) lesz a nyitófeszültség.
Ha tranzisztorokat használsz, bázisellenállásnak elég 1-1 1,5-2,2 Kohmos. -
válasz
Victoryus #11281 üzenetére
Az a led nyitófeszültségétől függ. Egy piros led esetén kb. 10mA áram fog folyni, ha két led lesz rá kötve párhuzamosan, az 5mA/led, így az már nem biztos, hogy elég fényt ad. Zöld/sárga led nyitófeszültsége picit magasabb, még kisebb lesz az áram. Inkább 60-80ohm körül tennék oda.
Vcc-re vagy GND-re van kötve a ledek másik lába? -
válasz
Victoryus #11276 üzenetére
Milyen sebességgel flashelsz? Az egyik d1 minit nem bírtam 9xx kbit/s-al flashelni, miután a gpio-kra voltak kötve a cuccok, le kellett mennem 1xx van valahány kbit/s-ra, addig mindig hibás lett a feltöltött program. Talán nálad is hasonló a gond. Illetve a kábelt cseréld ki.
Nemrég én spammeltem teli a topikot az infravörös adatátvitelemmel, írd csak nyugodtan a fejleményeket.Ha elkészült, tegyél majd fel videót.
Nem írtad, milyen ledet használsz. -
válasz
Victoryus #11275 üzenetére
Összeraktam az egészet, most úgy tűnik működik is. Végül a sokadik flash után újra kiírta az adatokat serialra... nem tudom mi gondja volt, ahhoz a részhez nem is nyúltam.
Hát, nem szép a kód, majd megpróbálom szétszedni több függvényre, de eddig nem sikerült.
Elnézést, ha valaki már nagyon unja a projektet...
Wemos d1 r2 rc car -
válasz
Victoryus #11272 üzenetére
A hibakódra a gugliban rákeresve én is azt találtam, hogy resetel a board, mégpedig áramellátási gond miatt. Úgy néz ki egyszerű rövidzárlatot csináltál a két leddel az áramkorlátozó ellenállás nélkül.
Gondolom párhuzamosan kötötted őket.
Az esp8266 gpio max 17mA árammal terhelhető, ha a ledet a gpio és a gnd közé kötötted. Ha a Vcc és a gpio közé van kötve (alacsony jelszintre kapcsol), akkor nagyobb áramot is képes elnyelni, de mindkét megoldással kockáztatod, hogy túlterheled az adott gpio-t és tönkremegy.
Milyen ledet használsz, színeset vagy fehéret? Ha színeset, akkor a két ledet sorba kellene kötni, nem párhuzamosan, és egy áramkorlátozó ellenállást számolni hozzá. A fehér ledeket a nyitófeszültségük miatt nem lehet párhuzamosan kötni, de ellenállás akkor is kelleni fog, vagy egy darlington tranzisztor. -
Janos250
őstag
válasz
Victoryus #11266 üzenetére
Csak egy tipp:
A tools/erase Flash alatt nem véletlenül az Only sketch-et állítottad be, az All Flash Contents helyett?Na, közben látom, ez megoldódott. Nekem szokott menni telefonról is. Ha a régit látja, felejtesd el a telefonon az állomást, újra megtalálja, és akkor már jó lesz.
-
-
Janos250
őstag
válasz
Victoryus #11238 üzenetére
programodból:
"myservo.attach(5,600,2300); //GPIO 5, meg min max, ezt nem értem, de ennyi volt a példában""Writes a value in microseconds (uS) to the servo, controlling the shaft accordingly. On a standard servo, this will set the angle of the shaft. On standard servos a parameter value of 1000 is fully counter-clockwise, 2000 is fully clockwise, and 1500 is in the middle.
Note that some manufactures do not follow this standard very closely so that servos often respond to values between 700 and 2300. "
https://www.arduino.cc/en/Reference/ServoWriteMicrosecondsEzért kellene tudni, milyen a servo. Mindenesetre én 1000 és 2000 közöttivel próbálnám, mert én még csak olyat láttam.
Már eléggé kavarodnak bennem az infók, de - úgy rémlik - Wemos D1-et használsz. Az viszont ESP8266, de:
libraries/Servo/src/Servo.h - ban ez van:
"This library only supports boards with an AVR, SAM, SAMD, NRF52 or STM32F4 processor."Lehet ez a gond? A servo.cpp interrupttal dolgozik, és az az ESP-nél más.
A servo ugyanis úgy működik, hogy folyamatosan adni kell neki az adott időszélességű impulzust, ami általában 1 és 2 millisec (1000, ill. 2000 microsec) között van. Ha az 1 msec-es inpulzusokat kapja folyamatosan, akkor az egyik végkitérésre áll, ha 2 msec-et, akkor a másikra, 1.5 msecnél meg középre. Olyan állapot undefinit, hogy adok neki egy impulzust, és nem ismételgetem.Más:
Az Arduino "nyelve" a C++, ami magában foglalja a C-t is. Ha tanultál PHP-t, az C++ némi extrákkal.
Tehát, ha a PHP-ból kihagyod a hálózatos dolgokat, akkor az C++, ami már megy az Arduino lapon is (illetve ez nem teljesen igaz, de majdnem). Tehát a C++ -al akarj ismerkedni. Ebben a PHP, Delphi jó alap, mert a filozófiájuk ugyanaz. A pascal is jó, bár abban még nincs objektum. -
vargalex
félisten
válasz
Victoryus #11231 üzenetére
Ha jól értem, akkor lenne egy ilyen szöveg érkezne pl: abc123. Ebből ugye az abc a csatorna neve, az 123 pedig az érték. Ansi C-nél ez azért elég egyszerűen kezelhető (ha tudod a csatorna név hosszát). A korábbi példánál maradva, ha a packetBuffer-be érkezik, akkor ennyi:
int iValue = atoi(packetBuffer + 3);
És így máris int-ként ott van az érkezett érték az iValue-ban.
-
-
-
vargalex
félisten
válasz
Victoryus #11224 üzenetére
Most néztem meg igazán az eredeti kódodat. Nem használtam eddig a WiFiUdp könyvtárat, így most néztem utána, hogy a read függvény második paramétere a maximális buffer méretet adja vissza, amin a te kódod végig is ment, így nem egyezett a vizsgálatnál. Viszont a read függvény visszaadja a beolvasott karakterek számát.Valamint UDP-n egy újsor (\n) is érkezik, így ezért sem jó a vizsgálat. Erre módosítottam (a vizsgálatot is átírtam, mert teljesen felesleges egy String-be is bemásolni). Nálam a Wemos R2 mini-n HIGH állásban kapcsol le a beépített LED és LOW állásban világít, de egyébként helyes a LED_BUILTIN értéke.
-
vargalex
félisten
válasz
Victoryus #11224 üzenetére
Pontosan milyen boardra build.-eled? Mert ugye a Wemos D1 R2 / mini esetén 2 a LED_BUILTIN értéke.
0 szerintem nem érkezik, csak azért megy bele az if-be, mert üres String esetén a toInt 0-t ad vissza. Így én vizsgálnám a packetSize értékét is.
-
vargalex
félisten
válasz
Victoryus #11212 üzenetére
Nem jól értelmezed és ebből adódik a problémád is. A station mode az, amikor egy wifi Access pointhoz csatlakozik az ESP8266. Azaz a kód hibátlanul működik, csak nem tud csatlakozni a megadott SSID-vel rendelkező hálózathoz (mert ugye nincs is).
Az viszont továbbra is érvényes, hogy biztos, hogy nem csak pontokat ír a soros konzolra. Előtte ott kell lenni a Connecting szónak is. -
-
-
válasz
Victoryus #11190 üzenetére
Tudsz linket adni ezekhez a koppincs motorokhoz? Miért van rajtuk 4 vezeték, szenzor van bennük?
Most kerestem vissza, a nema8 motorokról tényleg más valaki írt, ezen a linken láttam, nagyon megtetszett, és megmaradt bennem. Kár, hogy drága is egy ilyen motor és driver is kétszer annyi kell hozzá, mint egy sima dc motorhoz. -
válasz
Victoryus #11188 üzenetére
"leforrasztani a lego koppincs motorokról a 4 erest, helyére sima 2 erest"
Ugye nem a korábban linkelt(?) Nema8 stepper motorokkal akarod ezt megtenni?"mert a motor shieldhez nem raktam fel anno"
Dehát driver (lib) nélkül le sem tudod fordítani a programot.De örülök, hogy végre sikerült valami eredményt elérni.
Ha a wemos motor shield-ről beszélsz, akkor igen, az i2c vezérlés csak két pint foglal, asszem a d1/d2-t. (Meg persze a táp és gnd pineket.) -
válasz
Victoryus #11187 üzenetére
Több, mint 6 pin szabad, szóval úgy néz ki elég lesz
Bónuszként rátettem a sensor shieldet, mert úgy egyszerűbb lesz a ledeket bekötni, és működik az is frankón. No, most már csak a wifis/bluetoothos vezérlést kell megoldani, leforrasztani a lego koppincs motorokról a 4 erest, helyére sima 2 erest, majd mindent beépíteni a járgányba.
Ez se lesz egyszerű menet. -
válasz
Victoryus #11166 üzenetére
Sajnos nem igazán van fogalmam róla, hogy mi is ez a motor shield, de a kép alapján egész biztosan rosszul van összekötve, mert a D1-D4 lábak mellett még minimum a gnd-t össze kell kötni a shield és a lap közt, és ha a shield-en nincs kimondottan konverter a L293d tápfeszültségének az előállításához (3,3V-5V) akkor még a Vcc bemenetet is össze kell kötni a lap megfelelő kimenetével (esp32-nél a 3,3V-tal!). Ez a L293d logikai tápja, nem a motoré! Ezek után ott van még egy-egy enable láb mindkét motorhoz, ha azokat nem húzod magas szintre, a D1-D4 lábakra hiába adsz jelet, a motorok nem fognak megmozdulni. Szóval összesen ha jól számolom 8db jumper kábel kell a két motorhoz. És persze minimum 9V táp a shield-nek (motorok tápja), mert az alatt a L293d nem nyit ki rendesen, csak melegszik meg sípol (pwm meghajtás esetén).
-
válasz
Victoryus #11142 üzenetére
Milyen library-vel próbálod ezt a shield-et használni a Wemos d1-el? Az uno-hoz való adafruit-ossal?
Az alsó sor jobb szélső két pin az SDA SCL, ugyanez duplázva a felső sor bal szélső két pin-en.
A lolin32-vel vigyázz, mert ezen a shield-en ha jól tudom rajta vannak az i2c felhúzó ellenállások, amik 5V-ra húzzák a pineket, de amíg az esp8266 gpio-i 5V toleránsak, az esp32 kimenetei állítólag nem azok. -
válasz
Victoryus #10432 üzenetére
Ott tartok, hogy nem tartok sehol... Fizikailag nem passzolnak össze az alkatrészek, túl szélesek a boardok a motorvezérlőhöz képest. Pedig egy típushoz valók elvileg...
Szóval most megint ugyanott vagyok, ahol 3 hónapja, hogy kéne valami motorvezérlő+lap ami kis helyen is elfér.Plusz rájöttem, hogy elég nekem két 18650-es akku is, nem kell 3, súly+helytakarékosság is szempont.
Aryes javasolta a lolin esp32-őt.
Abból is van már egy itthon. Akkor ehhez milyen motorvezérlőt rendeljek? (amit nem kell összerakni, forrasztani)Másik kérdés, ha már van ez a motor shieldem, azt hogy lehetne kideríteni, melyik lábaival lehet csatlakoztatni?
Ezt írtam korábban is, ha ráteszem a Wemos d1 r2-re akkor kb semmit nem csinál, és szabad pin is csak 2 marad... Lehet uno-val menne, de azzal még nem néztem. -
válasz
Victoryus #10418 üzenetére
Hogy jön a szervó motor a motor shield-hez? A motor shield v2-n lévő szervó csatlakozók ha jól emlékszem csak az uno bizonyos pin-jeit (D9,D10) duplázzák meg úgy, hogy van mellette 5V meg GND, tehát nem a rajta lévő chip vezérli, amit i2c-n tudsz elérni, hanem a megfelelő pin-eket össze is kell kötni, és kell egy servo library is, ami wemos kompatibilis. Ha wemos-ra kötöd az uno shield-et, gondolom jumper kábelekkel, akkor bármelyik szabad pin-t rákötheted. Esetleg a digitális kimenet logikai szintje okozhat gondot, hogy csak 3v3, de szerintem a legtöbb szervónak ez elég.
Ja és persze kell neki kívülről 5V táp.
Úgy is mondhatnám, hogy szervó vezérléshez egyáltalán nincs szükség a motor shield-re, csak praktikus a csatlakozó miatt. -
-
-
Teasüti
nagyúr
válasz
Victoryus #7892 üzenetére
Meg lehet csinálni, könnyű. Kell egy HC-05 modul, ellenállások, egy elkó, és egy fine point forrasztóhegy, mert rá kell forrasztani a modul egyik lábára, ami BT kapcsolódáskor le fogja húzni az Arduino reset portját.
PC-n semmit nem kell csinálni, csak párosodni a HC modullal, így lesz egy virtuális COM port, amit csak ki kell választani az IDE-ben.
Ha kézzel is megfelel a reset-elés programfeltöltéskor, akkor nem kell forrasztani, elég csak beüzemelni a modult.
Lényegében egy vezetéknélküli sorosportként működik, semmit nem kell trükközni hozzá. A reset funkcióhoz kell csak barkácsolni.
Én használtam egy időben, elég kényelmes. -
-
válasz
Victoryus #7892 üzenetére
Meg lehet, igen, bt-al, hc05-tel, az UNO-ra. Talán másra is. Van hozzá leírás is valahol, azt hiszem egy dll-t ki kell cserélni a pc programban. Egy időben én is meg akartam csinálni, aztán valahogy mindig más dolgom volt.
Esp-re is van OTA frissítés, vagyis wifi-n keresztül tudsz rá tölteni.
Ha LEGO-szerű dolgot akarsz csinálni, akkor viszont más irányból közelíts, firmata firmware-el hasonló kockatologatós környezetben tudod programozni a Blockly környezetben, van több változata is, annyi a különbség, hogy a pc fogja irányítani a robotot élő BT kapcsolaton keresztül. -
Janos250
őstag
válasz
Victoryus #7545 üzenetére
Amit leírtál, az tanulságos lehet mindenki számára, aki új lapra tér át. Ne vegye komolyan, ami a lapra van írva. Igaz, meg lehet nézni a hozzá tartozó fájlban, hogy melyik lábat minek nevezi, ha biztosan tudjuk, hogy azzal a lappal van dolgunk. Én nem is szoktam használni a lábak neveit, tehát én ilyet többnyire nem használok, pl. hogy pinmode(D2, hanem pinmode(2, .
Ha ezt átviszem egy másik lapra, ott is megkeresem, hogy melyik a GPIO2, és nincs gond.
Gyakori, hogy új lapnál leellenőrzöm leddel, hogy ténylegesen az a láb-e az adott sorszámú. -
válasz
Victoryus #7544 üzenetére
Elnézést, hogy megint dupla, nyugodtan lehet törölni az előzőt! Jobban megnézve a wemos ábráját, leesett, hogy a 15-ös pin a tx láb. Ezért nem engedte feltölteni a programot. Most már jó! Elég fura a lábkiosztása szerintem, nagyon oda kell figyelni, a sima uno az nem ilyen volt, azt 'szoktam meg'. No majd valamikor folytatom tovább az ismerkedést vele, következő lépés wifin történő hőmérséklet lekérdezés. Azzal is szivatott fél órát, hogy d1-d8 stb van a lapra írva, pedig nagyon nem annyi az, ki kell keresni a gpio számát helyette.
-
válasz
Victoryus #7540 üzenetére
Nos, csak nem boldogulok. Letöltöttem az előző hsz-ban említett drivert az alaplap kezelővel. Ott is volt, hogy esp8266, fel is tettem a led villogtató programot. Nem villog, ha konkrét pint adtok meg, akkor se. De utána eltünt maga az eszköz a választhatóak közül, és az alaplap kezelőben sincs ott. Ezt megelőzően annyit írt az arduino, hogy frissítéseket talált. Most ilyenkor mi van?
Windows eszközkezelő látja (usb serial ch340 com3) -
-
-
-
fpeter84
senior tag
válasz
Victoryus #7287 üzenetére
A kérdéses lib-ekben érdemes nézelődni, mert lehet át lehet konfigurálni hogy 2x2 default helyett 1x4-es felállásban kezelje. A .c és .h fájlokban nézelődj hogy az inicializálásnak vannak e opcionális paraméterei, esetleg lehet e többféleképpen meghívni az init parancsát, vagy fixre égetve is lehet konstans formában. Meg persze az is előfordulhat, hogy nem készítették fel rá...
-
Teasüti
nagyúr
válasz
Victoryus #7282 üzenetére
Ez pont úgy működik, mint az általam használt pfodApp.
Arduino tárolja le vmi nagyon lényegre törő pár bájtos protokollal, hogy mit kell megjeleníteni, és ezek alapján készíti el a mobilos app, amit kell on-the-fly.
Gondolom van hozzá egy kód generátor is, amiben megszerkesztheted amit szeretnél látni.
Kár, hogy nem tud BLE-t, különben már telepíteném is.
Fejlettebbnek tűnik a pfodApp-nál.
Bár ahogy nézem Serial-on kommunikál, meg lehetne hack-elni a library-t, hogy menjen a BLE is.
Pont ezt tettem a pfodApp-pal is. Hmm... -
Teasüti
nagyúr
válasz
Victoryus #7222 üzenetére
Igen, a get.exe-re való tekintettel külön leírtam a megoldást:
"Ezt én cmd-ből indítottam, mert rákattintva semmit nem csinált.".
Örülök, hogy sikerült!(#7223) Victoryus
Ez csak az erőforrásoktól függ. Mondjuk én soha nem használtam még Shield-eket, jó ötlet, hogy moduláris meg minden, de jobb szeretem magam kiosztani a használni kívánt lábakat. Így emiatt nem is lehet rávágni, hogy menni fog-e vagy sem, mert melyik Shield melyik lábra van bekötve és vannak-e átfedések?
Amúgy technikailag mi kell hozzá? A soros port a BT-hez, és elegendő számú GPIO minden másra.
A használni kívánt library-k méretétől függően a memória vagy elég lesz, vagy nem... -
Teasüti
nagyúr
válasz
Victoryus #7214 üzenetére
Nem tudom milyen tutorial az, de nem kellett python-t telepíteni.
Én e szerint raktam fel.
De a Git Gui-s részt kihagytam, mert nekem nem működött. De ugyanazt teszi, mintha magad töltenéd le innen zip-ben az Arduino Core-t. Szóval baromira felesleges.
Aztán ha kicsomagoltad ahova kell, akkor jöhet a get.exe.
Ezt én cmd-ből indítottam, mert rákattintva semmit nem csinált.Ennyi az egész.
-
válasz
Victoryus #7213 üzenetére
Közben találtam egy tutorialt Azt nem gondoltam, hogy ilyen lassú lesz a letöltés, a git gui ~30 perc volt, meg az esp32-elf-win32-1.22.0-73-ge28a011-5.2.0.zip is több, mint 40 perce jön. 90 megás az egész... (100megabites nettel, szóval náluk van a szűk keresztmetszet)
-
-
válasz
Victoryus #7153 üzenetére
Az L298N-nek kevés a 6V, L9110 alapú vezérlő 2,5V-tól már működőképes. Ha Debrecen környéki vagy, tudok adni kölcsön, amíg megérkezik.
Nekem végül a smart car-omba egy ilyen shield került, irtó jól működik a h-bridge-ekhez képest, i2c-n át működik, csak 2 lábat foglal és saját pwm generátora van.
Új hozzászólás Aktív témák
Hirdetés
- Wacom Cintiq DTK-2260 - Digitális rajztábla
- LG 25GR75FG - E-Sport Monitor - FHD 360Hz 1ms - NVIDIA Reflex + G-sync - AMD FreeSync - HDR 400
- LG 40WP95XP-W - 40" NANO IPS - 5120x2160 5K - 72Hz 5ms - TB 4.0 - HDR - AMD FreeSync
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7700X 32/64GB RAM RTX 5070 GAMER PC termékbeszámítással
- BESZÁMÍTÁS! MSI B450M R5 5500 16GB DDR4 512GB SSD GTX 1080Ti 11GB Rampage SHIVA Chieftec 700W
Állásajánlatok
Cég: Liszt Ferenc Zeneművészeti Egyetem
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged