maanantai 23. toukokuuta 2022

Robottiruohonleikkureista asiaa

Taas se alkoi - nurmikonleikkuu.


Vaikka käytössäni on päältä ajettava ruohonleikkuri, nurmikon leikkuu maistuu puulta. Silloin kun ajoin nurmikon työnnettävällä, siihen meni aikaa 1,5 tuntia. Ajettavalla aikaa menee tunti ja vartti. Ajansäästön luulisi olevan suurempi, mutta ei ole. Vaikka ajoleikkurin työleveys on noin 70% suurempi kuin työnnettävän, ja etenemisnopeus on suurempi, aikaa kuluu vekslaamiseen. Työnnettävällä koneella kulmasta ja käännöksestä selvisi yksinkertaisesti nostamalla aisaa ja siitä heti liikesuunta uuteen suuntaan. Ajoleikkurilla kaikki jyrkät käännökset, esteiden kiertäminen ja suunnanvaihdot ovat hitaita. Lisäksi turhaa ajoa tulee paljon, koska ajoleikkuria ei saa käännettyä paikallaan. Etuleikkuri olisi kenties vähän nopeampi, mutta ns. traktorimallinen on jäykkä liikkeissään. Robottiruohonleikkuri kiinnostaa minua siis kovasti.

Olen lukenut kaikki mainokset ja paljon muuta aineistoa, jota robottiruohonleikkureista (jatkossa leikkuri) on kirjoitettu netissä. Jälki on tasaista ja laitteet ovat varsin omatoimisia. Fiksuimmat osaavat vaihdella leikkuualan sisällä aloituspistettä. Löytyy varkausestoa, rinteennousukykyä, kykyä selvitys kosteassa ja muita lisäominaisuuksia. Mutta yksi on, jota leikkureista ei löydy: älykästä leikkuualan hallintaa.

Kaikki paitsi yksi leikkuri vaativat leikattavan alueen reunoille rajauskaapelin. Tämä yksi malli, joka kaapelia ei tarvitse, vaatii aidan. Se ajelee alueella satunnaisesti ja törmätessään seinään, vaihtaa suuntaa. Erittäin rajoittunut toimintamalli siis.

Ambrogio L60 B - tyhmempi kuin saapaas.

Reunakaapeli ei tule minun pihallani kysymykseen. Kaapelia pitäisi olla "kilometreittäin". Lisäksi kaapelilla pitää eristää nurmikon keskellä olevat saarekkeet jos niillä ei ole selvää "törmättävää" reunaa. Leikkureissahan on tunnistimet, jotta ne osaavat väistää nurmikolla olevia satunnaisia esteitä esim. leluja tai puutarhakalusteita. Entä miten käy kun sähköt katkeavat? Onko reunakaapelin virran syötössä akkuvarmistus? Jos ei ole, leikkuri karkaa naapurin puolelle.

Reunakaapelin asentaminen työnä ei olisi minulle ongelma. Osaan vetää kaapelia. Pihallani on neljä selvästi erillään olevaa leikattavaa aluetta ja leikkurin pitäisi siirtyä niiden välillä ilman leikkuuta. Tämä on monelle leikkurille vaikea rasti. Kaapelin voi mainosten mukaan jättää nurmen pinnalle, josta se uppoutuu kasvavan heinän sekaan. Tuskin sentään. Kyllä se on pakko upottaa maahan. Pitkä kaapelisilmukka toimii lisäksi melkoisena antennina, jolle ukonilma ei varmasti tee hyvää.

Olen siis odotellut sen verran älykästä leikkuria, että se selviää pihasta ilman rajaavaa reunakaapelia. Sellaista ei ole markkinoilla ainakaan kesällä 2022. Netistä löytyi sivu, jossa oli kerrottu useista projekteista kehittää leikkuri, joka toimii ilman reunakaapelia. Ratkaisuja on useita erilaisia. GPS-paikannus tulee ensimmäisenä mieleen. Ongelma on tarkkuus, joka ei kuluttajakäytössä riitä pihanurmikoiden leikkuuseen. GPS-paikantavia leikkureita on olemassa, mutta ne soveltuvat vain suurille yhtenäisille alueille kuten esim. golfkentille.

Yksi ehdotettu ratkaisu on pohjan tunnistamisen. Leikkuri siis tunnistaa nurmen ja pysyy vain sen päällä ja leikkaa vain sitä. Tätä on vaikea kuvitella toimivaksi kun katson omaa pihaani, jossa kasvaa kaikenlaista vihreää ja ei vihreää.

Matkan ja sitä kautta etäisyyden mittaus ei luonnollisesti toimi, koska pyörien sutiessa, joka tapahtuu todella helposti, leikkuri hukkaa ennemmin kuin luuletkaan oman paikkansa.

Ratkaisu

Olen keksinyt miten robottiruohonleikkuri toimisi monimuotoisilla pihoilla, jotka sisältävät useita toisistaan erillään olevia leikattavia alueita, alueita joille ei saa mennä; alueita joille saa mennä, mutta joita ei leikata; alueita, joita leikataan useammin/harvemmin, ja kaikkea muuta erikseen määriteltävää.

Ratkaisu on yhdistää useampi paikannustapa ja tehdä leikkurille oma kartta, joka kertoo mitä missäkin on. Tämä vaatii tietysti käyttöönotossa hieman vaivaa, mutta jatkossa kaikki on todella paljon helpompaa. Koska minulla ei ole taloudellisia eikä ajallisia rahkeita toteuttaa tätä, kerron sen tässä nyt koko maailmalle. Idea on siis kaikkien vapaassa käytössä. Jos ja kun tällainen laite tulee markkinoille, minä voin kertoa keksineeni sen.

Leikkurin paikannus.

Alueelle asennetaan tarvittava määrä majakoita. Leikkurin ei tarvitse nähdä majakkaa kaiken aikaa, mutta suurin osa leikattavasta alueesta on oltava sellaista, että siihen näkyy vähintään kaksi majakkaa. Majakka on heijastin, josta leikkurissa oleva etäisyysanturi saa heijasteen. Etäisyysanturi voi olla esimerkiksi samanlainen kuin robottipölynimureissa on. Tunnetuin taitaa olla lidar eli valolla tai ultravioletilla valolla toimiva etäisyysmittaus. Sisätiloissa tämä toimii tunnetusti ilman heijastinta josta mittava säde kimpoaa takaisin, mutta ulkona pihalla tämä lienee tarpeen. Toki etäisyysmittaus voidaan tehdä laserilla millimetrin tuhannesosan tarkkuudella, mutta tässä meille riittää +- 5 cm tarkkuus.

Kun leikkurin anturit saavat etäisyyden kahteen majakkaan, paikka voidaan laskea pythagoraan lauseella ja trigonimisilla funktioilla. Simppeleinkin mikrokontrolleri osaa tämän ja niille löytyy valmiita palikoita ja sovelluksia etäisyysmittareille.

Tavallisella pihalla on varjopaikkoja, johon majakat eivät näy. Eikä ole tarkoituksenmukaista asentaa pihaa täyteen heijastimia tms. Leikkurin on siis myös mitattava kulkemaansa matkaa, jotta se selviää muutaman metrin katvealueesta. Tällä sokkomatkalla tapahtuu väistämättä pyörien sutimista ja muita häiriöitä etenemisessä. Tämä ei haittaa, sillä kun leikkuri tulee esteen takaa taas majakoiden näköpiiriin se saa paikannettua itsensä kartalle. Hienosti ilmaistuna leikkurin paikka kartalla saadaan kalibroitua. Riittää, että yhteys edes yhteen majakkaan säilyy niin matkaa voidaan arvioida likimääräisesti. Ja tiukassa paikassa voidaan muutama metri edetä pelkästään pyöristä tulevan matkan mittauksen avulla. Ja erittäin tiukassa paikassa leikkuri pysähtyy ja pakittaa kunnes saa paikannettua itsensä. Ja todella erittäin tiukkaan paikkaan voi asentaa yhden majakan lisää.

Tähän asti tässä ei ole mitään ihmeellistä, mutta nyt tulee se kuningasajatus: Piha kartoitetaan ja se jaetaan esim. 0,5 x 0,5 m ruuduiksi. Jokaiselle ruudulle määritellään mitä siinä on ja mitä leikkurin pitää siinä tehdä: nurmikkoa - leikkaa, hiekkaa - älä leikkaa, kivetys - aja ohi, niittykukkia - leikkaa vasta elokuussa, leikkialue - pääsy kielletty, käytävä - terät seis siirtoajo, latausasema - tänne latautumaan, katos - tänne suojaan jos sataa.

Dodiin! Nyt leikkuri tietää missä se on ja mitä sen pitää tehdä. Jos pihalle istutetaan uusi pensas, merkitään sen paikka karttaan punaisella ja leikkuri osaa väistää pensaan. Jos pihalta poistetaan joku este ja tilalle tulee nurmikkoa, merkitään karttaa uusi vihreä ruutu, ja leikkuri leikkaa sen. Toki leikkurissa on törmäysanturit, jotta se ei puske väkisin päin nurmikolle unohtuneeseen grilliin tai lannoitesäkkiin.

Entä mistä se kartta tulee ja missä se on? Kartta on tietysti omistajan kännykässä tai tabletissa. Helpommin sen saa ostopalveluna kun laitteen myyjä ottaa dronella kuvan pihasta ylävinkkelistä ja asiakas kertoo samalla mitä haluaa. 


Tässä pihan keskelle on jo määritelty punaisella alue, jota ei leikata. Huomaa internationaaliset tekstit globaalissa apissa 😎.

Toinen vaihtoehto on manuaalinen opettaminen. Leikkurille opetetaan piha kuljettamalla sitä pihaa ympäri ja kertomalla mikä paikka on mikä. Tietenkään koko leikkuria ei kanniskella pihalla vaan ainoastaan leikkurin älyllistä osaa, joka paikoittaa samalla itseään.

Tästä on tietysti rajattoman mahdollisuudet kehittää erilaisia välimuotoja. Valokuva pihasta ja siihen osoittamalla kerrotaan mikä on mikä. Tai piirretään pihan kartta asemapiirroksen tai puutarhasuunnitelman mukaan. Netti on täynnä ohjelmia, jolla voi suunnitella omaa pihaansa. Niihin voi aivan hyvin lisätä ohjeet robottiruohonleikkurille. Puutarhahifistelijät tekevät tämän siis itse ja ne joilla ei ole pikkurahasta puute ostavat pihan kartoituksen avaimet käteen -palveluna sitä tarjoavalta laitevalmistajalta.

Ohjelmallisesti tämä on erittäin yksinkertainen toteuttaa:

mittaa_etäisyydet_majakoihin
laske_paikka[x,y]
if [x,y] = (nurmikko) then terät:pyörii
if [x,y] = (hiekka) then terät:seis
if akku=(loppumassa) then mene ruutuun [123,456]
if alue=(valmis) then terät:seis ja mene:seuraava alue
jne.

Huom. tämä ei ole oikeaa ohjelmakoodia. Sen on tarkoitus havainnollistaa maallikoille miten asia teoriassa toimii. Todellisuudessa tarvitaan huomattavasti enemmän ja monimutkaisempaa koodia. Se ei ole ongelma, sillä sitä varten meillä on olemassa nörttejä. Maailma on täynnä erilaisia karttasovellutuksia, ja tämä nurmikolle paikoittaminen on niistä sieltä yksinkertaisimmasta päästä.

Kun leikkurin paikka on selvillä, katsotaan mitä karttaruutu kertoo ja sen mukaan ohjataan leikkuria. Leikkureiden ajelu sinne tänne, haluttu leikkausaika, lataukseen hakeutuminen yms. toimethan ovat jo olemassa nykymalleissa.

Pienimuotoisilla pihoilla ruudukon koko voidaan pienentää ja laajoilla selkeillä alueilla ruudun koko voi olla suurempi. Ihan miten asiakas tahtoo.

Projektin suurin työ on etsiä etäisyyden mittaava anturi ja sille vastinkappale, joka toimii piha-olosuhteissa ja nimenomaan järkevään hintaan. Jos raha ei ole esteenä, näitä on saatavissa suoraan hyllystä. Esim. FGM-148 Javelin panssarintorjuntaohjus sisältää tarvittavan etäisyydenmittaustekniikan, mutta hintaluokka on varmaan kymmentuhatkertainen siihen mitä kaavailemassani robottiruohonleikkurissa tarvitaan.

Lienee toiveajattelua, että tämä sovellutus toimisi off-line tilassa? Se on varmaa, että jos joku tämän sovelluksen tekee, se vaatii netin toimiakseen ja se taas tarkoittaa sitä, että pihasi tiedot ovat netissä kiinalaisten vapaassa käytössä. Itse jos koodaisin ohjelman, niin se asennettaisiin kaikkineen lisukkeineen omalle laitteelle, eikä se olisi millään lailla riippuvainen netistä tai ylipäätään kytketty nettiin. Eli tietoturva-asiat pitää jonkun miettiä kuntoon.

Oletan, että kiinalaisilla elektroniikkavalmistajilla on tekeillä robottiruohonleikkureiden etäisyys-paikoitus-anturi-paketti. Massatuotettuna sellainen maksaa yhden euron kappaleelta. Kun leikkurivalmistajat ottavat ne tuotantokäyttöön, alkaa nurmikonleikkuun uusi aikakausi. Sitä odotellessa lähden päristelemään...






Ei kommentteja:

Lähetä kommentti