摘 要:本文以基于ARM的飛思卡爾小車為嵌入式平臺,研究舵機、電機、車載攝像頭的協同控制原理。舵機和直流電機的控制經過了近百年的發展,在工業控制領域逐漸成熟。攝像頭的應用我們也并不陌生,但隨著時代進步的要求,人類的控制對象趨于向大系統方向發展,系統各模塊之間,系統與人的交互尤為重要。用C語言設計出應用BANG—BANG和自適應的PID的控制算法,實現了在保持車速的情況下對蛇形彎等道路的有效跟隨。
關鍵詞:Freescale;ARM;攝像頭;電機;舵機;PID
中圖分類號:TP273.5 文獻標識碼:A 文章編號:1674-7712 (2014) 10-0000-02
飛思卡爾智能小車是典型的搭載著有線傳感器網絡的嵌入式平臺,飛思卡爾大賽組委會提供的1/8車模是智能汽車的微縮模型。在這個平臺上研究循跡,壁障以及人機交互將是非常有現實意義的。
大體來說,智能小車分為微控制模塊,電源模塊,電機與舵機模塊與車載攝像頭模塊幾部分。
一、硬件系統
(一)電源系統
電源模塊主要包括單片機電源模塊、舵機和電機電源模塊、攝像頭電源模塊。電源模塊分壓示意圖如下:
(二)舵機控制
伺服器以SD-5為例,研究舵機控制理論。SD-5數字舵機是一種位置隨動系統。它內部由小型直流馬達,電子控制板,可調電位器和變速齒輪組組成。它可以根據內部的位置反饋,讓它的舵盤輸出轉角正比于給定的PWM脈寬。其優越的性能決定了對于它的控制可以使用開環。但是前提是在其在負載力矩小于其最大輸出力矩的情況下。可變的PWM脈沖由為控制器的FTM模塊產生。
(三)電機控制
540電機是個典型的大慣量系統,其執行時間要晚于控制量輸出的時間,所以一定程度的預判和反饋是非常重要的,其控制用閉環的的效果好于開環。為了有力控制,使用了BTS7960雙橋驅動。
(四)攝像頭模塊與圖像數據
OV7670是帶有384Kb FIFO的數字攝像頭,總共有個有效像素,支持RawRGB、RGB(GBR4:2:2,RGB565/RGB555/RGB444)等輸出格式。對于RGB565彩色模式,一個像素占有兩個字節,其中低字節的后三位+高字節的前三位用來表示G(Green),低字節的前5位用來表示B(BLUE)高字節的后5位用來表示R(RED)。為此每幀圖像的數據量為:640×480×2×8=4915200
考慮到數據量太大,我們在采用K60的DMA傳輸。
(五)微控制器系統
飛思卡爾MK60芯片有著卓越的性能。圖3說明了了它的內核和架構。
K60有著DMA功能,使得其與攝像頭的大數據的信息傳輸成為現實。其內嵌DSP內核,計算性能超出M3系列芯片的30%左右
二、控制算法設計
(一)圖像處理算法
由于現實中的賽道是黑白分明,所以我們只需分清黑白兩種極端的情況即可,所以可以對采集的圖像進行二值化處理,我們采用的是軟件二值化方案。歷史上比較經典的算法是大津算法,其算法中心思想為:
設一幅圖像的灰度值為1一m級,在K處將其分成兩組C0=(1~k)和C1=(k+1~m),分別計算各組產生的概率ω0與ω1。,各組的組內平均值μ0與μ1。及整體圖像的灰度平均值μ,兩組間的方差用式(1)求出:
σ2(k)=ω0(μ0-μ)2+ω1(μ1-μ)2=ω0ω1(μ1-μ0)2
=[μ·ω(k)-μ(k)]2/ω(k)[1-ω(k)] (1)
從l-m之間改變k,求上式為最大值時的k,即求maxσ2(k)時的k*值,此時k*值便是所求的閾值。σ2(k)叫做閾值選擇函數。大津法得到能得到較滿意的結果,是全局閾值自動選擇的最優方法。
二值化的效果如下圖:
(二)自適應的PID算法
PID的控制模型如下:
由于直流電機的大慣量特性采用PI算法,而舵機的控制使用PD算法。并且用舵機的輸出量來整定電機PID的參數,以實現舵機和電機的交互工作。而舵機的PID參數來源于微處理器從一幀圖像中提取出來的中心線和終點的差值。
(三)BANG——BANG算法
BANG——BANG算法作為一種補償算法,在電機的控制陷入積分飽和的時候,BANG——BANG算法能夠有效地將控制輸出量拉回來,但是不可避免的造成了系統的抖動與不穩定。所以科學的閾值的確定至關重要。
三、結束語
通過軟硬件的融合,各個模塊有效地交互。飛思卡爾智能小車能在較高的車速下安全駛過大S彎,小S彎道,蛇形彎道等路況。在現實領域可以用于車輛安全方面,消除安全隱患,智能汽車的思想將會為社會帶來很大的便利和發展。
參考文獻:
[1]王懷宜.嵌入式系統原理與實踐:ARM Cortex-M4 Kinetis微控制器[M].北京:電子工業出版社,2012.
[2]URL.http://www.lpld.cn/?p=360[OL].
[3]周斌.智能車光電傳感器布局對路徑識別的影響研究[J].電子產品世界,2006(07).
[4]王志軍,趙捷,趙建業.電子技術基礎[M].北京:北京大學出版社,2010.
[5]康華光.電子技術基礎:數字部分(第五版)[M].北京:高等教育出版社,2006.
[6]薛濤.單片機與嵌入式系統開發方法[M].北京:清華大學出版社,2009.
[7]Freescale ARM Cortex M4, Inc.MK60DN512ZVLL10 Device User Guide[OL].
[8]http://www.freescale.com.cn/[OL].
[9]張曉蘭,白宇蓮.基于DMA的UART接收數據方法的研究[J].中國電子商務,2012(08).
[10]Todd D.Motton.嵌入式微控制器Embedded Microcontroller[M].北京:科學出版社,2003.
[作者簡介]狄新凱(1992-),男,山東滕州人,山東師范大學物電學院,學士學位,研究生,研究方向:電子信息科技。