我正在使用覆盆子Pi 3尝试和控制一个无刷直流电机通过一个QBrain ESC。
为此,我使用RPI闪电驱动程序来创建PWM DMA信号。不幸的是,我所做的一切都无法使马达转动。
有人能告诉我应该使用什么频率和占空比来输出到ESC吗?谷歌建议,PWM频率为50‘t,占空比在0.05%至0.1%之间(给出1ms至2ms之间的脉冲),但这似乎不适用于我。
这里的示例代码(C# windows IoT):
var controllers = await PwmController.GetControllersAsync(LightningPwmProvider.GetPwmProvider());
var pwmController = controllers[1];
pwmController.SetDesiredFrequency(50);
int pin = 12;
var motor = pwmController.OpenPin(pin);
motor.Start();
do
{
double userInputThrust = ...value between 0 and 100 provided by user...
// scale user input from 0 to 100 to between 0.05 and 0.1
double thrust = ScaleBetween(userInputThrust, 0.05, 0.1);
motor.SetActiveDutyCyclePercentage(thrust);
} while (true);发布于 2016-08-18 12:09:24
QBrain的占空比可以在校准期间进行调整。20 is窗口是标准的,但高值和低值有一定的差异。理想情况下,你应该校准1ms低和2ms高。
QBrain ESC使用Atmel微控制器和SimonK固件.因此,您应该遵循SimonK的校准程序,这也可以在网上找到。程序如下:
确保你永远不要在全油门上给ESC供电,否则ESC会重新进入校准模式。建议采用低油门供电。
校准后,您应该注意到,ESC将开始以1070 at的高脉冲在20毫秒的周期内转动电机。(即1000至1070 is之间有一个死区)
如果你不确定输出引脚产生的周期,那么你应该用示波器对它进行观察并测量它。ESC只能做被告知的事情。
https://stackoverflow.com/questions/39005312
复制相似问题