Помогите со скетчем. Управление двигателем.
- Войдите на сайт для отправки комментариев
Пнд, 09/10/2017 - 23:25
Два датчика (оптический датчик) следят за смещением ленты, как только один из датчиков сработал включается двигатель и смещает ленту в противоположную сторону, когда лента выпрямилась, оба датчика в норме, двигатель в исходное положение (третий оптический датчик положения).
Был код изначально такой, без третьего положения.
[code]
[== C++ ==]
int photoPin1 = 10; // левый фоторезистор
int photoPin2 = 11; // правый фоторезистор
int motor1 = 8; // мотор влево
int motor2 = 9; // мотор вправо
int val1 = 0; // переменные для хранения значения входного напряжения
int val2 = 0; //
void setup()
{
Serial.begin(9600);
pinMode(motor1, OUTPUT);
pinMode(motor2, OUTPUT);
}
void loop()
{
val1 = digitalRead(photoPin1); // считываем значение с фоторезисторов
val2 = digitalRead(photoPin2);
Serial.print("values: "); // выводим их в COM-порт
Serial.print(val1);
Serial.print(" : ");
Serial.println(val2);
val1 = val1; //
val2 = val2; //
if(val1==val2) // если равны - стоп двигатель
{
digitalWrite(motor1, LOW);
digitalWrite(motor2, LOW);
Serial.println("waiting");
}
else
{
if(val1>val2)
{
digitalWrite(motor1, HIGH);
digitalWrite(motor2, LOW);
Serial.println("left");
}
else
{
digitalWrite(motor2, HIGH);
digitalWrite(motor1, LOW);
Serial.println("right");
}
}
delay(500);
}
[/code]
Все было просто до этого "нулевого" положения, подскажите решение с новыми данными.
Для начала научитесь правильно постить код.
Спасибо за спроведливое замечание, но я был уверен что сайт построен по на той же платформе как и на другом сайте, с телефона у меня не видно подсветку синтаксиса((( и я просто скопировал с похожего форума. Там все красиво получилось)
Для начала научитесь правильно постить код.
А у вас есть решение?
разместите код, согласно правил данного форума
http://arduino.ru/forum/obshchii/vstavka-programmnogo-koda-v-temukomment...
И вот даже не смотря на весь остальной код, подскажите, а что вы хотели реализовать следующими строками:
Чтоб код стартовал с параметром = 0
А по поводу размещения кода, к сожалению писал все с телефона. А там html редактора невидно.(
Я перепишу все с ноутбука, сразу после обеда!
А как вам в этом поможет то, что val1 останется тем же, каким был? У вас хоть капля логики есть? тут даже не надо уметь программировать. чтобы понять. что операция x=x; не делает абсолютно ничего.
тут даже не надо уметь программировать. чтобы понять. что операция x=x; не делает абсолютно ничего.
Так на то у нас и канпиляторы есть, у которых мозгов больше чем у пограммиста, выкинет
Согласен, удаляем)
Логика кода понятна Вам, так как это Вам интересно... а мне особо вникать не зачем, взял из уроков немного того, немного сего... все заработало и вот оно счастье! Но когда появилась необходимость третьего положения каретки, тут увы или все сначала, но времени нет снова читать литературу или просить помощи...)
А этот кусок кода не нарушает логики, компилятор пропустил...
с таким настроем не советую вам постить в форум. Если не хотите вникать и читать литературу, идите в раздел "Ищу исполнителя", платите деньги и вам все сделают. Тут помогают тем, кто хочет вникнуть сам. А над такими, кому "некогда читать" - жестоко глумятся.
Спасибо за совет, сижу вникаю))) так как понимаю что никому не интересно помогать или обьяснять. Сюда написал в надежде кто подскажет куда смотреть или концепцию иную подскажет...
Дак ты даже код правильно не вставил, что разбирать, как подсказывать? Ашыпка в хз какой строке? Или самому строки считать, водя бородавчатым пальцем, щурясь и шевеля губами?
Дак ты даже код правильно не вставил, что разбирать, как подсказывать? Ашыпка в хз какой строке? Или самому строки считать, водя бородавчатым пальцем, щурясь и шевеля губами?
Я думаю это выглядит немного жутковато со стороны... поэтому с работы попаду домой, сразу все подправлю!
И делай надо убрать - он блокирует считывание с датчиков поэтому и не останавливается, хотя все зависит от скорости двигателя - если 1 мм в минуту или меньше догда да
Код в работе не проверял
Я бы хотел продолжить беседу в не сайта, обсудить ньюансы и закончить проект. Немного не то что я хотел.