大数跨境
0
0

【信息科技案例】解密小车转速感知,还原行车里程表

【信息科技案例】解密小车转速感知,还原行车里程表 KittenBot小喵
2023-11-20
0
导读:汽车仪表盘上不仅有速度和油耗,还会显示相应的里程表。你知道汽车是如何检测出这些数值的吗?

  【信息科技案例分享】


  解密小车转速感知

  还原行车里程表


导语


汽车是很多人必不可少的交通工具,在它的仪表盘上不仅有速度和油耗,还会显示相应的里程表。可你知道汽车是如何检测出这些数值的吗?
简单来说这些数值是通过传感器来实现的。当车轮旋转时,带动齿轮切割磁场,从而被霍尔传感器捕获到脉冲信号计算旋转角度和旋转时间,然后根据轮子大小换算成里程和速度。
受到这个原理的启发,今天结合喵家的传感器来还原小车计算车速的过程。虽然没有那么精密的传感器,但还是有办法还原的。一起来看看是如何做到的吧!

材料准备


未来板 Lite*2

方糖-灰度传感器*2

方糖-五向摇杆*1

ph2.0红色9g电机*2

AI卫生防疫积木包(带轮子)

剪刀*1

胶水or透明胶带

A4打印纸*1

编程软件使用


Kittenblock1.89    

前期准备


在AI卫生防疫的积木包里,带有两个轮子,量一下轮子的直径大约为66mm。
根据这个尺寸缩小一点,我们用绘图软件做一个黑白相间的圆环,圆环中间留孔方便打印后剪切,把白色和黑色分成4个区域。
制作后打印出来,粘贴到两个轮子上,纸片上黑白的间隔与轮子中间的十字轴的孔对准,保证两个轮子在插入3孔十字轴时的位置一致。
组装9g电机和灰度模块,通过AI卫生防疫的积木包搭建小车结构。注意两个轮子的距离与电机的距离一致且紧凑,否则小车很难走直线。
接线如图中所标识。

拿出一块未来板Lite,连接摇杆对小车进行控制。

原理介绍


在小车搭建完成后,聪明的小伙伴们已经知道是如何检测的了,和之前的案例一样,每次灰度检测到白色或黑色时,就代表轮子旋转了半圈,而知道轮子圈数,其他的数据就可以通过计算得出来啦。

程序编写


1.遥控端

设置无线广播,通过摇杆的不同状态来发送不同的消息控制小车。当摇杆处于默认状态时小车停止运动。
创建【数据】列表,用于存储无线通讯的不同数据,先判断消息中是否存在特定的字符,通过分割字符串转列表的形式获取不同的信息,并保存在不同的变量中。
最后在屏幕上显示变量的数值,观察小车的状态。

2.小车端

初始化时设置通讯和轮子速度,由于两个电机的设置速度和实际速度可能不相同,所以要分别配置,完成初始化让蜂鸣器播放旋律作为反馈。
创建【通讯控制】函数来控制小车状态,前后左右好理解,停止时除了停止所有电机外,时间变量要重置,以防止时间流逝带来巨大的时间差,从而造成数据显示异常。控制端按下摇杆则是查询两个轮子的灰度值。


接下来就是行车里程表的程序了,把这段程序放在主函数里,只有在【状态】变量为前进的时候才会调用里程表的程序。前进时我这里只调用左侧的灰度值来计算里程。
其中的【车速和距离】函数的内容如下,前面得知了轮子的直径可以算出周长。根据轮子转过半圈的【时间一】和【时间二】的差值即可计算出速度,不过需要先判断两个时间是否都不为0。到此为止,所有的程序都完成了。

注意事项


①由于本次案例的灰度传感值容易受到环境光照的影响,建议不要在光照强的地方测试。本案例的板载光敏数值大约在1500左右。

功能演示



【声明】内容源于网络
0
0
KittenBot小喵
专注于从入门到精通的移动机器人开源学习平台
内容 560
粉丝 0
KittenBot小喵 专注于从入门到精通的移动机器人开源学习平台
总阅读0
粉丝0
内容560