查看: 317|回复: 0

[教程] M.A.R.K|用巡线传感器实现小车巡线

[复制链接]

M.A.R.K 小车组装好后就可以编写程序让它跑起来了。这里我们尝试用巡线传感器让小车沿着地图上的黑线行走。

巡线传感器原理介绍

巡线传感器是一种利用红外线的物理性质来测量的传感器。小车在巡线时,巡线传感器会发送红外线,经过地图反射后,再被巡线传感器接收到。由于黑白两色对红外光的吸收比例是不一样的,所以小车可以判断经过了黑色区域还是白色区域。

软件安装


M.A.R.K 小车使用的图形化编程软件是 CodeCraft,可以在 https://ide.tinkergen.com/download/cn 找到相应的版本后下载安装。

你也可以不安装桌面客户端,直接使用网页版进行编程。网页版地址为:https://ide.tinkergen.com ,上图即为网页版编程界面。不过因为需要连接设备,所以需要根据提示下载安装设备助手。

连接电脑

使用 Type C 数据线连接电脑和小车上的 cyberEye 主控板。连接后电脑会自动安装驱动。驱动安装好后我们选择界面左上角的【切换设备】按钮。

在设备列表中选择【 M.A.R.K(cyberEye)】。

点击【连接设备】。

在弹出的窗口中选择数字较小的端口号。这里选择【COM4】。

下面就可以开始编写代码了。

测试巡线传感器

因为巡线传感器接到了 D6|D5 接口,我们无法判断左右两侧的巡线传感器对应接口分别是哪个。而且我们还要测试一下,巡线传感器遇到黑色时读数是 1 还是 0。所以我们用一段简短的程序来试一下。

到【系统】分类下将【当启动时】、【等待(1000)毫秒】、【数字读取引脚(D4)】、【图表打印()()()()】这几句指令拖到代码编写区。

到【控制】分类下拖出【重复执行】。

完整代码如上所示,每隔一秒打印 D5 和 D6 引脚的值。接下来依次点击左侧的【上传】和【串口图表】按钮。

打开小车的电源,将巡线地图放在小车巡线传感器下方,观察图表数据的变化。

观察可知,巡线传感器遇到黑色是 1,遇到白色是 0。接下来移动巡线地图,使得右侧在黑线上,左侧在白色区域,再观察图表变化。

综合分析可以得出结论:D5 是右侧巡线传感器,D6 是左侧巡线传感器。遇到黑色是 1,遇到白色是 0。

巡线原理

我们考虑几种情况:

  1. 左侧黑,右侧黑。说明小车在黑线上,保持直行。
  2. 左侧黑,右侧白。说明小车在黑线右侧,需要左转纠偏。
  3. 左侧白,右侧黑。说明小车在黑线左侧,需要右转纠偏。
  4. 左侧白,右侧白。说明小车不在线上,尝试倒退。

编写代码

对照巡线的原理,编写代码如下:

测试运行

将代码上传到小车,放到地图上测试。



这是常规红外巡线的效果,下一次我们来尝试用计算机视觉巡线。

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

本版积分规则

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

硬件清单

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

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

mail