我正在使用Raspberry Pi 3尝试通过QBrain ESC控制无刷直流马达。ESC的树莓派PWM频率和占空比
为此,我使用RPI雷电驱动器来创建PWM DMA信号。不幸的是我没有做任何事情会让电机转动。
有人可以建议我应该用什么频率和占空比输出到ESC?谷歌搜索会建议PWM频率为50赫兹占空比在0.05%和0.1%之间(以1毫秒和2毫秒之间的脉冲),但这似乎不适用于我。这里
示例代码(C#视窗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);
请在您的问题中发布相关的代码。否则很难说出什么问题。 – Munir
这只是猜测,但我相信你的意思_between 1毫秒和2ms_而不是_between 1000毫秒和2000ms_。如果是这种情况,那么你的代码应该是'ScaleBetween(userInputThrust,0.05,0.1);',假设'ScaleBetween'完成它所做的事情。要调试这样的事情,你可能会被钩住范围,12脚,看什么样的信号它的输出保存自己很多头痛。试验和错误只会让你如此。 –
你是对的,1ms到2ms,错别字。我真的想要建立一个范围,但不幸的是没有一个。 – Slicc