Guest sasu

Robotinrakentajia?

19 viestiä aiheessa

Toteutan parhaillaan vanhaa haavettani eli yritän rakentaa oman robotin.

 

Kuusijalkainen kävelijä pitäisi saada aikaiseksi. Kunhan ensin saisi peruskävelyn aikaiseksi, sitten voisi miettiä, minkälaista tekoälyä robottiin istuttaa.

 

Nyt olen aivan alkumetreillä - yhtä jalkaa ohjaavasta protokortista on otettu savut.

 

Kortti ottaa RS-232C:llä pöytätietokoneesta vastaan ohjeita. Kortti ohjaa kolmea servoa, yksi per jalan nivel. Kortti mittaa jokaisen servon virrankulutuksen, jotta tietää esim. milloin jalka tarttuu esteeseen. Lisäksi kikkailin kortille LED-näytöt, joilla voisi näyttää vaikka servojen virrankulutuksen.

 

Prosessori on PIC16F870. Kun odottelin prossua postista, innoissani juotin vääränmallisen ic-jalan sille, sen vuoksi tuollainen ruma konvertterihökötys.

 

Jalan mekaniikka on vielä rakentamatta.

 

[ attachment removed ]

 

Jaa viesti


Link to post
Jaa muulla sivustolla

Vau, melkoisen hieno verme varmasti tulossa. Itse lähden opiskelemaan automatiikkaa, ja haaveenani on myös rakentaa joskus oma robotti, mutta se vaatii vielä paljon lisää oppia. Muista sitten laittaa aina edistymisestä kuvia ja muuta sälää tänne, seuraan rojektin kehittymistä varmasti suurella mielenkiinnolla.

 

Ainoa mitä olen tähän mennessä yrittänyt itse rakentaa on lennokki vanhan halvan RC-auton raadosta, mutta käytössäni olleet moottorit ja tuon auton piirilevy eivät oikein soveltuneet taivaalle.

Jaa viesti


Link to post
Jaa muulla sivustolla

Lego palikoista tuli pienempänä rakenneltua kaikenmaailman "robotteja", siihen on jääny se harrastus

Jaa viesti


Link to post
Jaa muulla sivustolla

Mäkään en oo vielä mitään robottia rakentanut, mutta sulautetut järjestelmät on muuten

kiinnostuksen kohteena. Innostuin niistä jo AMK:ssa ja jatkoin yliopistoon sähkötekniikan

puolelle ja otin pääaineeksi sulautetut.

 

Joskus rakentelin dekoodereja, joissa oli juuri pic 16f84. Sittemmin oon vaihtanut atmeliin.

Aluksi 2313, joka on kyllä vieläkin paljon käytössä. Sittemmin atmega,yms.

 

Monennäkösiä projekteja mulla on kyllä ollut, monet jääneet enemmän tai vähemmän kesken.

Oon nyt kesän aikana ajatellut jatkaa muutama vuosi sitten kesken jäänyttä propellerikelloa.

Mekaaniikka on jo suhtkoht kunnossa, mutta koodi puuttuu.

 

Eli kyseessä on siis alunperin ilmeisesti Bob Blickin keksimä idea laittaa rivi ledejä pyörimään ja

oikea-aikaisesti niitä sytyttämällä, saada aikaan illuusio ilmassa leijuvasta tekstistä.

 

Tässä alkuperäinen Blickin kello.

http://www.bobblick.com/techref/projects/propclock/propclock.html

 

Tuosta löytyy tosi paljon monia erilaisia sovelluksia. Kaupallisiakin on jo monia.

 

Jaa viesti


Link to post
Jaa muulla sivustolla

No niin, heti kun robotista tuli tietoinen, se kiinnostui lentämisestä. Ei olisi pitänyt lukea FSNordicia samalla koneella, jolla teen robotin ohjelmat. :P

 

[ attachment removed ]

 

Jaa viesti


Link to post
Jaa muulla sivustolla

Joo, pari vuotta sitten raksensin tällaisen: http://www.peppe.net/bonsai

 

VIA C3 prossulla oleva PC/104 emolevy, sarjaportissa kiinni 8 servon ohjauskortti, toisessa sarjaportissa GPS vastaanotin, USB:ssa webcami ja toisessa USB:ssa WiFi adapteri. Softa on skrätsistä tehty ja arvioi jatkuvasti GPS:n datan perusteella positiota ja liikevektoria sekä toteuttaa annettuja ohjeita. Esim. ajaa automaattisesti paikasta A paikkaan B tiettyjen waypointtien kautta. Suunta piti mitata elektronisella kompassilla mutta liiallisen häiriön takia toteutin sen niin että se lasketaan liikevektorista. Roboa voi ohjata manuaalisesti etänä läppäriltä WiFin yli (läppärillä on erillinen ohjaussofta liikkuvalla kartalla ja telemetrianäytöllä) tai se voidaan laittaa automaattiseen moodiin jolloin se toteuttaa annettuja komentoja (esim. "aja määritelty reitti"). Työn alla - muttei integroitu - on stereonäkö kahdella kameralla jolla robo huomaa esteet ja voi väistellä niitä. Stereonäkö toimii jo jotenkuten mutta vaatii liikaa tviikkausta jotta se olisi luotettava kaikissa olosuhteissa.

 

Peppe

 

Jaa viesti


Link to post
Jaa muulla sivustolla

Minulla on vielä matkaa tuollaisiin ominaisuuksiin. Kun on tarkoitus rakentaa kaikki alusta asti itse niin aikaa menee mekaniikkaan ja elektroniikkaan.

 

Mielenkiinnolla odotan sitä päivää, kun pääsen tekemään tekoälyalgoritmeja omaan robottiin.

 

Miten olet, Petrus, tehnyt näköalgoritmin?

Jaa viesti


Link to post
Jaa muulla sivustolla

Minulla oli jotakin vuosia sitten suunnitelmana rakentaa "taistelurobotti" http://www.robosota.fi/

Mutta nyt tuo suunnitelma on siirtynyt mappiin "sitten kun on aikaa" (lue: sitten kun jään eläkkeelle/voitan 7 oikein lotossa)

Innostuin aiheessta siinä määrin, että tulin ostaneeksi kaksi alaa käsittelevää kirjaakin. Nuo opukset olisivat kaupankin jos jotakuta kiinnostaa...

Juha.

Jaa viesti


Link to post
Jaa muulla sivustolla

Innostuin aiheessta siinä määrin, että tulin ostaneeksi kaksi alaa käsittelevää kirjaakin. Nuo opukset olisivat kaupankin jos jotakuta kiinnostaa...

Juha.

 

Millaisia opuksia tarkalleen? Jotain kauhean korkealentoista, vai robotinrakentamista taviksille?

Jaa viesti


Link to post
Jaa muulla sivustolla

Nuo kirjat ovat: Robot builder´s bonanza http://www.robotoid.com/books.html Ja kyseessä on 2nd edition, nyt näyttäisi lmestyneen jo kolmas painos. Kirjan alaotsikko on "99 inexpensive robotics projects".

Toinen kirja on Build your own combat robot http://doi.contentdirections.com/mr/mgh.jsp?doi=10.1036/0072194642 Ja nimensä mukaisesti se käsittelee "taistelurobottien" rakentamista.

Minulle nuo ovat tarpeettomia, joten jos jollain kiinnostusta, niin privaa tulemaan.

Juha.

Jaa viesti


Link to post
Jaa muulla sivustolla

No niin, nyt ensimmäinen servomoottori saa käskynsä ohjainkortilta. Samalla vähän paransin protokortin ergonomiaa.

 

Tuo peltilätkä sinisen johdon päässä on itseni maadoittamiseen ennen kuin kosken korttiin. Muuten voisin vahingossa antaa ESD-shokin jollekin kortin mikropiireistä.

 

En tiedä onko piirikortteja tapana asentaa puulevylle.  :P

 

[ attachment removed ]

 

Jaa viesti


Link to post
Jaa muulla sivustolla

Yleensähän ne "Pikku" töissä jätetään irralleen. No saahan sen noinkin tehtyä. Yksi tapa, miljoona mahdollisuutta. :)

 

-Oskari

Jaa viesti


Link to post
Jaa muulla sivustolla

Nyt ei tapahdu vähään aikaan mitään näkyvää, kun teen softaa.

 

Pystyn tällä hetkellä ohjaamaan yhtä servoa PC:ltä sarjaportin kautta yksinkertaisilla komennoilla. 7-segmenttinäyttö kertoo servon käyttämän virran. Sain jopa PICin softan latauksen toimimaan suoraan kortille kaapelilla, enää ei tarvitse repiä prossua ohjelmointilaitteeseen joka kerta kun softa muuttuu (ja se muuttuu usein).

 

Nyt on vielä saatava servon virrankulutustieto lähtemään pyydettäessä sarjaportista PC:lle, jotta tuleva PC-softa voi käyttää tietoa jos haluaa (lähinnä jalan jumittamisen havaitsemiseen kun virrankulutus pomppaa kattoon).

 

Sitten muutan koodin vielä ohjaamaan kaikkia kolmea servoa nykyisen yhden sijaan.

 

Sen jälkeen alkaakin jalan mekaniikan rakentaminen ja jalan heiluttelualgoritmin kehittäminen PC:llä.

 

Kun yksi jalkaa toimii, teen kahdesta jalasta ja parista vapaasti rullaavasta pyörästä "rollaattorirobotin" ja yritän saada sen etenemään kävelemällä. Kun se aikanaan toimii, seuraavaksi onkin vuorossa jo kuusi jalkaa ilman mitään apupyöriä.

 

On tämä vain palkitsevaa puuhaa. Tulee jatkuvasti vastoinkäymisiä ja yksi kerrallaan ne ratkeavat. Ja tällaisen mopoprosessorin ohjelmointi on helppoa - kertaakaan ei ole tarvinnut resetoida "kaatunutta" prosessoria.

 

PICin softavälineet (www.microchip.com) ovat muuten todella hyvät. Saan simuloitua softamuutokset todella vaivattomasti ja monipuolisesti PC:llä ennenkuin lataan ne kortille.

Jaa viesti


Link to post
Jaa muulla sivustolla

Miten olet, Petrus, tehnyt näköalgoritmin?

 

Stereonäkö toimii mulla niin että kummankin kameran kuva ensin blurrataan (Gaussian) jonka jälkeen Sobel edge-detecti ja sen jälkeen jokaista pikseliä kohden verrataan ikkunaa (esim. 10x10 pikseliä) horisontaalisesti toiseen kuvaan - sama scanline mutta eri horisontaalinen positio. Kun pienimmän erotuksen kohta löydetään niin tiedetään periaatteessa mistä kohtaa tietty kohta toisesta kuvasta löytyy toisesta. Siitä taas voi erittäin helposti laskea etäisyys kun tietää kameran välisen etäisyyden. Lopputulos on syvyyskartta jossa jokaista pikseliä kohden tiedetään etäisyys.

 

Tuo on yksinkertaistettu selitys. Pari yksityiskohtaa: blurri tarvitaan siihen että randomi noise (kohina) saadan poistettua. Muuten hyvät horisontaaliset matchit voivat vahingossa tulla hylätyksi sen takia että etsittävään ikkunaan osui pari pikseliä kohinaa. Edge detekti tehdään sen takia että tiedetään mitkä kohdat kuvasta kannattaa etsiä. Esim. pala valkoista seinää on lähes mahdoton löytää toisesta kuvasta koska lähes mikä tahansa kohta seinää kelpaa algoritmille. Sen takia sitä ei kannata edes yrittää. Tästä seuraa myös se, että suurten yksiväristen alueiden kohdalla syvyyskartaan tulee aukkoja koska etäisyyttä ei voitu laskea.

 

Suurimmat ongelmat ovat siinä että melkein karttaan kuin karttaan tulee aina pari täysin väärää etäisyysarvoa jotka tekevät pahimmillaan haamuja jotka sekoittavat tekoälyn täysin. Jos haamuja taas poistaa liian heppoisesti niin saattaa käydä niin että poistaa kartalta oikeita esteitä eikä robotti tajua kiertää niitä. Toinen ongelma on juuri suuret pienen kontrastin pinnat, sekä pinnat joissa on toistuvia kuvioita (esim. tiiliseinä).

 

Peppe

 

Jaa viesti


Link to post
Jaa muulla sivustolla

Kiitos, Petrus, konenäköselvityksestä. Olen itse vasta aloittamassa aiheeseen tutustumisen, joten kokemuksistasi on hienoa kuulla.

 

Oma robottini on ollut hetken jäissä kun innostuin välillä tekemään herätyskelloa.

 

Tässä on herätyskellon emolevy. Näyttö ja näppäimistö tulevat lattakaapeleilla omille levyilleen.

[ attachment removed / expired ]

 

Ensimmäinen kotitekoinen piirilevy tuli tässä tehtyä.

[ attachment removed / expired ]

 

Ohuimmat vedot ovat 0.016" eli 0,41 mm. Tästäkin on näköjään vielä mahdollisuus ohentaa.

[ attachment removed / expired ]

 

Herätyskellon emolevy lähti käyntiin ensimmäisellä softan latauksella - uskomatonta tuuria.

 

Kello toimii sekä muuntajan kautta tulevalla virralla että 9 voltin neppariparistolla. Jos verkosta tuleva virta katkeaa, vaihtaa kello automaattisesti paristolle. Näyttöön tulee kolme LEDiä, jotka kertovat jatkuvasti patterin jännitteen (vihreä-keltainen-punainen). Herätysääni on sotalaivan "Battlestations!" -sireeni eli UUIIIT...UUIIIT...UUIIIT.

 

Kide on erikoisvakaa 10 ppm, normaalit ovat 100 ppm. Onneksi kello tulee olemaan huoneenlämmössä niin ei tule kiteelle ainakaan suuria lämpöheilahteluja. Tarkkuuskidekin heittää laskelmieni mukaan sekunnin päivässä eli puoli minuuttia kuukaudessa. Ajattelin tehdä sellaisen softan, joka kellonajan säädön jälkeen laskee aina uuden korjauskertoimen. Kellon pitäisi siis käydä parin ajanasetuksen jälkeen melko tarkasti. Tämä on vasta teoriaa, katsotaan miten on käytäntö.

 

Kyllä on kivaa tämä askartelu.

 

Jaa viesti


Link to post
Jaa muulla sivustolla

Kiitos, Petrus, konenäköselvityksestä. Olen itse vasta aloittamassa aiheeseen tutustumisen, joten kokemuksistasi on hienoa kuulla.

 

Oma robottini on ollut hetken jäissä kun innostuin välillä tekemään herätyskelloa.

 

Herätyskellon emolevy lähti käyntiin ensimmäisellä softan latauksella - uskomatonta tuuria.

 

Kello toimii sekä muuntajan kautta tulevalla virralla että 9 voltin neppariparistolla. Jos verkosta tuleva virta katkeaa, vaihtaa kello automaattisesti paristolle. Näyttöön tulee kolme LEDiä, jotka kertovat jatkuvasti patterin jännitteen (vihreä-keltainen-punainen). Herätysääni on sotalaivan "Battlestations!" -sireeni eli UUIIIT...UUIIIT...UUIIIT.

 

Kide on erikoisvakaa 10 ppm, normaalit ovat 100 ppm. Onneksi kello tulee olemaan huoneenlämmössä niin ei tule kiteelle ainakaan suuria lämpöheilahteluja. Tarkkuuskidekin heittää laskelmieni mukaan sekunnin päivässä eli puoli minuuttia kuukaudessa. Ajattelin tehdä sellaisen softan, joka kellonajan säädön jälkeen laskee aina uuden korjauskertoimen. Kellon pitäisi siis käydä parin ajanasetuksen jälkeen melko tarkasti. Tämä on vasta teoriaa, katsotaan miten on käytäntö.

 

Kyllä on kivaa tämä askartelu.

 

Ei voi kuin ihailla näitä vekottimia, juuri tuollaisista härveleistä olen itsekkin kiinostunut ja haluaisin joku päivä vielä osata tehdä itse kaikenlaisia tarpeellisia härveleitä. Pitäisi ehkä yrittää päästä opiskelemaan sulautettuja järjestelmiä ensi keväänä.

 

Hannu

Jaa viesti


Link to post
Jaa muulla sivustolla

Nyt on herätyskello toimintakunnossa. Enää puuttuu kotelointi ja ohjelmiston viilausta.

 

Nykyisellä softallakin kello pysyy kohtuullisesti ajassa ja herättää sireeniäänellä.

 

Tältä kello näyttää paraatipuolelta. Peitän sen kotelossa läpinäkyvällä sinisellä pleksillä, niin että LED-numerot paistavat läpi. "Liikennevalot" paneelissa kertovat varapariston jännitteen. Kun menee punaiselle, on viimeistään aika vaihtaa patteri. Käyttövirta tulee normaalisti töpselimuuntajasta, patterilla katetaan sähkökatkot.

[ attachment removed ]

 

Kellossa on kolme piirilevyä. Alla emolevy, päällä näyttöyksikkö, näistä erillään näppäimistö.

[ attachment removed ]

 

Kaiutin on hauskan pieni. Tällä on riittävä taajuusalue, tehonkesto 1W ja lähtee ihan riittävästi ääntä.

[ attachment removed ]

 

Seuraavaksi palaankin sitten taas robottiprojektin pariin.

Jaa viesti


Link to post
Jaa muulla sivustolla

Nostan tän ylös, jos vaikka saisin vähän apuja omiin projekteihini. Minä tosiaan aikanaan ostin nuo aiemmin tässä ketjussa mainitut kirjat, ja nyt vasta on ollut aikaa tutustua niihin ja aloittaa väsäämään jotain omaa. Toistaiseksi olen tehnyt harjoitusmielessä jotain pientä härdelliä vanhan tulostimen osista, mutta tarkoitus olisi siirtyä vaativampiin projekteihin jossain vaiheessa.

 

Suurin ongelma tuntuu olevan, mistä saisi sopivia komponentteja tarpeeksi halvalla. Sähkömoottoreita olen repinyt vanhoista laitteista, mutta hammaspyöristä on pulaa. Olen löytänyt vain muutaman kaupan Suomessa, joka myy muovisia hammaspyöriä, mutta kaikki kaukana Tampereelta. Lisäksi olisi hyvä olla metallisia vähän isompia myös vaativampaa voimansiirtoa varten. Mistä te olette niitä kaivaneet?

 

Edit: Niin ja millä hintaa saa halvimmillaan toimivia servoja? Ja mistä niitä kannattaisi haeskella? Muutama askelmoottori mulla on, mutta niille pitänee olla mikroprosessori ohjaamassa.

 

Ja mille alustalle olette elektroniikkapiirinne väsänneet? En jaksaisi ruveta valottamaan ja syövyttämään omia piirilevyjä, joten jokin pienempitöinen versio olisi ihan mukava.

 

Kyselen lisää, jos tietäjiä löytyy. Kuvia projekteista voin laitella sitten, jos ne saa joskus valokuvaukselliseen kuntoon..

Jaa viesti


Link to post
Jaa muulla sivustolla

Luo uusi käyttäjätunnus tai kirjaudu sisään

Sinun täytyy olla jäsen osallistuaksesi keskusteluun

Luo käyttäjätili

Rekisteröi uusi käyttäjätili helposti ja nopeasti!


Luo uusi käyttäjätili

Kirjaudu sisään

Sinulla on jo käyttäjätili?


Kirjaudu sisään