Controle 2 Servo motoren met een standaard afstandsbediening (3 / 4 stap)

Stap 3: Development Software


Infra Red
We beginnen met de infra-rood kant van de dingen en de servo(s) voorlopig negeren. Open BV_COM en communiceren met de BV500 (de IC).
Nu het laden van dit bestand:

http://www.byvac.com/mBlib/FLB/Library/IRD/IR_DecodeMX1.bas

Gewoon Kopieer de tekst en plaatst u deze in het dialoogvenster tekst overbrenging en druk op verzenden. Dit kan een paar pogingen nodig zijn totdat het bestand in de cache is opgeslagen, het zal allemaal afhankelijk van de internetverbinding. Na het verzenden moet het iets zeggen als lijnen 120 geladen.

Het bestand is vrij kort, maar het laadt het IR-bibliotheekbestand vandaar het aantal lijnen. Verkrijgen van een afstandsbediening en zet deze op een Philips TV (ik ga ervan uit dat u een van degenen die u kunt programmeren met behulp van verschillende codes hebben.) De reden voor het gebruik van dat wil zeggen dat de IR-decodering werkt alleen met RC5-code die welke gebruik van de Philips in hun toestellen is.
Type gaan, richt de afstandsbediening op de IR-photodoide en u ziet enkele resultaten zoals in de afbeelding. Het kan niet de exacte dezelfde resultaten opleveren, maar dat maakt niet uit. De resultaten waren:

-volume 3511
-volume 3D 11
+ volume 3510

De eerste 3 is de start bits en ze zijn er altijd, de werkelijke code van de sleutel is de laatste twee cijfers, in dit geval 11 voor min en 10 voor plus. De knevel is een getal dat van 5 tot en met D verandert (nummers zijn in hex). De werkelijke waarden zijn onbelangrijk, zolang het in overeenstemming is. Als u iets dat is onveranderlijk of onstandvastige dan de afstandsbediening is niet afgeven RC5 krijgen dus kies een verschillende TV, VCR of wat dan ook.

Een snelle blik op de code.
Dit wordt weergegeven als een afbeelding, zodat de lijn nummers en syntaxis kleuren behouden blijven.
Lijn 5: Dit is het bestand dat doet het meeste van het werk, als u kijken naar de werkelijke code wilt dan op de URL weergegeven in de afbeelding is. De #include geladen op de chip voordat de rest van de code.
Lijn 12: Dit is de één functie die de code bestaat uit. Het functietype uitvoeren in de naam die we deden bij het typen van 'gaan' boven.
Lijn 12 tot en met 16: Dit zijn de functies in de code die is in het include-bestand en ze initialiseren van de poorten voor gebruik en een paar van de interrupts zo instellen dat de IC reageren kan zodra zij een ontvangt infra rood. Deze lijnen zijn vereist om de IR gaan.
Lijn 17: Alleen de 'Ready' op de terminal zodat we alles weten is oke
Lijnen 18 & 24: Dit is een continue lus die kan worden afgesloten wanneer er een sleutel wordt ontvangen op de RD Session Host, dwz als u een toets op het toetsenbord indrukt. Het werkt omdat de terminal is verbonden met UART2 en comkey? (2) geeft het aantal toetsen in de buffer van de UART2 (UART is een seriële poort). Als er geen sleutels in de buffer totdat u op een toets op het toetsenbord, dan zal het blijven in de lus.
Lijn van 19 tot en met 22: IRDstate (geval belangrijk) is een variabele die wordt ingesteld op 1 wanneer is er een waarde ontvangen door de IR. De waarde is in currentWord, lijn 21 gewoon wordt afgedrukt het uit als een hexadecimaal getal. De waarde van currentWord zal alleen worden afgedrukt als er een geldige waarde. Het is belangrijk dat de functie IRDstate terug naar 0 Reset na het lezen van het woord.
Lijnen 26 & 27: LAAT ALTIJD EEN AANTAL LEGE REGELS AAN HET EINDE VAN EEN BESTAND

Servo
Oke dus nu dat we een werkende infra-rood haar tijd om te kijken van de servo-kant van de dingen. Kopieer en plak deze URL

http://www.byvac.com/mBlib/FLB/tutorial/PIC32MX1_Family/46_IRServo/IRServo_b.bas

in de tekst overbrengen dialoogvenster als voorheen en druk op verzenden. U wellicht opnieuw instellen van de IC als het draait interrupts en de seriële interface beschikt niet over een handdruk.
Type svo_init
De servo kan na deze opdracht voorjaar tot leven. Typ nu:
= 200 (Dit is @ O voor Oscar niet nul)
en de servo moet verplaatsen. U kunt de grenzen van uw servo ontdekken en ontdek de maximale en minimale waarden, degene die ik heb variëren van 121 tot 384.

De servo is met behulp van het vergelijken van de Output-module ingebouwd in de IC. In de modus produceert dat er in het een puls breedte gemoduleerde signaal en de waarde in het register die oc2rs de breedte van die puls dus alle die je doet bepaalt wanneer veranderen de waarden eigenlijk de breedte van de puls verandert. De granulariteit is heel goed in slechts een paar microseconden en dus dat is hoe we kunnen krijgen voor een resolutie van meer dan 200 binnen het bereik van de servo.

Het is waarschijnlijk buiten het bestek van deze tekst te gaan op de details van hoe de code werkt zoals het is meestal de oprichting van de IC-registers, de IC hardware doet het werk. Indien u intresse ik had 3 gaat op dit de (details zijn hier) en mijn eerste poging was te emuleren PWM in software.

Gerelateerde Artikelen

How to Control Servo motoren met een Arduino

How to Control Servo motoren met een Arduino

Deze miniatuur-project zal u tonen hoe om te controleren van een servomotor met een Arduino, maar eerst moet u weten wat een servomotor eigenlijk is!Servomotoren zijn speciale soorten motoren die niet draaien rond in een cirkel, maar verplaatsen naar
Controle van de motoren met een mobiele telefoon

Controle van de motoren met een mobiele telefoon

Ik ben bezig met een project waar ik wil rijden twee motoren op basis van signalen van een mobiele telefoon. Iets eenvoudigs. Iets dat elke keer krijg ik een SMS-bericht op mijn telefoon activeert. Er zijn vele manieren om dit te doen, ik zal schetse
Controle van de motoren met een wiinunchuck (beer op een driewieler)

Controle van de motoren met een wiinunchuck (beer op een driewieler)

Een van mijn eerste arduino project en een schoolproject voor de HKU games en interactie.Wilt u dit project in kleinere stappen? Bekijk deze tutorials die ik dit Instructable gebaseerd op!http://makezine.com/projects/Wii-Nunchuk-Mouse-2/Stap 1: Wat j
Controle van uw Arduino met een afstandsbediening

Controle van uw Arduino met een afstandsbediening

benieuwd over hoe om te controleren alles in uw huis met een eenvoudige afstandsbediening? Het is vrij eenvoudig en goedkoop.Stap 1: Verzamel spullen Hier is wat u nodig heeft:-Arduino (ik gebruik UNO)-Solderless breadboard-Een infrarood ontvanger-So
Controle van uw Androïde apparaat met een wii-afstandsbediening

Controle van uw Androïde apparaat met een wii-afstandsbediening

He jongens voor mijn derde instructable ik ga u tonen hoe om te controleren uw Androïde apparaat met een wii-afstandsbedieningwat u nodig zult hebben is1 x: wii-afstandsbediening1 x: Androïde apparaatStap 1: het downloaden van app allereerst moet u G
Arduino: Controle 3 LED's met een potentiometer (potmeter)

Arduino: Controle 3 LED's met een potentiometer (potmeter)

dit is mijn eerste instructable. Ik hoop dat u geniet ervan. :)In dit instructable kunt u leren hoe om controle 3 Led's met een potentiometer.Stap 1: onderdelen u nodig hebt:-3 onder leiding van-paar van jumper draden-1 potentiometer-3 220 Ohm weerst
Controle van een Circuit met een TV-afstandsbediening (en een Arduino)

Controle van een Circuit met een TV-afstandsbediening (en een Arduino)

De meeste van de knoppen op de afstandsbediening worden nooit gebruikt. Dus waarom niet gebruiken om te bepalen van apparaten en andere elektronica rond uw huis. In dit project ga ik u tonen hoe te gebruiken een Arduino decoderen van het signaal van
Hoe te rijden Dynamixel AX-12A servo's (met een RaspberryPi)

Hoe te rijden Dynamixel AX-12A servo's (met een RaspberryPi)

Ik besloot om het gebruik van sommige Dynamixel AX-12A motoren voor een project, en trachten opwaarts having naar de code van een bibliotheek voor hen, dus ik dacht dat ik zou delen wat ik geleerd.Ondanks het zijn een beetje duurder, heeft deze motor
Servo bediening met een Flex/Bend Sensor

Servo bediening met een Flex/Bend Sensor

Dit Instructable is om aan te tonen hoe te beheersen een servo die met behulp van een flex/bend-sensor. Ook een eventuele toepassing voor een dergelijke opstelling.MaterialenArduino unohttp://www.adafruit.com/products/50 $24.95Vaste kern draadhttp://
Raak niet in paniek: Het borduren van een handdoek met een standaard naaimachine, net als een Hoopy Frood

Raak niet in paniek: Het borduren van een handdoek met een standaard naaimachine, net als een Hoopy Frood

Borduur je eigen handdoek niet paniek om handdoek dag, een jaarlijkse eerbetoon aan de late Auteur Douglas Adams die elke 25 mei plaatsvindt te vieren. Deze handdoeken kunnen hangen rustig in uw badkamer of ga op avontuur met u. Zelfs als u niet van
Besturen van een Robot met een Wii-afstandsbediening

Besturen van een Robot met een Wii-afstandsbediening

Dit is een leuke kleine project die gebruikmaakt van een Raspberry Pi, een Robot Finch en een Wii-afstandsbediening (AKA Wiimote), om aan te tonen enkele van de dingen die je met een raspberry pi en/of een Wii doen kunt remote. Het maakt gebruik van
Hoe de controle van de arduino met een mail

Hoe de controle van de arduino met een mail

Er zijn een heleboel oplossingen waarmee een Arduino board: web oplossingen, desktop applicatie oplossingen, hardwareoplossingen. Maar hoe zit het met e-mail? Ja, vind je iets op het web, maar ze nodig hebben voor ethernet schilden en vaak is Arduino
Beheersing van een RC Servo motor met een Arduino en twee pulsschakelaars

Beheersing van een RC Servo motor met een Arduino en twee pulsschakelaars

de naam zegt het al. Beheersing van een RC auto servomotor met een Arduino en sommige weerstanden, jumper draden en twee tactiele schakelaars. Ik maakte dit de tweede dag kreeg ik mijn Arduino, dus ik erg trots op mezelf ben.Stap 1: Onderdelenlijst O
Controle van EL draad met een Arduino

Controle van EL draad met een Arduino

In dit instructable ik zal u tonen hoe u kunt besturen van EL draad met een Arduino.Wat u zult moeten:EL Wire en omvormer - adviseer ik http://ez-el.com/ez-el-wire/10ft-ez-el-wire-3v-inverter-kit/Arduino of een micro-controller die een relay kunt bep