秦磊 王佳宇 黃名揚 吳定會
摘 要:以MC9S12XS128單片機作為核心控制單元,設計一種電磁循跡智能車系統。重點闡述硬件電路的設計,包括微型處理器控制模塊、電源模塊、電磁傳感模塊、舵機控制模塊、電機控制模塊、速度檢測模塊和調試模塊。針對電磁循跡智能車系統的特點,分別采用開環控制算法和PID控制算法,實現對舵機和電機的控制。實驗結果證明,該智能車系統自主尋跡能力穩定且可靠。
關鍵詞:單片機;智能車;自動循跡;電磁傳感
中圖分類號:TP273 文獻標識碼:A 文章編號:2095-1302(2018)07-0-03
0 引 言
工業生產中,經常需要人員沿著規定的路線日復一日的流水式工作,這種工作會使人產生厭煩心理,導致其在作業過程中不專心,存在隱藏的危險;其次則是一些環境較惡劣的工作場所易導致工人反感[1]。如今市場上已經有一些用來替代人工的車型機器人,通過自動識別技術,在預設的線路上進行附加作業,可以解放人力物力。這些工作都可以依附于電磁線和電磁循跡智能車來實施。
隨著科技的發展,智能出行、智能電器、智能交通[2]等智能技術的應用大大促進了中國的飛速發展[3]。相對現有其他基于光線或影像的循跡技術,電磁循跡的最大優勢在于受到晝夜以及天氣等因素影響較小,對外界因素的抗干擾能力也遠遠優于基于光線或影像的循跡方式[4]。因此傳統基于光線或影像的循跡智能車已經不能滿足客戶的需求,憑借電磁技術的優勢研發出一種節能環保、硬件簡單、數據流量小且更加穩定的循跡智能車,最終實現自動化作業模式[5]已是大勢所趨。
如何用更智能的小車代替人工完成流水式工作成為一個重要課題,設計涉及電磁感應、計算機控制、機械及車輛工程等領域。本文綜合考慮成本和精確控制,設計一種電磁循跡智能車系統。該系統以MC9S12XS128單片機作為微處理器,硬件部分主要包括微型處理器控制模塊、電磁傳感模塊、電源模塊、舵機控制模塊、電機控制模塊、速度檢測模塊和調試模塊,算法程序主要包括運用開環控制實現對舵機的控制,運用PID算法實現電機的控制,最終實現在電磁線路上自動循跡,完成人工危險度高或可靠性較弱的附加作業。
1 系統結構
電磁循跡智能車是在電磁循跡的基礎上,依靠算法控制的一種循跡車。根據設計與功能,系統結構主要包括七個模塊,即微型處理器控制模塊、電源模塊、電磁傳感模塊、舵機控制模塊、電機控制模塊、速度檢測模塊和調試模塊。其系統結構如圖1所示。
當電磁傳感模塊對通電閉合銅導線產生感應電勢時,通過運放芯片將放大后的電平信號輸入給微型處理器控制模塊。經過處理后形成PWM波輸入給舵機控制模塊,進而控制舵機帶動前輪進行轉向;同時微型處理器控制模塊形成的另兩路PWM波輸入給電機控制模塊,進而控制電機帶動后輪轉動。微型處理器控制模塊還另有接口連接速度檢測模塊,實現速度PID閉環控制。調試模塊能實時顯示并調整智能車的各項參數。
2 硬件電路設計
根據系統結構所述,該系統硬件電路設計主要分為微型處理器控制模塊、電磁傳感模塊、電源模塊、舵機控制模塊、電機控制模塊、速度檢測模塊和調試模塊。
2.1 微型處理器控制模塊
MC9S12XS128是16位單片機,其核心板I/O端口分配為:PB0~PB7連接給調試模塊中的矩陣鍵盤,PJ0,PJ1,PJ6,PJ7連接給調試模塊的OLED顯示屏,PB0~PB1連接至調試模塊的矩陣鍵盤,A1連接給速度檢測模塊,PP0與PP1經過74LS244芯片形成兩路PWM波連接給電機控制模塊,PP5與PP6經過74LS244芯片形成一路PWM波連接給舵機控制模塊,OUTPUT1~OUTPUT6連接給電磁傳感模塊[6]。
2.2 電磁傳感模塊
電磁傳感器模塊主要包括感應、選頻、放大和檢波四部分。本文中,在智能車行進路線中心通設一條引導線,導線中通100 mA,20 kHz 的交變電流。首先感應環節選用8×10 mH 簡單、成本低、體積小、靈敏度高且抗干擾能力強的工字電感,在100 mA直導線電路中,其在一定高度能檢測的峰峰值約為48 mV,能很好地滿足感應交變電流產生交變磁場的要求。其次選頻主要是為了過濾其他頻率的干擾信號,根據LC諧振并聯公式計算,本文采用6.8 nF的電容與電感組成 LC并聯諧振電路。再者由于電感感應電動勢的量級為毫伏級別,不能被單片機所識別,所以需要經過放大處理,放大電路由運放芯片TLV2772與電位器構成。最后為了能檢出波動信號中的有用信號,檢波電路采用小信號檢波的肖特基二極管SS14,便于獲得正比于交流線圈感應電壓值的直流信號,也便于單片機進行A/D轉換[7]。
其中LC并聯電路分布采用四個對稱
“一”字電感與兩個對稱“八”字電感,分別與電容并聯,安裝于車體的前瞻,示意圖如圖2
所示。每一個LC并聯電路一頭連接地,一頭引出給選頻、放大與檢波電路作為INPUT。
與LC并聯電路相連的選頻、放大與檢波電路如圖3所示,共用到3組選頻、放大與檢波電路,6路信號每2路共用一個選頻、放大與檢波電路。
2.3 電源模塊
電源模塊貫穿于整個系統,系統中需要有+5 V與+12 V電壓供給。電源模塊的設計直接能決定整個系統,因此不僅需要考慮電壓穩伏、電流容量等參數,也要注意DC-DC轉換效率,降低噪聲防止干擾[8]。出于節能要求,本文選用4個串聯大電容作為電池。
首先,驅動控制模塊需要+12 V電源供給,本文選用B0512S-1W的DC-DC電源模塊,其優點是體積小、效率高,無需外加電路,隔離性能好。
其次,處理器控制模塊、電磁傳感模塊、舵機控制模塊等需要+5 V電壓供給。因為超級電容充放電很快,我們采用TPS630701穩壓芯片,其具有低靜態電流的高效降壓-升壓轉換器,適用于輸入電壓可能高于或低于輸出電壓的應用。在升壓或降壓模式下,輸出電流高達2 A,其穩壓電路如圖4所示。
2.4 舵機控制模塊
由微型處理器控制模塊單片機生成PP5與PP6經過74LS244芯片形成一路PWM波連接給舵機控制模塊,舵機三根線分別連接地、+5 V和PWM。
2.5 電機控制模塊
由微型處理器控制模塊單片機生成PP0與PP1經過74LS244芯片形成兩路PWM波,與+12 V,+5 V和地一起連接給電機控制模塊,驅動電路是由2片IR2104芯片構成的H橋式驅動電路[9],其形成兩路驅動電流給電機模塊驅動后輪轉動。H橋式驅動電路如圖5所示。
2.6 速度檢測模塊
要實現對速度量的閉環控制,就需要實時采集并反饋智能車的速度信息。本系統選用E6A2-CW3C歐姆龍500線編碼器來測量車速,具有A,B雙相,編碼器轉一圈產生500個脈沖,其精度高、反應快,且能正反測轉速[10],接線圖如圖6所示。
2.7 調試模塊
調試模塊主要由參數顯示和參數調整部分組成[11],其中參數顯示部分采用OLED顯示屏來顯示所要參數,參數調整部分采用矩陣鍵盤。OLED接線圖與矩陣鍵盤接線圖如圖7所示。
3 算法程序設計
從本文硬件電路設計來看,該系統通過MC9S12XS128單片機提供的PWM調制信號實現對舵機與電機的控制。因此算法程序的設計也主要包括舵機控制算法與電機控制算法兩部分[12]。
3.1 舵機控制算法
在該系統中,舵機采用開環控制。首先在鋪有交流電的跑道上,確定其中線與左右的極限位置,然后在行進過程中,通過判斷智能車與中線偏離的相對位置,來決定舵機轉向的角度。在電磁傳感算法設計中,“差比和”算法(即用2個電感數據的差除以它們的和)作為一種簡單易用的定位算法,適合對歸一化的采集數據進行處理。在實際行進中發現由于傳感器前瞻較長,傳感器容易出現丟線的情況,所以對此類特殊情況要單獨處理[13]。舵機控制算法流程如圖8所示。
3.2 電機控制算法
在該系統中,本項目采用經典的PID算法實現對電機的閉環控制。PID控制即比例、積分、微分控制,是當今應用最為廣泛的調節器控制方法。本文通過對編碼器測得的偏差計算其相應的比例、積分、微分的值,并進行線性組合實現閉環控制[14]。在實際調整中發現,適當增大比例系數可以減小調節時間,但容易引起較大的震蕩,車速不穩定;而適當增大微分系數可以減小震蕩,但會使上升至穩態的時間加長。在經過多次調整后,最后得出一套適合直道和彎道的PID參數。其算法流程如圖9所示。
4 結 語
本文主要針對電磁循跡智能車的硬件電路設計和算法程序設計進行研究,以電磁傳感作為循跡方式,采用歸一化與“差比和”策略對舵機實現開環控制,采用傳統PID控制對電機進行閉環控制,最終使其能運行在電磁線路上并參加各種作業。通過實際的實驗驗證,硬件電路設計配合相關算法程序能達到預期效果,智能車行駛平穩,性能可靠。
參考文獻
[1]魯世斌,蔣先偉,張量,等. 基于電磁傳感器的智能車設計與實現[J]. 阜陽師范學院學報(自然科學版),2014,31(1):26-29.
[2]奚曉娜,趙康,唐慧娟,等. 基于飛思卡爾KL26單片機的電磁循跡智能車設計[J]. 科技尚品,2016(5):117.
[3]何維,崔傳真. 基于飛思卡爾杯智能小車的設計[J]. 黑龍江科技信息,2017(17):135-136.
[4]潘明,汪鐳,康琦,等. 基于電磁信號導航的智能車系統設計與開發[J]. 中國科技論文,2014(4):407-412.
[5]趙泓揚,楊建姣. 基于MC9S12XS128的電磁循跡智能車控制系統[J]. 常州工學院學報,2015(4):25-29.
[6]謝寧,周翔,劉露露,等. 基于XS128單片機的智能循跡車硬件系統設計[J]. 國外電子測量技術,2012,31(12):63-66.
[7]劉晉澤,朱燕紅. 電磁導引智能小車的設計與實現[J]. 微型機與應用,2016,35(19):53-55.
[8]林得志,劉齊更. 關于電磁智能車電路設計[J].科技信息,2014(11):226-228.
[9]呂浩,呂世公,錢煥裕,等. 用于直流電機驅動的控制算法設計[J]. 電子測量技術,2010,33(7):46-50.
[10]孫瑩,萬秋華,佘容紅,等. 小型光電編碼器細分誤差補償法[J]. 電子測量與儀器學報,2011,25(7):605-611.
[11]黃玉水,黃輝,周美娟,等. 電磁導航式智能車的設計與實現[J]. 自動化儀表,2014,35(5):72-76.
[12]擺玉龍,楊利君,董存輝,等. 基于MC9S128的電磁導航智能車的設計與實現[J]. 測控技術,2011,30(11):59-64.
[13]劉萍,魏瀅,繆斌,等. 電磁組智能車控制策略探討及實現[J]. 四川理工學院學報(自然科學版),2016,29(2):19-24.
[14]師寧,季君,邱利軍,等. 基于PID控制算法的電磁車設計系統[J]. 山西電子技術,2017,(4):13-16,23.