基于二維物體斜面黑線運動智能小車的設計
3 系統軟件設計
系統軟件設計采用凌陽獨有的C語言和匯編混合使用對單片機進行編程以實現各項功能,主程序主要起到一個導向和決策功能。為了讓小車能夠準確的沿黑線運動,所設計的程序就應該讓控制系統實時地監視光電傳感器地狀態,調整小車運動一直回到正常運動狀態中。因此,主程序主要包括小車運動子程序、光電檢測的子程序、顯示時間的子程序清看門狗子程序等。小車運動程序流程圖如圖5所示。
在程序中,為了小車運動能夠準確地判斷出當前所處的運動狀態,讓單片機及時地讀取B口低8位的數據。為了小車運動的連貫性和準確性,在流程圖中使用了延時程序。同時,為了避免出現單片機系統自動復位,對小車的運動造成影響,設置了清看門狗程序。
4 系統測試
在此設計的基礎上,通過安裝調試,整個智能小車系統已經形成,為了能讓小車能很準確沿黑線運動,利用光電測試模塊,由單片機控制物體作任意形狀的尋跡運動,并能判斷間斷線段,測試結果如表1、表2所示。在運動時間測試時采用精度為0.01的秒表,檢測小車運動時顯示時間的正確性,如果程序中存在誤差,就應該通過軟件或者硬件的方法修正誤差,進一步減小誤差。測試時間過程如表3所示。
5 結束語
本系統以凌陽SPCE061A單片機芯片為核心部件,主要是利用繼電器控制技術和光電傳感器的檢測技術二維斜面的黑線運動智能小車的設計,在系統設計過程中,力求硬件線路簡單,充分發揮軟件編程的方便靈活的特點,來滿足本設計的要求。從測試項目來看,所設計出的小車能夠實現誤差較小的沿黑線準確運動和同時顯示運動時間的要求。在運動方面,整個運動過程比較連續,但在轉彎幅度比較大的地方時,小車運動時就需要時間來計算、調整。在顯示時間方面,雖然存在一定的誤差,考慮到誤差很小,以及程序的執行花費的時間,可以忽略不計。
光電開關相關文章:光電開關原理
評論