<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>

            紡機中的微機遠程多電機同步傳動控制系統

            時間:2024-09-10 10:08:02 機電畢業論文 我要投稿
            • 相關推薦

            紡機中的微機遠程多電機同步傳動控制系統

            在紡織、印染、造紙等生產中,多電機同步傳動應用的十分廣泛。其中,印染聯合機的工藝及控制原理圖如圖1所示,采用西門子MICROMASTER Vector, 即MMV變頻器,電機1(M1)至電機4(M4)為三相交流電機。


            圖1     印染聯合機的工藝及控制原理圖



                b變頻調速以其顯著的節能效益、優異的調速與起制動性能、高功率因數、安全性能及其它許多優點而被認為是非常有發展前途的調速方式。交流電機和變頻器配合,能獲得與直流電機相似甚至更好的控制性能。并且交流電機低,結構簡單,容量和電壓范圍廣。采用RS485標準總線,通過USS通訊協議組成網絡,遠程控制變頻器,進而控制電機,可以監控生產線,遠離對人體有害的工作現場,保存數據,出錯參數自動回傳,縮短診斷時間和維修時間,節省大量物力。工控機通過RS-232/RS-485接口轉換器接入RS485網絡,可遠程控制31臺變頻器,當數據傳輸率<100kbit/s時,距離可達到1200m。接口轉換器采用Model 2485BR隔離型接口轉換器,它能完成RS-232/RS-485隔離型接口轉換,支持不同通訊速率及格式,最多可連接32個485終端設備。

            2  軟件的總體設計
                VC有ClassWizard、SourceBrowser、Visual SourceSafe等一系列工具,它所帶的MSDN更是讓軟件人員感到十分方便。而且VC應用程序對系統有極好的兼容性和穩定性。用VC從底部開發,雖然開發周期稍長,但能根據用戶的需要進行編程,編出的軟件的功能和風格適合用戶的習慣。綜合考慮開發周期和用戶要求等因素,軟件采用VC編寫。軟件的總體設計框圖見圖2。


            圖2      軟件總體設計框圖

            3  軟件開發過程

            3.1 建立窗體顯示項目
            選擇項目類型MFC AppWizard(exe),令主要的視圖類從基類CFormView派生。

            3.2 添加MScomm控件
                Microsoft Communications Control(以下簡稱MSComm)是Microsoft公司提供的簡化Windows下串行通信編程的ActiveX控件,通過串行端口傳輸和接收數據,為應用程序提供串行通訊功能。MSComm控件在串口編程時非常方便,程序員不必去花時間去了解較為復雜的API函數,而且在VC、VB、Delphi等語言中均可使用。它提供了兩種處理通信問題的方法;一是事件驅動(Event-driven)方法,一是查詢法。本軟件采用事件驅動方式。

            (1) MSComm 控件的常用屬性
            MSComm 控件有很多屬性,幾個重要的屬性有;

            ●CommPort 設置并返回通訊端口號;
            ● Settings 以字符串的形式設置并返回波特率、奇偶校驗、數據位、停止位;
            ● PortOpen 設置并返回通訊端口的狀態,也可以打開和關閉端口;
            ● Input 從接收緩沖區返回和刪除字符;
            ● Output 向傳輸緩沖區寫一個字符串。

            (2) 添加MSComm 控件
            選擇Project菜單下Add To Project子菜單中的 Components and Controls選項,在彈出的對話框中雙擊Registered ActiveX Controls項,則所有注冊過的ActiveX控件出現在列表框中。選擇Microsoft Communications Control,單擊Insert按鈕將它插入到我們的Project中來,接受缺省的選項。另外,添加2個控件,1個List Box控件,用于改變通訊端口號,1個Edit Box控件,用于改變波特率、奇偶校驗、數據位、停止位。

            (3) 設置MSComm串口參數
            可以在需要的時候打開串口,例如在程序中做一個開始按鈕,在該按鈕的處理函數中打開串口。現在我們在主對話框的CSCommTestDlg::OnInitDialog()打開串口,加入如下代碼;
            // TODO: Add extra initialization here
            if(m_ctrlComm.GetPortOpen())
            m_ctrlComm.SetPortOpen(FALSE);
            m_ctrlComm.SetCommPort(1); //選擇com1
            if( !m_ctrlComm.GetPortOpen())
            m_ctrlComm.SetPortOpen(TRUE);//打開串口
            else
            AfxMessageBox("cannot open serial port");
            m_ctrlComm.SetSettings("9600,e,8,1");
            //波特率9600,偶校驗,8個數據位,1個停止位
            m_ctrlComm.SetInputModel(1);
            //1;表示以二進制方式檢取數據
            m_ctrlComm.SetRThreshold(1);
            串口初始化程序如下;
            m_Coml.SetCommPort(1);      //設置串口1
            if(! m_Coml.GetPortOpen())
            m_Coml.SetPortOpen(TRUE);   //打開串口
            m_Coml.SetSettings(″9600,e,8,1″);
            //串口參數設置
            m_Coml.SetInputMode(1);
            //設置Binary緩沖輸入方式
            m_Coml.SetRThreshold(14);
            //每接收14個字符,激活一次OnComm()事件

            3.3 添加控制電機運行所需的各種控件
                添加垂直滾動條List Box,對應于USS協議的地址ADR,表述為變頻器號:1-31直接列出,廣播式的32用“全部”代替。添加垂直滾動條List Box,對應于USS協議的STW,表述為電機動作方式:啟動,停止等。添加垂直滾動條List Box,對應于USS協議的PKE, 表述為要回顯的運行參數。添加開始發送按鈕、緊急起動按鈕、緊急停車按鈕等等。





            3.4 USS協議
            USS協議是profibus的一個子集。USS通信協議有各種長度,視所要滿足的功能多少而定,且因所用設備類型而有所不同。協議規定如表1所示;

            表1    USS協議的規定
            (1) 下傳的規定;
            ● STX(start of text);起始字符,為02H。
            ● LGE(telegram length);發送報文的字節數,可以變化。總報文的實際長度比LGE多兩個字節,這是因為開始的2個字節(STX和LGE)不被計入LGE中。只有net字符、ADR字節和BCC字符計入LGE中。具體為;總報文最長256字節,總報文= STX+LGE+LGE=2+LGE,1d LGE d 254,LGE=ADR+n+BCC=1+n+1,nd254(設net字符數n)。
            ● ADR(address byte);變頻器的地址碼,取值范圍為0~31(Bit;0~4位),第5位為1時為廣播發送。
            ● net character(或稱net data)段分為2個區;PKW區和 PZD區, 如表2所示。

            表2    PKW區和 PZD區的規定


            a)PKW (parameter ID value);參數標識值,定義了處理2個通訊設備之間參數傳遞的機制。例參數的讀和寫,參數的定義等。包含PKE、IND、PKW elements3個內容。MM3的PKW長度為3個字,MM4的PKW長度為4個字, 如表3所示。

            表3    MM4的PKW定義


            PKE;為一16位的字,用來控制變頻器的運行參數設置,各Bit的含義如表4所示;

            表4    PKE各Bit的含義


            控制位(15-12) 0(11) 變頻器的參數值(10-0)
            對于MMV變頻器,控制位為0000時,無動作;控制位為0001時,讀變頻器的參數;控制位為0010時,寫參數到變頻器的RAM,控制位為1110時,寫參數到變頻器的EEPROM。
            IND;為16位的字。用于讀寫參數說明,讀寫一維數組值,讀寫報文的信息內容。
            PKW element(PKWE):信息,與任務或響應有關。假如在net data區只傳送PZD data時,可以長度為0。
            PKE與PKWE的使用舉例。下傳變頻器參數PKE=(0001,0000,0101,1100)=105Ch(即要求上傳P092(串口連接波特率)),PKWE =0000。若上傳變頻器參數為PKE=105Ch,PKWE=0006,又由于MMV變頻器規定P092為3時是1200bit,為4時是2400bit,為5時是4800bit,為6時是9600bit,為7時是19200bit,則說明此時串口連接波特率為9600bit。
            b) PZD (process data);過程數據,如表5所示。包含了自動操作所需的信號;從主機到從站的控制字和定位點,從從站到主機的狀態字和實際值。最長16個字,最短0字。

            表5    PZD的定義


            PZD1為控制字,PZD2為主要定位點,PZD3... PZD16為定位點或輔助控制字;
            PZD1;為控制字,16位的字,用來控制變頻器的運行動作;
            PZD2;為主要定位點,16位的字,用來控制變頻器的輸出頻率,滿頻的值為16384(4000H)對應100%的輸出頻率,最大值為32767,即200%的輸出頻率。當取值為32768~65535時,表示反向的輸出頻率從0%~200%變化,電機反轉。
            ● BCC;校驗字符,為前面所有字節的異或和。
            上傳規定與下傳規定基本相同,只是上傳的一般為實際值。

            3.5 數據的處理
                這里以發送數據中輸出頻率的處理為例,假設軟件界面輸出頻率編輯框(對應變量m_strFreData)填寫50,程序將“50”以字符形式取出,通過編寫的函數String2Dec將字符“ 50”轉換為十六進制字節數“32”即50D,由于USS發送協議中變頻器的輸出頻率HSW為16位的字,所以 要將字節擴展成對應的字。50D通過擴展后對應的字為4000H。25D通過擴展后對應的字為2000H。以此類推運算。設輸出頻率50D,示范程序如下:
            CByteArray hexdata;// hexdata為十六進制數組,m_strFreData為輸出頻率的十進制變量
            int len=String2Dec(m_strFreData,hexdata);
            // 輸出頻率m_strFreData=50D轉換為十六進制的hexdata[0]= 0X32
            LONG NUM1,NUM2;//實型精確一些
            INT  NUM3;
            hexdata.SetSize(14);
            NUM1=hexdata[0];//得到0X32(=50D)
            NUM2=( NUM1*4*16)/50;//字節擴展成對應的字,得到字節50D對應的字4000H的高字節NUM2=0X40
            NUM3=NUM2;//實型變整型
            hexdata[11]=NUM3;
            hexdata[12]=( NUM1*0X4000- NUM3*256*50)/50+1;
            //得到字節50D對應的字4000H的低字節NUM3=0X00,

            4  軟件調試結果
            軟件主界面如圖3所示。


            圖3      軟件主界面



            運行中,遇到異常情況時,可進行緊急停車。電機在需要單獨啟動時,可以個別設置。需要同步啟動時,可以以廣播式啟動全部電機。變頻器參數可全部或部分上傳,遠程監控電機的運行情況。

            5  結束語
            本軟件通過USS通訊協議,用VC6.0的通訊控件MSCOMM,實現了單臺工控機遠程串口控制多臺變頻器,并且對數據轉換和數據輸出算法進行了改進,有些地方進行了補償,控制更準確,運行狀況比較滿意。

            參考文獻
            [1] 張承慧,萬 軍,李洪斌. 利用PCC開發變頻器串行協議[J].電氣傳動,2003,(1).
            [2] 孫志剛,朱德森. USS協議和Modbus協議的實現.與[J]. 2001,(5).
            [3] [美]Michael J.Young著,邱仲潘等譯.Visual C++ 6 從入門到精通[M]. 北京:電子出版社,1999.
            [4] SIEMENS.USS protocol (Universal Serial Interface Protocol), 1994(9)

            【紡機中的微機遠程多電機同步傳動控制系統】相關文章:

            基于交流永磁同步電機的全數字伺服控制系統03-19

            永磁同步電機控制系統的哈密頓建模與位置控制03-07

            工業Ethernet在遠程實時控制系統中的具體應用03-18

            步進電機驅動控制系統設計11-22

            遠程機房電源控制系統設計03-07

            基于GPRS遠程電機監控系統的設計03-07

            無刷同步發電機交流勵磁機的設計03-07

            基于DSP感應電機變頻調速控制系統設計03-07

            同步電機試驗自動控制與數據采集系統的設計03-07

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看