一直以來, 農業機械在需要確定株距和利用作業速度時, 大多通過地輪帶動齒輪或鏈輪鏈條等形式的機械傳動來解決, 必要時還需要加裝變速箱。 此類方法缺點是受地面平整度等原因的影響,速度不穩定,調整困難,而且由于工作環境差,機械部件易于磨損。 長期以來由于沒有合適的測控手段, 在一定程度上阻礙了農業機械自動化和智能化的發展。
鼠標, 是現今計算機系統不可缺少并且不可取代的輸入設備之一。 它結構精巧,操作簡便靈活,對工作條件也沒有特別要求,只要有一平整潔凈的表面即可,并可直接獲得數字信號,易于對信號進行處理和對被控對象進行控制。
1 光學鼠標的工作原理
光學鼠標, 無論是結構還是操作都非常簡單。 光學鼠標通常由以下幾部分組成:光學感應器、光學透鏡、發光二極管、接口微處理器芯片、輕觸式按鍵、滾輪、連線、USB 接口、外殼等。
光學鼠標的核心是一個低分辨率攝像機,稱為光學感應器。 在光學鼠標內部有一個發光二極管,通過該發光二極管發出的光線,照亮光學鼠標底部表面,將反射回的光線,經過一組光學透鏡,傳輸到光學感應器內成像。 這樣,當光學鼠標移動時, 其移動軌跡便會被記錄為一組高速拍攝的連貫圖像。 然后利用光學鼠標內部的數字微處理器對移動軌跡上攝取的一系列圖像進行分析處理, 根據這些圖像上特征點位置的變化,得出鼠標 x, y 方向的移動數值,結果會傳到計算機, 屏幕上的光標就會根據這些結果來移動,完成光標的定位。
DPI 是用來衡量光學鼠標每移動一英寸所能檢測出的點數,DPI 越小, 用來定位的點數就越少,定位精度就低;用來定位點數就多,定位精度就高。 通常情況下, 光學鼠標 DPI 一般為400 至 800 甚至更高,即理論上光學鼠標可識別出 0.064mm 的距離變化,甚至更加精細。
鼠標所允許的最大速度是指鼠標可以正確定位的每秒最大移動距離, 這與鼠標芯片的拍攝速度和拍攝面積有關。 當鼠標的移動速度超過一定的值時, 相連的圖像就無法找到相應的關聯特征點,這時鼠標就無法準確定位。 對于一般的鼠標,最大速度可達 45~65 英寸/秒,即 41~59km/h. 一般來說,這個速度能夠滿足一般的農機作業速度。
2 設計思路
若要把鼠標用于測量農業機械的作業距離和速度,需要對鼠標作一番改造。
光學鼠標工作時由于透鏡焦距較小, 使鼠標幾乎緊挨著底部表面, 如果換一焦距較大的透鏡,就可以使鼠標離開底部表面一定距離,而應用于測量農業機械的作業距離和速度。 適當選取合適焦距的透鏡, 調整透鏡與光學感應器以及與地面的距離, 使地面的圖像在光學感應器上成像,隨著機具相對于地面運動,就可以測量農業機械的作業距離和速度。
因地面不像桌面一樣平整, 鼠標不可能貼著地面移動,另外,鼠標的移動在計算機桌面上反應出來的只是鼠標指針的移動, 無法反應出移動距離和速度。 下面設計一試驗組件,該試驗組件固定在相應的農機具上, 并與計算機連接后, 可隨著農機具的運動測量出運動的距離和速度。
2.1 硬件設計
根據設計思路,去掉光學透鏡組件,在鼠標的感光孔下方合適的距離位置加裝一個透鏡代替原來的小透鏡, 保證鼠標離開地表面一段距離后, 同時用能發出鼠標傳感器的敏感光的發光二極管照射地表面使之能夠在鼠標光學感應器內呈現清晰的圖象,并把鼠標的移動換算成地表面的移動,就能計算出移動的距離和速度。 我們把這樣改造后的鼠標稱為試驗組件。
試驗組件的結構原理如圖 1 所示。 圖中鼠標為去除透鏡組件的鼠標, 發光二極管移到如圖所示位置?!緢D1】
2.2 軟件設計
當改造后的鼠標即試驗組件插入到計算機上時,計算機仍然認為是鼠標,測量時在地面的運動仍然是鼠標指針的移動, 不能反應出試驗組件的移動距離和速度。 因此, 還需編制一WINDOWS 應用程序。 圖 2 為用 visual c++2010應用程序設計時的流程圖。 當應用程序運行后,在計算機桌面打開一窗口, 直接從鼠標的 USB口接收數據, 這樣也避免了 WINDOWS 對鼠標移動進行的加速度運算的影響, 窗口中的數據會嚴格地反應試驗組件的運動, 試驗組件的運動距離和移動速度就可準確地用數字反應在計算機桌面上?!緢D2】
程序中定時器是用于定時計算移動距離和速度。
在應用軟件設計時加入了一個修正系數,對程序讀取的結果進行修正, 以適應不同 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,使地面在芯片內部的光學感應器中的圖像被縮小, 這樣在試驗組件的光學感應器上反映的地面圖像的誤差被放大; 試驗組件的移動并不總是與地面垂直,在運動方向的微小傾斜,就會導致地面圖像在光學感應器內移動距離大于(或小于)實際移動距離。 但此誤差并不會積累,在移動更長的距離時,此誤差不會增大;.還可能存在系統誤差, 進一步調整修正系數可得到較好的解決?!颈?】
總體來看, 本試驗對于作業速度和距離的測量能夠達到較高的精度,但還不是很理想。 下一步的研究一方面是找出誤差產生原因, 進一步提高精度。 另一方面是進一步完善和增加功能,并使用自動變焦鏡頭,放大率、物距、像距都可自動獲得,使其適應各種工作環境。 研究開發單片機應用系統,加裝多路模擬輸出、數字輸出等,使之成為一個獨立工作系統,并對系統標準化,同時研制開發配套的排種器、排肥器、噴撒設備,通過距離控制和速度控制,實現等距播撒和等速播撒。 可以見得,在不遠的將來,農業機械將會有一個質的轉變。
5 結論
利用計算機鼠標原理能夠實現精確測量農業機械作業距離和速度, 如進一步的研究將有利于農業機械的機電一體化、自動化和智能化。不但可以省掉很多機械傳動,減少機械磨損,使機具具有更長的使用壽命, 還可以精確控制精密播種機、施肥機及藥物噴撒機等農機具。 利于精準農業的發展,為下一步研究打下基礎。