完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
PID解算的是姿态角 Yaw Pitch Roll 三个姿态角分别用三组PID控制解算
但是我有个问题一直没想明白 PID解算出的u(t)是怎么于PWM和电机建立关系? 我尝试过两种方式 1)将当前解算出的U(t)直接加到前一个的PWM的CCR寄存器上,直接在前一时间的基础上调整占空比的大小; 2)设立一个PWM的基础值,然后将U(t)加在基础值的CCR上,在基础值的占空比下增加或减少对应的占空比 但是好像实测起来 PID怎么调 都会引起比较大的震荡 求各位大神给小弟解释一下 到底应该怎么把U(t)的值处理之后与PWM建立关系? |
|
相关推荐
4个回答
|
|
帮顶。。。。
|
|
|
|
我也在这里觉得很疑惑
[C] 纯文本查看 复制代码 Moto_PWM_1 = cmd - 1000 - PID_ROL.OUT - PID_PIT.OUT + PID_YAW.OUT;Moto_PWM_2 = cmd- 1000 + PID_ROL.OUT - PID_PIT.OUT - PID_YAW.OUT;Moto_PWM_3 = cmd - 1000 + PID_ROL.OUT + PID_PIT.OUT + PID_YAW.OUT;Moto_PWM_4 = cmd - 1000 - PID_ROL.OUT + PID_PIT.OUT - PID_YAW.OUT;就是这段 |
|
|
|
同和楼主正在为这个问题发愁。。。
|
|
|
|
[C] 纯文本查看 复制代码
Moto_duty[0] = date_THROTTLE - 900 - ctrl.roll.core.pid_out - ctrl.pitch.core.pid_out - ctrl.yaw.core.pid_out;Moto_duty[1] = date_THROTTLE - 900 - ctrl.roll.core.pid_out + ctrl.pitch.core.pid_out + ctrl.yaw.core.pid_out;Moto_duty[2] = date_THROTTLE - 900 + ctrl.roll.core.pid_out + ctrl.pitch.core.pid_out - ctrl.yaw.core.pid_out;Moto_duty[3] = date_THROTTLE - 900 + ctrl.roll.core.pid_out - ctrl.pitch.core.pid_out + ctrl.yaw.core.pid_out;[C] 纯文本查看 复制代码 应该是油门量程减去一常数起保护作用,然后与内环得到的PID值相加减,至于是加还是减,好像与对应的电机紧密相连。 |
|
|
|
只有小组成员才能发言,加入小组>>
请问下图大疆lightbridge2遥控器主板电源芯片型号是什么?
4442 浏览 1 评论
使用常见的二极管、三极管和mos做MCU和模组的电平转换电路,但是模组和MCU无法正常通信,为什么?
312浏览 2评论
为了提高USIM卡电路的可靠性和稳定性,在电路设计中须注意的点有哪些?
296浏览 2评论
311浏览 2评论
311浏览 2评论
352浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-23 00:46 , Processed in 0.890307 second(s), Total 84, Slave 67 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号