Как повернуть мотор против часовой стрелки - PullRequest
0 голосов
/ 25 октября 2019

В настоящее время мой код, приведенный ниже, включает двигатель, немного задерживается, затем запускается снова. Все это делается по часовой стрелке, однако как я могу написать свой код, чтобы он мог поворачиваться против часовой стрелки?

int motorPin = 3;

void setup() 
{ 
pinMode(motorPin, OUTPUT);
} 


void loop() 
{ 
startStopMotor(135);
delay(1000);
startStopMotor(0);
delay(1000);
}

void startStopMotor(int speed){
  analogWrite(motorPin, speed);
} 

1 Ответ

0 голосов
/ 28 октября 2019

По коду, которым вы поделились, я предполагаю, что вы используете маломощный 5В двигатель постоянного тока ... но вы должны отредактировать свой ответ, чтобы сообщить нам, какое оборудование вы используете. Это не ответ, а идея того, что вы должны искать ... В основном на двигателе, я полагаю, у вас есть контакт 1 и контакт 2. Контакт 1 подключен к сигналу ШИМ, а контакт 2 подключен к заземлению. ,Эта конфигурация позволяет вам управлять двигателем по часовой стрелке. Чтобы запустить двигатель против часовой стрелки, необходимо инвертировать направление тока, в основном, контакт 1 подключен к земле, а контакт 2 подключен к сигналу ШИМ.

Теперь есть несколько способов сделать это, яВы не уверены в точном коде для этого на Arduino, но ваши контакты 1 и 2 будут подключены каждый к контакту ШИМ. В коде вам нужно будет указать arduino, чтобы вывод Pin 1 или 2 был выводом pullDown, который в основном имитирует землю, сообщая направление, в котором другой вывод выведет PWM

, это не пример кода, но он будетдать вам представление о том, как это должно выглядеть

void loop(){ //move clock'wise pin1.pullup(); pin2.pulldown(); analogWrite(pin1, 180); //move counterclock'wise pin2.pullup(); pin1.pulldown(); analogWrite(pin2, 180); }

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...