Sida 1 av 2

Dustino, en Arduino robotdammsugare

Postat: 12 april 2014, 17:54:24
av JonasJ
Hej!

Tänkte passa på att berätta lite kring ett pågående projekt som jag är inblandad i. Leif från Drones Networking och jag kom i kontakt med varandra föregående sommar och insåg att vi var väldigt lika (läs robotnördar :)) och Dustino som vi har döpt vår produkt till är (ett av förhoppningsvis många fler!) resultatet av vårt samarbete.

Vad är då Dustino undrar ni säkert. Jo, både Leif och jag har insett att teknikundervisningen i skolorna har kraftigt minskat. Det finns förstås undantag men många av de tekniklärare vi har haft kontakt med kan vittna om att praktiskt teknik är något som tyvärr inte lärs ut i tillräckligt grad. Detta är något som vi gärna vill ändra och få lärare och skolan att inse att teknik faktiskt kan vara fantastiskt roligt och att det finns oerhört intressanta jobb därute om man har med sig teknikkunskaper i ryggsäcken. Vi funderade och funderade på vad som kunde få elever att tycka teknik är roligt och plötsligt dök den en dag upp: Siba började sälja en extremt billig robotdammsugare (nu finns den att hitta lite överallt), endast 499 kr. Visst den är naturligtvis inte fullproppad av nyaste tekniken med automatiskt laddning och LIDAR som man hittar på de dyrare modellerna men för en elev som inte har rört robotar tidigare borde den vara en ypperlig plattform att börja utforska robotvärlden med. Sagt och gjort, en antal dammsugare köpts in och dissekerades i minsta beståndsdelar. Till vår lycka visade deng vara som gjord för hackande. Med ett par skruvar kan man enkelt öppna upp roboten och få tillgång till allt "godis".
_DSC0246.jpg
_DSC0252.jpg
Men vi ville mer än att bara låta eleverna skruva i en robot. Vi ville även lära ut hur man programmerar robotar (på en lagom nybörjarnivå förstås). Efter ett par månaders utvecklande (kom ihåg att vi gör detta på sena kvällar och fritiden) och många nätter med alldeles för lite sömn blev resultatet det vi kallar Dustino: Ett styrkort som baseras på Arduino Leonardo och som (nästan) helt kan ersätta det styrkort som sitter i roboten.
_DSC0614.jpg
Vi lyckades dock inte på första försöket. Det tog 3 prototypkort innan vi hade kommit fram till något som började bli användbart men det var en skön känsla att slå på strömmen och inse att vi har något som faktiskt går att använda!

En kort genomgång vad man hittar på kortet:
hw.png
1) H-brygga
2) ATMega32U4 med 16 MHz kristall
3) ISP
4) RX/TX LED:ar
5) Reset knapp
6) USB kontakt
7) 5V regulator
8 ) Spänningsindikator
9) Stötsensor
10) Huvudströmbrytare
11) Batterispänningsavläsare
12) Användarstyrd LED
13) 8v regulator (för diverse motorer)
14) FET-styrning av diverse motorer

Ett Arduino bibliotek och flera exempel gjordes för att underlätta för eleverna och lärarna. Genom biblioteket kan man styra all hårdvara utan att ha detaljkunskaper om hur roboten är uppbyggd.

Kod: Markera allt

// Dustino 
// (c)2014 Hobbytronik
// www.dustino.se
//
// Beskrivning:
// Kör framåt tills roboten krockar. Backa först och sväng sedan slumpässigt
// åt något håll.
//
#include <Dustino.h>

Dustino dustino;

void setup()
{
  dustino.init();

  // Skapa en slumptalsbörjan genom att läsa av en analog
  // ingång som inte är kopplat till något
  randomSeed(analogRead(A9));
}

void turn(int dir)
{
  // Jepp, stäng av motorerna!
  dustino.setMotorSpeeds(0, 0);
  delay(200);

  // Backa först från hindret så att roboten kan
  // svänga obehindrat
  dustino.setMotorSpeeds(-200, -200);
  delay(1200);

  // Kontrollera vilket håll roboten ska snurra
  if(dir == 0)
    dustino.setMotorSpeeds(-150, 150);
  else
    dustino.setMotorSpeeds(150, -150);

  // Slumpa hur länge roboten ska svänga
  delay(random(800, 1200));
  dustino.setMotorSpeeds(0, 0);
}

void loop()
{  
  // Kontrollera om roboten har kört på något
  if(dustino.isBumperSensorActive())
  {
    dustino.setLED(true);
    turn(random(0, 1));
  }
  else
  {
    // Nej, ingen fara, Roboten kan fortsätta rakt fram
    dustino.setMotorSpeeds(200, 200);
    dustino.setLED(false);
  }
}
En manual och en hemsida senare kändes det som att vi behövde hjälp att utvärdera vad vi har fått fram. En fråga om intresserade robotungdomar gick ut framförallt i Kungsbacka och vi fick ihop en 8-9 st som ville gå vår pilotkurs och hjälpa oss med att testa vår robot. Kursen startades för ett par veckor sedan och nu är det 4 gånger kvar. Responsen hittills har varit mycket god och alla har kommit tillbaka för att vara med på fortsättningen vilket vi tolkar som ett gott tecken :)

Nu har arbetet börjat med nästa version av Dustino. Det som saknades i den första version är framförallt att kunna ladda roboten. Det vill vi gärna få med på styrkortet! Dessutom håller vi på att ta fram tilläggskort för de som vill utöka roboten med fler funktioner. Ett sådant kort är t.ex. Bluetooth så att det blir möjligt att styra roboten från en telefon. Vi kommer också ta fram kursmaterial för intresserade lärare.

Re: Dustino, en Arduino robotdammsugare

Postat: 12 april 2014, 18:10:48
av Micke_s
Trevligt intiativ :)
Saknar schema i manualen.
Sedan hade lite expansionsmöjligheter varit trevligt tror jag.

Edit: schemat fanns visst på webbsidan

Re: Dustino, en Arduino robotdammsugare

Postat: 12 april 2014, 21:29:37
av JonasJ
Schemat kommer att läggas in i manualen så småningom. Det är inte så många I/Os över på processorn men de som finns kommer att i version 2 dras till en extra header. Samma header kommer att användas för montering av tilläggskorten (addons). Vi funderar fortfarande på vilka tilläggskort som kan vara intressanta bland annat:

1) Wifi
2) Bluetooth
3) Extra I/O som är skyddade
4) Display
5) Ljudchips
6) Kompass, accel och gyro

etc. Svårigheten är att bestämma vilka vi ska göra och exakt vad som ska finnas på korten. Man kan t.ex. tänka sig ett Bluetooth kort kombinerad med 3 (extra IOs). Tanken är att dels kunna utnyttja SPI samt även UART för tilläggskorten. Då kan man i princip konstruera vilka tilläggskort som helst med med hjälp av en liten slavprocessor.

/Jonas

Re: Dustino, en Arduino robotdammsugare

Postat: 12 april 2014, 22:49:02
av Borken
finns det nån möjlighet att köpa ett kort?

Re: Dustino, en Arduino robotdammsugare

Postat: 13 april 2014, 01:40:51
av blueint
Fungerar robotdammsugaren vettigt som just dammsugare?

Re: Dustino, en Arduino robotdammsugare

Postat: 13 april 2014, 02:11:51
av NULL
Roligt projekt! :tumupp:

Re: Dustino, en Arduino robotdammsugare

Postat: 13 april 2014, 02:30:10
av blueint
Trodde först att det satt en Arduino i den modellen som SIBA säljer .. :vissla: :D
Nästan för bra :P

Kul projekt iaf :tumupp:

Kanske kretskortets dimensioner vore bra att lägga ut om någon vill göra en ARM version? med t.ex LIDAR?

Re: Dustino, en Arduino robotdammsugare

Postat: 13 april 2014, 13:02:57
av JonasJ
Borken: Tyvärr inte just nu. De 10 kort som jag tillverkat har gått åt till kursen plus att vi vill ha något extra för att kunna visa upp för skolor. Till hösten är det tänkt att vi ska ha kört en större batch och då finns det möjlighet för dig att köpa. Vi kommer också kunna erbjuda själva dammsugaren till ett bättre pris än vad man hittar i affärerna (vi har pratat och fått en överenskommelse med grossisten av robotdammsugaren). Paketpris helt enkelt.

Blueint: Nej, så enkelt var det inte :D Så här ser orginalkortet ut.

Översidan
_DSC0255.jpg
Undersidan
_DSC0257.jpg
Roboten är helt klart prisvärd. Jag gjorde misstaget att berätta för mina barn att jag köpte en robotdammsugare och de blev mäkta arga på att jag tänkte "döda" roboten som de snabbt döpte till Bertil. Bertil har efter det varit en trogen vän och del av familjen. Han dammsuger helt OK men är inte speciellt uthålligt och har svårt för mattor. Bortsett från det gör han vad han ska.

En mekanisk ritning kommer men jag har ännu inte lyckats få monteringshålen riktigt var de ska vara. Förhoppningsvis blir det rätt på nästa version och då kommer jag även släppa måtten på kretskort.

Re: Dustino, en Arduino robotdammsugare

Postat: 13 april 2014, 17:07:35
av blueint
Om du har flera robotdammsugare kanske ett förslag är att löda bort allt på ett befintligt kontrollerkort och lägga det i en scanner tillsammans med linjaler i X- och Y-led så att du får en "ritning" direkt?

Vad är det som styr på orginalkortet? och finns det möjlighet att modifiera apparaten så att den klarar mattor? vad är det som krånglar med mattsugningen annars?

Re: Dustino, en Arduino robotdammsugare

Postat: 14 april 2014, 23:39:27
av JonasJ
Problem är att den fastnar på mattor. Jag gissar att motorerna inte är tillräckligt starka och att dammsugaren väger för lite. Har inte provat så mycket eftersom vi tar bort mattan i rummen där den ska köra (man vill gärna ha det rent under mattan också :))

Det sitter någon mikrokontroller-historia på kortet. Det är den som sitter precis till höger ovanför strömbrytaren. Den har något limmat på sig (märkt 164J100, jag är dock inte säker på att det är en 6 eftersom den har blivit lite skavd). Tar man bort den står det RV285R tryckt med stora gula tecken som tyvärr täcker typbeteckningen. Det verkar vara företaget ELAN som har gjort chipset. ELAN är tydligen kända för att göra kloner av PIC-processorerna.

Jag har inte köpt in tillräckligt många dammsugare för att kunna löda bort alla komponenter på en och nu har jag dessutom nästan kommit hamn. Hade jag börjat om från början hade det nog varit en lättare väg.

Re: Dustino, en Arduino robotdammsugare

Postat: 16 april 2014, 02:36:17
av NULL
Om den är för lätt, kanske du kan mula i lite mer batterier...

Re: Dustino, en Arduino robotdammsugare

Postat: 18 april 2014, 18:10:02
av retundo
Intressant projekt. Får mig genast att tänka på hur häftigt det skulle vara med ordenligt med processorkraft och köra http://www.ros.org/ på den. Men man borde säkert fylla på med lite mera givare då också. Kanske ett framtida open hardware projekt för elektronikforumet att utveckla? :)

Re: Dustino, en Arduino robotdammsugare

Postat: 18 april 2014, 18:38:31
av Lennart Aspenryd
Återigen ett projekt i rätt riktning.
Man måste inte uppfinna hjulen varje gång man skall ha kul.

Skall följas, jag gillar detta med att köpa in produkter som masstillverkats för andra ändamål.

Re: Dustino, en Arduino robotdammsugare

Postat: 30 april 2014, 14:13:53
av Virror
Helt klart ett kul projekt!
Blev lite sugen på en robotdammsugare, sjukt tråkigt att städa : D

Re: Dustino, en Arduino robotdammsugare

Postat: 9 maj 2014, 08:53:59
av Ulf
Himla kul och vettigt projekt!!


Lite OT:
Jag har kika lite på dessa och något jag har kommit fram till är att de bla pga storleken måste tömmas relativt ofta.

Det skulle vara najs att få till en tömmningsstation, kanske en fast damsugare som suger ur roboten...