Arduino robotarm (12 / 13 steg)
Steg 12: Ny kod!
KOD:
#include < Servo.h >
CONST int servo1 = 3; första servo
CONST int servo2 = 10; andra servo
CONST int servo3 = 5; tredje servo
CONST int servo4 = 11; fjärde servo
CONST int servo5 = 9; femte servo
CONST int joyH = 2; L/R Parallax styrspak
CONST int joyV = 3; U/D Parallax styrspak
CONST int joyX = 4; L/R Parallax styrspak
CONST int joyP = 5; U/D Parallax styrspak
CONST int potpin = 0; O/c potentiometer
int servoVal; variabel att läsa värdet från det analoga stiftet
Servo myservo1; skapa objekt för att styra en servo servo
Servo myservo2; skapa objekt för att styra en servo servo
Servo myservo3; skapa objekt för att styra en servo servo
Servo myservo4; skapa objekt för att styra en servo servo
Servo myservo5; skapa objekt för att styra en servo servo
void setup() {
Servo
myservo1.attach(servo1); fäster servo
myservo2.attach(servo2); fäster servo
myservo3.attach(servo3); fäster servo
myservo4.attach(servo4); fäster servo
myservo5.attach(servo5); fäster servo
Inizialize följetong
Serial.BEGIN(9600);
}
void loop() {
servoVal = analogRead(potpin);
servoVal = karta (servoVal, 0, 1023, 0, 179);
myservo5.write(servoVal);
Delay(15);
Joystick visningsvärden använda följetong monitor
outputJoystick();
Läsa värdet horisontella joystick (värde mellan 0 och 1023)
servoVal = analogRead(joyH);
servoVal = karta (servoVal, 0, 1023, 0, 180); skala den att använda den med servo (resultat mellan 0 och 180)
myservo2.write(servoVal); anger servo skalad värde
Läsa värdet horisontella joystick (värde mellan 0 och 1023)
servoVal = analogRead(joyV);
servoVal = karta (servoVal, 0, 1023, 70, 180); skala den att använda den med servo (resultat mellan 70 och 180)
myservo1.write(servoVal); anger servo skalad värde
Delay(15); väntar på servo att komma dit
Läsa värdet horisontella joystick (värde mellan 0 och 1023)
servoVal = analogRead(joyP);
servoVal = karta (servoVal, 0, 1023, 70, 180); skala den att använda den med servo (resultat mellan 70 och 180)
myservo4.write(servoVal); anger servo skalad värde
Delay(15); väntar på servo att komma dit
Läsa värdet horisontella joystick (värde mellan 0 och 1023)
servoVal = analogRead(joyX);
servoVal = karta (servoVal, 0, 1023, 70, 180); skala den att använda den med servo (resultat mellan 70 och 180)
myservo3.write(servoVal); anger servo skalad värde
Delay(15); väntar på servo att komma dit
}
/**
* Visa joystick värden
*/
void outputJoystick() {
Serial.Print(analogRead(joyH));
Serial.Print ("---");
Serial.Print(analogRead(joyV));
Serial.println ("---");
Serial.Print(analogRead(joyP));
Serial.println ("---");
Serial.Print(analogRead(joyX));
Serial.println ("---");
}