шаговик + моторшилд + джойстик
- Войдите на сайт для отправки комментариев
Помогите с кодом товарищи!
Есть код управления шаговиком биполярным с помощью джойстика+ардуино уно + моторшилд l293d.Но при. подключении сервамотора и доп джойстика ухудшается .качество работы шаговика (дребезг). Может кто подскажет решение, код прилагаю
#include
#include
#include
AF_Stepper motor1(400, 2);
int sensorPin = A2;
int sensorReading = 0;
int prevMapped = 0;
int sensorMax = 0;
int sensorMin = 0;
int mode = MICROSTEP;
// you can change these to DOUBLE or INTERLEAVE or MICROSTEP!
Servo myservo;
float spos=90;
int sspd=200;
void forwardstep() {
motor1.onestep(FORWARD, SINGLE);
}
void backwardstep() {
motor1.onestep(BACKWARD, SINGLE);
}
void setup()
{
Serial.begin(9600); // set up Serial library at 9600 bps
Serial.println("Stepper test!");
motor1.setSpeed(10);
myservo.attach(9);
Serial.begin(9600);
}
void loop()
{
sensorReading = analogRead(sensorPin);
if (sensorReading > sensorMax)
{sensorMax = sensorReading;
}
sensorReading = map(sensorReading,0,1023,-4,5);
Serial.println(sensorReading);
//if (prevMapped != sensorReading)
if (prevMapped > 0)
{motor1.step(1, FORWARD, mode);
delay(5-prevMapped);
}
else if (prevMapped < 0)
{motor1.step(1, BACKWARD, mode);
delay(5+prevMapped);
}
prevMapped = sensorReading;
//stepper.runSpeed();
int sensorValue = analogRead(A0);
if (sensorValue<=480) {spos=spos-(500-sensorValue)/sspd;}
else if (sensorValue>=520) {spos=spos+(sensorValue-500)/sspd;}
if (spos>170) {spos=170;}
else if (spos<10) {spos=10;}
myservo.write(spos+15);
Serial.print("spos ");
Serial.println(spos);
Serial.print("sensorValue ");
Serial.println(sensorValue);
delay(30);
}
Забыл сказать, один знакомый советует использовать другой, якобы с ним будет в порядке.Но код почему то не работает, может кто взглянет опытным взглядом
http://arduino.ru/forum/obshchii/vstavka-programmnogo-koda-v-temukomment...
Так вот главный вопрос - как сделать чтоб шаговик и сервомотор вместе работали на одном ардуино так же плавно, как и по отдельности? Или проще купить отдельный ардуино для серво?
http://arduino.ru/forum/obshchii/vstavka-programmnogo-koda-v-temukomment...
У меня на смартфоне не открывается такое окно
Код необходимо "оформлять" и прятать под спойлер.
На смартфоне не реализуемо, уважаемый. Только на БК.