摘要:設計一種電磁控制運動裝置,通過安裝在擺桿上的角度傳感器SCA100實時測量擺桿角度,單片機將測量角度與給定角度比較通過PID算法計算出控制量來調節(jié)輸出PWM波的占空比,經過L298N驅動電路后實現(xiàn)對電磁鐵線圈電流控制,進而調節(jié)電磁力的大小完成對設定的擺桿擺角與周期的控制。裝置能夠實時顯示擺角、預置擺角、測量周期、預置周期。
關鍵詞:電磁控制;SCA100;脈寬調制;擺角;周期
中圖分類號: TP302.1 文獻標識碼:A 文章編號:1009-3044(2014)16-3937-04
Abstract: Designing a electromagnetic control moving device. Sensor SCA100 on pole detects swing-pole angle in real time. MCU compares measured angle and set angle, then adjusts duty cycle of the PWM by PID algorithm, the PWM pulse controls current of electromagnet coil by L298N drive circuit, adjusting electromagnetic force to control swing-poles angel and period required. This device functions includes displaying swing-angle, set angle, detect period, set period of swing.
Key words: Electromagnetic control; SCA100; Pulse width modulation; Swing angle; period
設計一個電磁控制運動裝置,該裝置由電磁控制裝置、擺桿等部分構成。要求按下啟動按鈕,由靜止點開始,控制擺桿擺動;由靜止點開始,控制擺桿在指定的擺角10°~45°范圍內連續(xù)擺動,擺動擺角絕對誤差≤5°;由靜止點開始,按指定周期0.5s~2s范圍內控制擺桿連續(xù)擺動,擺動周期絕對誤差值≤0.2s,響應時間≤15s。在擺桿連續(xù)擺動的情況下,按下停止按鈕,控制擺桿平穩(wěn)地停在靜止點上,停止時間≤10s。如圖1所示。
1 擺桿控制原理
擺桿在不受外力的情況下,由于重力作用垂直向下,所以擺桿處于靜止點。當擺桿上固定的磁鐵受到下方電磁鐵互斥電磁力作用時,使擺桿擺動,擺桿經過靜止點后控制電磁鐵電流和方向產生一個大小可控的電磁力,使擺桿在靜止點兩側做連續(xù)擺動,通過角度傳感器實時檢測擺桿擺角,不斷改變電磁鐵線圈電流的大小,控制擺桿角度。通過擺桿上方的量角器可觀測出擺桿擺角。
角度測量使用了VTI公司生產的硅基加速度傳感器SCA100T-D02[1],其主要性能指標:雙軸向傾角測量;測量靈敏度1.2V/g;+5V單電源供電,兩個比例電壓輸出,內置11位AD轉換器;兼容SPI的數(shù)字輸出;該傳感器的每個軸可以檢測0~90°度之間的傾角。元件如圖2。
2 電磁鐵電流控制的分析與計算
2.1 電磁鐵電流控制
為了控制擺桿擺動角度,需要控制電磁鐵的電流大小和方向。系統(tǒng)通過單片機輸出PWM波控制加在電磁鐵線圈上的電壓[2]。采用定頻調寬法實現(xiàn)對電磁鐵線圈端電壓控制。定頻調寬法中高、低電平時間之和TH+TL=T保持一定,使TL在0~T范圍內變化。通過調節(jié)高電平時間變長,低電平時間變短,產生的PWM脈沖占空比線性增大,使加在電磁鐵上的平均電壓增大,擺桿受到斥力增加擺動角度增大,反之則減小,實現(xiàn)擺桿轉角從10°到45°變化。為了更好地穩(wěn)定擺桿擺角與周期采用了PID控制算法實現(xiàn)單片機對擺桿角度穩(wěn)定控制。
2.2 數(shù)字PID控制算法的計算
反饋[e]代表給定值角度與實際角度的偏差,這個偏差值被送到控制器,控制器算出偏差差信號的比例值、積分值和微分值,并將它們進行線性組合,得到輸出控制量[u]公式(1)。PID控制過程如圖3。
[u(k)=KPΔe(k)+KIΔe(k)+KDΔe(k)+Δe(k-1)] (1)
其中,[KP]、[KI]、[KD]分別稱為比例系數(shù)、積分系數(shù)、微分系數(shù)。通過對給定值與實時采樣值比較值偏差[e(k)]進行PID運算得到輸出控制量[u(k)]作為控制量(PWM波的占空比)控制電磁鐵電磁力大小。
3 系統(tǒng)設計
3.1 系統(tǒng)總體方案
系統(tǒng)總體框圖包括主控單元、驅動模塊、電磁控制模塊、擺桿擺角檢測模塊液晶顯示模塊、電源模塊、鍵盤等電路。系統(tǒng)總體框圖如圖4所示。
3.2 單片機控制電路
系統(tǒng)以STC89C52RC為控制主芯片,它是一個低功耗、高性能CMOS 8位單片機,內置8k字節(jié)可反復擦寫的Flash ROM和256 B RAM,適合于許多較為復雜控制應用場合[3]。
3.3 LCD顯示及鍵盤電路
3.3.1 LCD顯示電路
選用LCM12864ZK為控制器的液晶顯示屏,分辨率為128×64,可顯示8×4行漢字,以構成全中文人機交互圖形界面。LCM12864ZK以串行方式與單片機通信。這種方式可以大大節(jié)省單片機的硬件資源,同時顯示方式是靜態(tài)的可以提高單片機的執(zhí)行效率[4]。
3.3.2 鍵盤電路
采用4個獨立式按鍵 S1、S2、S3、S4構成鍵盤接口。其中 S1為啟動/停止鍵,進行手動切換;S2為加一鍵;S3為減一鍵;S4為擺角/周期設定鍵[4]。
3.4 擺角監(jiān)測電路
角度傳感器SCA100通過串行方式與單片機完成角度數(shù)據(jù)傳輸[5-7],SCK與單片機p3.0位連接作為串行時鐘信號,MOSI和MISO分別于單片機的P3.1和P3.2連接進行串行數(shù)據(jù)傳輸,電路結構緊湊,占用單片機資源少,芯片能夠直接把檢測到的角度轉換為數(shù)字量,送入單片機作為實時測量擺桿角度數(shù)據(jù)。電路如圖5所示。
3.5 電磁控制驅動電路
驅動電路如圖6所示[8]。該驅動電路構成兩路送出PWM波,驅動功率大,驅動能力強。IN1、IN2分別接單片機p3.3和p3.4引腳,ENA使能信號接單片機p3.5,在H3端子接電磁鐵線圈。單片機控制IN1和IN2極性可以控制輸出電壓極性,通過ENA控制電路輸出PWM波的占空比。這樣就可以對電磁鐵線圈內電流大小和方向進行控制。
4 軟件設計主流程
主流程圖如圖7所示。
5 結論
通過實驗電路證明對設定的不同擺角和周期數(shù)據(jù)測試結果符合要求,此外裝置有進一步改進的空間,可以通過再程序設計進一步提高系統(tǒng)的快速響應特性和精度。
參考文獻:
[1] SAC100-D02 datasheets [EB/OL] www.DatasheetCatalog.com
[2] 黃智偉.全國大學生電子設計競賽系統(tǒng)設計[M].2版.北京:北京航空航天大學出版社,2011.
[3] 郭天祥.51單片機C語言教程—入門、提高、開發(fā)、拓展全攻略[M].北京:電子工業(yè)出版社,2010.
[4] 藺鵬.帆板自動控制系統(tǒng)設計[J].蘭州工業(yè)高等??茖W校學報,2012,19(2):27-29.
[5] 唐原廣,趙曙東.基于單片機的傾角測量系統(tǒng)設計[J].微計算機信息,2007,23(3):95-97.
[6] 李加念.基于光電和傾角檢測的全天候太陽跟蹤傳感器設計[J].傳感器與微系統(tǒng),2014,33(4):83-86.
[7] 王盛軍,邵瓊玲.基于SCA100T和MCU數(shù)字傾角傳感器的設計與實現(xiàn)[J].傳感器與微系統(tǒng), 2010,26(8):90-91.
[8] 黃智偉.全國大學生電子設計競賽培訓教程(修訂版)[M].北京:電子工業(yè)出版社,2010.