2024-2-4 12:23:23 [显示全部楼层]
752浏览
查看: 752|回复: 2

[入门教程] 仰望小车3+二哈识图 视觉寻线

[复制链接]
本帖最后由 rzyzzxw 于 2024-2-4 12:30 编辑


2024.2.4
仰望小车3+二哈识图   视觉寻线图2
风传花信,雨濯春尘。
—— 今日立春。      
立春是二十四节气中的第一个节气
是春的序幕
是冬的结束
是寒到暖的桥梁
是旧岁与新生的对话
冰雪即将远行
春风踏上返程
百草回芽
春野拂绿
新岁将启
浪漫的春天正在酝酿之中
在DF社区里继续陪你
看遍一年四季
仰望小车3+二哈识图   视觉寻线图3


材料清单

  • 仰望小车X1
  • 二哈识图X1
  • DF寻线地图X1

仰望小车3+二哈识图   视觉寻线图4
在去年就有这个想法,仰望和二哈结合做视觉寻线项目,因为我发现,虽然仰望小车个头比较大,可是转向灵活,转弯半径较小,所以做视觉寻线,可能在小场地上也可以跑下来。

现在,它来了。

步骤:
1、二哈装上小车,IIC连接扩展板,二哈要单独供电。
mind+
主控:

扩展板:
仰望小车3+二哈识图   视觉寻线图5
传感器:

执行器:

二哈用IIC与掌控板通信,请在二哈中设置协议为IIC。

2、编写程序,程序是借用以前的视觉寻线小车程序改写的,用了一种简单粗暴的算法。

HUSKYLENS 巡线实现逻辑
如何让小车在白底黑线的巡线地图上循着黑线运动呢?其实我们只需要知道小车相对黑线是什么位置,分下面三种情况:
1、当小车在黑线的偏右位置时,控制小车向左转弯;
2、当小车与黑线相对居中时,控制直行;
3、当小车在黑线的偏左位置时,控制小车向右转弯。
具体应该怎么实现呢?我们将 HuskyLens 在巡线过程中屏幕上显示的信息剥离出来,抽象成下图的几何数学模型。HuskyLens屏幕的分辨率是 320×240,屏幕左上角的O点为屏幕的坐标原点(0, 0),水平向右方向为 X 轴正方向,竖直向下方向为 Y 轴正方向,因此屏幕右下角的坐标为(320, 240)。上图中橙色虚线为屏幕的中轴线,这条线的横坐标值为160。上图屏幕中黑色的线,是 HuskyLens 摄像头“看到”的巡线地图线条,蓝色箭头为 HuskyLens 计算出来的线条方向,蓝色箭头的起点坐标为(x1, y1),终点坐标为(x2, y2)。我们用终点x坐标x2相对中线位置来判断小车运行动作及运行速度。
寻虚线的逻辑是,屏幕中有箭头时,沿箭头方向运动,看不到箭头时,按前面的方向和速度运动。
方向舵四轮小车的转向是由舵机来控制的,直行、左转和右转都是通过舵机的角度调节来完成。
按照我的小车的舵机安装方式,90度为直行,小于90度右转,大于90度左转。
方向舵机的角度应该随二哈识别中测试出的转向预测箭头的终点坐标x2偏离中线x=160的大小动态调整,偏离中线x=160越大,舵机的转向角度也应该越大。

速度控制在两个TT电机驱动的后轮,直道时速度大些,弯道时速度小些,而且越弯速度越小,这样可减少脱线概率。
我用二哈识别寻线得到的箭头的终点的x坐标和中线x坐标160差的绝对值(范围0-160)的大小来确定电机速度,在四轮小车上测试后发现,比用起点坐标的X1更能准确预测方向,寻线更流畅。

在下面的程序中,我用了一次函数的斜率的知识来处理转向角度。


DF小寻线地图还是有点小了,跑道的转弯半径那么小,仰望小车跑起来太勉强了。
自制的手绘跑道弯大多了,跑起来就舒服多了。

另外,要根据地图情况调整二哈的角度,合适的路线识别视野可以使小车寻线更流畅。

这里只是跑起来了,跑得好要用PID,希望愚钝的我有一天能掌握它。





rzyzzxw  版主
 楼主|

发表于 2024-2-4 12:33:31

这是续集17:
正剧:
志童道合 | 仰望--帅气的掌控“新能源”小车
https://mc.dfrobot.com.cn/thread-314836-1-1.html?fromuid=727937
(出处: DF创客社区 - 分享创造的喜悦)
续集一:
志童道合 | 给仰望小车做个方向盘式的遥控器
https://mc.dfrobot.com.cn/thread-315004-1-1.html?fromuid=727937
(出处: DF创客社区 - 分享创造的喜悦)
续集二:
志童道合 | 升级仰望小车的动力系统
https://mc.dfrobot.com.cn/thread-315012-1-1.html?fromuid=727937
(出处: DF创客社区 - 分享创造的喜悦)
续集3:
志童道合 | 升级了遥控器,仰望实现无级变速
https://mc.dfrobot.com.cn/thread-315039-1-1.html?fromuid=727937
(出处: DF创客社区 - 分享创造的喜悦)
续集4:
志童道合 | 遥控再升级,增加刹车功能,仰望终极形态将...
https://mc.dfrobot.com.cn/thread-315051-1-1.html?fromuid=727937
(出处: DF创客社区 - 分享创造的喜悦)
续集5:
志童道合 | 用L298N直流电机驱动模块DF-MD V1.3 改造仰望小车2号
https://mc.dfrobot.com.cn/thread-315074-1-1.html?fromuid=727937
(出处: DF创客社区 - 分享创造的喜悦)
续集6:
L298N直流电机驱动模块DF-MD V1.3+百灵鸽,仰望2号跑起来
https://mc.dfrobot.com.cn/thread-315084-1-1.html?fromuid=727937
(出处: DF创客社区 - 分享创造的喜悦)
续集7:
L298N直流电机驱动模块DF-MD V1.3+掌控宝的仰望2号组合
https://mc.dfrobot.com.cn/thread-315093-1-1.html?fromuid=727937
(出处: DF创客社区 - 分享创造的喜悦)
续集8:
用掌控板+DF掌控micro:bit两用扩展板+TT电机+舵机...
https://mc.dfrobot.com.cn/thread-315100-1-1.html?fromuid=727937
(出处: DF创客社区 - 分享创造的喜悦)
续集9:
L298N_红色直流电机驱动模块+掌控板的应用:仰望3动力升级
https://mc.dfrobot.com.cn/thread-315101-1-1.html?fromuid=727937
(出处: DF创客社区 - 分享创造的喜悦)
续集10:
发现秘密:L298N_红色直流电机驱动模块扩展库+掌控板在仰....
https://mc.dfrobot.com.cn/thread-315103-1-1.html?fromuid=727937
(出处: DF创客社区 - 分享创造的喜悦
续集11:
秘法再用:L298N直流电机驱动模块DF-MD V1.3 mind+扩展库在仰.....
https://mc.dfrobot.com.cn/thread-315107-1-1.html?fromuid=727937
(出处: DF创客社区 - 分享创造的喜悦)
续集12:
L298N_红色直流电机驱动模块+掌控板在mPython中的编程应用:...
https://mc.dfrobot.com.cn/thread-315112-1-1.html?fromuid=727937
(出处: DF创客社区 - 分享创造的喜悦)
续集13:
仰望小车2-盘古斧版:向小伙伴们致敬
https://mc.dfrobot.com.cn/thread-315125-1-1.html?fromuid=727937
(出处: DF创客社区 - 分享创造的喜悦)
续集14:
听"话"的掌控仰望小车
https://mc.dfrobot.com.cn/thread-315539-1-1.html?fromuid=727937
(出处: DF创客社区 - 分享创造的喜悦)
续集15:
仰望小车3-NFC车钥匙版
https://mc.dfrobot.com.cn/thread-317896-1-1.html?fromuid=727937
(出处: DF创客社区 - 分享创造的喜悦)
续集16:
给仰望小车2-盘古斧版增加NFC车钥匙
https://mc.dfrobot.com.cn/thread-317907-1-1.html?fromuid=727937
(出处: DF创客社区 - 分享创造的喜悦)

回复

使用道具 举报

rzegkly  版主

发表于 2024-2-4 22:25:00

漂亮
回复

使用道具 举报

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

本版积分规则

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

硬件清单

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

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

mail