pid算法的基础应用

五一放假终于有空,先验证一下之前了解的pid算法。

本次实验是应用pid算法,保持舵机与平面的角度保持在一定的数值。

感觉表述有点不清楚,从视频中看看吧。

 

说说我做了的尝试

系统辨识建立模型

本来之前以为可以通过matlab工具箱的系统辨识建立模型,然后通过工具箱自动调参

但是!自动调参更新完pid参数后,阶跃响应为负值

没办法,只能放弃这个操作了

瞎调参数

之后就随便乱调参数,发现要不抖的厉害,要不就迟滞时间太长

随便调了几下后就放弃这个方法了

Arduino中的自整定算法

就是Arduino-PID-Library的自整定例子

在疯狂调节相关参数后,还是抖的厉害,没法用

系统整体框架

模糊PID

最后还是选择了模糊PID的方法

随便在网上找到了一个用于Arduino的开源算法,Fuzzy-like-PI-controller

整合了mpu6050和舵机的相关代码后,得到了这个项目

这是这个项目的简单流程描述

存在问题

为了验证pid的算法,今天一整天就没得了,心态有点爆炸了,所以最后这代码写的很随意了

就存在了那么些问题,对代码有兴趣的可以自行去github下载,目录下的README有问题的描述

代码地址

https://github.com/greedyhao/servo_mpu6050_pid/tree/master/Arduino

后记

总算又完成一个任务,舒服


个人博客

公众号:greedyhao

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值