Stap 10: programmeren
Software
PicAxe programmering Editor, de software die wordt gebruikt voor het programmeren van de 08M 2, is vrije vrije van de PicAxe website.
Seriële programmering
Een PicAxe chip om te programmeren via een USB-poort een AXE027 programmering kabel nodig is. Tijdens het ontwerpen van het circuit werkte ik in de veronderstelling dat de 08M 2 kan worden geprogrammeerd met een directe verbinding met de USB-poort van gegevens + en gegevens-pins. Ik dacht dat ik kon de 027 overslaan en alleen de Micro-USB connector voor het programmeren van de chip zou moeten. Na een paar mislukte pogingen bij het uploaden van het programma naar de bot, ik deed wat testen/onderzoek en kwam erachter dat de kabel van de AXE027 een seriële converter bevat. Ik weet niet de exacte details van de werking van deze converter, maar het is noodzakelijk voor het programmeren van de PicAxe via een USB-poort.
Het was veel te laat terug te gaan en dit te bevestigen in het ontwerp, alles had al samengesteld! Bovendien was er niet ruimte toe te voegen een stereo jack voor de AXE027 op het circuit bord. Voor het programmeren van een chip die ik nodig had om het maken van een adapter die kon de stereo jack ontvangen de AXE027 en het verbinden van de Micro-USB-kabel.
Ik rommelde via mijn box van computer spullen en vond een PS2 - USB-adapter die ik was niet emotioneel gekoppeld aan. Ik snijd het uit elkaar, verwijderd van de vrouwelijke connector van de USB- en bedraad die aan een 3.5 stereo jack die ik had overgebleven uit een vorige project. De begeleidende afbeelding detailleert hoe deze adapter was bedraad.
Wat het programma doet
De robot wordt gecontroleerd door een standaard universele afstandsbediening welk mij voor $5 got. De afstandsbediening is ingesteld op de Sony televisie code, dat is wat de 08M 2 is bekwaam om te decoderen. Wanneer een knop wordt gedrukt op de afstandsbediening zendt een code van de infrarood-LED. Ondertussen de 08M 2 heeft gewacht op de IR ontvanger te halen deze transmissie, en als dat zo is het de bijbehorende knop getal wordt opgeslagen in een variabele. De PicAxe controleert die variabele en wordt de code die is gekoppeld aan het ontvangen aantal uitgevoerd. Het programma vervolgens keert terug naar de start en wacht op een andere opdracht.
De opdracht van de melodie 08M2s is geweldig. Er zijn duizenden gratis, oude mobiele telefoon ringtones die worden gespeeld op peizo sprekers zijn gemaakt en deze kunnen worden gedownload en geprogrammeerd op de chip. Het invoegen van deze nummers is zo eenvoudig zoals gebruikend de PicAxe programmering Editor's ringtone wizard Importeren van de nummers in de code. Elke noot van het nummer wordt vertegenwoordigd door een getal en ze kunnen worden gekopieerd, geplakt en herschikt voor het bewerken van de nummers. De opdracht heeft ook opties voor het knipperen van een LED (de ogen) met de muziek.
Ik een paar van de knoppen met liedjes, en een paar anderen met willekeurige pieptonen geprogrammeerd. De pieptonen geven de robot die sommige weinig expressies die leuk om te gebruiken gesneden zijn wanneer het hobbels in dingen en dergelijke. Meer info over de melodie opdracht kan worden gevonden hier. Deze pagina was ook heel nuttig, omdat het laat welke code zien # wordt gebruikt voor welke afstandsbedieningsknoppen.
Wanneer een van de Volume + - of kanaal + knoppen drukt het programma draait op de juiste motor voor 100 milliseconden, dan schakelt u het opnieuw. Als deze knop is ingedrukt dat beetje van code wordt herhaald, effectief het draaien van de motor volledig op. De LED ogen zijn gebonden aan deze dezelfde knop zodat ze weer op synchroon met de motor. De ogen knipperen telkens als de code herhaalt, maar de motoren houden niet lang genoeg bij beweging.
Dansende Robots hebben meer plezier
De Pingbot kan worden geprogrammeerd met dans routines met behulp van een mix van de opdracht van tune en motorische controle. Het programma draait op een motor (of beide), speelt een paar noten, en vervolgens de motor uitgeschakeld. Naast de tegenovergestelde motor is ingeschakeld, worden de volgende reeks van noten in het lied gespeeld en de motor is uitgeschakeld. Wanneer deze bewegingen worden uitgevoerd samen bestaat geen aarzeling van de opdrachten en de song wordt afgespeeld naadloos terwijl de robot rond in verschillende richtingen wervelingen. Dit kan worden gezien in de video op de dit Instructable introductiepagina.