2447浏览
查看: 2447|回复: 3

[高级教程] 【N+】千里马Plus项目式课程 - 07 视觉巡线3

[复制链接]
本帖最后由 Nplus实验室 于 2023-6-7 10:11 编辑

【N+】千里马Plus项目式课程
07 视觉巡线3
- N+桃李科教

上一篇:【N+】千里马Plus项目式课程 - 06 视觉巡线2
下一篇:
【N+】千里马Plus项目式课程 - 08 视觉巡线4

教学目标
1.学习D算法;
2.学习I算法;


教学准备
千里马、地图、数据线、卡片


教学过程
导入 D算法 I算法  总结


1.导入
(1)课程回顾:
什么是PID算法?

PID 算法,是控制理论中最常用、最经典的算法。生活中常见的 PID 的实际应用:比如四轴飞行器,再比如平衡小车,还有汽车的定速巡航、3D 打印机上的温度控制器、恒温热水器等。就是类似于这种:

需要将某一个物理量“保持稳定”的场合(比如维持平衡,稳定温度、转速等)。 PID 分为 3 个部分:比例调节(P)、积分调节(I)、微分调节(D)。
本节课我们将继续PID算法在视觉巡线中的使用。


2.D算法
2.1 D:预测未来得误差
巡线程序增加了 P 比例调节之后,我们发现巡线效果好多了,速度的变化非常平滑,但是仍然会有晃动情况。这是因为惯性的影响,速度越大,黑线越靠近屏幕边缘时的V_turn 就越大,导致惯性的影响就越大。能不能想办法改善这个问题呢?
这个时候就是 D 微分调节要上场了。微分调节的作用如下图,它可以理解为一个弹簧阻力,当动能越大的时候,阻力或拉力也就越大,直到将惯性方向的速度变为 0,也就是下图中弹簧下面的方块,始终会被限制在一个小范围内运动,不会产生太大范围的抖动变化。有了 D 微分调节之后,我们就可以有效的抑制晃动。但是也要去适当的调节 D 微分调节的参数,不然限制的阻力太大, 千里马转弯速度 V_turn 被限制的太小也不行,这会导致转不过弯来。
【N+】千里马Plus项目式课程 - 07 视觉巡线3图1

可以说,D 的功能,就是根据之前的变化趋势,去防范于未来可能发生的失控问题。之前的变化趋势越大(惯性越大),接下来阻力的作用越明显。根据 PID 公式,D 调节也要计算一个 Vd_turn 的分量:
Vd_turn = Kd × derivative = Kd × (Error - lastError)

其中,Kd 是需要我们手动调节的参数,Error 为当前测量的误差,lastError 为上次测量的误差。总的 V_turn 计算公式为:
V_turn = Vp_turn + Vd_turn = Kp × Error + Kd × derivative

2.2 程序编写
编写 PD 调速程序,并调节 Kd 参数至合适的数值,程序如下:
【N+】千里马Plus项目式课程 - 07 视觉巡线3图2

刷入程序后,将千里马放在地图上进行测试,根据测试结果修改变量“Kd”的值,调节范围是0-10,以及速度等参数。

3.I算法
3.1 I:纠正过去的误差
单单 P 比例调节,可能会出现一个问题:调节力度不够,永远存在一个稳定的误差。因为实际情况中可能会存在各种各种的阻力或者影响输出的情况,在这种情况下,我们就需要引入 I 积分调节了。积分调节可以产生一个新的转速 Vi_turn。它的计算公式为:
Vi_turn = Ki × integral

积分调节的作用就是可以消除那个相对稳定的误差。它能将过去误差累计起来,只要存在误差,这个累计值 integral 就会越来越大,就会使调节力度越来愈大,逐渐就能抵消阻力产生的稳定误差的影响。总的 V_turn 的计算公式如下:
V_turn = Vp_turn + Vi_turn + Vd_turn
V_turn = Kp × Error + Ki × integral + Kd × derivative

3.2程序编写
编写 PID 调速程序,并调节 Ki 参数至合适的数值。由于本示例中,几乎没有稳定误差的影响,所以 Ki 的值很小。程序如下:
【N+】千里马Plus项目式课程 - 07 视觉巡线3图3
【N+】千里马Plus项目式课程 - 07 视觉巡线3图4

程序刷入后,将千里马放在地图上进行测试,根据测试结果调节速度、Kp等参数。

4.总结
1.PID算法调节的是什么?
2.PID算法的作用是什么?

5.课后作业
1.熟悉PID算法和程序的编写?

千里马Plus购买链接:N+千里马Plus

本课PPT、视频及案例代码下载:

链接: https://pan.baidu.com/s/1LoBc_cqipJ9NEWqfPbOLpg
提取码: 8888

三春牛-创客  初级技神

发表于 2023-6-28 08:58:16

不错,感谢分享
回复

使用道具 举报

花生编程  中级技匠

发表于 2023-7-20 22:29:21

不错不错
回复

使用道具 举报

花生编程  中级技匠

发表于 2023-7-20 22:30:21

赞赞赞赞赞
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail