Шд+ a4988+e18-d80nk
- Войдите на сайт для отправки комментариев
Задача
Вращать шаговый двигатель(nema 17) если есть( кредит )
Вращать до тех пор пока датчик(e18-d80nk) не обнаружит объект
После обнаружения останавливать шд до появления кредита
Я начинающий ,заранее спасибо!
Сектч:
#include
AccelStepper Stepper1(1,11,10); //использует пин 10 и 11 для dir и step, 1 - режим "external driver" (A4988)
int steeps = 5000; // количество шагов
long KNO1 = 0; // Исходное значение для таймера.
long KNO2 = 200; // 200 милисекунд предотвращения повторного нажатия
int dir = 1;
const int coinpin = 2;
const int targetcents = 5;
#define SENSOR 3
volatile int cents = 0;
int credits = 0;
// Setup
void setup() {
attachInterrupt(digitalPinToInterrupt(coinpin), coinInterrupt, RISING);
pinMode(SENSOR, INPUT_PULLUP);
Stepper1.setMaxSpeed(1000); //устанавливаем максимальную скорость вращения ротора двигателя (шагов/секунду)
Stepper1.setAcceleration(700); //устанавливаем ускорение (шагов/секунду^2)
}
// Main loop
void loop() {
if (cents >= targetcents) {
credits = credits + 1;
cents = cents - targetcents;
}
else {
}
if (credits > 0) {
digitalRead(SENSOR);
unsigned long r = millis();
if(digitalRead(SENSOR)==0){
if(r - KNO1 > KNO2){
Stepper1.move(steeps);
steeps=steeps*1;
KNO1 = r;
Stepper1.run();}
}
credits = credits - 1;
}
}
void coinInterrupt(){
cents = cents + 1;
}
Поведение при данном скетче : если есть кредит
То двигатель вращается ,при появлении припятствия
Останавливается (шд) и сразу продолжает движение,
А нужно остановить и не запускать до появления
Нового кредита.
Не знаю, что тут означает "кредит", но вот это даю абсолютно бесплатно: http://arduino.ru/forum/obshchii/vstavka-programmnogo-koda-v-temukommentarii
Спасибо ,кредит это 5 рублей ,каждые 5 рублей один кредит
Зачем писать человеку, если он ... не выполняет то что написано выше. Может дело в стилистике написаного выше http://arduino.ru/forum/otvlechennye-temy/o-stilistike-foruma
В строке ХЗ Вы запускаете двигатель по условию наличая кредитов, но я не увидел остановки двигателя при кредитах=0. Допишите или это надо за Вас сделать? Если это так, так обратитесь к тому у кого скопирастили программу.
Может дело в стилистике написаного выше
В смысле написали так. как журналист, и это оказалось непонятым, надо бы как редактор? :)