JunkBot #2: 2 servo quadrapod


19-10-2005

Na enig knutselen met een eerste beam-bot (MightyMouse) besloot ik een walker te maken. Een walker is een beam-bot die loopt.

Het probleem met mijn eerste junkbot was dat de motoren niet krachtig genoeg zijn om de bot aan te drijven. Omdat ik nog twee servo's had liggen die John Weber mij ooit gegeven had heb ik een walker gemaakt. Door servo's te gebruiken voor de aandrijven is het probleem van het meesjouwen van relatief zware accu's opgelost.

Voor de softwarematige aansturing wordt een PIC16F819 microcontroller gebruikt waarmee een PWM signaal voor de servo's gepulst kan worden. Hierdoor is de Walker slechts voorzien van 1 IC. Hier links een foto van versie 1 van de walker.

De functionaliteit is beperkt tot vooruit lopen omdat de sensors nog niet aangesloten zijn. Het verzinnen van hoe zo'n ding kan lopen was eigenlijk het moeilijkste gedeelte van het hele project. Alles wat hierna nog komt is slechts een toevoeging.


De stroomvoorziening wordt verzorgd door twee Lithium-Ion cellen. Deze cellen zijn afkomstig uit defecte laptop accu's. Het aardige van een defect laptop accupack is dat er altijd maar een paar cellen defect zijn, de rest is prima te gebruiken. Li-Ion accu's kenmerken zich door een zeer hoge energie-dichtheid. De cellen hier hebben een capaciteit van 800mA per stuk! Het opladen ervan is echter een truuk apart. Li-Ion cellen exploderen bij een te hoge laadstroom.
Filmpje van exploderende LiIon cel
Nog zo'n leuk filmpje
Dit probleem is overigens ook de reden dat in een laptop accupack ook diverse thermistors ingebouwd zijn die uiteraard weer voor de uitbreiding van de junkbot gebruikt kunnen worden. De hier gebruikte cellen zijn LiIon 18650, 3.7 V nominaal, 800 mAh en ca. wegen 25 gram. Geladen leveren ze een spanning van ongeveer 4.2 V. In een ander accupack ontdekte ik overigens 1400 mAh cellen.

Het is mogelijk te discussieren of het wel of niet een Beam-bot is (Wikipedia over BEAM robotics) maar vast staat dat deze walker wel een JunkBot is. De JunkBot filosofie volgend zijn de poten van hengsels van verfbussen, de 2 servo's waren niet kapot maar hadden niet de juiste aansluitingen meer en daardoor weggegeven door een modelbouwer, de electronica en schakelaars komen uit een kapotte klokradio en de accu is samengesteld uit cellen uit een kapotte laptop accu. De voeten aan de achterste poten zijn schokdempers uit het mechaniek van een autoradio/cd-speler.

De lopende beweging met vier poten wordt als volgt gerealiseerd: de voorpoten bewegen in het verticale vlak, de achterpoten in het horizontale. Tijdens het lopen komt door het draaien van het lichaam ten opzichte van de achterpoten telkens een voorpoot omhoog. In deze stand worden dan de voorpoten verdraaid waardoor de meest uitstaande voorpoot het lichaam naar zich toe trekt. Het is dus zaak dat de voorpoten goed grip hebben en de achterpoten weinig. Dit is de reden dat het prototype van stukken kurk voorzien is.

Het electronische gedeelte is ontworpen met behulp van tinyCad. De opbouw van de schakeling (schema) is erg eenvoudig omdat alle functionaliteit door de microprocessor wordt geleverd. Naast de stroomvoorziening en het aansluiten van de i/o's is er een minimaal circuitje opgenomen die in-circuit programming van de microprocessor mogelijk maakt. De voor de servo' benodigde PWM signalen worden door de microprocessor gegenereerd. Om een zeer rudimentaire vorm van debugging te kunnen doen tijdens het lopen zit er een ledje op de print.

Inmiddels wordt aan de hand van deze betaversie een nieuw model gebouwd. Hiervoor wordt een nieuwe print gemaakt met nette connectors en dergelijke. Loshangende draden hebben al een microprocessor gekost. De logische bestuurbare pinnen zijn redelijk kortsluitvast, het voedingsgedeelte niet. Omdraaien van de polariteit bleek de PIC16F819 microcontroller wel te overleven. Hij werd snel erg heet, maar ging gelukkig niet kapot. Omdat de print toch opnieuwe gebouwd wordt, wordt er ook een piezo buzzer op gebouwd zodat de bot ook geluid kan maken. Door middel van pin-jacks worden alle aansluitdraden van de componenten straks met een stekkertje op de print gestoken.

De servo's worden gevoed uit het parrallel schakelen van de Li-Ion cellen, de schakeling zelf wordt gevoed vanuit een enkele cel. In de praktijk blijkt dit te leiden tot spontane reboots vanwege de storing die de servo's veroorzaken op het spanningsnet. Dit bleek niet met condensators op te lossen. In de verbeterde versie wordt de schakeling dan ook apart gevoed.

Mechanisch wordt er weinig veranderd, de servo-power switch en programmeer-interface worden niet meer op de servo maar op de print gebouwd, hierdoor is het makkelijker servo's te wisselen. De poten zien er wat beter uit door de voorpoten te voorzien van muisballen. deze zijn gehalveerd om een microswitch in te kunnen bouwen.

Wordt vervolgd met versie 2 .....