Egy arduino nanot használok és ennél a programnál a moz11 és moz12 re -52 es értéket add állandóan.
Ha mást íratokbe neki akkor is.
Kód: Egész kijelölése
#include <Servo.h>
#include <Wire.h>
Servo ESC1;
Servo ESC2;
Servo moz1; //JE1
Servo moz2; //JE2
Servo moz3; //JE3
Servo moz4; //BE1
Servo moz5; //BE2
Servo moz6; //BE3
Servo moz7; //JH1
Servo moz8; //JH2
Servo moz9; //JH3
Servo moz10; //BH1
Servo moz11; //BH2
Servo moz12; //BH3
void setup() {
Serial.begin(9600);
ESC1.attach(A0,1000,2000);
ESC2.attach(A1,1000,2000) ;
moz1.attach(2);
moz2.attach(3);
moz3.attach(4);
moz4.attach(5);
moz5.attach(6);
moz6.attach(7);
moz7.attach(8);
moz8.attach(9);
moz9.attach(10);
moz10.attach(11);
moz11.attach(12);
moz12.attach(13);
//alap állapot
moz1.write(45);
moz2.write(90);
moz3.write(180);
moz4.write(180);
moz5.write(90);
moz6.write(0);
moz7.write(135);
moz8.write(90);
moz9.write(0);
moz10.write(0);
moz11.write(90);
moz12.write(180);
ESC1.write(10);
ESC2.write(10);
}
void loop() {
Serial.println(moz1.read());
Serial.println(moz2.read());
Serial.println(moz3.read());
Serial.println(moz4.read());
Serial.println(moz5.read());
Serial.println(moz6.read());
Serial.println(moz7.read());
Serial.println(moz8.read());
Serial.println(moz9.read());
Serial.println(moz10.read());
Serial.println(moz11.read());
Serial.println(moz12.read());
Serial.println(ESC1.read());
Serial.println(ESC2.read());
Serial.println();
}
A moz11 és moz12 állandóan -52 es értéket vesz fel.
Kód: Egész kijelölése
45
90
180
180
90
0
135
90
0
0
-52
-52
90
90
Ez miért van?
Kód: Egész kijelölése
#include <Servo.h>
#include <Wire.h>
Servo moz1; //JE1
Servo moz2; //JE2
Servo moz3; //JE3
Servo moz4; //BE1
Servo moz5; //BE2
Servo moz6; //BE3
Servo moz7; //JH1
Servo moz8; //JH2
Servo moz9; //JH3
Servo moz10; //BH1
Servo moz11; //BH2
Servo moz12; //BH3
Servo ESC1;
Servo ESC2;
void setup() {
Serial.begin(9600);
ESC1.attach(A0,1000,2000);
ESC2.attach(A1,1000,2000) ;
moz1.attach(2);
moz2.attach(3);
moz3.attach(4);
moz4.attach(5);
moz5.attach(6);
moz6.attach(7);
moz7.attach(8);
moz8.attach(9);
moz9.attach(10);
moz10.attach(11);
moz11.attach(12);
moz12.attach(13);
//alap állapot
moz1.write(45);
moz2.write(90);
moz3.write(180);
moz4.write(180);
moz5.write(90);
moz6.write(0);
moz7.write(135);
moz8.write(90);
moz9.write(0);
moz10.write(0);
moz11.write(90);
moz12.write(180);
ESC1.write(10);
ESC2.write(10);
}
void loop() {
Serial.println(moz1.read());
Serial.println(moz2.read());
Serial.println(moz3.read());
Serial.println(moz4.read());
Serial.println(moz5.read());
Serial.println(moz6.read());
Serial.println(moz7.read());
Serial.println(moz8.read());
Serial.println(moz9.read());
Serial.println(moz10.read());
Serial.println(moz11.read());
Serial.println(moz12.read());
Serial.println(ESC1.read());
Serial.println(ESC2.read());
Serial.println();
}
Kód: Egész kijelölése
45
90
180
180
90
0
135
90
0
0
90
180
-52
-52
Az utolsó 2 szervo parancs értékét valamiért mindig -52 re állítja be.
Miért van ez és hogyan lehet meg oldani?
Előre is köszönöm a segítséget.