maandag 18 februari 2013

Video Team Yomaju

Presentatievideo Team Yomaju (Yoshi Haesebeyt, Maarten Geerinck en Justin Verkest) voor projectweek 2013.

zondag 17 februari 2013

Conclusie: week 1

Conclusie:

De eerste dagen werd ons gevraagd eens te kijken naar de mogelijke obstakels die een robot kan tegenkomen op zijn pad, en dit bleken er al snel heel wat te zijn.
Trappen, tapijt, glazen deuren,...er zijn heel wat dingen die het de 'butler' lastig kunnen maken tijdens zijn verplaatsingen.
De opdracht gaat voorlopig zover niet, en dus zal de te maken 'butler' met veel van bovenstaande dingen niet direct rekening moeten houden.

Verder moest er gekeken worden naar de manier waarop de butler zich zou voortbewegen.
Al snel werden de ideeën van wielen en rupsbanden bovengehaald, aangezien dit zijn zeer voor de hand liggende keuzes zijn, maar er werd ook verder gekeken dan deze 2.
Ook in de dierenwereld of elders zijn er interessante manieren van voortbeweging te vinden die in de toekomstige butler misschien wel kunnen gebruikt worden. Zo denken we aan bijvoorbeeld spinnen, insecten, slangen...
Ze zouden misschien niet allemaal even bruikbaar blijken maar ze waren alvast een goede bron van inspiratie.
Bij het kiezen van de voortbeweging zal er uiteindelijk ook aandacht moeten geschonken worden aan het parkoer, de haalbaarheid, enz...

De laatste 3 dagen gingen we aan de slag met Lego Mindstorms. Dit stelde ons in staat om bepaalde ideeën en concepten om te zetten in een werkend 'prototype'.
Er werd geëxperimenteerd met verschillende manieren van obstakels overwinnen, taken vervullen(grijpen) en ook de verschillende mogelijke manieren van beweging werden eens van dichtbij bekeken en getest.

Achteraf kunnen we zeggen dat Lego Mindstorms zeer leuk 'speelgoed' is met heel wat mogelijkheden maar ook beperkingen. Hierdoor liep je soms al je snel aan tegen de limieten, wat u niet volledig in staat stelt te doen wat je net wilt. Zo kon je de robot zo bouwen om iets te laten grijpen maar dit liet dan weer niet toe om hem ook zo te bouwen dat hij bepaalde obstakels kon overrijden.

Toch kunnen we na deze week besluiten dat een robot bouwen niet in 1,2,3 is gebeurd en er dus heel wat bij komt kijken.
Er moet rekening gehouden worden met heel wat factoren zou men een robot willen maken die een butler kan vervangen. Alsook op 'technisch' gebied komt hier heel wat bij kijken.
Dit is niet geheel de opdracht en uiteraard ook niet haalbaar op deze korte periode, met onze kennis en middelen. Maar dit neemt niets weg van het feit dat wij met onze vergaarde kennis het huidige project tot een goed einde willen brengen.

Team J2Y2



TEAM4GLORY: wie zijn ze...



vrijdag 15 februari 2013

Laatste prototype: Parcoursrobot





De uitdaging vandaag bestond eruit een bepaald parcour met hindernissen af te leggen. We moesten van punt A naar punt B zien te bewegen. Echter er bevonden zich 2 obstakels onderweg. Ons idee bestond eruit om te rijden tot het eerste obstakel en vervolgens een lange arm uit te strekken om bv een blikje af te leveren over de hindernissen tot punt B. Wij proberen niet over of langs de hindernissen te rijden maar gewoon met een motoraangedreven arm te hindernissen te overbruggen.









Onderstaande foto is een screenshot van ons programma:


De werking is als volgt: De wielen worden aangedreven door motoren B en C. We stellen in dat deze constant in dezelfde richting draaien totdat de ultrasoonsensor een object detecteert. Als de sensor dus een object detecteert, stoppen beide motoren en staat de robot stil. Daarna wacht de robot 1 seconde tot het volgende commando. Vervolgens draait motor A 90° waardoor de arm vooruitgekatapulteerd wordt. (Nu zou je dus bv. een blikje op punt B kunnen plaatsen). Direct hierna draait de motor A 90° terug waardoor de arm teruggetrokken wordt. De robot wacht weer 1 seconde voor het volgende commando. Nu rijdt de robot (motor B en C achteruit) constant achteruit totdat de druksensor achteraan bevestigd ingedrukt wordt (bv. door het botsen). De robot staat stil.




concept prototype werking





Kennismaking Tafel 2

Samenvatting


De voelspriet-sensor die een vergrote oppervlakte kan detecteren door de circulaire beweging.


Soort van reptiel die (in theorie) elk hindernis kan overwinnen


Kruipende robot die voortgestuwd wordt door combinatie van rupsbeweging en cirkel-armslag





Conclusie: Om een stabiele robot te maken opteren we voor het reptiel-mechanisme.
Deze robot is laag bij de grond en kan elk obstakel overwinnen.
Als goedkope sensor zouden we opteren voor de voelsprieten die circulaire bewegingen maken.



Conclusie week 1

Eerst hebben we les gekregen over de zintuigen en de werking ervan bij de mens.
Vervolgens hebben we moeten nadenk over manieren van detecteren, dit hebben we aan de hand van schetsen en spuugmaquettes getest. We hebben ons daarna verder verdiept in het analyseren en begrijpen van detectie en de manieren waarop robots zich kunnen voortbewegen. Vanaf dag 3 hebben we deze toepassing moeten gebruiken bij het maken van robots aan de hand van lego mindstorms.
We maken kennis met de verschillende sensoren en de gebreken van de robots. Als eerst hebben we eenvoudige robots gemaakt die ongeveer 1 functie tegelijkertijd kunnen vervullen. Naarmate we meer inzicht kregen hebben we meer fucnties gecombineerd die complexer zijn in het uitvoeren en ook in het programmeren. Het concept dat we in de eerste dagen uitgewerkt hadden op papier, hebben we zo goed mogelijk proberen na te maken in de realiteit aan de hand van lego mindstorms. De laatste dag hebben we kennismakingsfilmpje van maximum 1 minuut gemaakt, wat onze persoonlijke intressen etc. weergeeft. Ook hebben we nog een robots gemaakt dat een parcour moest afleggen op een originele manier.

Tafel 2

Lorenz Danneels en Simon Lemmens

Conclusie Ontwerpweek + filmpje

Conclusie:

In het eerste deel van deze week hebben we heel wat verschillende sensor en bewegingen mogelijkheden bedacht. In het tweede deel van de week hebben we dit dan kunnen testen door middel van Lego NXT.

Hierbij kunnen we concluderen dat sommige sensors een grote foutmarge hebben, dat ze vaak missen of niet juist registreren: zoals de kleurensensor en de ultrasoon sensor. Langs de andere kant zijn er ook sensoren die het zeer goed doen zoals de druksensor en het oog dat een lijntje volgt.

Voor de beweging mogelijkheden hebben we er een héél deel uitgetest, van kruipen tot wandelen en uiteindelijk met de rupsbanden, hier kunnen we besluiten dat dit het best rijd en draait! hier hebben we heel wat bijgeleerd van wat de verschillende mogelijkheden zijn in het voortbewegen!

Voor het schrijven van deze programma's was het trial en error, maar het was des te fijn een goed werkende robot te hebben op het laatste. Dit was een toffe uitdaging!

Als voorbereiding op volgende week hebben we een filmpje gemaakt voor onze Nederlandse collega's:


concept tekening


Conclusie SEVEN

We begonnen deze week met een vage indruk van de opdracht. Eerst bestudeerden we wat perceptie nu eigenlijk inhoud. Dan gingen we die theorie omzetten in de praktijk door verschillende vormen van detectie te zoeken. Hoe kunnen we detectiesystemen ontwikkelen en welke doelen dragen ze in zich. Er bestaan talrijke soorten van detectie: fysisch, inductief, capacitief.. We kozen vooral voor fysisch en capacitief. (Zie Lego Mindstorm NTX 2.0)

Dag 2 ging dan meer over beweging. Hoe kunnen wij of andere organismen ons voortbewegen en wat zijn de voor- en nadelen ervan. Welk voortbewegingssysteem is ideaal voor welk doeleind en waarom? Kunnen we zelf voortbewegingssystemen uitdenken die geschikter zijn? Moeilijk dus.

Dag 3 kregen we de Lego Mindstorm NTX 2.0 dozen ter beschikking om snel en gemakkelijk systemen qua detectie en voortbeweging te bedenken. Onze eerste robot gemaakt door Senne VDB, Yoshie H, Jef VDB en Andreas D was een robot die een lijn op de grond detecteerde en die vervolgens ook volgde en tegelijk obstakels detecteerde die hij wegsloeg met een slagarm. Die beweging hebben we uitgebreid naar een grijper die een blikje vastgreep en na 5 seconden loste. In de namiddag moesten we specifiekere robots maken en de verschillende grenzen aftasten. We bouwden een robot die kon stappen, die beweging was na enkele testen niet ideaal om een parcours te volgen.

Dag 4 De finale test. Een laatste iteratie om de grenzen af te tasten. Een vastgelegd parcours waren de te behalen quota. Een filmpje om ons voor te stellen zie op de blog onder de het label SEVEN.

Groeten SEVEN

Who we arrrrr!


Als oplossing voor het hindernis parkoer van Olivier, hebben we een klein robotje met transportbanden de hindernissen ontwijken:


Als variatie hier op heb ik er een ultrasoon sensor op geplaatst, met een extra motor en een schorpioen arm, hierdoor slaat hij alles weg wat op z'n weg ligt!




Parcoursrobot


Deze robot werkt op twee wielen met als ondersteuning een soort van ski. De hardware is zodanig geprogrammeerd dat als de robot een object tegenkomt deze ontweken wordt. Hier wordt alleen een ultrasone sensor gebruikt en twee motoren.

Over obstakels rijden





Een simpel concept om over bepaalde obstakels te rijden.

Teampresentatie F²S²


donderdag 14 februari 2013

Trappenrobot bestuurd via Bluetooth


De trappenrobot kan door middel van een Android-applicatie genaamd NXTDroid bediend worden met een Android-smartphone. Je krijgt hierdoor bediening over de verschillende motoren die verwerkt zitten in de robot, waardoor je deze zelf kan besturen en obstakels laten overwinnen. In bovenstaande video bestuurt Yoshie de trappenrobot met zijn Samsung smartphone en leidt hem zelf over de obstakels, zonder gebruik te maken van de sensoren.

Trappenrobot




Deze robot werd zo in elkaar gestoken dat hij zonder veel problemen relatief hoge obstakels kan overwinnen. Hiervoor werd een steunarm gemonteerd die de neus van de robot omhoog duwt, waarna de robot zich vooruit beweegt en door middel van de rupsbanden en het rolwiel gemonteerd aan de steunarm, op het obstakel kan klimmen. De sensor registreert de afstand tot een trap, waarna de robot tot stilstand komt en zijn arm op de trap neerzet.



Het programma dat geschreven is om de robot autonoom te laten bewegen, ziet er als volgt uit:


Een ultrasone sensor wordt in een infinite loop geplaatst. Als de robot iets omberkt dat dichter dan 8 centimeter komt, stopt hij met rijden en brengt hij zijn arm naar beneden. Dan rijdt de robot twee seconden vooruit om het obstakel te overwinnen, om dan weer z'n arm naar omhoog te bewegen en verder te rijden tot het volgende obstakel.

Robot Grabber


Dit is een aangepaste versie van de robot die blikjes en andere obstakels uit zijn pad kon slaan. De slagende beweging is hierbij omgezet in een beweging waarbij de robot een arm om een obstakel voor hem heen slaat, om het zo in te klemmen en met zich mee te slepen.

Mindstorms dag 2

Een ietswat interessante manier om te bewegen.


Geen commentaar over de stabiliteit van het geheel



Een robot die objecten over zich kan heffen


Lego Mindstorms (dag2; video)


Lego Mindstorms (dag2; foto's)


















Prototype 3: Proof of concept + uitleg en sfeerbeelden


Nudat we alles eens geprobeerd hebben was de volgende stap het programma wat verfijnen en uitbreiden. Ook hoeft opgemerkt te worden dat de ultrasoonsensor het meerendeel van de tijd het blikje niet op tijd zag en het zo dus negeerde. Daarom hebben we deze sensor verticaal geplaatst i.p.v. horizontaal. We merkten op dat hij het blikje nu wel detecteerde. Ook hebben we de sensor wat naar beneden gekanteld voor een optimale werking.

Na veel problemen en proberen hebben we onze software als volgt geprogrammeerd:


--> De robot stapt zolang er geen blikje in zijn zicht komt. Als hij een blikje detecteert op 8 cm afstand dan stopt de robot met bewegen. Vervolgens gaan de grijpers dicht en zit het blikje vast. Als volgende stap neemt de robot het blikje mee en verplaatst hij het over de gewenste afstand.

Eens aangekomen op het gewenste punt, gaan de grijpers terug open en krijgt de persoon zijn flesje/blikje.
De robot gaat subtiel achteruit en laat de persoon van zijn frisse pint genieten. Deze werking ziet u in het filmpje...


ENKEL FOTO'S






Het zou wel de bedoeling zijn dat de grijpers op de mechanische arm gemonteerd worden (accordeonarm) om een bepaalde afstand te overbruggen. Dit hebben we niet meer kunnen monteren maar we zouden dit via pneumatische krachten willen aansturen. 










Prototype 2: Stapmechanisme + grijpmechanisme

1e Poging: 



2e Poging: 


Nudat onze robot zich vooruit kon bewegen, focusten we ons op een grijpmechanisme om een blikje te kunnen detecteren en vastgrijpen. We gebruikten een ultrasoonsensor om objecten te kunnen detecteren. De afstand stelden we in op 8 cm (omdat dit de afstand is waar de grijpers moeten sluiten. De grijpers zijn aangesloten aan een aparte motor die een commando krijgt als de ultrasoonsensor een blikje detecteert.



Onderstaande foto is een screenshot van de software:


De Beide motoren die de robot laten stappen blijven zolang draaien totdat de ultrasoonsensor een object tegenkomt binnen de 8 cm. Dan stoppen beide motoren en sluit het grijpmechanisme.

Prototype 1.1: Andere manier van voortbewegen































We hebben een andere, originelere manier bedacht om ons robot te laten voortbewegen. Wielen zijn vanzelfsprekend dus hebben we een manier gezocht om de robot telkens af te stoten zodat hij "stapt". Dit is gebasseerd op een schorpioen. De 2 poten die de robot afstoten hebben 2 rubbertjes die door de grip de robot kunnen afstoten. Op de filmpjes ziet u achteraan een volgwiel. Dit wordt niet motoraangedreven. Oorspronkelijk hadden we geen volgwiel maar de wrijving was te groot waardoor de robot trager vooruitging. Door de wielen was de wrijving kleiner waardoor de robot rapper vooruit ging.

Prototype 1: Accordeonarm


Ons concept gaat over het verplaatsen van een flesje/blikje bier over een bepaalde afstand. Om die afstand te bekomen moet de robot kunnen bewegen (vooruit, achteruit). Echter wat we ook willen toepassen is een arm gebasseerd op het accordeonprincipe. Zie bovenstaand filmpje. Door 2 krachten (waar de hand zich bevindt) gaat de arm vooruit.

Moonwalking Robot Point of View

Moonwalking Starwars Robot Point Of View. Deels handleiding, deels zelfgemaakt. Probleem => Geen grip!
Loopt cirkels.

Moonwalking robot

Moonwalking robot. De bedoeling van ons concept is dat de robot vooruit gaat stappen en zo ook hindernissen kan overwinnen. Dit is ons eerste prototype die werkt in die richting. Om de wrijving met de ondergrond groter te maken hebben we elastieken aan de onderzijde bevestigd.

Voelsprieten met grotere radius concept

Hier het principe van voelsprieten die een vergrote radius creëren..



Prototype 3 Filmpje

Ons 'werkend' prototype, bestuurd met android telefoon



Grijpmechanisme

Dit is de basis van ons grijpmechanisme. Het principe werkt maar is in dit geval te ingewikkeld. De overbrengen via tandwielen is te complex voor dit soort mechanisme. Een mogelijke oplossing zou zijn om de overbrenging via de vierarmstukjes rechtstreeks op de motor aan te sluiten ipv via de tandwielen. Ook is de kracht van de arm nog niet optimaal om een voorwerp goed vast te klemmen. Hier wordt verder aan gewerkt.
Om ons verder te verreiken in het bewegen als wandelen in plaats van rollen,
hebben we de schorpioen gemaakt om dat dit een gelijkaardig systeem is.




De wandelende schorpioen



Verzoek voor een test/3e prototype?

Tijdens de onderzoeksfase kwam ik deze tutorial tegen:
http://www.societyofrobots.com/programming_mobot.shtml

het idee om 2 sensoren te gebruiken kan naar mijn idee het heen en weer stotteren verhelpen (wat ik in veel video's tegen kom). En aangezien jullie de Mindstorm al in beweging hebben zou een testopstelling met deze methode niet te veel problemen opleveren.
Ik ben benieuwd naar jullie resultaat!

2de prototype

Hier zijn we bijna helemaal opnieuw begonnen, alles is compacter gemaakt zodat de motor minder gewicht moet opheffen.


Nu alles nog afstellen zodat we precies weten welke hoek hij achteraan moet draaien om een mooie bocht te maken.

Lego Mindstorm NTX 2.0 Maximum Destruction

Lego Mindstorm NTX 2.0 robot. Twee servomotoren sturen de robot. Een druksensor voelt wanneer robot tegen muur rijdt. Afstandssensor detecteert alle voorwerpen op 10 cm afstand van de robot. Kleursensor volgt blauwe lijn. Wanneer objecten in de weg staan slaat robot ze weg met arm gemonteerd op derde servomotor. Hillariteit alom! Enjoy.

Eerste prototype


Dit prototype maakt gebruik van (voorlopig) voorwielaandrijving.
Het is een principe zoals een gecko, hij kan scharnieren met zijn achterste wielen.
Ook is er een scharnierpunt in zijn middel waardoor hij zichzelf kan opheffen over obstakels of kan optrekken op bv. een trap.

Jammer genoeg is de constructie te zwaar/ te lang, hierdoor kan hij zichzelf niet optillen en rijden.


Eerste test van de wandelende salamander (voorwielaandrijving)


De tweede test is met achterwielaandrijving, hierdoor slipt het tandwiel niet constant door!


De derde versie is met grotere scharnieren, hierdoor maakt hij grotere stappen, maar hebben we als tegen effect dat de motor meer koppel moet leveren, hierdoor slipt het tandwiel makkelijker door.


Bij deze constructie speelt gewicht ook een zeer grote rol, om het goed te laten bewegen weegt de motor eigenlijk te zwaar, we hebben het gewicht al zo veel mogelijk laten zakken door de NXT extern te plaatsen.

Robot

Robot met 3 apart aangedreven wielen, tastsensor en ultrasone sensor




woensdag 13 februari 2013

Test 2: eindeloop

Test 2: een lijnvolger met eindeloop



Hier hebben we een probleem ondervonden. De schakelaar moet ingedrukt worden en dan gelost voordat het effectief een signaal stuurt.

Lego Mindstorm Robot: testversie 3



Als laatste testversie wilden we de ultrasonicsensor gebruiken om objecten te detecteren (zoals flesje bier want dit is een object die je niet zomaar over het hoofd mag zien). We stelden in dat de robot terug de zwarte lijn moest volgen zolang er geen objecten in de weg staan. Op het punt dat de robot op zijn pad een object detecteert, moet hij stoppen en wachten tot het object verwijderd is. Dan kan hij zijn pad verderzetten. De lus in het programma zorgt ervoor dat de handelingen herhaald worden.

Op onderstaande foto ziet u een screenshot van het programma:






Challenge accepted: Volg de donkerblauwe lijn


De uitdaging bestond erin een parcours te volgen met meerdere krommingen. We maakten hierbij gebruik van een lichtsensor die werkt op contrasten. Omdat de donkere lijn donkerder is dan de vloer volgt de robot de lijn (omdat we dit zo geprogrammeerd hebben dat hij het donkere oppervlak moet zoeken en zo telkens bijsturen en volgen). Wat we op het einde van de lijn opmerkten was dat de robot ronddraaide totdat hij de lijn terugvond om zo zijn pad verder te zetten.

Dit komt omdat het zo geprogrammeerd is dat als de sensor geen donker contrast ziet 1 van de wielen stopt met draaien en het andere wiel constant ronddraait totdat het een donker contrast vindt.

Lego Mindstorm Robot: testversie 2




Vervolgens hebben we in ons programma de snelheden van de verschillende servomotoren wat aangepast (try & error) en zo zijn we tot een iets vloeiendere beweging gekomen.

Lego Mindstorm Robot: testversie 1


Als eerste robotsturing hebben we ervoor gekozen om een zwarte lijn te volgen (line following). Echter Na een paar keer te testen kwamen we tot bovenstaand resultaat. Zoals u kunt zien is de beweging met happeringen en schokken. 


Onderstaande foto is een printscreen van ons programma:






Programma Mindstorms


Het geschreven programma voor de robot die een lijn volgt en obstakels uit de weg slaat.

Bovenaan: een loop waarin wordt vastgelegd dat de robot de lijn moet volgen aan de hand van de lichtsensor. Hiervoor werd het contrast op kleiner dan 40 vastgelegd, en werden alternerend motor B en C aan en uit gezet om bij te sturen waar nodig. Hierdoor kan de robot probleemloos een willekeurig en niet-rechtlijnig pad volgen.

Onderaan: een loop waarin wordt vastgelegd dat de robot alles dat zich in zijn pad bevindt en dichter dan 17 centimeter in de buurt staat, wegslaat door middel van zijn arm. Als er niets in de weg staat, rijdt de robot gewoon door. Als er wat in minder dan 17 centimeter voor de infraroodsensor komt te staan, zal de robot zijn arm ongeveer 100 graden heen en weer bewegen tot het object uit de weg is.

Lego Mindstorms Robot



Robot met lichtsensor om zo pad te kunnen volgen en met arm die obstakels uit de weg slaat.