Я подключил моторы от квадрокоптера к Raspberry Pi Zero.Но когда я пытаюсь вращать двигатель, то есть устанавливать скорость, получается, что двигатели начинают вращаться очень быстро, они также могут периодически выключаться, а затем снова начинают вращаться на высоких скоростях.Как я могу изменить скорость?И почему они иногда выключаются?
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
#include <wiringPi.h>
#define RIGHT_MOTOR 1
#define LEFT_MOTOR 4
void init_ESC(int num);
void set_speed(int num, int speed);
int main ()
{
int speed = 3320;
wiringPiSetup();
pinMode(RIGHT_MOTOR, PWM_OUTPUT);
pinMode(LEFT_MOTOR, OUTPUT);
//pwmSetMode(PWM_MODE_MS);
//pwmSetClock(50 * pow(10, 6) / 1920 / 1024);
init_ESC(RIGHT_MOTOR);
delay(1000);
while (1)
{
set_speed(RIGHT_MOTOR, speed);
//set_speed(LEFT_MOTOR, speed);
//printf("speed = %d\n", speed);
}
return 0;
}
void init_ESC(int num){
pwmWrite(num, 0);
delay(20);
pwmWrite(num, 1024);
delay(1);
}
void set_speed(int num, int speed){
pwmWrite(num, 0);
delay(20);
pwmWrite(num, 1024);
pwmWrite(num, 0);
delay(20);
pwmWrite(num, 1024);
delayMicroseconds(1100);
}