久久久久无码精品,四川省少妇一级毛片,老老熟妇xxxxhd,人妻无码少妇一区二区

紡機(jī)中的微機(jī)遠(yuǎn)程多電機(jī)同步傳動(dòng)控制系統(tǒng)

時(shí)間:2024-09-10 10:08:02 機(jī)電畢業(yè)論文 我要投稿
  • 相關(guān)推薦

紡機(jī)中的微機(jī)遠(yuǎn)程多電機(jī)同步傳動(dòng)控制系統(tǒng)

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


圖1     印染聯(lián)合機(jī)的工藝及控制原理圖



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

2  軟件的總體設(shè)計(jì)
    VC有ClassWizard、SourceBrowser、Visual SourceSafe等一系列工具,它所帶的MSDN更是讓軟件人員感到十分方便。而且VC應(yīng)用程序?qū)ο到y(tǒng)有極好的兼容性和穩(wěn)定性。用VC從底部開發(fā),雖然開發(fā)周期稍長(zhǎng),但能根據(jù)用戶的需要進(jìn)行編程,編出的軟件的功能和風(fēng)格適合用戶的習(xí)慣。綜合考慮開發(fā)周期和用戶要求等因素,軟件采用VC編寫。軟件的總體設(shè)計(jì)框圖見圖2。


圖2      軟件總體設(shè)計(jì)框圖

3  軟件開發(fā)過(guò)程

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

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

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

●CommPort 設(shè)置并返回通訊端口號(hào);
● Settings 以字符串的形式設(shè)置并返回波特率、奇偶校驗(yàn)、數(shù)據(jù)位、停止位;
● PortOpen 設(shè)置并返回通訊端口的狀態(tài),也可以打開和關(guān)閉端口;
● Input 從接收緩沖區(qū)返回和刪除字符;
● Output 向傳輸緩沖區(qū)寫一個(gè)字符串。

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

(3) 設(shè)置MSComm串口參數(shù)
可以在需要的時(shí)候打開串口,例如在程序中做一個(gè)開始按鈕,在該按鈕的處理函數(shù)中打開串口。現(xiàn)在我們?cè)谥鲗?duì)話框的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,偶校驗(yàn),8個(gè)數(shù)據(jù)位,1個(gè)停止位
m_ctrlComm.SetInputModel(1);
//1;表示以二進(jìn)制方式檢取數(shù)據(jù)
m_ctrlComm.SetRThreshold(1);
串口初始化程序如下;
m_Coml.SetCommPort(1);      //設(shè)置串口1
if(! m_Coml.GetPortOpen())
m_Coml.SetPortOpen(TRUE);   //打開串口
m_Coml.SetSettings(″9600,e,8,1″);
//串口參數(shù)設(shè)置
m_Coml.SetInputMode(1);
//設(shè)置Binary緩沖輸入方式
m_Coml.SetRThreshold(14);
//每接收14個(gè)字符,激活一次OnComm()事件

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





3.4 USS協(xié)議
USS協(xié)議是profibus的一個(gè)子集。USS通信協(xié)議有各種長(zhǎng)度,視所要滿足的功能多少而定,且因所用設(shè)備類型而有所不同。協(xié)議規(guī)定如表1所示;

表1    USS協(xié)議的規(guī)定
(1) 下傳的規(guī)定;
● STX(start of text);起始字符,為02H。
● LGE(telegram length);發(fā)送報(bào)文的字節(jié)數(shù),可以變化?倛(bào)文的實(shí)際長(zhǎng)度比LGE多兩個(gè)字節(jié),這是因?yàn)殚_始的2個(gè)字節(jié)(STX和LGE)不被計(jì)入LGE中。只有net字符、ADR字節(jié)和BCC字符計(jì)入LGE中。具體為;總報(bào)文最長(zhǎng)256字節(jié),總報(bào)文= STX+LGE+LGE=2+LGE,1d LGE d 254,LGE=ADR+n+BCC=1+n+1,nd254(設(shè)net字符數(shù)n)。
● ADR(address byte);變頻器的地址碼,取值范圍為0~31(Bit;0~4位),第5位為1時(shí)為廣播發(fā)送。
● net character(或稱net data)段分為2個(gè)區(qū);PKW區(qū)和 PZD區(qū), 如表2所示。

表2    PKW區(qū)和 PZD區(qū)的規(guī)定


a)PKW (parameter ID value);參數(shù)標(biāo)識(shí)值,定義了處理2個(gè)通訊設(shè)備之間參數(shù)傳遞的機(jī)制。例參數(shù)的讀和寫,參數(shù)的定義等。包含PKE、IND、PKW elements3個(gè)內(nèi)容。MM3的PKW長(zhǎng)度為3個(gè)字,MM4的PKW長(zhǎng)度為4個(gè)字, 如表3所示。

表3    MM4的PKW定義


PKE;為一16位的字,用來(lái)控制變頻器的運(yùn)行參數(shù)設(shè)置,各Bit的含義如表4所示;

表4    PKE各Bit的含義


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

表5    PZD的定義


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

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

4  軟件調(diào)試結(jié)果
軟件主界面如圖3所示。


圖3      軟件主界面



運(yùn)行中,遇到異常情況時(shí),可進(jìn)行緊急停車。電機(jī)在需要單獨(dú)啟動(dòng)時(shí),可以個(gè)別設(shè)置。需要同步啟動(dòng)時(shí),可以以廣播式啟動(dòng)全部電機(jī)。變頻器參數(shù)可全部或部分上傳,遠(yuǎn)程監(jiān)控電機(jī)的運(yùn)行情況。

5  結(jié)束語(yǔ)
本軟件通過(guò)USS通訊協(xié)議,用VC6.0的通訊控件MSCOMM,實(shí)現(xiàn)了單臺(tái)工控機(jī)遠(yuǎn)程串口控制多臺(tái)變頻器,并且對(duì)數(shù)據(jù)轉(zhuǎn)換和數(shù)據(jù)輸出算法進(jìn)行了改進(jìn),有些地方進(jìn)行了補(bǔ)償,控制更準(zhǔn)確,運(yùn)行狀況比較滿意。

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

【紡機(jī)中的微機(jī)遠(yuǎn)程多電機(jī)同步傳動(dòng)控制系統(tǒng)】相關(guān)文章:

基于交流永磁同步電機(jī)的全數(shù)字伺服控制系統(tǒng)03-19

永磁同步電機(jī)控制系統(tǒng)的哈密頓建模與位置控制03-07

工業(yè)Ethernet在遠(yuǎn)程實(shí)時(shí)控制系統(tǒng)中的具體應(yīng)用03-18

步進(jìn)電機(jī)驅(qū)動(dòng)控制系統(tǒng)設(shè)計(jì)11-22

遠(yuǎn)程機(jī)房電源控制系統(tǒng)設(shè)計(jì)03-07

基于GPRS遠(yuǎn)程電機(jī)監(jiān)控系統(tǒng)的設(shè)計(jì)03-07

無(wú)刷同步發(fā)電機(jī)交流勵(lì)磁機(jī)的設(shè)計(jì)03-07

基于DSP感應(yīng)電機(jī)變頻調(diào)速控制系統(tǒng)設(shè)計(jì)03-07

同步電機(jī)試驗(yàn)自動(dòng)控制與數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)03-07