




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、如何通過rs-485控制多臺(tái)變頻器 工業(yè)場(chǎng)合中,經(jīng)常要用變頻器去控制交流電機(jī)的轉(zhuǎn)速、轉(zhuǎn)向。在某些場(chǎng)合,需要用1臺(tái)工控PC機(jī)靈活地控制多臺(tái)變頻器,以達(dá)到控制各交流電機(jī)的目的。針對(duì)這一需要,一些公司(如德國(guó)西門子、日本東芝、三菱等公司)推出了帶有RS485通信接口的變頻器,使用戶能方便靈活地選擇變頻器的強(qiáng)大功能來設(shè)計(jì)各自的工業(yè)控制系統(tǒng)。在Windows95下開發(fā)工控軟件,可利用Windows95的豐富資源,方便地生成各種菜單及美觀大方的圖形界面,軟件產(chǎn)品質(zhì)量高且開發(fā)周期短。Visual C50是Microsoft公司最新推出功能最強(qiáng)的Windows開發(fā)
2、軟件,由于只能在Win95下運(yùn)行開發(fā)32位的應(yīng)用程序,而在Windows環(huán)境下,系統(tǒng)完全接管了各種硬件資源,不允許用戶直接控制串行口的中斷管理,因此如何在Windows環(huán)境下開發(fā)微機(jī)的底層資源,已成為當(dāng)今工業(yè)控制軟件的一大熱點(diǎn)及難點(diǎn)。本文利用VC5.0的ActiveX控件Microsoft Communication控件,方便地實(shí)現(xiàn)了Win95環(huán)境下與多個(gè)西門子MicroMaster變頻器的串行通信接口,成功地實(shí)現(xiàn)了用單臺(tái)工控PC機(jī)對(duì)多臺(tái)交流異步電機(jī)的靈活控制。 一、系統(tǒng)的總體設(shè)計(jì)圖1為系統(tǒng)的總體設(shè)計(jì)方框圖,這里只重點(diǎn)突出工控PC機(jī)與變頻器RS48
3、5的接口部分。RS485的驅(qū)動(dòng)器可帶32個(gè)接收器,在波特率為100Kb/s時(shí),通信距離可達(dá)到1200m;通信距離為15m時(shí),波特率可達(dá)10Mb/s。在工業(yè)現(xiàn)場(chǎng),RS485是應(yīng)用較多的一種通信方式。圖中工控PC機(jī)通過485通信接口卡與多個(gè)變頻器相連接,最多可達(dá)到32臺(tái)。每個(gè)變頻器被賦予各自的地址碼用以識(shí)別身份,這樣上位機(jī)便能通過485通信線對(duì)掛在上面的所有變頻器進(jìn)行控制操作。圖1 系統(tǒng)的總體方框圖 二、變頻器的串口通信協(xié)議 對(duì)于西門子的MicroMaster變頻器,其通信方式為RS485,波特率最高可達(dá)到19200b/s;1位起始位;8位數(shù)
4、據(jù)位;1位偶校驗(yàn);1位停止位。變頻器接收控制的通信協(xié)議如下: STX LGE ADR PKE IND VAL STW HSW BCCSTX:起始字符,為02H。LGE:發(fā)送字節(jié)數(shù),對(duì)于M
5、icroMaster,為0CH(12個(gè)字節(jié))。ADR:變頻器的地址碼,取值范圍為031(Bit:04位),第5位為1時(shí)為廣播發(fā)送。PKE:為一16位的字,用來控制變頻器的運(yùn)行參數(shù)設(shè)置,各Bit的含義如下: 控制位 0 變頻器的參數(shù)值對(duì)于MicroMaster,控制位為0001時(shí),讀變頻器的參數(shù);控制位為0010時(shí),寫參數(shù)到變頻器的RAM和EEPROM。第1位未用,置為0。變頻器的參數(shù)值詳見說明書。IND:為16位的字,未用,置為0。VAL:為16位的變頻器參
6、數(shù),與PKE一起將運(yùn)行參數(shù)寫入到變頻器中。STW:為16位的字用來控制變頻器的運(yùn)行動(dòng)作,各位的具體含義詳見說明書。HSW:為16位的字用來控制變頻器的輸出頻率,滿頻的值為16384(4000H)對(duì)應(yīng)100的輸出頻率,最大值為32767,即200的輸出頻率。當(dāng)取值為3276865535時(shí),表示反向的輸出頻率從0200變化,電機(jī)反轉(zhuǎn)。BCC:校驗(yàn)字符,為前面所有字節(jié)的異或和。若變頻器3(地址碼為03H)以滿頻的50輸出頻率,則以上各參數(shù)的值設(shè)置如下:同時(shí),變頻器也向上位機(jī)回送狀態(tài)數(shù)據(jù),其通信協(xié)議如下: STX
7、0;LGE ADR PKE IND VAL ZSW HIW BCC與上位機(jī)向變頻器發(fā)送的控制字相比,變頻器回送的狀態(tài)字只是以ZSW代替了STW,HIW代替了HSW,其余的字的含義是一樣的。ZSW是16位的狀態(tài)字來指示變頻器的當(dāng)前運(yùn)行狀態(tài),各位的具體含義見說明書;HIW也是16位
8、的字代表變頻器的輸出頻率,其定義與HSW是一樣的。因此,對(duì)于變頻器能通過面板按鍵設(shè)置的功能,通過以上的通信協(xié)議也一樣能實(shí)現(xiàn)。并且通過RS485通信線最多能同時(shí)控制32臺(tái)變頻器,同時(shí)各變頻器的運(yùn)行狀態(tài)也能實(shí)時(shí)地回送給上位機(jī),這就大大方便了用戶,增加了控制系統(tǒng)的靈活性。 三、Visual C+5.0下對(duì)變頻器進(jìn)行串行通信控制 1、ActiveX控件Microsoft Comm Control 5.0 在Windows環(huán)境下,操作系統(tǒng)完全接管了各種硬件資源,不允許用戶直接控制串行口的中斷管理。以往程序員只能通過數(shù)目眾多的API函數(shù)來控
9、制串口。VC5.0下提供了1個(gè)ActiveX控件Microsoft Communication Control 50,簡(jiǎn)稱MSComm控件。用戶可以在自己的應(yīng)用程序中嵌入MSComm控件,利用它可以方便地進(jìn)行計(jì)算機(jī)串口的通信管理。VC50中的ActiveX控件MSComm與VC40中的OLE通信控件相比,增加了一些新的功能,其中最為有用的1個(gè)改進(jìn)是將Input(從緩沖區(qū)讀取接收數(shù)據(jù))的數(shù)據(jù)類型從CString改成Variant,同時(shí)新增1個(gè)屬性InputMode,使程序能方便地選擇從緩沖區(qū)讀取數(shù)據(jù)的格式:字符串格式或2進(jìn)制格式。在VC50開發(fā)環(huán)境中,選擇Microsoft Communicat
10、ion Control 50控件插入程序,則系統(tǒng)自動(dòng)為所插入的控件定義1個(gè)CMSComm類,與其相關(guān)的文件保存在mscommh和mscommcpp文件中。確認(rèn)以上菜單選擇后,則MSComm控件已嵌入到項(xiàng)目文件中。MSComm控件有許多屬性,其中一些重要的屬性如下:CommPort:設(shè)置串口號(hào),類型:short;Settings:設(shè)置串口通信參數(shù),類型:CString;PortOpen:設(shè)置或返回通信口的狀態(tài),類型:BOOL;InputMode:設(shè)置從緩沖區(qū)讀取數(shù)據(jù)的格式,類型:long;Input:從接收緩沖區(qū)讀取數(shù)據(jù),類型:VARIANT;Output:向發(fā)送緩沖區(qū)寫入數(shù)據(jù),類型:VARIA
11、NT;InBufferSize:接收緩沖區(qū)的大小,類型:short;InBufferCount:接收緩沖區(qū)的字節(jié)數(shù),類型:short;OutBufferSize:發(fā)送緩沖區(qū)的大小,類型:short;OutBufferCount:發(fā)送緩沖區(qū)中的字節(jié)數(shù),類型:short;InputLen:設(shè)置或返回Input每次讀出的字節(jié)數(shù),類型:short;CommEvent:串口事件,類型:short。其中串口號(hào)(CommPort)設(shè)置為1、2等表示COMM1、COMM2。參數(shù)設(shè)置(Settings)的格式為“B,P,D,S”,B表示波特率,P表示奇偶校驗(yàn)(N-無(wú)校驗(yàn),E-偶校驗(yàn),O-奇校驗(yàn)),D表示字節(jié)有效
12、位數(shù),S表示停止位數(shù)。串口狀態(tài)(PortOpen)為BOOL變量,TRUE表示打開串口,F(xiàn)ALSE表示關(guān)閉串口。InputMode使程序能方便地選擇從緩沖區(qū)讀取數(shù)據(jù)的格式,設(shè)置為0時(shí)字符串格式,設(shè)置為1時(shí)表示2進(jìn)制格式。InputLen設(shè)置或返回的是用Input從緩沖區(qū)讀字符串時(shí)每次讀出的字符個(gè)數(shù),這個(gè)性質(zhì)對(duì)于讀出數(shù)據(jù)塊中定長(zhǎng)數(shù)據(jù)串非常有用。另外,MSComm控件提供了2種方法來處理串口通信,上面屬性的InBufferCount和OutBufferCount用于串口的查詢方式。對(duì)于較復(fù)雜的通信任務(wù),可通過SetCommEvent()函數(shù)設(shè)置串口要響應(yīng)的事件,當(dāng)相應(yīng)事件或串口錯(cuò)誤事件發(fā)生時(shí),系統(tǒng)
13、會(huì)激活OnComm()事件,在OnComm()中添加用戶的處理代碼,則可實(shí)現(xiàn)類似DOS中斷的串口處理程序。2、變頻器串口通信控制檢測(cè)軟件的編制 在項(xiàng)目文件嵌入MSComm控件的頭文件mscommh及實(shí)現(xiàn)文件mscommcpp之后,為了用該控件控制1個(gè)串口進(jìn)行通信操作,還必須在應(yīng)用程序中插入該控件。為此,我們?yōu)槌绦虻哪硞€(gè)對(duì)話框插入MSComm控件,控件ID為IDCMSCOMM1,并利用Class Wizard為其添加變量CCMSComm mComl,則程序中對(duì)串口的各種操作都可通過變量mComl來實(shí)現(xiàn)。MicroMaster變頻器回送的狀態(tài)信息1幀為14B。為此,程序編制上采用事件驅(qū)動(dòng)
14、的通信方式,串口每接收14個(gè)字符便激活1個(gè)OnComm()事件,在OnComm()消息處理函數(shù)中加入相應(yīng)的處理代碼,用來讀取狀態(tài)字ZSW和HIW各位的狀態(tài)參數(shù),并作出相應(yīng)的處理,如顯示、報(bào)警等。下面簡(jiǎn)要給出用事件驅(qū)動(dòng)方式讀出變頻器回送狀態(tài)字的程序源代碼。設(shè)RS485卡的口地址為工控PC機(jī)的串口4的地址,波特率為9600b/s。串口初始化程序如下:mComlSetCommPort(4);/設(shè)置串口4if(! mComlGetPortOpen()mComlSetPortOpen(TRUE);/打開串口mComlSetSettings(9600,e,8,1);/串口參數(shù)設(shè)置mComlSetInput
15、Mode(1);/設(shè)置Binary緩沖輸入方式mComlSetRThreshold(14);/每接收1個(gè)字符時(shí)/激發(fā)OnComm()事件工控PC機(jī)控制變頻器的參數(shù)通過類ColeVariant的構(gòu)造函數(shù)來實(shí)現(xiàn),ColeVariant可以接受各種類型的數(shù)據(jù)(如字符串、整數(shù)、浮點(diǎn)數(shù)等)并自動(dòng)將其轉(zhuǎn)換為符合VARIANT要求的數(shù)據(jù)。程序代碼如下:mComlSetOutput(ColeVariant(x02);/發(fā)送起始/字符02H mComlSetOutput(ColeVariant(x0C); /發(fā)送數(shù)據(jù)/長(zhǎng)度字符0CH/發(fā)送其它的控制參數(shù)對(duì)于變頻器回送的狀態(tài)信息則利用Windows的消息處理函數(shù)OnComm()進(jìn)行處理。利用ClassWizard為MSComm控件IDCMSCOMM1添加消息處理函數(shù)OnOnCommMscomm1(),在OnOnCommMscomm1()中加入處理代碼如下(最后2個(gè)語(yǔ)句為添加的程序代碼,其余代碼由ClassWizard自動(dòng)生成):void CGpsdataDlg:OnOnCommMscomm1()/TODO:Add your control notification handler/code heremComlSetInputLen(0);/讀取串口緩沖區(qū)全/部數(shù)據(jù)VARIANT ParametermComlGetInput();/數(shù)據(jù)賦給VAR
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 ISO/IEC/IEEE 8802-1AS:2021/AMD1:2025 EN Information technology - Telecommunications and information exchange between systems - Local and metropolitan area networks - Part 1A
- 【正版授權(quán)】 IEC 63522-24:2025 EN-FR Electrical relays - Tests and measurements - Part 24: Load transfer
- 2025年心理健康教育與心理輔導(dǎo)能力測(cè)試試題及答案
- 2025年心理測(cè)評(píng)師考試卷及答案
- 2025年商法知識(shí)競(jìng)賽考試試卷及答案
- 2025年國(guó)際法與國(guó)內(nèi)法考試題及答案
- 2025年法務(wù)會(huì)計(jì)相關(guān)考試題及答案
- 2025年城市規(guī)劃師執(zhí)業(yè)資格考試卷及答案
- 2025年計(jì)算機(jī)科學(xué)與技術(shù)職業(yè)資格考試試卷及答案
- 2025年建筑師職業(yè)認(rèn)證考試試卷及答案
- 高邊坡施工危險(xiǎn)源辨識(shí)及風(fēng)險(xiǎn)評(píng)價(jià)一覽表
- 在市財(cái)政系統(tǒng)警示教育暨作風(fēng)建設(shè)大會(huì)上的講話
- GB∕T 37821-2019 廢塑料再生利用技術(shù)規(guī)范
- 公共場(chǎng)所衛(wèi)生 可吸入顆粒物PM10 方法驗(yàn)證報(bào)告
- 醫(yī)院景觀綠化施工組織計(jì)劃
- 測(cè)量學(xué)地形圖的基本知識(shí)培訓(xùn)講義PPT(講解)
- 自控實(shí)驗(yàn)三線性定常系統(tǒng)的穩(wěn)態(tài)誤差
- 特種設(shè)備作業(yè)人員考試中心質(zhì)量管理手冊(cè)(共31頁(yè))
- (可研報(bào)告)天津東疆保稅區(qū)設(shè)立spv公司可行性報(bào)告
- COC文件審核清單
- 班組施工協(xié)議正式版
評(píng)論
0/150
提交評(píng)論