![]() |
fbn20050523 发表于 2024-8-30 17:29 不是,PPM(Pulse Wide Modulation)信号就是一个时间信号(脉位调制),是比例遥控模型很常用的信号,你可以映射成任何物理量。 |
coody_sz 发表于 2024-8-30 09:46 感谢回复,想问一下PPM信号在实际控制是映射为rpm转速吗,pwm占空比通过pi控制器和转速得出 |
1、因为反电动势信号经过了滤波有延时,在此波形对应的转速下,换相是正确的,但是由于没有30度角延时,在其它转速下换相时刻会不对,效率低,发热。 2、换相时间是用定时器来测量的,不需要快速中断,我一般用8次唤相时间平均值的一半作为30度点角度的时间。 3、航模电调输入的是PPM信号,单转向(比如四轴飞行器的电调)用1.0~2.0ms的信号,双向的1.0~1.5ms为顺正转,1.5~2.0ms为反转,1.5m为停止(有一定区间)。 |
顶一下 |
fbn20050523 发表于 2024-8-28 14:42 我用STM32F103系列的,随便带的 stm32g474更不用说了,电气转速在3万以下是随便控制的,如果是PWM触发ADC中断,基本是可以的 我不知道canopen用不用中断或者需要效率 只要不是FOC,STM32硬件资源还是很足够的 每换相一次就启动一个定时器,到下一次换相再读取定时器的数值,就可以知道两次换相之间的时间间隔了,速度就好计算了 |
突然想到硬件定时器分频到1Mhz不产生中断,溢出自动装载,直接读取计数值做时间计数是个好方法 |
Y_G_G 发表于 2024-8-28 11:03 首先感想回复,我使用的是stm32g474这款芯片,带两路电机,一路canopen协议栈.两个电机高速旋转mcu会不会带不动 |
1,转速就是通过换相次数来计算的,6次换相就是电气转一圈,空际转速还要看你电机磁的极对数 2,中断uS级是正常的,1万转速以下的,个人感觉10uS的中断应该是可以的,当转速达到1万以上的话,可以认为6步以内不会有太大的变化,那就可以每一圈只检测一次过零,然后把时间平均,时间到了就强行换相,不需要每一步都检测过零的 航模电调没玩过,没什么经验 |