王 偉,馬瑞卿,張慶超,張 震
(西北工業(yè)大學 自動化學院,陜西 西安 710129)
無刷直流電機(BLDCM)利用電子換相代替機械換相,既有直流電動機的調速性能,又有交流電機結構簡單、運行可靠、維護方便等優(yōu)點,而且體積小、重量輕、效率高[1-2]。因此其在國民經濟各個領域的應用日益普及,特別是在高性能交流伺服驅動領域具有廣闊的應用前景[3]。適于實時控制系統(tǒng)的工業(yè)單片機和高速數字信號處理器(DSP)的出現使得全數字伺服控制技術不但可以簡化系統(tǒng)結構,提高系統(tǒng)性能,還可為進一步采用神經網絡等智能控制策略及高速網絡通訊接口,實現開放式運動控制打下基礎[4-5]。隨著監(jiān)控計算機被大量應用到工業(yè)現場,RS-485串行通信方式以其結構簡單、傳輸距離遠、抗干擾能力強、支持多主機通信、對系統(tǒng)硬件要求低等諸多優(yōu)點,已成為廣泛應用于下位控制器與上位監(jiān)控計算機間的通訊方式[6]。
本文以無刷直流電動機伺服系統(tǒng)為對象,設計了一套基于DSP和CPLD的全數字、高精度控制器及其配套的上位機軟件,控制器與上位機軟件之間通過RS-485方式通信。被控對象按照上位機給定位置作動,具有良好伺服性,同時系統(tǒng)運行參數可上報上位機,以便實時監(jiān)控和分析。
上位機(PC機)軟件采用LabVIEW編寫,其通信接口采用USB2.0接口,下位機(控制器)通信接口采用RS-485總線接口,兩者之間通過USB/RS-485轉換器進行電平轉換。RS-485數據信號采用差分傳輸方式,也稱平衡傳輸,傳輸介質為一對雙絞線。
串口通信數據內容以字符串格式進行傳輸,為保證數據傳輸的正確性,一幀數據由幀頭、幀內容、幀校驗、幀尾組成。幀頭、幀尾是一幀數據開始和結束的標識,在自然狀態(tài)下EB和90、55和AA連續(xù)出現的概率幾乎為0,故一般采用EB90或55AA作為幀頭或幀尾;幀校驗是指對傳輸數據按規(guī)定算法在上下位機各進行一次校驗運算,若兩者運算結果一致即可保證數據傳輸正確;幀內容代表被傳輸信號的值,通信協(xié)議需對實際信號的分辨率進行定義,如不能滿足分辨率要求時需擴展該信號所占字長,在上下位機接收到幀內容后,可能還需根據實際信號對幀內容所代表的數值進行適當縮放。
2.1.1 系統(tǒng)供電設計
控制器的輸入電源電壓是270 V,需要通過DC/DC變換器將其變換為28 V電源后再變換產生±15 V、5 V、15 V等控制電。其中,±15 V用于給運算放大器、電壓/電流傳感器等供電,15 V用于給電機的霍爾位置傳感器及驅動電路等供電;對于主控芯片所需的3.3 V、1.9 V可通過5 V變換得到,同時還設計了DSP要求的先上1.9 V再上3.3 V的上電順序電路。
2.1.2 數字信號處理電路
數字信號處理電路由DSP和CPLD組成。DSP選用TI公司的浮點型數字信號處理器TMS320F28335,該器件精度高、成本低、功耗小、外設集成度高、數據以及程序存儲量大、A/D轉換更精確快速、處理速度快。用于實現閉環(huán)控制算法,發(fā)揮了DSP計算能力強的優(yōu)點。CPLD采用MAX II系列新一代CPLD芯片EPM1270,該芯片集成度高、功耗小、成本低、可以同時處理多路邏輯綜合和時序組合、采用硬件描述語言VHDL實現靈活設計、可靠性高。CPLD用于采集ADC輸出的各參量的數據,通過數據、地址總線、內部寄存器與DSP實現高速數據傳輸,減輕DSP中斷開銷。
BLDCM功率驅動電路是工作在兩相導通120?三相六狀態(tài)模式的橋式逆變器,拓撲結構如圖1所示。T1-T6為構成三相全橋逆變器的6個功率管,用于實現無刷直流電機的換相控制,每個橋臂控制一相繞組。D1-D6為功率管的續(xù)流二極管,用于給繞組續(xù)流提供續(xù)流回路。T7是剎車開關管,R是剎車電阻、D7是剎車續(xù)流二極管,當母線電壓升高時,開關管T7導通,多余能量經R釋放,母線電壓降低。為避免充電電流過大,上電時電流先經過R1給電容充電,電容充電后讓T8導通從而旁路R1,減小回路壓降。為減少系統(tǒng)的體積,增強系統(tǒng)的可靠性,方案擬采用智能功率模塊IPM作為BLDCM的驅動電路,型號為PM150RL1A060。IPM兼有GTR高電流、低飽和電壓和高耐壓的優(yōu)點,以及MOSFET(場效應晶體管)高輸入阻抗、高開關頻率和低驅動功率的優(yōu)點,且內部集成了邏輯、控制、檢測和保護電路等功能。
圖1 功率電路拓撲結構圖Fig.1 The power circuit topology
保護電路主要包括母線過、欠壓保護、過流保護、過溫保護、霍爾信號紊亂保護。當母線電壓超過壓保護閾值時,過壓信號變?yōu)橛行?,剎車功率管開通,泄放多余能量,降低母線電壓,過壓信號無效時,剎車功率管關斷,不影響母線電壓;當母線電壓低于欠壓保護閾值時,欠壓信號變?yōu)橛行?,系統(tǒng)停機保護;對母線電流和電機三相電流進行監(jiān)控,當母線電流和任一相電流幅值超過保護閾值時,進行過流保護,系統(tǒng)停機;監(jiān)測控制器和電機溫度,當溫度超過溫度保護閾值時停機保護時監(jiān)控電機的三路霍爾位置信號,當霍爾信號出現“全0”或“全1”故障時,實施停機保護。故障發(fā)生后系統(tǒng)及時保護并設置故障信號指示燈報警。
通訊用收發(fā)器選擇MAXIUM公司的RS-485通信低功耗收發(fā)器MAX483模塊。該芯片的電磁輻射EMI極低,減小了因電纜不良匹配所造成的反射,在高達250kbps的數據速率下可進行無差錯數據傳輸。DSP與MAX483的接口采用串行通信接口SCI,其外部引腳有三個,發(fā)送引腳SCITXD、接收引腳SCIRXD、控制端GPIO口,分別對應RS-485收發(fā)器的發(fā)送輸入端DI、接收輸出端RO和發(fā)送使能端DE。SCI的接收和發(fā)送均為雙緩沖,且有獨立的使能中斷位,數據的發(fā)送和接收過程通過中斷方式或查詢方式實現。
3.1.1 DSP程序設計
DSP控制程序采用C語言編寫,開發(fā)環(huán)境采用TI公司DSP系列芯片專用集成開發(fā)環(huán)境CCS3.3。DSP控制程序由主程序及中斷服務子程序組成,中斷程序包括主中斷程序和串口中斷程序。主程序執(zhí)行DSP初始化程序和系統(tǒng)自檢,并等待接收上位機的給定指令。主中斷程序主要用于完成雙閉環(huán)控制算法,速度環(huán)采用PI算法、電流環(huán)采用P算法。串口中斷程序的主要作用是接收上位機的給定指令,下位機控制電機按照給定指令作動并向上位機以5ms的定時反饋系統(tǒng)運行參數。
圖2 接收和發(fā)送一幀數據流程圖Fig.2 Flow diagram of receiving and sending a frame
下位機串口通信由主控芯片TMS320F28335的SCI模塊實現,該模塊具有以下特點:1~8位數據全雙工方式;偶數、奇數或無奇偶校驗選擇;一或兩個停止位;16字深先進先出FIFO (First-In-First-Out) 發(fā)送數據緩沖器和接收數據緩沖器;獨立的發(fā)送和接收中斷。圖2所示為接收和發(fā)送一幀數據的流程圖。判斷數據接收程序數據幀錯誤須符合以下原則:數據幀格式不正確;有一個字節(jié)奇偶校驗錯誤;數據幀校驗碼不正確。
3.1.2 CPLD程序設計
CPLD的開發(fā)設計采用硬件描述語言VHDL,開發(fā)環(huán)境采用Altera公司的Quartus II 9.2。CPLD將PWM信號、電機霍爾位置傳感器信號、正/反轉信號、故障狀態(tài)信號通過組合邏輯產生驅動逆變功率管開通關斷的6路斬波換相信號;通過I/O讀取保護電路輸出,進行故障保護,故障保護信號都經過延時、濾波,濾除高頻毛刺干擾,確保識別真實的故障保護信號,消除誤動作;CPLD與DSP之間設計并行通信接口,CPLD通過地址線和數據線作為DSP的外設被訪問,用以快速提取讀入CPLD的位移、電流等反饋信號數據。
上位機軟件在 LabVIEW (Laboratory Virtual instrument Engineering Workbench)2010開發(fā)環(huán)境進行設計,LabVIEW是一種圖形化的編程語言,它集成了滿足GPIB、VXI、RS-232和RS-485協(xié)議的硬件及數據采集卡通訊的全部功能,被視為一個標準的數據采集和儀器控制軟件。
3.2.1 串口配置程序
利用LabVIEW自帶的VISA函數模塊,實現串口通訊硬件接口與軟件的連接,這就要求VISA的配置必須與下位機SCI的配置完全一致,主要包括串口選擇、數據長度、奇偶檢驗選擇、停止位長度、波特率等。
3.2.2 數據打包和發(fā)送程序
數據發(fā)送程序比較簡單,只需采用VISA寫函數輸入要發(fā)送的ASCII字符串即可。因此,對于給定指令為位移等數字量時需要對其按照通信協(xié)議進行數據打包轉換為字符串數據包。
圖3 給定位移數據打包程序Fig.3 Data package program of given displacement
如圖3所示的是按照通信協(xié)議對給定位移數據打包程序,對給定位移處理為字符串后增加幀頭、幀尾、檢驗和后形成一個字符串數據幀。
3.2.3 數據接收和解包程序
上位機通過VISA讀函數接收反饋數據。為獲得傳輸信號的值,需對接收的字符串數據幀進行解包,如圖4所示的反饋數據的解包程序。
圖4 反饋數據解包程序Fig.4 Feedback data deconstructed program
由圖可知,只有接收的數據幀的數據長度、幀頭、幀尾、檢驗和與協(xié)議中定義的完全相同時才表示正確接收到一幀數據,再對該幀數據按照協(xié)議依次解碼為位移、電流、故障信號等內容從而實時顯示和監(jiān)控系統(tǒng)運行參數。
3.2.4 數據存儲和制表程序
為方便分析和查看測試數據,上位機具有存儲實驗數據并將其制成XLS文件的功能。本軟件選擇了高速數據流文件TDMS來存儲數據,其讀寫文件速度快、接口屬性定義簡單,只需要對數據名稱、存儲路徑等屬性進行設置。
數據制表功能即將本測試周期的給定指令和反饋數據保存至Excel文件,并將其置于指定存儲路徑下,制表結束后有指示燈提示制表完成,可將TDMS文件中存儲的數據按照編輯好的Excel模板依次放置以形成實驗報表。
打開上位機軟件,輸入正確的用戶名和密碼后使能軟件,選擇串口和數據存儲路徑后,按下“系統(tǒng)自檢”按鈕,對系統(tǒng)進行自檢測。設置并確定給定階梯波位移指令后按下“電機調零”和“設定初始位置”按鈕,以校正電機初始位置。按下“發(fā)送給定位移”按鈕并開始伺服系統(tǒng)實驗。上位機通過串口將給定位移及其對應時刻的指令打包后發(fā)送至下位機,下位機通過閉環(huán)控制程序控制電機作動到給定位移處,在作動過程中一旦控制系統(tǒng)發(fā)生故障,控制電路進行硬件保護,并將故障信號反饋至上位機報警并調用報警聲音,從而達到實時監(jiān)控系統(tǒng)的目的。
下位機控制器將采集到的位移、母線電流和三相電流、母線電壓等運行參數反饋至上位機實現監(jiān)控、分析伺服性能和其他運行性能。圖5所示的是上位機反饋參數顯示界面,圖中較平滑的曲線為給定位移指令曲線,另一條為BLDCM的實際位移曲線,圖6所示的是控制系統(tǒng)運行后示波器觀測所得的部分位移曲線。
圖6 觀測的部分位移曲線Fig.6 Part of displacement curve
經實驗驗證,電機的實際作動位置按照上位機的給定位移變化,系統(tǒng)實現了對上位機給定指令良好的跟隨性;同時,電機在作動過程中位移具有較小的超調量,如圖7所示的是電機的正向作動和反向作動的位移曲線,這是由于控制器進行了較好的PID參數整定并嚴格的進行了電流限幅保證了電機的平滑作動。
實驗結束后將實驗數據進行制表并形成的測試報告,如圖8所示。由結果可以看出該方法可準確的對電機作動位置進行遠程控制,并可對電機溫度、實際位移等系統(tǒng)參數進行了采集和顯示,同時對系統(tǒng)實時監(jiān)控,一旦發(fā)生故障及時保護并報警,保證系統(tǒng)安全可靠的運行。
圖7 電機正向作動和反向作動位移曲線Fig.7 Displacement curve of forward and reverse actuation
圖8 數據制表后形成的報告Fig.8 Report after data tabulate
文中設計和實現了一套BLDCM全數字伺服控制器及其上位機控制軟件,并采用RS-485串口通信方式實現了總線控制與監(jiān)控。系統(tǒng)的響應速度快、控制精度高、保護功能全,伺服性能好,并具有較好的實時可監(jiān)控性。系統(tǒng)已成功運用于某型電力作動系統(tǒng)中,經實驗驗證可以穩(wěn)定、可靠的運行,應用效果良好。
[1]湯蘊璮,史乃.電機學[M].2版.北京:機械工業(yè)出版社,2005:344-353.
[2]李鐘明,劉衛(wèi)國.稀土永磁電機[M].北京:國防工業(yè)出版社,1999:40-48.
[3]李凡.基于FPGA的全數字無刷直流電機控制系統(tǒng)研究[D].重慶:重慶大學,2010.
[4]郭鵬.基于DSP的全數字無刷直流電機控制器的設計與研究[D].西安:西北工業(yè)大學,2004.
[5]張東亮,常宏敏,田新誠,等.無刷直流伺服電機的DSP全數字控制系統(tǒng)研究[J].山東大學學報:工學版,2002,32(5):485-489.ZHANG Dong-liang,CHANG Hong-min,TIAN Xin-cheng,et al.Research on vrushless DC motor digital control system based on DSP[D].Journal of Shandong University:Engineering and Technology Edition,2002,32(10):485-489.
[6]朱耀春,白焰.RS485總線通信雙機監(jiān)控程序的設計及應用[J].工業(yè)控制計算機,2006,19(8):14-16.ZHU Yao-chun,BAI Yan.Design and Application of RS485 bus communication and monitor program between machines[J].The Industrial Control Computer,2006,19(8):14-1.