Bütyköltem

Néha mindenféle érdekes dolgokat rakok össze otthon, melyek egy része talán másokat is érdekelhet.

TIVEDA

  • Így előzd meg a büntetést!Ti megszoktátok már a VÉDA kapukat az utakon? Hogy jövet-menet figyelik mindent jól csináltok-e, nem telefonáltok, nem érintitek a záróvonalat, és azonnal megálltok, ha sárgára vált a jelzőlámpa? Hogy...
  • Így működik a TIVEDAMivel a TIVEDA-ban használt ESP8266 összesen 96Kbyte rammal rendelkezik, aminek nagy részét az alap rendszer elfoglalja, ezért az iGO-val vagy a Waze-el ellentétben nem volt lehetőségem arra, hogy...
  • Kijelzőt a TIVEDáraTegnap kaptam ezt a kis videót, ahol egyik olvasóm mutatja meg, hogy kis átalakítással akár egy OLED kijelző is ráköthető a TIVEDára, ami így már a pontos sebességet és időt is ki tudja jelezni. A...
  • TIVEDA firmware feltöltésElkészültem végre az ígért videóval a TIVEDA szoftver feltöltéséről. A Wemos D1 mini a CH340 meghajtót igényli. Ezt windowshoz itt találjuk meg, ha telepítettük, akkor csatlakoztatás után egy új COM...
  • TIVEDA beépítéseAmikor az elkészült TIVEDA-t szeretnénk fixen beszerelni egy járműbe, az első probléma, amit meg kell oldani, az az, hogy a jármű áramellátása általában 12 voltos (ritkábban 6), a mi vezérlőnk viszont...
  • Ti küldtétekAz elmúlt napokban egyre több visszajelzést kapok olyanoktól, akik a korábbi cikkem alapján megépítették saját TIVEDA készüléküket. Ezekből osztanék meg párat veletek, háthat lesznek olyanok, akik...

Friss topikok

Linkajánló

Okmányiroda, kormányablak időpontfoglalás térképen. Ha hivatali ügyet kell intézned, érdemes itt kezdened.

Ha kiváncsi vagy melyik izzót éri meg megvenni, akkor próbáld ki a másik oldalamat is!

Also check out my light cost calculator site!

Távirányítású autó wifivel

2016.05.09. 12:05 Mr. Big

Pár hónapja játszadozom az ESP8266 alapú fejlesztői eszközökkel, bevezetésnek az egyik első projektemet szeretném bemutatni. Reményeim szerint ezt a cikket hamarosan több másik is követni fogja, elkészültem ugyanis több mindennel, közben pedig szépen gyűlnek az ötletek is.

Ez a mostani projekt bizonyos szempontból hasonlít már korábbi munkámra, amennyiben itt is egy régi eszköz "felokosítása" történt meg. Csak most nem egy párologtató, hanem egy távirányítású játékautó volt a kiindulási alap, ami bár jó állapotban volt, de távirányító hiányában mégis használhatatlan.

A türelmetleneknek íme a végeredmény, a lentiekben pedig majd az átalakításról bővebben írok.

 

Az ESP8266 alapú fejlesztői környezetre idén év elején találtam rá, bár már 2014 óta piacon lévő termékről van szó. Eredetileg többek között az Arduino platform mellé szánták olcsó wifi modulnak, de a közösség hamarosan felfedezte, hogy önmagában is egy igen sokoldalú mikrovezérlőről van szó. A kínai gyártó pedig nem ült a babérjain, és folyamatosan hozta ki az újabb és újabb verziókat, jelenleg körülbelül 16 verziója létezik.

Mivel a népszerűbb ESP8266 modulok nehezen alkalmazhatóak breadboardon, és forrasztani is nehézkes ezért nemsokára elkészült a NodeMCU nevű környezet, mely leginkább az Arduino Micro-ra hasonlít, két nagyon fontos különbséggel:

  • beépített wifivel rendelkezik
  • akár 1800Ft alatt is megkapható (szállítással)

Reményeim szerint hamarosan egy részletesebb cikkel jelentkezhetek majd a platform történetéről, lehetőségeiről, de most térjünk rá a távirányítós autóra!

Miután leszedtem a borítást ezt láttam:

img_1726.JPG

Igazi, klasszikus megoldás, furatszerelt alkatrészekkel, még a nyák lemezt is csavarok rögzítették, hogy kényelmesen lehessen kiszerelni, hogy a helyére a saját panelemet rögzíthessem.

img_1731.JPG

A NodeMCU board mellé próbapanelre szereltem fel a motor vezérlő tranzisztorokat (ezeket ki tudtam menteni az eredeti áramkörből), valamint ide kerültek a szervó és led meghajtáshoz a MOSFET-ek is, valamint az előtét ellenállások. Mint látható, szeretem, ha minden bármikor szét és össze-szerelhető, ezért a külső komponensek tüskesorral csatlakoznak. Rengeteg helyet nyertem továbbá azzal, hogy a NodeMCU alá is be tudtam zsúfolni jópár alkatrészt.

img_1732.JPGAz új és a régi elektronika egymás mellett. Kedvencem, hogy a wifinek elegendő az áramkörre nyomtatott apró antenna is, így az autó megszabadult a hatalmas antennájától.

img_1727.JPG

Saját elektronika az eredeti helyén. Lecseréltem az autó elejében az kormányzást is. A korábbi "teljesen balra-teljesen jobbra" mágneses megoldás helyére egy TowerPro szervót faragtam be. Ezzel már fokozatmentesen lehet a járművet kormányozni.

img_1728.JPG

Mivel még ezek után is maradtak szabad lábai a vezérlőnek, ezért elláttam világítással is a járművet: a jobb-bal irányjelzők külön kapcsolhatóak, míg az első-hátsó világítást egy kimenet vezérel. Előre nagy fényerejű fehér ledek kerültek, így szerintem még vagányabb lett.

Némi fúrás-faragás-ragasztás után össze is állt az egész, amit már a fenti videón is láthattatok.

screenshot_20160507-223454_1.png

Távirányításra a RoboRemo alkalmazást használtam, ezzel az androidos appal percek alatt összerakhatunk egy távirányító felületet. Esetemben a telefon elforgatásával lehet kormányozni, a képernyő jobb oldalán az ujjunkkal tudjuk a gázt szabályozni, a hátramenet ésa világítás pedig külön gombokkal kapcsolható.

A középső grafikon az akkumulátor feszültséget mutatja, továbbá a lámpák is külön visszajelzőket kaptak.

A NodeMCU-n futó kódot a RoboRemo egyik példakódját felhasználva raktam össze, de aztán számos helyen módosítottam rajta. A legjelentősebb talán a szervók vezérlése volt: az eredeti kóddal az én szervóm ide-oda ugrált, nagyon pontatlan volt, ezért inkább átírtam a PWM modul felhasználásával. Ezután már szépen, egyenletesen fordulnak el a kerekek.

Ha valaki szeretne hasonlót építeni, a kódokat megosztottam githubon.

Végezetül a tapasztalatok: az irányítás kényelmes, de sajnos a wifinek még egy jó router esetében is jól érzékelhető késleltetése van. Gyors akciókra ne számítson tehát senki, de azért egy ilyen autóval jól el lehet szórakozni.

A másik fontos tapasztalat az volt, hogy az AA akkumulátorok nem tudnak elegendő áramot leadni a motorok, a wifi, és a többi fogyasztó meghajtására. Minden működött ugyan, de az autó messze nem volt olyan fürge, mint amit eredetileg elképzeltem. Ezért végül a 4db AA elem helyett 2db LiPO akkumulátort tettem be. Ezek bár névlegesen jóval kisebb kapacitásúak, mégis ugyanúgy nagyjából 20-30 perc játékot tetsznek lehetővé egyetlen töltéssel.

10 komment

Címkék: játék wifi led diy távirányító esp8266 nodemcu

A bejegyzés trackback címe:

https://butykoltem.blog.hu/api/trackback/id/tr938691378

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Liszbauer Tamás 2016.09.29. 21:06:38

Szia!
Írtad, hogy a wifinek nagy a késleltetése a router miatt.
Elvileg az ESP8266 tud Wifi Direct-et. Ezzel is működhetne?

Csiszu

Mr. Big 2016.09.30. 01:20:54

@Liszbauer Tamás: próbáltam azzal is, de érzetre még lassabb volt. Valószínűleg az esp is lassú az ilyen jellegű felhasználáshoz.

A legjobb válaszidőt amúgy jó minőségű wifi routerrel értem el.

A "lassú" alatt amúgy 0.1-0.4 másodpercet kell érteni. Ez ennél az autónál még elmegy, de helikoptert már nem lehetne így irányítani.

LaciC 2016.10.03. 18:48:47

Szia!
Ahogy látom nincs elválasztva a motormeghajtó rész optocsatolóval a D1 mini-től, nem okozott ez sohasem zavart?
Szertnék én is "felújítani" egy távirányítáú autót a post-od alapján. Tudnál közzétenni egy kapcsolási rajzot az egészről?

Köszönöm!

Laci

Mr. Big 2016.10.03. 21:17:28

@LaciC: megpróbálok majd összedobni egy kapcsolási rajzot. A motor meghajtásra egy klasszikus H-bridge kapcsolást használtam mosfetekkel, a ledeket pedig úgy emlékszem NPN tranzisztorokon keresztül hajtottam meg. Túl nagy lenne a fogyasztásuk direkben.

A motorokból nem volt gondom, gondolom a MOSFET azért véd a zavaroktól, meg itt nem a D1 minit használtam, hanem a nodemcut, annak kicsit komolyabb a tápellátása. A motorokat amúgy közvetlen a tápfeszről hajtom meg, így azok 6 volton üzemelnek.

Ümér Ke 2016.10.13. 23:15:26

Szia. Kapcsolási rajzot tudnál felrakni vagy legalább valami sematikus ábrát rajzolni, vagy lábak számozását írni? Köszi

Ümér Ke 2016.10.14. 00:48:33

Szia. A lábakat megtaláltuk de a feltöltés elég nehézkesnek tűnik. Tudnál róla valami részletesebb leírást vagy videót adni? Köszi

Mr. Big 2016.10.14. 13:10:48

@Ümér Ke: bocsánat, a kapcsolási rajzokkal nem volt időm egyelőre foglalkozni.

Ez a tivedas projekttel ellentétben nem arduino, hanem a nodemcu luat használja.

Ehhez tehát a gyári nodemcu firmwaret kell használni, általában ezzel jönnek, de leírások vannak itt is: nodemcu.readthedocs.io/en/latest/en/build/

A kódot utána legegyszerűbb az ESPlorerrel esp8266.ru/esplorer/ feltölteni: egyszerűen a .loa fájlokat egyesével fel kell töltögetni.

Ümér Ke 2016.10.14. 13:25:39

@Mr. Big: Köszi. Így már lehet könnyebb lesz. Majd reportálok az eredményekről köszi a gyors választ

Ümér Ke 2016.10.18. 19:37:46

Szia. A file ok felmentek, de még mindíg nem ad ki wifi jeleket. Tudnád egy kicsit bővíteni a leírást? Minden addott hogy működjön és mégse.

Mr. Big 2016.10.19. 00:42:14

@Ümér Ke: jelenlegi kód úgy van beállítva, hogy egy wifihez csatlakozik. Ehhez a config.lua elején kell a wifi.sta.config részben beállítanod a wifi nevét és jelszavát, valamint lejjebb a wifi.sta.setipnél a kívánt ipt. Vagy ezek a sorok ki is törölhetőek, ha azt akarod, hogy a router adjon neki ip címet.

Ha azt szeretnéd, hogy hozzon létre egy hotspotot, amihez csatlakozhatsz, akkor pedig a wifi.setmode(wifi.STATION) -t kellene átírni wifi.setmode(wifi.SOFTAP)-ra

Ekkor így tudod a kívánt ssidt és jelszót beállítani:
wifi.ap.config({
ssid = "SSID",
pwd = "jelszo"
})
süti beállítások módosítása