一直以来, 农业机械在需要确定株距和利用作业速度时, 大多通过地轮带动齿轮或链轮链条等形式的机械传动来解决, 必要时还需要加装变速箱。 此类方法缺点是受地面平整度等原因的影响,速度不稳定,调整困难,而且由于工作环境差,机械部件易于磨损。 长期以来由于没有合适的测控手段, 在一定程度上阻碍了农业机械自动化和智能化的发展。
鼠标, 是现今计算机系统不可缺少并且不可取代的输入设备之一。 它结构精巧,操作简便灵活,对工作条件也没有特别要求,只要有一平整洁净的表面即可,并可直接获得数字信号,易于对信号进行处理和对被控对象进行控制。
1 光学鼠标的工作原理
光学鼠标, 无论是结构还是操作都非常简单。 光学鼠标通常由以下几部分组成:光学感应器、光学透镜、发光二极管、接口微处理器芯片、轻触式按键、滚轮、连线、USB 接口、外壳等。
光学鼠标的核心是一个低分辨率摄像机,称为光学感应器。 在光学鼠标内部有一个发光二极管,通过该发光二极管发出的光线,照亮光学鼠标底部表面,将反射回的光线,经过一组光学透镜,传输到光学感应器内成像。 这样,当光学鼠标移动时, 其移动轨迹便会被记录为一组高速拍摄的连贯图像。 然后利用光学鼠标内部的数字微处理器对移动轨迹上摄取的一系列图像进行分析处理, 根据这些图像上特征点位置的变化,得出鼠标 x, y 方向的移动数值,结果会传到计算机, 屏幕上的光标就会根据这些结果来移动,完成光标的定位。
DPI 是用来衡量光学鼠标每移动一英寸所能检测出的点数,DPI 越小, 用来定位的点数就越少,定位精度就低;用来定位点数就多,定位精度就高。 通常情况下, 光学鼠标 DPI 一般为400 至 800 甚至更高,即理论上光学鼠标可识别出 0.064mm 的距离变化,甚至更加精细。
鼠标所允许的最大速度是指鼠标可以正确定位的每秒最大移动距离, 这与鼠标芯片的拍摄速度和拍摄面积有关。 当鼠标的移动速度超过一定的值时, 相连的图像就无法找到相应的关联特征点,这时鼠标就无法准确定位。 对于一般的鼠标,最大速度可达 45~65 英寸/秒,即 41~59km/h. 一般来说,这个速度能够满足一般的农机作业速度。
2 设计思路
若要把鼠标用于测量农业机械的作业距离和速度,需要对鼠标作一番改造。
光学鼠标工作时由于透镜焦距较小, 使鼠标几乎紧挨着底部表面, 如果换一焦距较大的透镜,就可以使鼠标离开底部表面一定距离,而应用于测量农业机械的作业距离和速度。 适当选取合适焦距的透镜, 调整透镜与光学感应器以及与地面的距离, 使地面的图像在光学感应器上成像,随着机具相对于地面运动,就可以测量农业机械的作业距离和速度。
因地面不像桌面一样平整, 鼠标不可能贴着地面移动,另外,鼠标的移动在计算机桌面上反应出来的只是鼠标指针的移动, 无法反应出移动距离和速度。 下面设计一试验组件,该试验组件固定在相应的农机具上, 并与计算机连接后, 可随着农机具的运动测量出运动的距离和速度。
2.1 硬件设计
根据设计思路,去掉光学透镜组件,在鼠标的感光孔下方合适的距离位置加装一个透镜代替原来的小透镜, 保证鼠标离开地表面一段距离后, 同时用能发出鼠标传感器的敏感光的发光二极管照射地表面使之能够在鼠标光学感应器内呈现清晰的图象,并把鼠标的移动换算成地表面的移动,就能计算出移动的距离和速度。 我们把这样改造后的鼠标称为试验组件。
试验组件的结构原理如图 1 所示。 图中鼠标为去除透镜组件的鼠标, 发光二极管移到如图所示位置。【图1】
2.2 软件设计
当改造后的鼠标即试验组件插入到计算机上时,计算机仍然认为是鼠标,测量时在地面的运动仍然是鼠标指针的移动, 不能反应出试验组件的移动距离和速度。 因此, 还需编制一WINDOWS 应用程序。 图 2 为用 visual c++2010应用程序设计时的流程图。 当应用程序运行后,在计算机桌面打开一窗口, 直接从鼠标的 USB口接收数据, 这样也避免了 WINDOWS 对鼠标移动进行的加速度运算的影响, 窗口中的数据会严格地反应试验组件的运动, 试验组件的运动距离和移动速度就可准确地用数字反应在计算机桌面上。【图2】
程序中定时器是用于定时计算移动距离和速度。
在应用软件设计时加入了一个修正系数,对程序读取的结果进行修正, 以适应不同 DPI的鼠标芯片及试验组件的透镜所产生的图像放大率。 修正系数由参数设置功能来设定。
重置数据是使软件系统数据归零, 以备下次测量。
程序编制时,考虑到两个方向的运动,即 X方向和 Y 方向运动, 窗口中可同时显示出两个方向的数据, 使用时须调整试验组件的运动方向,使其尽量沿一个方向运动如 X 方向(或 Y 方向)。
3 系统试验
3.1 试验环境
因为应用程度较小,不超过 20KB,只读取USB 口数据,所以对计算机没有特殊要求,普通PC 计算机,2 个以上 USB 接口, 安装 Windows7/Windows XP 便可,试验场地选择实验室土槽。
3.2 试验方法
将试验地表加以平整, 调整试验组件与地面的距离, 此距离可以利用透镜的焦距及其与鼠标光学感应器芯片距离计算得到, 也可以通过试验获得, 只要保证鼠标的光学感应器得到清晰的图像便可。 本试验试验组件离地面约10cm 左右,并使之能在等高度直线移动。 计算机一个 USB 口连接试验组件,另一个 USB 口连接鼠标,以方便对计算机的操作。 但在测量时要确保鼠标不动, 不然鼠标的移动会影响测量结果。 打开计算机,进入试验应用软件,移动试验组件,并调整试验组件的移动方向,使之尽量在Y ( 或 X) 方向移动 , 如选择 Y 方向, 试验组件移动时,Y 方向数据在变化, 并尽量使 X 方向数据不变,或变化很小可以忽略。 然后系统清零, 移动试验组件一定的距离, 观察屏幕显示的 Y 值是否与实际距离相符,如不符,调整修正系数,使之尽可能相符。 调整好后可进行测量。
本次试验用试验组件制作精度较低,确定透镜的图像放大率比较困难,所以利用修改软件中的修正系数的方法加以修正。
3.3 试验结果
在试验中,通过不断修改修正系数,使试验组件的实际移动距离接近显示距离。表 1 测量结果显示了本次试验的实际测量情况。
4 误差原因分析
从表 1 的测量结果来看, 虽然能达到较高的测量精度,但从理论上说,应该会有更好的结果,分析原因有以下几方面:透镜的放大率小于1,使地面在芯片内部的光学感应器中的图像被缩小, 这样在试验组件的光学感应器上反映的地面图像的误差被放大; 试验组件的移动并不总是与地面垂直,在运动方向的微小倾斜,就会导致地面图像在光学感应器内移动距离大于(或小于)实际移动距离。 但此误差并不会积累,在移动更长的距离时,此误差不会增大;.还可能存在系统误差, 进一步调整修正系数可得到较好的解决。【表1】
总体来看, 本试验对于作业速度和距离的测量能够达到较高的精度,但还不是很理想。 下一步的研究一方面是找出误差产生原因, 进一步提高精度。 另一方面是进一步完善和增加功能,并使用自动变焦镜头,放大率、物距、像距都可自动获得,使其适应各种工作环境。 研究开发单片机应用系统,加装多路模拟输出、数字输出等,使之成为一个独立工作系统,并对系统标准化,同时研制开发配套的排种器、排肥器、喷撒设备,通过距离控制和速度控制,实现等距播撒和等速播撒。 可以见得,在不远的将来,农业机械将会有一个质的转变。
5 结论
利用计算机鼠标原理能够实现精确测量农业机械作业距离和速度, 如进一步的研究将有利于农业机械的机电一体化、自动化和智能化。不但可以省掉很多机械传动,减少机械磨损,使机具具有更长的使用寿命, 还可以精确控制精密播种机、施肥机及药物喷撒机等农机具。 利于精准农业的发展,为下一步研究打下基础。