Stap 1: Servo Code voor Arduino
Delen:
2 servomotoren
Arduino board (ik heb een schroef-schild op, maar dat is niet kritisch)
Potentiometer (deze is 0 tot 100Kohm)
Jumper draden
Pijp schoonmakers (voor show).
1 - wire de servomotoren. Dit zijn speciale motoren, kunt u het invoeren van een hoek en de motor zal doen. De servo's hebben drie draden: Power (rood, 5V) - Ground (zwart) - geel (mededeling - hoek info gaat hier).
In deze opstelling: rood gaat de 5V van de Arduino, Black gaat op grond van de Arduino, geel zal gaan naar specifieke input/output pinnen op de Arduino.
Servo 1: Geel---Pin 9
Servo 2: Geel---pin 10
2 - draads de potentiometer
Dit heeft drie leidt.
Leiden 1---5V
Leiden 2---Pin 0
Leiden 3---grond
3 - code-
De onderstaande code is uit het voorbeeld van de Arduino voor servo motor control. Het omvat de servo-bibliotheek, waardoor het gemakkelijk te communiceren met de servo.
Dit ook kaarten (schalen) de inbreng van de pot in een hoek (in radialen) voor de servomotor. Wij willen de twee motoren te gaan in tegengestelde richtingen. Hiervoor heb ik vertaald de de lage pot waarden naar de waarden van de hoge hoek.
U zult lnotice zijn er enkele referenties aan 'serial' - dit spul kun je gegevens van de Arduino via de USB naar de computer verzenden. Vervolgens kunt u de waarden bekijken, dit is handig.
Opmerking: De instructables editor zakt de lijn tot de servomotor.
Het moet als volgt:
#include < Servo.h >; servo-bibliotheek gebruiken
Marionet mond besturingselementen
-twee servo 's
-tegenover hoeken
-Pot input
Arduino Code / / /
Dit is van een voorbeeld incl. met Arduino IDE downloaden.
Beheersen een servo-positie met behulp van een potentiometer (variabele weerstand)
door Michal Rinott
MPC - toegevoegd uitgang voor seriële 'n stuff
/*
Hier is de bedrading:
Bedrading-
|---Arduino Gnd
Encoder |---analoge 0
|---5V van de Arduino
| Geel---Digi 9 (PWM)
Top servo | Red---5V
| Bruin---Gnd
| Geel---Digi 10 (PWM)
Onderkant servo | Red---5V
| Brown---
*/
#include < Servo.h >; servo-bibliotheek gebruiken
Servo myservo; maken van servo-object om te bepalen van een servo
Servo otherServo;
int potpin = 0; analoge pin gebruikt voor het aansluiten van de potentiometer
int val; variabele te lezen van de waarde van de analoge pin
int valComp;
VOID Setup
{
myservo.attach(9); de servo op pin 9 hecht aan de servo-object
otherServo.attach(10);
Serial.begin(9600);
}
void loop
{
Val = analogRead(potpin); leest de waarde van de potentiometer (waarde tussen 0 en 1023)
valComp = analogRead(potpin);
Serial.println(val);
Val = kaart (val, 0, 1023, 90, 179); schaal om het te gebruiken met de servo (waarde tussen 0 en 180)
valComp = kaart (valComp, 1023, 0, 0, 90);
myservo.write(val); stelt u de positie van de servo volgens de geschaalde waarde
delay(15);
otherServo.write(valComp);
delay(25); wacht tot de servo om er te komen
}