永磁同步電機控制系統的串行通信實(shí)現
在開(kāi)發(fā)一套以DSP為核心的永磁同步電機控制系統時(shí),需要及時(shí)觀(guān)察驅動(dòng)系統中的各個(gè)變量,同時(shí)還要對一些程序進(jìn)行控制,修改特定參數。DSP在實(shí)際運行中不能用外接的端口進(jìn)行控制,需要用DSP自帶的串行通信模塊來(lái)解決這一問(wèn)題。通過(guò)一臺上位計算機和以DSP為核心的電機控制系統構成整個(gè)監控系統,Pc機通過(guò)串口來(lái)改變DSP程序中轉矩、磁鏈給定,以及調節PI參數等,電機控制系統完成對電機的控制,并采集相關(guān)數據反饋到Pc機中進(jìn)行分析、處理、顯示和存儲。本文以DSP控制永磁同步電機為例,介紹在整個(gè)控制系統中串行通信的實(shí)現。
本文引用地址:http://dyxdggzs.com/article/162475.htm1 永磁同步電機控制系統
永磁同步電機控制系統框圖如圖1所示,采用直接轉矩控制方法,這是19世紀80年代提出的交流電機高性能控制策略。本控制系統是一個(gè)速度和轉矩的雙閉環(huán)控制系統。系統利用電壓、電流傳感器檢測直流母線(xiàn)電壓Vdc。及定子二相電流i 和i ,通過(guò)坐標變換將定子三相坐標系中的電壓、電流變量轉換為α-β靜止定子坐標系中的二相分量。將由磁鏈及轉矩觀(guān)測器得到的定子磁鏈、轉矩實(shí)際值作為反饋量,與磁鏈、轉矩給定值進(jìn)行比較,所得到的誤差信號通過(guò)磁鏈、轉矩調節器的滯環(huán)控制單元后,獲得0、1控制信號,再綜合考慮當前定子磁鏈所在的區域,選擇適當的電壓空問(wèn)矢量控制定子磁鏈的旋轉速度及方向,即可直接快速地實(shí)現轉矩調節。

如果試驗人員能夠及時(shí)地觀(guān)測并調節轉矩、磁鏈、電壓、電流等控制參數,將會(huì )極大地提高電機控制系統的開(kāi)發(fā)效率。
2 串行通信的實(shí)現
PC機與DSP串行通信的實(shí)現包括三個(gè)部分,即硬件設計、上位機程序設計、下位機程序設計。
2.1 串行通信硬件設計
從本試驗平臺實(shí)際需要考慮,采用RS-232實(shí)現PC機與DSP的數據傳輸?,F在RS。232的通信端口是每臺計算機上的必要配置,通常含有COM1和 COM2兩個(gè)端口,所以能很方便地把上位機與下位機連接起來(lái),實(shí)現計算機對生產(chǎn)現場(chǎng)的監測和控制。圖2是TMS320LF2407串行通信接1:1電路 [1]。該電路采用了符合RS-232標準的驅動(dòng)芯片MAX232進(jìn)行串行通信。MAX232芯片功耗低,集成度高,+5 V供電,具有2個(gè)接收和發(fā)送通道。由于TMS320LF2407采用+3.3 V供電,需要將5 V的1tI1L電平變換為3.3 V高電平,整個(gè)接口電路簡(jiǎn)單,可靠性高。

2.2 上位機程序設計
Delphi是一種面向對象的可視化編程工具,擁有功能強大的集成開(kāi)發(fā)環(huán)境和速度極快的編譯器,兼具Visual C++的強大功能和VB易學(xué)易用的特點(diǎn)。通過(guò)安裝MSComm控件,可在Delphi環(huán)境下方便地實(shí)現串行通信[2]。MSComm提供了兩種處理通信問(wèn)題的方法:一種是事件驅動(dòng)法,一種是查詢(xún)法。本系統選用事件驅動(dòng)法,該方法程序響應及時(shí),可靠性高。只要了解使用MSComm的屬性及事件的用法就可以實(shí)現對串口的操作。
其主要屬性有 :
(1)eommport屬性,用于設置并返回連接的串行端口號;
(2)settings屬性,以字符形式設置并返回串口的波特率、奇偶校驗、數據位、停止位參數;
(3)po~open屬性,用于設置或返回通信連接端口的狀態(tài);
(4)input屬性,用于從輸入緩沖區返回并刪除字符;
(5)output屬性,用于將要發(fā)送的數據輸入傳輸緩沖區;
(6)inputlen屬性,用于指定由串行端I:I讀入的字符串長(cháng)度或字節數;
(7)handshaking屬性,用于指定通信雙方的握手協(xié)議;
(8)rthreshold屬性,用于設置或返回引發(fā)接收事件的字節數;
(9)sthreshold屬性,用于設置并返回傳輸緩沖區中允許的最小字符數;
(10)commevent屬性,在通信錯誤或事件發(fā)生時(shí)都會(huì )產(chǎn)生oncomm事件;
(11)inbufercount屬性,用于接收緩沖區中的字符數;
(12)inputmode屬性,用于設置或返回input屬性取回數據的類(lèi)型。
程序設計中首先要對MSComm進(jìn)行初始化,可以雙擊MSComm控件設置,也可以在程序中修改。
本系統根據需要自行設計了通信協(xié)議。
(1)幀分為兩類(lèi),即控制幀和數據幀??刂茙瑸樯衔粰C發(fā)出的控制命令,數據幀為上、下位機的實(shí)時(shí)數據。
(2)上位機對下位機通信中的控制幀,格式都是一個(gè)字節,定義如下:AA為下位機發(fā)送數據;AB為下位機接收數據;AC為下位機停止發(fā)送
(3)數據幀為兩個(gè)字節,數據范圍是0~65535,滿(mǎn)足了數據要求。
例如,把電機磁鏈設置為200,該通信命令由4個(gè)字節組成,數據格式為AB0400C8。其中:AB為控制幀,04代表磁鏈,00C8為數據幀。每個(gè)字節包含1個(gè)起始位、1個(gè)停止位、8個(gè)數據位,這些都是隱藏在底層程序中的,在實(shí)際應用中用戶(hù)只需在通信界面上設置磁鏈值200,然后單擊“n發(fā)送”按鈕即可實(shí)現該命令。圖3為PC機發(fā)送數據流程圖。

評論