Stap 1: Kennismaking met de componenten
In deze stap geef ik enkele belangrijke informatie over de robot onderdelen en hoe te bereiden hen voor montage.
In de eerste plaats, het hart van de robot: een Arduino UNO R3. Hoewel ik ben met behulp van een Arduino UNO, kunt u andere Arduino boards Arduino boards te monteren van uw robot. Heb ik besloten om het gebruik van een Arduino UNO, want het is verreweg de meest populaire Arduino board en meer mensen zou kunnen zijn voor de wederopbouw van deze robot. Hebt u een Arduino-DUE, kunt u ook stem reacties op uw robot toevoegen, zoals ik deed in dit Instructable.
Als u wilt verplaatsen van de gelijkstroommotoren, gebruikte ik deze Pololu schild (afbeelding hierboven). Het is een dual-motor coureur staat over de beheersing van 5 tot en met 28V DC-motoren en bieden tot de continue stroom 3A per motor. Hoewel ik denk dit een zeer goede schild dat, is wat indruk op me het meest in de Pololu producten hun duidelijke en gedetailleerde documentatie. Bovendien, Pololu verstrekt een Arduino bibliotheek die maakt het echt eenvoudig om te controleren van de motoren. Je hoeft alleen doorgeven van de snelheid en de richting (negatieve of positieve waarden) aan de setSpeeds functie. Als u kiest voor het gebruik van een andere DC motor bestuurder, aandacht besteden aan de pinnen door het stuurprogramma wordt gebruikt, omdat ze geen conflicten ontstaan met elke andere pin gebruikt door de robot. Het schild Pololu gebruikt de volgende Arduino pinnen: digitale 4, 7, 8, 9, 10 en 12; analoge 0 en 1; grond; en 5V. Het belangrijkste hier is dat alleen pin 9 en 10 worden gebruikt als PWM pinnen en de timer gebruikt voor het genereren van pulsen op deze pinnen niet de dezelfde timer (timer 2 op de UNO is) gebruikt door de BVSMic klasse van BitSophia.
Te stellen van de communicatie met de server en toegang tot BitVoicer serverservices, gebruik ik de Microchip WiFi RN171VX module. Twee hoofdlijnen opvallen in deze module: alle communicatie via de seriële poort kan worden gedaan op een eenvoudige manier; en de module heeft dezelfde vormfactor als de meeste van de populaire XBee modules. Met andere woorden, als u al een XBee schild, zal u waarschijnlijk niet hoeft te kopen het schild van Sparkfun ik gebruik in deze robot.
Met behulp van de XBee shield met de Microchip WiFi module gemaakt montage van de robot vrij gemakkelijk. Ik heb echter een probleem in deze combinatie genoemd. Het is bekend dat het werken met radio uiterst complex en weloverwogen door sommige mensen als "voodoo magic is". Nou, ik heb gemerkt dat terwijl de WiFi-adapter is op en overdracht van gegevens, een sterke storing treedt op in het audio signaal gemeten door de Arduino ADC. Ik kon niet de bron van deze inmenging nauwkeurig te identificeren, maar ik heb twee mogelijke bronnen: de module piek huidige trekt (tot 240mA) niet wordt goed ontkoppeld en compromissen van de spanning van de referentie verstrekt aan de Arduino ADC; of is het signaal dat wordt uitgezonden door de antenne wordt opgepikt door sommige blootgestelde pinnen rechts onder de module. Meestal, instrueren WiFi module fabrikanten ontwerpers te voorkomen dat iets (zelfs grond vliegtuigen) in de buurt van de antenne precies om te voorkomen dat dit soort zaken.
U lost het probleem hierboven beschreven gesoldeerd ik een 3.3V spanningsregelaar en een 10μF Elektrolytische condensator aan de Sparkfun schild zodat ze kon de referentie spanning leveren aan de Arduino ADC. De dezelfde energiebron wordt gebruikt door de Sparkfun electret microfoon. Het opgelost de piek volume problematiek die ik zag in de BitVoicer Server Manager. Zelfs tijdens periodes van stilte kreeg het audioniveau maar liefst 35 (0-100) in de Server Monitor. Als u het zelfde ding gebeurt in uw project, onderzoeken wat er gaande is met het audiosignaal gemeten door de Arduino ADC.
Ik besloot dat ik wilde ook de prototyping ruimte beschikbaar in het schild van Sparkfun gebruiken om te solderen een paar LED's die vertellen van de status van sommige BitVoicer Server functionaliteiten. In de bovenstaande foto's, kunt u zien hoe ik de componenten op het schild van Sparkfun gesoldeerd. De volgende informatie wordt blootgesteld door de LED's, van links naar rechts:
- Geeft aan of de BitVoicer Server wordt uitgevoerd en/of als de verbinding actief blijft;
- Geeft aan of de gegevens doorsturen van de service wordt uitgevoerd;
- Geeft aan of een engine voor spraakherkenning toegewezen aan de Arduino is;
- Hiermee wordt aangegeven of we in de woord-geactiveerd-activeringsperiode. Deze LED-lampje brandt alleen als het woord activering wordt geïdentificeerd.
Met betrekking tot de preamplified electret microfoon, er zijn vele opties beschikbaar in de markt: Sparkfun, Adafruit, RoboCore, Hackerstore en waarschijnlijk vele anderen. Voor het gebruik van de code die ik ben posting op dit Instructable, zorg ervoor dat de microfoon die je koopt is analoge, de vereiste spanning is beschikbaar in je Arduino board en de versterking is hoog genoeg (meestal 100 x voor electret microfoons) voor de Arduino ADC.
Het chassis van de 2WD gebruikt in de robot is een van de goedkoopste en meest populaire op ebay. De complete set bevat één acryl platform, twee kunststof/rubber wielen, een 360º wiel, twee DC-motoren met versnelling (1:48 verhouding), één 4xAA batterijhouder, twee snelheid encoder schijven en een set schroeven.