RC controle en Arduino: A Complete Works (8 / 10 stap)

Stap 8: Adafruit to the Rescue!


In the Adafruit Store, merkte ik dit kleine PWM/Servo Controller boord die gebruikmaakt van een 2 draads interface.  Het enige nadeel is dat je moet handmatig begrijpen en het signaal vereist door de servo program.  U moet downloaden en kopiëren in de nieuwe bibliotheekbestanden.  Niet ineenkrimpen als het is niet dat moeilijk, je moet stellen de frequentie van de planken, aantal servo's, adres van de Raad van bestuur en het bereik van waarden opnieuw toewijzen van waarden.  Ik gebruikte de Adafruit Tutorial en een forum vraag te begrijpen hoe te gebruiken van de Raad van bestuur.  Het bestuur van de servo is een beetje meer vervelend dan de servo-bibliotheek omdat u moet handmatig configureren van het signaal de servo voorgeschreven.  Tenslotte gebruikt dit board analoge ingangen, 4 & 5 communiceren via een I2C (twee draad) bus.

Voordat we verder gaan overwegen kunt u het solderen van een condensator op de servo controller boord te koppelen of stabiliseren van de krachtbron. Het is ook verstandig om te gebruiken afzonderlijke voedingsbronnen voor de servo's en de Arduino of loskoppelen/stabiliseren van de macht aan de Arduino geleverd. Ontkoppeling is een mooie manier om te zeggen dat u moet toevoegen van een condensator tussen de spanningsbron (VCC) en de grond (GND). De grootte van de condensator is afhankelijk van uw bron van macht, hoe goed het kan houden met schommeling stromingen en het item dat u zijn ontkoppeling. Raadpleeg de almachtige Google voor meer informatie. Tot slot, als u van elektrolytische gebruikmaakt caps (metaal kan caps) Zorg ervoor om te kijken naar de PCB om de polariteit correct.

Een kleine opfriscursus op het servo-signaal:
Frequentie is 50Hz dus 1 seconde / 50 = 20 milliseconden (ms) periodes
1ms basis pulse is de laag signaal, 0 graden of volledige omgekeerde een continue rotatie (CR)-servo
1.5ms pulse is de middelste signaal, 90 graden of centrum voor een CR-servo
2ms pulse is de hoge signaal, 180 graden of volledige doorsturen voor een CR-servo

De servo controller boord heeft 12 bits van resolutie per periode maken de servo-signaal. Hoe gebruiken wij deze 12 bits is eenvoudig omdat 2 ^ 12 = 4096. We kunnen nu eenvoudige ratio's of stoichemetry om erachter te komen de waarde die hoort bij hoe lang we ons signaal willen te hoge ot taakcyclus blijven toepassen. Vergeet niet dat de Arduino houd niet zwevend punt berekeningen dus probeer te gebruiken integer math of u zal moeras van uw programma.

Servo signaal uit 4096
Totale duur: 20 MS = 4096
Laag signaal: 1ms = 4096/20 = 205
Medio signaal: 1.5ms = 205 * 1,5 = 308
Hoog signaal: 2ms = 205 * 2 = 410

Software-instructie:
Deze waarden moeten worden opgeslagen als constanten aan het begin van uw programma voor eenvoudige bewerking later. Dus nu hoe gaan we dit bereik gebruik aan output via de servo-bestuur?

Ten eerste, je moet het bibliotheekbestand voor de Raad van bestuur.
#include < Adafruit_PWMServoDriver.h >

Ten tweede, verklaren de naam gegeven aan de servo-bestuur en de twee met de board-adres koppelen. Standaardadres is 0x40.
Adafruit_PWMServoDriver servo=Adafruit_PWMServoDriver(0x40);

In de derde plaats in de lus van de setup, beginnen de servo bestuur verbinding.
Servo.begin();

Ten vierde, de freqeuncy van de servo-bestuur binnen de lus setup instellen
servo.setPWMFreq(freq);

Ten vijfde, schrijf de waarde aan het bestuur van de servo in de lus van het hoofdprogramma.
servo.setPWM (kanaal, off);
servo.setPWM(2,0,ch3);

Hardware-instructie:
Ten eerste, ik gesoldeerd op de opgenomen pin headers, klemmenstrook en een 470uF van een elektrolytische cap gewaardeerd voor 10V.  Je kon gaan met een grotere GLB en zelfs een gewaardeerd voor 6V.

Ten tweede, ik veranderde niet het standaardadres van de Raad van bestuur en is alleen nodig als u daisy chain meerdere platen samen wilt.

Ten derde, ik gebruikte sommige vloeibare elektrische tape op de bodem van de pin headers omdat ik zal het maken van een ruwe robot voor het testen.

Ten vierde, om de I2C-Bus haak zal u moet opgeven 5V en GND van de Arduino aan de VCC en GND pinnen.  Vervolgens verbinden A5 SCL en A4 aan SDA.  Zie de foto die ik heb met Fritzing gemaakt!

Dat zijn de basics en kijk van Adafruit tutorial voor meer informatie. Vervolgens zal ik laten zien hoe ik de servo-bord met logica waarmee twee continue rotatie servo's geïmplementeerd.

Gerelateerde Artikelen

Control An Arduino met uw telefoon

Control An Arduino met uw telefoon

Hallo iedereen! In dit instructible ik zal u tonen hoe te controleren en lees sensoren met arduino en blynk. Blynk is een app waarmee volledige controle over arduino, rasberry pi en vonk kern. Met uw smartphone! En het is net zo eenvoudig als wat cod
OSD-Audio ATM-7 Smartphone Speaker controle met Arduino en Blynk

OSD-Audio ATM-7 Smartphone Speaker controle met Arduino en Blynk

Deze dagen zijn er verschillende manieren om te implementeren multi-zone geluid met behulp van smartphone gebaseerd controle, maar de meeste zijn beperkt tot een aantal zones of vereisen duur merkgebonden vakken op elke locatie (Hello! Sonos). Een sp
Gemakkelijk, omkeerbare Motor controle voor Arduino (of een Microcontroller)

Gemakkelijk, omkeerbare Motor controle voor Arduino (of een Microcontroller)

dit project maakt gebruik van slechts drie hoofdcomponenten voor voorwaartse en omgekeerde bepalen voor een interne motor.  U kunt het gemakkelijk interface naar een Arduino of elke andere microcontroller.Het is zo eenvoudig - u kunt het draad van "f
Magnetische ophanging demonstratie controle door Arduino

Magnetische ophanging demonstratie controle door Arduino

Magnetische ophangsysteem Demo is een apparaat dat een object door de magnetische kracht kan opschorten. Een set van parameters om een object in gestage schorsing toestand kan worden verkregen via PID algoritme.Stap 1: Hardware Open de foto's.Stap 2:
Standalone WiFi Radio Control Panel (Arduino Powered)

Standalone WiFi Radio Control Panel (Arduino Powered)

ik wilde een Internet Radio voor een lange tijd, en was blij om te zien de Tinkernut Wifi Radio project (http://tinkernut.com/archives/2387 ), die ik gebouwd en hebben genoten voor een paar maanden.Echter, ik niet echt schelen voor de controle-interf
Krachtige controle met Arduino: Interfacing een lineaire Actuator

Krachtige controle met Arduino: Interfacing een lineaire Actuator

In dit specifieke artikel zullen we bespreken hoe eenvoudig het is om controle van krachtige mechanische kracht met behulp van een microcontroller zoals de Arduino en een lineaire Actuator van DC lineaire actuatoren Inc.Stap 1: MicrocontrollersRaspbe
MIDI controle licht Arduino

MIDI controle licht Arduino

Hallo, is deze post gemaakt door Jesus Alberto Cejas en Pablo Javier Ruiz te tonen u ons Project over een muzikale toetsenbord, mooie lichten en Arduino.Dit project was voor 'Creatieve Electronics', een Beng elektronica Engineering 4e jaar module op
RGB led control [PC, Arduino]

RGB led control [PC, Arduino]

delen is de zorg... dat is het motto van dit instructable... : DHier is een traktatie voor iedereen de led freaks graag...Ik wilde bereiken van volledige controle van mijn computer chassis aangepaste led strips, 3 stroken exacte, volledige controle z
BLDC Motor Control met Arduino, geborgen HD-motor en Hall sensoren

BLDC Motor Control met Arduino, geborgen HD-motor en Hall sensoren

er is veel belangstelling deze dagen onder hobbyisten bij het beheersen van Borstelloze DC (BLDC) motoren, die hebben betere prestaties en betere energie-efficiëntie overtraditionele gelijkstroommotoren, zijn maar moeilijker te gebruiken. Er bestaan
TV remote controlled auto - Arduino

TV remote controlled auto - Arduino

Hack uw afstandsbediening en de controle van een rc auto met, met behulp van de "Arduino Uno".Dit is een simpele manier om te controleren uw auto met behulp van de IR ontvangersmodule geprogrammeerd op arduino board en de afstandsbediening van d
Motor Control met arduino motor shield via Web

Motor Control met arduino motor shield via Web

In dit project, zal ik de controle van DC motor (ventilator Computer) met motor shield(official) via webpagina's.U kunt de motor zoals trage of snelle snelheid en stop.Ook als u wilt, kunt u controleknop toevoegen of wijzigen van besturingsknop in we
VBNET controle van ARDUINO over TCP RS232

VBNET controle van ARDUINO over TCP RS232

PROJET PUPITRE SERIËLE VIA TCPVB NET / XPORT (LAN) ou CSW M85 (WIFI LAN) ouCIE M10 (LAN) / ARDUINOInleiding:Met dit project zal u zitten kundig voor pilot uitgangen van een arduino met een virtuele vb.net pusbutton of een schakelaar voor digitale of
Een gemakkelijke manier om controle je Arduino Pins van het internet. (Geen port forwarding)

Een gemakkelijke manier om controle je Arduino Pins van het internet. (Geen port forwarding)

Controle Arduino pinnen van het internet, zonder gebruik te maken van complexe haven port forwarding opstellingen op uw firewall.Zolang de Arduino is aangesloten op uw netwerk en een geldig IP-adres heeft u zal zitten kundig voor wijzigen dePIN statu
Gyroscoop leidde controle met Arduino

Gyroscoop leidde controle met Arduino

In dit project zal ik u tonen hoe te bouwen van een eenvoudige 4 led tilt dimmer met een gyroscoop en een arduino uno. Er zijn 4 LED's die zijn gerangschikt in de vorm van een "+" en ze meer als je het breadboard Tilt zal oplichten.Stap 1: mater