所以只能寻求替代方案。
江寒琢磨了一下,打起了灰度传感器的主意。
灰度传感器是一种模拟传感器,在机器人巡线等方面,拥有相当的实用价值。
众所周知,物体的颜色深浅,对光的反射有很大影响,而光线的强度,又可以影响到光敏电阻的工作。
利用这个原理,就可以对物体的颜色进行检测。
在真实的世界中,检测面的材质、外界光线的干扰,都会影响到这种检测手段的准确性。
然而在虚拟空间里,以上两个问题完全不存在。
这么理想的实验环境,在现实中基本找不到。
江寒在商品列表里找了一下,还真发现了灰度传感器,价格也不算特别贵。
他本来还打算,如果买不到或者买不起,就弄两颗光敏电阻,自己DIY一个。
现在倒是省事儿了。
系统提供的灰度传感器,一共有两种。
一种是比较简单的模拟式,一个只要5万积分。
另一种是传说中的智能传感器,功能十分强大,当然价格也要贵一些,要20多万积分。
江寒本着够用就行的原则,理所当然、不可不戒地买了两个便宜的。
灰度传感器共有三个管脚,分别是电源、地线和输出。
江寒分辨了一下,将其正确地连接到了机器人的控制电路里。
然后他又围绕着灰度传感器,重新设计了一下机器人的控制电路,并升级了一下程序。
这样一来,机器人在接受计算机控制的同时,也能利用灰度传感器,得到环境中的信息,实时反馈给计算机。
有了这些数据,就能更加灵活地指挥机器人了。
电路部分其实挺简单的。
RS232串口本身是支持全双工模式的,只需要在连接的时候,多加两根控制线就行。
但程序的升级,就没那么容易了,一不小心,就会发生读写冲突。
江寒调试了好一会儿,才终于让程序正确地运行了起来。
程序中控制小车巡线的部分,有很多现成的算法。
基本思想都差不多。
在小车左边和右边,各安装一个灰度传感器,行驶过程中,轮流检测传感器的取值。
一旦发现偏离,就及时调整电机的运转状态,控制小车的行驶方向。
这样,小车经常会走出一条“S”型轨迹,或者Z型轨迹来。
江寒当然不会这样做了,他开动脑筋,设计了一套比较先进的巡线算法。
虽然更加复杂,但也更加好用,至少小车跑起来,不会经常扭来扭去。
最后,江寒又在地面上刷出了两条平行的黑色轨迹,又在两条轨迹之间,打上许多格子,就像铁道上的枕木一样。
这样拥有灰度传感器的小车,就基本上没有迷路的可能了。
然而,光这样就够了吗?
江寒思考了一下,又在菜单栏那里,安置了一块黑白相间的格子板。
并在石膏手的“手指”处,安装了第三个灰度传感器。
这样一来,当机器人触摸操作菜单时,就有了一个大概的参考坐标。
当然,在没有机器视觉的情况下,想要判断触摸操作成功与否,是相当困难的一件事。
巧妇难为无米之炊,限于硬件设备的落后,江寒也找不到什么靠谱的办法。
最后,他只好在程序中强化了一下电动车的控制,力争让其行驶得更加平稳,同时,还在运动路径计算等方面下了一些功夫,让操作变得更加精准。
各种手段运用到极致,再加上虚拟空间中的理想化条件,江寒总算将机器人的连续无障碍工作时间,延长到了100小时以上。
这已经可以接受了,大不了每天抽点时间,人工调整个两、三次就行了。
江寒让机器人自动运行起来。
随着一台台“雨菲一型”CPU被构建、回收,他的学以致用积分,也缓慢地增长了起来。
随后他就开始策划下一项工程。
他现在最希望拥有的,真正的WIFI信号接收器,也就是无线网卡。