楊建華+袁彪+胡曉嬌+馮蕾



摘要:針對目前教學儀器昂貴,實驗儀器設備緊張的情況,本文設計并制作了基于LabVIEW的半實物虛擬仿真實驗平臺。硬件系統以MSP430單片機為主控單元,設計了無刷直流電機信號采集模塊、輸出驅動模塊和溫度監測模塊。軟件系統包含MSP430單片機測控程序和基于LabVIEW的虛擬儀器應用程序。系統能夠完成無刷直流電機相關的測試、測量和控制。實驗結果表明:系統工作穩定,誤差在設計允許范圍內。
關鍵詞:IabVIEW虛擬儀器:MSP430單片機:無刷直流電機
DOI: 10.3969/j.issn.1005-5517.2017.9.009
引言
傳統儀器主要由信號采集與控制模塊、分析與處理模塊以及測量結果的表達與輸出模塊這三大功能模塊組成。傳統儀器的這些功能都是以硬件(或固化的軟件)形式存在的。而虛擬儀器則是將這些功能移植到計算機上完成。運用計算機,使用數據采集卡,利用軟件在計算機中生成儀器面板,并利用軟件進行信號的分析與處理。相對于傳統儀器,虛擬儀器具有性能高、擴展性強、開發時間短、集成功能優秀等特點。
隨著經濟持續快速發展,各個高校對實驗室的要求也不斷提高,然而,現在各種精密儀器的昂貴價格增加了學校的壓力,也使一些學生得不到良好的實驗條件。基于以上背景,本文設計了基于LabVIEW的半實物虛擬仿真平臺,它采用虛擬儀器和實物相結合,將一些實物平臺用虛擬儀器末代替,既節省了在儀器上的投入,也可以達到實驗目的。
1 基于LabVIEW的半實物虛擬仿真平臺系統總體方案設計
本設計中,各種被測信號經過傳感器、放大整形濾波、現場單片機(MSP430)采集緩存等處理后,輸送到單片機中,通過單片機計算處理后,實現與上位機的通信。同時,來自上位機的信號經RS232總線傳輸到采集節點,驅動數據采集。基于LabVIEW的半實物虛擬仿真平臺系統整體結構框圖如圖1所示。
其中電源電路使用24V穩壓電源,保障電源的穩定,霍爾傳感器的輸出脈沖信號要先進行放大濾波處理后再送入A/D轉換器轉換成數字量。驅動電路通過隔離電路達到弱電控制強電,從而驅動電機。溫度傳感器輸出的是數字量,直接被MSP430采集,采集到的數據緩存供單片機調用。采集節點通過RS232總線與上位機通訊,實現各項數據的實時顯示、存儲和越限報警等功能。
2 系統硬件設計
2.1 單片機控制部分
MSP430系列單片機有獨特的時鐘系統設計,包括兩個不同的時鐘系統:基本時鐘系統和鎖頻環(FLL和FLL+)時鐘系統或DCO數字振蕩器時鐘系統。由時鐘系統產生CPU和各功能模塊所需的時鐘,這些時鐘可以在指令的控制下打開或關閉,從而使單片機執行相應的程序,達到控制目的。
2.2 電機驅動模塊
BLD-300B直流無刷電機驅動器是針對中功率低壓直流無刷電機的高性能無刷驅動產品。該直流無刷電機驅動器采用高性價比的解決方案設計而成,適用于功率為48V、440W,或24V、300W的三相直流無刷電機的轉速調節。BLD-300B可提供內置電位器RV調速、外接電位器調速、外部模擬電壓調速、上位機(PLC,單片機等)PWM調速等功能。同時該驅動器具備大轉矩啟動、快速啟動及制動、正反轉切換、手動及自動調速相結合、異常報警信號輸出等特點。輸入電壓為DC 18-52V,輸出電流為0-35A,適用電機轉速為0-20000rmp,霍爾信號電壓為4.5-5.5V,霍爾驅動電流20mA,外接調速電位器lOkΩ。輸出信號如圖2所示。
2.3 信號傳輸模塊
串口通訊對單片機而言意義重大,且其所需電纜線少,接線簡單,所以廣泛應用于遠距離傳輸中。如圖3所示。
在串行通信中,數據通常是在兩個站之間傳送,按照數據在通信線路上的傳送方向可分為3種基本的傳送方式:單工、半雙工和全雙工,通訊方式如圖4所示。
單工通信使用一根導線,信號的傳送方和接收方有明確的方向性。也就是說,通信只在一個方向上進行。
若使用同一根傳輸線既作為接收線路,又作為發送線路,雖然數據可以在兩個方向上傳送,但通信雙方不能同時收發數據,這樣的傳送方式稱為半雙工。采用半雙工方式時,通信系統每一端的發送器和接收器通過收發開關分時轉接到通信線上進行方向的切換。
當數據的發送和接收分別由兩根不同的傳輸線傳送時,通信雙方都能在同一時刻進行發送和接收操作,這樣的傳送方式就是全雙工傳送方式。在全雙工方式下,通信系統的每一端都設置了發送器和接收器,因此,能控制數據同時在兩個方向上傳輸。全雙工方式無須進行方向的切換。
3 系統軟件設計
3.1 軟件總體設計
根據系統總體方案的設計要求,系統軟件程序主要實現功能為:2項被測數據的檢測、處理和傳輸。軟件結構框圖如圖5所示。
系統選用C語言編寫程序,程序設計首先對傳感器、單片機和上位機顯示等進行初始化。MSP430控制啟動數據采集,進行AD轉換,轉換完成后進行處理并存儲在MSP430內部設計的RAM中,單片機讀取RAM中的信號并顯示。具體流程如圖6所示。
3.2 串口通信
以下對串口通信中一些需要注意的地方作一點說明:
(1)波特率選擇
波特率(Boud Rate)就是在串口通信中每秒能夠發送的位數(bits/second)。MSP430串行端口在四種工作模式下有不同的波特率計算方法。在選擇波特率的時候需要考慮兩點:首先需要考慮系統需要的通信速率。這要根據系統的運作特點,確定通信的頻率范圍。然后需要考慮通信時鐘誤差。使用同一晶振頻率在選擇不同的通信速率時通信時鐘誤差會有很大差別。為了通信的穩定,我們應該盡量選擇時鐘誤差最小的頻率進行通信。endprint
(2)通信協議的使用
通信協議是通信設備在通信前的約定。單片機、計算機有了協議這種約定,通信雙方才能明白對方的意圖,以進行下一步動作。
(3)硬件連接
進行串行通訊時要滿足一定的條件,例如計算機的串口是RS232電平的,而單片機的串口是TTL電平的,兩者之間必須有一個電平轉換電路。
(4)通信數據顯示
為了能夠在計算機端看到單片機發出的數據,我們必須借助一個WINDOWS軟件進行觀察,這里利用一個免費計算機串口調試軟件(串口調試助手)來觀察。
3.3 上位機顯示程序設計
上位機要實現與下位機的通信,實現不同節點的選擇,參數數據的上傳,數據的實時顯示,以及不同參數的趨勢圖繪制。上位機的工作流程如圖7所示。
3.4 PID控制
虛擬控制采用LabVIEW的虛擬仿真功能得到理想的PID圖像的部分前面板如圖8所示。在前面板中設置PID的輸入控件,分別為比例參數、積分參數、微分參數和轉速目標參數。參數經過PID子VI的運算得到輸出值,通過LabVIEW的仿真波形圖來顯示模擬的PID圖像。
在實物平臺上采用位置式PID控制來調節電機的轉速。使用MSP430單片機的定時器的比較模式輸出經過PID調節所得到的占空比來調節電機轉速,使電機轉速穩定在一定的范圍內,實現實物的PID控制。在模擬系統中,PID算法的表達式為:
式中,P(t)為調節器的輸出信號,e(t)為調節器的偏差信號,它等于測量值與給定值之差,Kp為調節器的比例系數,K1為調節器的積分時間,TKD為調節器的微分時間。
在過程控制中,按偏差的比例(P)、積分(1)和微分(D)進行控制的PID控制器(亦稱PID調節器)是應用最為廣泛的一種自動控制器。
PID調節器各個校正環節的作用:
(1)比例環節:及時成比例的反應控制系統的偏差信號e(t),偏差一旦產生,調節器立即產生控制作用以減少偏差。
(2)積分環節:主要用于消除誤差,以提高系統無差度。積分作用的強弱取決于積分時間常數,時間常數越大,積分作用越弱,反之越強。
(3)微分環節:能反映偏差的變化趨勢(變化速率),并能在偏差信號的值變得太大之前,在系統中引入一個早期的有效修正信號,從而加快系統的動作速度,減少調節時間。
模擬信號r(f)、e(t)、u(t)、c(t)在第n次采樣的數據分別用r(n)、e(n)、u(n)、c(n)表示,于是有e(n)=r(n)一c(n)。
從而可以推導出數字PID算法:
將此式代入程序中調節好Kp、K1、KD這三個參數,進而調節PWM使電機轉速達到設定值。在實際應用中,數字PID算法的積分項可能會引起飽和現象,導致帶幅度的超調,使系統不穩定。
為了消除飽和積分的影響,我們采用遇限削弱積分法:一旦控制量進入飽和區,則停止進行增大積分的運算。
3.5 LabVIEW的編制及界面
上位機數據的采集通過一個獨立的子VI完成,通過子VI把串口的數據處理分類,用兩個輸出將數據送給下一個子VI,設置的串口參數必須匹配連接儀器或設備的參數“讀數”參數可指定串口讀取的字節數。如果端口字節超過指定的字節數,超出部分將不會被讀取。如果端口字節數少于指定的字節數,將返回超時錯誤。
上一個子VI輸出的數據被下一個子VI獲取,通過LabVIEW的波形圖示實時的顯示采集的數據。其部分數據如圖9所示。
在虛擬平臺的編制上我們使用了LabVIEW強大的數據處理功能,把實物用數據的形式模擬出來。設置參數和期望值,通過PID子VI模擬出圖像顯示出來。
對于電機虛擬圖像,可通過前面板設計設置理想轉速、PID參數,如圖10所示。從而實現對虛擬電機轉速的控制,進行誤差分析。 誤差分析表示當前實際轉速和設定轉速的差值,如圖11所示。
4 結論
本文米用MSP430單片機進行數據采集,充分利用了單片機的高速性和高可靠性,從而解決了傳統的單片機控制速度較慢的問題。該系統成功采集到各項數據并得到數據圖像,是一套比較完整的虛擬仿真平臺系統,通過軟硬件結合實現儀器功能,具有較好的推廣和應用價值。
參考文獻:
[1]沈建華,楊艷琴,翟驍曙MSP430系列16位超低功耗單片機實踐與系統設計[M]北京:清華大學出版社2004
[2]崔武子,付鈧,鞠慧敏c語言程序設計實踐教程[M].北京:清華大學出版社,2005
[3]魏小龍MSP430系列單片機接口技術及系統設計實佰[M]北京:北京航空航天大學出版社,2002
[4]馬育鋒,龔沈光基于MSP430單片機的多路信號采集系統[J]武漢理工大學學報(交通科學與工程版),2009,33(2A369-372
[5]李楠,騰飛基于LabVIEW的電機轉速控制系統設計[J]計算機測量與控制,2006.14(6):794-796[6]丁元杰單片微機原理及應用(第3版)[M]北京機械工業出版社,2005endprint