|
从空心杯小电机Mini4轴改做无刷电机大4轴,第一个问题就是电调.我以前的姿态解算和PID控制周期都是5mS,于是,我选了号称响应速度333Hz的商品电调,并用200Hz的重复频率发PCM控制脉冲.但貌似电机的响应速度还是跟不上.
于是,桨下弄个红外光电传感器,用来实测转速,方法是用stm32的定时器捕获中断,精确测出传感器每次被桨叶遮挡时刻和上次测量时刻的时间差.但结果令我震惊: 油门锁定在同一控制脉宽时,桨在每转一圈的过程中转速并不均匀! 下边是具体测试数据: <>内为定时器捕捉到的寄存器值,单位5us
<43D7>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<4D86>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<5735>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<5CBE>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<60E4>T= 1062(uS), f= 94.16(Hz), 5649.7 转/分
<666D>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<6A93>T= 1062(uS), f= 94.16(Hz), 5649.7 转/分
<701C>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<7443>T= 1063(uS), f= 94.07(Hz), 5644.4 转/分
<049A>T= 1415(uS), f= 70.67(Hz), 4240.3 转/分
<08C1>T= 1063(uS), f= 94.07(Hz), 5644.4 转/分
<0E4A>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<1270>T= 1062(uS), f= 94.16(Hz), 5649.7 转/分
<17F9>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<1C1F>T= 1062(uS), f= 94.16(Hz), 5649.7 转/分
<21A8>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<25CE>T= 1062(uS), f= 94.16(Hz), 5649.7 转/分
<2B57>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<2F7E>T= 1063(uS), f= 94.07(Hz), 5644.4 转/分
<3506>T= 1416(uS), f= 70.62(Hz), 4237.3 转/分
<392D>T= 1063(uS), f= 94.07(Hz), 5644.4 转/分
<3EB5>T= 1416(uS), f= 70.62(Hz), 4237.3 转/分
<42DC>T= 1063(uS), f= 94.07(Hz), 5644.4 转/分
<4865>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<5214>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<5BC3>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<6572>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<6F21>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<74AA>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<039F>T= 1061(uS), f= 94.25(Hz), 5655.0 转/分
<0928>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<0D4E>T= 1062(uS), f= 94.16(Hz), 5649.7 转/分
<12D7>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<16FE>T= 1063(uS), f= 94.07(Hz), 5644.4 转/分
<1C86>T= 1416(uS), f= 70.62(Hz), 4237.3 转/分
<20AD>T= 1063(uS), f= 94.07(Hz), 5644.4 转/分
<2636>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<2A5C>T= 1062(uS), f= 94.16(Hz), 5649.7 转/分
<2FE5>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<340B>T= 1062(uS), f= 94.16(Hz), 5649.7 转/分
<3994>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<3DBA>T= 1062(uS), f= 94.16(Hz), 5649.7 转/分
<4343>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<476A>T= 1063(uS), f= 94.07(Hz), 5644.4 转/分
<4CF2>T= 1416(uS), f= 70.62(Hz), 4237.3 转/分
<5119>T= 1063(uS), f= 94.07(Hz), 5644.4 转/分
<56A2>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<5AC8>T= 1062(uS), f= 94.16(Hz), 5649.7 转/分
<6051>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<6477>T= 1062(uS), f= 94.16(Hz), 5649.7 转/分
<6A00>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<6E27>T= 1063(uS), f= 94.07(Hz), 5644.4 转/分
<73AF>T= 1416(uS), f= 70.62(Hz), 4237.3 转/分
<082D>T= 2478(uS), f= 40.36(Hz), 2421.3 转/分
<11DD>T= 2480(uS), f= 40.32(Hz), 2419.4 转/分
<1B8B>T= 2478(uS), f= 40.36(Hz), 2421.3 转/分
<253B>T= 2480(uS), f= 40.32(Hz), 2419.4 转/分
<2AC4>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<2EEA>T= 1062(uS), f= 94.16(Hz), 5649.7 转/分
<3473>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<3899>T= 1062(uS), f= 94.16(Hz), 5649.7 转/分
<3E22>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<4248>T= 1062(uS), f= 94.16(Hz), 5649.7 转/分
<47D1>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<4BF8>T= 1063(uS), f= 94.07(Hz), 5644.4 转/分
<5180>T= 1416(uS), f= 70.62(Hz), 4237.3 转/分
<55A7>T= 1063(uS), f= 94.07(Hz), 5644.4 转/分
<5B2F>T= 1416(uS), f= 70.62(Hz), 4237.3 转/分
<5F56>T= 1063(uS), f= 94.07(Hz), 5644.4 转/分
<64DF>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<6905>T= 1062(uS), f= 94.16(Hz), 5649.7 转/分
<6E8E>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<72B5>T= 1063(uS), f= 94.07(Hz), 5644.4 转/分
<030C>T= 1415(uS), f= 70.67(Hz), 4240.3 转/分
<0733>T= 1063(uS), f= 94.07(Hz), 5644.4 转/分
<0CBC>T= 1417(uS), f= 70.57(Hz), 4234.3 转/分
<10E2>T= 1062(uS), f= 94.16(Hz), 5649.7 转/分
......
仔细一分析,这也难怪, 你的转速才每分钟6000转,也就是10mS才转够一圈,你怎么可能让人家电调5mS内为你调整转速,人家电调测电机反电动势也得转半圈才能知道结果吧.
因此,我就困惑自己为什么非要控制的这么快?
于是,晚上又折腾一通宵原来的那个瓢虫架子,同样测转速.那时我给空心杯的控制PWM脉冲是100KHz,占空比0%-100%的可控,结果人家空心杯转速均匀,反应良好,如下数据:
<59D5>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<6384>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<6D33>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<01B2>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<0B61>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<1510>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<1EBF>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<286E>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<321D>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<3BCC>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<457B>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<4F2B>T= 2480(uS), f= 40.32(Hz), 2419.4 转/分
<58D9>T= 2478(uS), f= 40.36(Hz), 2421.3 转/分
<6288>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<6C37>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<00B5>T= 2478(uS), f= 40.36(Hz), 2421.3 转/分
<0A65>T= 2480(uS), f= 40.32(Hz), 2419.4 转/分
<1414>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<1DC3>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<2772>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<3121>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<3AD0>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<447F>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<4E2E>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<57DD>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<618C>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<6B3B>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<74EA>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<0968>T= 2478(uS), f= 40.36(Hz), 2421.3 转/分
<1317>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<1CC6>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<2675>T= 2479(uS), f= 40.34(Hz), 2420.3 转/分
<3025>T= 2480(uS), f= 40.32(Hz), 2419.4 转/分
<39D3>T= 2478(uS), f= 40.36(Hz), 2421.3 转/分
<4383>T= 2480(uS), f= 40.32(Hz), 2419.4 转/分
<4D31>T= 2478(uS), f= 40.36(Hz), 2421.3 转/分
<56E1>T= 2480(uS), f= 40.32(Hz), 2419.4 转/分
........
难道,这才是很多"高端"玩具4轴用空心杯减速电机驱动,而不用无刷,或用自己专用电调的真正原因?
|
阿莫论坛20周年了!感谢大家的支持与爱护!!
曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……
|