Tartalomjegyzék:

A buta fűnyíró robot intelligensebbé tétele: 4 lépés
A buta fűnyíró robot intelligensebbé tétele: 4 lépés

Videó: A buta fűnyíró robot intelligensebbé tétele: 4 lépés

Videó: A buta fűnyíró robot intelligensebbé tétele: 4 lépés
Videó: ZöldGalamb - 33 2024, November
Anonim
A buta fűnyíró robot intelligensebbé tétele
A buta fűnyíró robot intelligensebbé tétele

Szóval van egy kedves, de hülye fűnyíró robotom (A kép a www.harald-nyborg.dk oldalról származik).

Ez a robot állítólag levágja a pázsitomat, de a pázsitom túl nagy és összetett ahhoz, hogy valóban bejusson a sarkokba.

A rajzaimon nem látszik a fák sokasága és a hinták, stb. És így tovább. Az eredmény az, hogy a robot sok időt tölt azzal, hogy átfut a már lekaszált nyitott szakaszokon, és túl kevés időt nyer a kemény részek nyírására.

Ezért úgy döntöttem, hogy hozzáadok néhány külső intelligenciát.

2020-04-23 SZERKESZTÉS: az érzékelő nem egészen működött, ezért változtattam pár dolgon

Kellékek

2 kültéri kétirányú kapcsoló

VAGY

1 régi usb router

1 db usb relé kártya

1 digispark

1 db usb hub

1 db vízálló elektronikai doboz

2020-04-23 SZERKESZTÉS:

OR1 régi usb router

1 db usb relé kártya

1 usb2serial tll dolog

1 db usb hub

1 db vízálló elektronikai doboz

1 Dfrobot URM 37 v3.2 ultrahangos érzékelő (valószínűleg bármilyen érzékelőt használhat =)

kmod-usb-serial-cp210x

1. lépés: 1. lépés: Manuel többterületi vágás

1. lépés: Manuel többterületi vágás
1. lépés: Manuel többterületi vágás
1. lépés: Manuel többterületi vágás
1. lépés: Manuel többterületi vágás

A képen látható, hogyan haladtam egy vágási területről 2 területre.

A robotom minden 2. napon automatikusan elindul, tehát amíg eszembe jutott, hogy egyik területről a másikra kell cserélnem, ez jól működött.

Két kézi kapcsolót használtam, például azokat, amelyeket egy csarnokban vagy lépcsőn használna.

Ez működött, kivéve azokat, amelyeket túl gyenge minőségűek használtam, és ezért hibákat kaptam beléjük, összezavarva őket

2. lépés: 2. lépés: az automatikus megoldás

2. lépés: Az automatikus megoldás
2. lépés: Az automatikus megoldás
2. lépés: Az automatikus megoldás
2. lépés: Az automatikus megoldás
2. lépés: Az automatikus megoldás
2. lépés: Az automatikus megoldás
2. lépés: Az automatikus megoldás
2. lépés: Az automatikus megoldás

Ezért úgy döntöttem, hogy valami automatikusat csinálok.

Kaptam egy használt Netgear R6100 útválasztót, ezt azért kaptam, mert rendelkezik wifivel, usb -vel és elegendő memóriával ahhoz, hogy kísérletezzen a kísérletezéssel, ahelyett, hogy az OpenWrt és a barátok zsúfolásáról szólna.

Kaptam egy ebays legjobb usb 2.0 hubot és egy 12V -os relé kártyát.

Aztán volt egy digisparkom egy korábbi projektből. 2020-04-23 SZERKESZTÉS: helyette egy usb2seriel dolgot használt

a reléket bekötöttem a kapcsolók helyett. 3 -as és 4 -es relét használtam

Ezután telepítettem az OpenWrt-et, és hozzáadtam hozzá a Crelay-t, a picocom-ot és a coreutils-stty-t.

2020-04-23 EDIT: hozzáadva xxk, kmod-usb-serial-cp210x is

12V -ot csatlakoztatott a routerhez és a relé kártyához.

2020-04-23 SZERKESZTÉS: az Urm 37 v3.2 verzióját használta az oldal többi része helyett

Aztán megtanultam valami "szórakoztató" dolgot. a relécsatlakozó megpróbálja bekapcsolni az usb hubot, ezáltal akadályozva a digispark helyes újraindítását. Tehát levágtam a tápkábelt az usb kábelben a relé kártyáról és az usb hubról.

Ekkor én bedugtam a digisparkot és az usb relé kártyát az usb 2.0 hubba, és a hubot az útválasztóba.

Nos, hogy őszinte legyek, programoztam a digisparkot, mielőtt hozzáadtam a routerhez

A digisparkban hozzáadtam egy gombot, amelyet a P1 és a Gnd közé kötöttem.

Ezt a gombot elhelyeztem, így a robot aktiválja, amint a garázsban töltődik.

rugót kellett hozzáadnom az aktiváláshoz, hogy jó elkötelezettséget kapjak.

3. lépés: 3. lépés: Szoftver

A fájl egy arduino ide programot tartalmaz a digispark számára.

A root/LawnSelector programba van helyezve.

Ennek a fájlnak szüksége van néhány digispark libre, például a digiCDC -re és az arduino ide -hoz hozzáadott digispark táblákra.

Aztán ott vannak a/root/GrassCtr/* fájlok.

Ezek azok a fájlok, amelyek ténylegesen elvégzik a munkát.

A Kreds1 a reléket1 területre változtatja

A Kreds2 a reléket2 területre változtatja

A KredsStatus megkérdezi az USB relét, hogy melyik terület aktív

2020-04-23 SZERKESZTÉS: Az olvasás digispark helyett használja az UltraSoundSerielt.

ReadDigiSpark, olvassa a híreket minden kedden.. Várjon. Olvassa be a digispark bemeneti állapotát

A GrassCtl végzi a gondolkodást.

Íme, mit csinál.

Ha a robot több mint 10 órán keresztül bent van, úgy dönt, hogy a robot éjszakára bent van, és ez egy flipflopot aktivál, amely minden második alkalommal elindítja minden területen. Ennek az az oka, hogy a robotom az egész él levágásával kezdi, és így minden második nap levágja a széleket.

Majd ha a robot nyír, az érzékelő jelzi, hogy a robot kint van.

Minden alkalommal, amikor a robot visszatér az akkumulátor töltésére (a definíció szerint több mint 20 perc), a terület a másik területre változik.

kérjük, vegye figyelembe. A szoftver isteni borzasztó rendetlenség, de működik, tehát előre és felfelé

4. lépés: 4. lépés: A szoftver aktiválása

A szoftver futtatásához valamit tennünk kell.

Hozzáadtam egy cronJobhoz

*/5 * * * */root/GrassCtrl/GrassCtl

a fájlhoz

/etc/crontabs/root

Aztán a cronjobs bekapcsolásához megtettem

/etc/init.d/cron enable

A legjobb tudomásom szerint a robot most váltani kezd az 1. vagy 2. kaszálási terület között, és minden alkalommal, amikor az akkumulátorokat tölti, megváltoztatja a kaszálást.

És igen, most minden megtörténik

Ajánlott: