在開發一套以DSP為核心的永磁同步電機控制系統時,需要及時觀察驅動系統中的各個變量,同時還要對一些程序進行控制,修改特定參數。數字信號處理(Digital Signal Processing,簡稱DSP)是一門涉及許多學科而又廣泛應用于許多領域的新興學科。DSP在實際運行中不能用外接的端口進行控制,需要用DSP自帶的串行通信模塊來解決這一問題。本文以DSP控制永磁同步電機為例,介紹在整個控制系統中串行通信的實現。
1 永磁同步電機控制系統
同步發電機為了實現能量的轉換,需要有一個直流磁場。而產生這個磁場的直流電流,稱為發電機的勵磁電流。根據勵磁電流的供給方式,凡是從其它電源獲得勵磁電流的發電機,稱為他勵發電機,從發電機本身獲得勵磁電源的,則稱為自勵發電機。永磁同步電機控制系統框圖如圖1所示,采用直接轉矩控制方法,這是19世紀80年代提出的交流電機高性能控制策略。本控制系統是一個速度和轉矩的雙閉環控制系統。系統利用電壓、電流傳感器檢測直流母線電壓Vdc。及定子二相電流i 和i ,通過坐標變換將定子三相坐標系中的電壓、電流變量轉換為α-β靜止定子坐標系中的二相分量。將由磁鏈及轉矩觀測器得到的定子磁鏈、轉矩實際值作為反饋量,與磁鏈、轉矩給定值進行比較,所得到的誤差信號通過磁鏈、轉矩調節器的滯環控制單元后,獲得0、1控制信號,再綜合考慮當前定子磁鏈所在的區域,選擇適當的電壓空問矢量控制定子磁鏈的旋轉速度及方向,即可直接快速地實現轉矩調節。
如果試驗人員能夠及時地觀測并調節轉矩、磁鏈、電壓、電流等控制參數,將會極大地提高電機控制系統的開發效率。
2 串行通信的實現
PC機與DSP串行通信的實現包括三個部分,即硬件設計、上位機程序設計、下位機程序設計。
2.1 串行通信硬件設計
從本試驗平臺實際需要考慮,實現計算機對生產現場的監測和控制。圖2是TMS320LF2407串行通信接1:1電路 。該電路采用了符合RS-232標準的驅動芯片MAX232(MAX232芯片是美信公司專門為電腦的RS-232標準串口設計的單電源電平轉換芯片,使用+5v單電源供電)進行串行通信。MAX232芯片功耗低,集成度高,+5 V供電,具有2個接收和發送通道。由于TMS320LF2407采用+3.3 V供電,需要將5 V的1tI1L電平變換為3.3 V高電平,整個接口電路簡單,可靠性高。
2.2 上位機程序設計
Delphi是一種面向對象的可視化編程工具,擁有功能強大的集成開發環境和速度極快的編譯器,兼具Visual C++的強大功能和VB易學易用的特點。Delphi,是Windows平臺下著名的快速應用程序開發工具(Rapid Application Development,簡稱RAD)。它的前身,即是DOS時代盛行一時的“BorlandTurbo Pascal”,最早的版本由美國Borland(寶蘭)公司于1995年開發。DELPHI 擁有一個可視化的集成開發環境(IDE),采用面向對象的編程語言ObjectPascal和基于部件的開發結構框架。Delphi它提供了500多個可供使用的構件,利用這些部件,開發人員可以快速地構造出應用系統。開發人員也可以根據自己的需要修改部件或用Delphi本身編寫自己的部件。通過安裝MSComm控件,可在Delphi環境下方便地實現串行通信[2]。本系統選用事件驅動法,該方法程序響應及時,可靠性高。只要了解使用MSComm的屬性及事件的用法就可以實現對串口的操作。
其主要屬性有 :
(1)eommport屬性,用于設置并返回連接的串行端口號;
(2)settings屬性,以字符形式設置并返回串口的波特率、奇偶校驗、數據位、停止位參數;
(3)po~open屬性,用于設置或返回通信連接端口的狀態;
(4)input屬性,用于從輸入緩沖區返回并刪除字符;
(5)output屬性,用于將要發送的數據輸入傳輸緩沖區;
(6)inputlen屬性,用于指定由串行端I:I讀入的字符串長度或字節數;
(7)handshaking屬性,用于指定通信雙方的握手協議;
(8)rthreshold屬性,用于設置或返回引發接收事件的字節數;
(9)sthreshold屬性,用于設置并返回傳輸緩沖區中允許的最小字符數;
(10)commevent屬性,在通信錯誤或事件發生時都會產生oncomm事件;
(11)inbufercount屬性,用于接收緩沖區中的字符數;
(12)inputmode屬性,用于設置或返回input屬性取回數據的類型。
程序設計中首先要對MSComm進行初始化,可以雙擊MSComm控件設置,也可以在程序中修改。
本系統根據需要自行設計了通信協議。
(1)幀分為兩類,即控制幀和數據幀。控制幀為上位機發出的控制命令,數據幀為上、下位機的實時數據。
(2)上位機對下位機通信中的控制幀,格式都是一個字節,定義如下:AA為下位機發送數據;AB為下位機接收數據;AC為下位機停止發送
(3)數據幀為兩個字節,數據范圍是0~65535,滿足了數據要求。
其中:AB為控制幀,04代表磁鏈,00C8為數據幀。每個字節包含1個起始位、1個停止位、8個數據位,在實際應用中用戶只需在通信界面上設置磁鏈值200,然后單擊“n發送”按鈕即可實現該命令。圖3為PC機發送數據流程圖。
2.3 下位機程序設計
TMS320LF2407中包含一個串行通信模塊(SCI),SCI的寄存器是8位的。可編程的SC1支持CPU和其他使用標準非歸零(NRZ)格式的異步外設之間的串行數字通信,SCI的接收器和發送器是雙緩沖的,每個都有它自己的獨立使能和中斷位。波特率可以通過一個16位的波特率選擇寄存器進行編程 。為了保證串行通信的成功,在通信前必須對DSP的SCI模塊進行初始化,設置通信的波特率、奇偶校驗、停止位及每個字節包含的位數等,這些參數的設置必須與PC機上的設置一致,否則會引起傳輸錯誤。
DSP(digital signal processor)是一種獨特的微處理器,是以數字信號來處理大量信息的器件。其工作原理是接收模擬信號,轉換為0或1的數字信號。再對數字信號進行修改、刪除、強化,并在其他系統芯片中把數字數據解譯回模擬數據或實際環境格式。它不僅具有可編程性,而且其實時運行速度可達每秒數以千萬條復雜指令程序,遠遠超過通用微處理器,是數字化電子世界中日益重要的電腦芯片。它的強大數據處理能力和高運行速度,是最值得稱道的兩大特色。在DSP與PC機的通信中,對于DSP來說,通信的主要功能是接收Pc機傳來的數據和發送數據給Pc機。可采用查詢和中斷兩種方式接收數據,查詢方式需要程序循環檢測通信端口,浪費DSP資源,因此本系統接收數據時采用中斷方式;但在發送數據時由于要發送的數據比較多,如果也用中斷方式就會干擾到電機的控制,電機不能平穩運行,因此采用查詢方式。在中斷子程序中設置發送標志位,通過在主程序中查詢該標志位來決定是否發送數據。圖4為下位機通信程序框圖。
3 試驗結果
利用DSP的SCI模塊和MSComm控件可以方便地實現DSP與Pc機的串行通信。本文所介紹的設計方法已在Pc機和以TMS320LF2407為核心的直接轉矩控制系統試驗平臺上進行了驗證,結果表明:可以通過Pc機對永磁同步電機進行控制。圖5為上位機監控界面,它包括參數發送和數據采集兩部分,可以顯示速度、磁鏈、轉矩的給定值和實際值,便于用戶比較。圖6為永磁同步電機空載運行時的速度觀測圖。當永磁同步電動機的定子通入三相交流電時,三相電流在定子繞組的電阻上產生電壓降。由三相交流電產生的旋轉電樞磁動勢及建立的電樞磁場,一方面切割定子繞組,并在定子繞組中產生感應電動勢;另一方面以電磁力拖動轉子以同步轉速旋轉。電樞電流還會產生僅與定子繞組相交鏈的定子繞組漏磁通,并在定子繞組中產生感應漏電動勢其中:直線代表速度給定值,曲線是速度實際值。速度給定值為500 r/min,通過轉速表測量,轉速為499r/min,從圖中可以看出速度以極小的誤差圍繞給定值波動,證明了轉速能被很好地控制住。圖7為磁鏈標幺值的給定值與實際值比較圖,磁鏈給定值為200,DSP中采用Q12格式,最后經過計算反饋到上位機時應為0.2,直線是給定值,曲線是實際值,在圖中可以看出超調量很小,磁鏈參數也能準確地反饋到Pc機上,與試驗預期結果相符。
4 結 語
采用PC機與DSP的主從式結構,既能發揮DSP的數據處理能力,又具有良好的人機接口,這極大地方便了系統的開發調試。DSP和PC機串行通信可以實現下位機參數實時上傳,使用戶隨時掌握電機狀態性能;通過上位機在線修改DSP的程序,使電機按照要求運行,實現對電機的全數字化實時控制。本文所解決的關鍵難題為下一步實現電機控制系統性能的在線監測奠定了基礎。
-
dsp
+關注
關注
553文章
8030瀏覽量
349319 -
控制系統
+關注
關注
41文章
6633瀏覽量
110682 -
永磁同步電機
+關注
關注
28文章
873瀏覽量
49597
發布評論請先 登錄
相關推薦
評論