摘要:生活中許多目標的高度和水平距離需要進行測量。目前主要的測量方法,仍以傳統的皮尺丈量為主,測量效率不高,有時還很不方便,沒有技術成熟的數字式測高測距產品。以基本的數學方法為理論依據,利用遙控小車做為載體,采用角度傳感器測量角度、霍爾傳感器測量水平距離等,通過單片機LM3S615進行數據計算,實現了對待測目標物體的高度、水平距離等數據的快速、精確和數字式的測量,高度測量精度可達99.06%,水平測量精度則可迭98.06%。 目前,國內外對于測高、測距的研究主要集中在基于對衛星、雷達等信號進行的處理,其應用范圍主要集中在軍事、海洋或地質等數據的測量及勘測。應用于解決日常生活的研究則很少,比如測量難于用傳統方法測量的定目標高度、水平距離等。即使有研究也主要是采用機械方法或對傳統方法進行改進或修繕。目前發達的電子信息科學技術,給這些日常生活中的高度和距離測量,提供了新的思路和解決方案。本設計將利用遙控小車做為測量工具,分別采用角度傳感器、霍爾傳感器等傳感器來獲得測量物理數據并通過單片機進行數據處理及計算,從而實現對待測目標物體的高度、水平距離等數據的快速、精確和數字式的測量。 1 理論分析與計算 1.1 設計原理分析及計算 小車自動測高測距的過程及相關參數如圖1所示。當小車停放在A點時,遙控小車的裝置調整角度,使測量光點定點到C點,測量并存儲此時的角度α;之后,遙控控制小車前進,使小車沿直線行進到達B點,并再次調整測量裝置,使測量光點再次定點到C點,并測量記錄此時的角度β。并對從A到B的行進距離L進行測量和記錄。利用以上數據,就可以計算出待測目標的高度H及小車距離待測目標的距離S,計算式如下式(1)所示。 1.2 系統設計思想 從測量過程看,需要進行測量的數據有角度α、角度β和小車行進距離L。通過對器件的反復比較,在本設計中,采用安裝在舵機上的激光光源作為定點C點的裝置;采用角度傳感器來進行角度的測量;采用霍爾傳感器作為距離測量的傳感器;采用單片機作為主要控制單元,來控制小車直線行進、舵機轉動定點、角度及距離數據的獲取和計算及測量數據的LCD顯示等。 2 系統設計 1)總體設計方案 通過以上分析,可將系統分為5部分:角度檢測模塊、水平距離檢測模塊和遙控控制模塊、LCD液晶顯示模塊、信號處理以及控制模塊。系統框圖如圖2所示。 總體設計方案為LM3S615處理器通過角度傳感器,采集第1次角度傳感器測量信號并存儲,遙控控制小車并調節角度通過一段距離,采集第2次角度傳感器測量信號,同時利用霍爾傳感器對兩次測量間的小車行進距離進行測量,最終通過LM3S615處理器通過算法公式得出具體高度并送入LCD12864液晶顯示模塊進行顯示。 2)角度信號檢測方案設計 本設計采用巨磁電阻角度傳感器,它是利用巨磁電阻在一定的磁場下電阻值急劇減小這一特性開發的角度測量傳感器。它具有線性好、線性范圍寬、體積小、靈敏度高(分辨率可以達到12位,精度達到10位,最低分辨率為0.01度)、響應頻率高等一系列的優點。缺點是成本較高。 3)水平距離檢測方案設計 本設計采用霍爾傳感器計數的方法進行水平距離測量,它具有體積小、靈敏度高等優點,而且集成化的霍爾傳感器在感應到磁場變化時,會有一個數字量的高低電平跳變的特性,可以利用這個特性達到計數的目的。 4)控制器模塊設計 采用LM3S615ARM作為控制器,Luminary Micro StellarisTM系列的微控制器是首款基于ARMCortexTM-M3的控制器,它將高性能的32位計算引入到對價格敏感的嵌入式微控制器應用中。考慮到精度以及運行速度要求不太高等諸多因素,決定采用LM3S168ARM作為本設計的處理器模塊。 3 系統實現 本系統共包含電源、角度數據信號采集、距離數據信號采集、遙控控制、數據信號控制、數據信號顯示6個主要模塊。具體介紹如下。 1)控制部分電路設計 控制部分必須完成紅外控制部分軟件解碼功能、電機運行控制功能、舵機控制功能、霍爾傳感器計數功能、激光器控制、角度傳感器數據采集功能以及LCD控制。控制部分電路如下圖3所示。 2)驅動電路 本車采用原車自帶的雙直流減速電機,74V就能很好的工作。電機驅動選用專用驅動芯片L298N,該芯片分別獨立控制兩路電機的起停和轉向,保證兩路電路的參數的對稱,有利于保持小車行駛的穩定性和精確性,也降低了電路的設計難度。電機驅動電路如圖4所示。 4 系統軟件設計 本系統采用LM3S615ARM作為控制芯片,通過紅外遙控控制小車水平行走,調節角度傳感器采集數據,每次測量一組數據將角度數據和水平行駛距離存儲并等待下一次操作。程序流程圖如圖5所示。 5 系統調試與測試 5.1 系統調試 1)舵機調試 將舵機、角度傳感器和激光器安裝好。安裝舵機時必須保證舵機能順時針旋轉90°以上,激光器與小車水平,角度傳感器的輸出電壓小于2 V。 2)小車速度控制 為使小車能走直線,系統使用了兩個PWM端口控制小車的左右輪速度,將其PWM占空比設為相同,然后測試修改占空比直至小車能走直線。 3)紅外軟件解碼 紅外編碼采用了脈沖位置調制方式(PPM),利用脈沖之間的時間間隔來區分“0”和“1”。調試時通過改變碼字所對應的時間,直至能接收到正確的數據。 5.2 測試結果和結果分析 5.2.1 測試結果 1)離被測點水平距離9.26 m,以L=1 m為差值不斷前進,測同一點高度,記錄如表1所示。 2)離被測點水平距離9.26 m,以L=2 m為差值不斷前進,測同一點高度記錄,如表2所示。 3)離被測點水平距離9.26 m,以L=3 m為差值不斷前進,測同一點高度記錄,如下表3所示。 5.2.2 結果分析 從以上3表的測量結果來看其整體測量平均值為H=(3.96+4.11+4.22)/≈4.10 m,其絕對誤差約為16 cm,測量精度為96.24%。同時從3表可以看出隨著水平間距的增大其誤差漸漸變小,因此說明角α,β差值越大測量越精確,高度測量的最高精度可99.06%,水平距離最高精度可達98.06%。 6 結論 本產品基本上達到了設計要求的精度,在選擇好適當的步進參數時,高度測量精度可達99.06%,水平距離精度可達98.06%,相對傳統的測量方法更加簡單直觀;進行一些改裝就能應用于實際生活中,可減少對目標物體的高度和水平距離的測量時間和提高測量精度,具有很高的經濟價值。 |