Контроллер для Двигателя БПСТ-32
- Войдите на сайт для отправки комментариев
Вс, 29/06/2014 - 18:20
Нужно сделать контроль двигателя ПБСТ-32
Двигатель на постоянке 220 вольт но он не запускается если на него сразу подать вольтаж, должен быть разгон и торможение!
Начал писать на базе ардуино вот что есть на даный момент:
int sensorPin = A3; //регулятор
int sensorValue = 0;
int motorPin = 9;
int switchPin = 5;
boolean lastButton = LOW;
boolean currentButton = LOW;
void setup()
{
pinMode(motorPin, OUTPUT);
pinMode(switchPin, INPUT);
}
boolean debounce(boolean last)
{
boolean current = digitalRead(switchPin);
if (last != current)
{
delay(5);
current = digitalRead(switchPin);
}
return current;
}
void loop ()
{
sensorValue = analogRead(sensorPin);
sensorValue = map(sensorValue,0,1023,0,255);
currentButton = debounce(lastButton);
if(lastButton == LOW && currentButton == HIGH)
{
for (int i=0; i<=sensorValue; i++)
{
analogWrite(motorPin, i);
delay(10);
}
}
lastButton = currentButton;
}При нажатии кнопки Происходит акселерация до значения i
Подскажите как сделать чтобы при повторном нажатии этой кнопки происходило деаксерерация до полного торможения двигателя
for(int i=sensorValue; i>=0; i--)
{
analogWrite(motorPin, i);
delay(10);
}И еще:
Потенциометр считывается только при запуске, как сделать периодическое считывание для возможности регулировки во время работы?