莫慧芳 段智敏


摘 要 本文結合微課程設計的特點,構建“學做創”為導向的創客微課程設計模式,通過制作智能避障小車,將過程應用于微課程項目設計。本設計以Arduino單片機為主控芯片,配合直流電動機、光電傳感器等器件,通過相應的軟件代碼實現控制小車的前進、轉彎、避障、自動轉向等動作。將智能小車設計過程制作成微視頻演示,設計任務目標、學習內容,可用于創客教育相關課程建設。
關鍵詞 微課程 創客 避障小車
中圖分類號:G434文獻標識碼:A
0引言
智能小車,即輪式機器人,是移動機器人的一種。基于Arduino開發單板設計智能避障小車,電源模塊為單片機及其他電路提供工作電壓,直流12V主要為電機提供驅動電壓。超聲波避障模塊,通過單片機控制超聲波模塊去小車行駛道路上的障礙物進行檢測,然后單片機通過處理反饋的信息,判斷障礙物的距離,進而發出指令控制模塊,控制小車實現轉向,達到避障的目的。
將智能小車設計過程制作成微視頻演示,設計任務目標、學習內容,可以用于創客教育相關課程建設。
1任務目標設計
以Arduino單片機為核心,制作一款避障小車,小車從無障礙地區啟動前進,感應前進路線上的障礙物后,根據障礙物的位置選擇下一步行進方向。當小車轉過90度后,對前方道路再次檢測。若無障礙,向前行駛。如果存在障礙物且小于15cm,小車右轉180度,并再次檢測前方路況,若無障礙物,向前行駛,有障礙物且距離小于15cm,小車向右轉90度并向前行駛。
2任務學習內容設計
本系統由硬件和軟件兩部分組成。硬件部分由電機驅動模塊、單片機控制模塊、電源模塊、舵機模塊、超聲波模塊和避障模塊部分組成,完成障礙物檢測和直流電機的驅動等功能;軟件部分主要信號檢測和處理、直流電機的控制等功能。系統結構框圖如圖1所示。
2.1 硬件電路設計
本小車的硬件部分分為幾個模塊:超聲波傳感器、Arduino單片機、電源、兩個直流電動機、電機驅動板、車身和遙控模塊等。電源連接在Arduino單片機上給整個小車供電,將超聲波傳感器安置在車身的最前端,用于探測前方是否有障礙物。當超聲波傳感器遇到障礙物,將反饋提供到單片機里從而做出旋轉的反應;再次檢測前方是否有障礙物,若有障礙物則繼續旋轉,沒有障礙物則電機驅動器驅動電機前進,從而實現整個小車的避障功能。
2.1.1單片機控制模塊
中控芯片選擇Arduino單片機,控制信號由單片機對應接收通道進入信號調制芯片,獲得直流偏置電壓。Arduino是一款便捷靈活十分方便上手的開源電子原型平臺,能通過各種傳感器來感知環境,通過燈光、電機和其他裝置來反饋、影響環境。
2.1.2舵機模塊
舵機是小車轉向的執行機構,在硬件連接上共有三根線,分別為電源線、地線及控制輸入項。小車采用輝盛9g舵機,控制信號由接收機的通道進入信號調制芯片,獲得直流偏置電壓。它內部有一個基準電路,產生周期為20ms,寬度為1.5ms的基準信號,將獲得的直流偏置電壓與電位器的電壓比較,獲得電壓差輸出。最后,電壓差的正負輸出到電機驅動芯片決定電機的正反轉。
舵機信號接口輸入圖程序,舵機開始從0度旋轉到180度,在從180度旋轉到0度,最后初始化舵機角度為90度,再安裝超聲波模塊,確保舵機在90度的時候,超聲波模塊在小車正前方,超聲波模塊每次程序執行完都要回到90度的位置。
2.1.3 超聲波模塊
超聲波傳感器是利用超聲波的特性研制而成的傳感器,它是通過傳送一個超聲波(遠高于人的聽覺范圍)和提供一個對應于爆裂回聲返回到傳感器所需時間的輸出脈沖來工作的。測距程序基本工作原理:
(1)采用IO口TRIG觸發測距,給至少10us的高電平信號;
(2)模塊自動發送8個40khz的方波,自動檢測是否有信號返回;
(3)有信號返回,通過IO口ECHO輸出一個高電平,高電平持續的時間就是超聲波從發射到返回的時間。
測試距離=(高電平時間*聲速(340M/S))/2,打開串口監視器,可以看到超聲波模塊的測距結果。
3軟件設計
本系統的軟件用C語言編寫,分為主程序、外部中斷解碼子程序、自動駕駛子程序、障礙物檢測子程序、定時器中斷調速子程序等,主要完成系統硬件的初始化、子程序調用等功能。圖2是測距部分程序,圖3是實物圖。
參考文獻
[1] 趙津.基于Arduino單片機的智能避障小車設計[J].自動化與儀表,2013(05):1-4.
[2] 王艷.基于51單片機的紅外遙控小車設計和制作[J].機電信息,2010(04):4-5.
[3] 吳迪.基于Arduino 的智能循跡小車研究[J].課程教育研究,2019(04):235-236.
[4] 馮曉偉.多路舵機控制PWM發生器的設計與Proteus仿真[J].現代電子技術,2011(11):167-169.