国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

PC機(jī)與PLC的串行通信研究

2009-07-16 09:33艾國(guó)會(huì)
新媒體研究 2009年8期
關(guān)鍵詞:PC機(jī)通信協(xié)議元件

艾國(guó)會(huì)

[摘要]介紹利用微軟公司推出的Visual Basic 6.0中MSCOMM.OCX控件進(jìn)行串行通信的方法。以VB為開(kāi)發(fā)工具實(shí)現(xiàn)了PC機(jī)與FX系列PLC的串行通信。介紹VB進(jìn)行串口通信的基本方式和三菱可編程控制器之間的通信的程序設(shè)計(jì),主要介紹利用MSCOMM.OCX進(jìn)行串行通信的設(shè)計(jì)方法。

[關(guān)鍵詞]PC機(jī) PLC 串行通信 Visual Basic 6.0

中圖分類(lèi)號(hào):TP3文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1671-7597(2009)0420010-02

一、引言

在工業(yè)生產(chǎn)中,人們常常面臨著數(shù)據(jù)采集與管理??删幊炭刂破鳎云淇煽啃愿?、抗干擾能力強(qiáng)、編程簡(jiǎn)單、使用方便、控制程序可變、體積小、功能強(qiáng)等特點(diǎn),廣泛應(yīng)用于數(shù)據(jù)采集與控制。生產(chǎn)過(guò)程中,要監(jiān)視PLC內(nèi)部的數(shù)據(jù)與運(yùn)行狀況,選用市場(chǎng)上的人機(jī)界面或組態(tài)軟件,雖然功能豐富,但大都價(jià)格昂貴,本文介紹了利用微軟公司推出的Visual Basic 6.0中MSCOMM.OCX控件進(jìn)行串行通信的方法。操作簡(jiǎn)便,價(jià)格低廉。

二、PC與PLC實(shí)現(xiàn)通信的方法

為了實(shí)現(xiàn)PC與PLC的通信,用戶應(yīng)當(dāng)做如下工作:

1.判別PC上配置的通信口是否與要連入的PLC匹配,若不匹配,則增加通信模板。

2.要清楚PLC的通信協(xié)議,按照協(xié)議的規(guī)定及幀格式編寫(xiě)PC的通信程序。PLC中配有通信機(jī)制,一般不需用戶編程。若PLC廠家有PLC與PC的專(zhuān)用通信軟件出售,則此項(xiàng)任務(wù)較容易完成。

3.選擇適當(dāng)?shù)牟僮飨到y(tǒng)提供的軟件平臺(tái),利用與PLC交換的數(shù)據(jù)編制用戶要求的畫(huà)面。

4.若要遠(yuǎn)程傳送,可通過(guò)Modem接入電話網(wǎng)。若要PC具有編程功能,應(yīng)配置編程軟件。

三、PC機(jī)與PLC實(shí)現(xiàn)通信的條件

帶異步通信適配器的PC機(jī)與PLC只有滿足如下條件,才能互聯(lián)通信:

1.帶有異步通信接口的PLC才能與帶異步通信適配器的PC機(jī)互聯(lián)。還要求雙方采用的總線標(biāo)準(zhǔn)一致,否則要通過(guò)“總線標(biāo)準(zhǔn)變換單元”變換之后才能互聯(lián)。

2.雙方的初始化,使波特率、數(shù)據(jù)位數(shù)、停止位數(shù)、奇偶校驗(yàn)都相同。

3.要對(duì)PLC的通信協(xié)議分析清楚,嚴(yán)格地按照協(xié)議的規(guī)定及幀格式編寫(xiě)PC機(jī)的通信程序。PLC中配有通信機(jī)制,一般不需用戶編程。

四、PC機(jī)與FX系列PLC的串行通信的實(shí)現(xiàn)

串行通信是計(jì)算機(jī)與其他機(jī)器之間進(jìn)行通信的一種常用方法。通過(guò)SC09編程電纜或FX232AW模塊,可將微型計(jì)算機(jī)的串行通信口RS232和PLC的編程口連接起來(lái),這樣微型計(jì)算機(jī)就可對(duì)PLC的RAM區(qū)數(shù)據(jù)進(jìn)行讀、寫(xiě)操作。由PLC本身具有的特性,可對(duì)PLC進(jìn)行以下4種類(lèi)型的操作:

(1)位元件或字元件狀態(tài)讀操作(CMD0);

(2)位元件或字元件狀態(tài)寫(xiě)操作(CMD1);

(3)位元件強(qiáng)制ON操作(CMD7);

(4)位元件強(qiáng)制OFF操作(CMD8)。

另外,在進(jìn)行上述4類(lèi)操作前,首先要對(duì)端口進(jìn)行初始化操作,即設(shè)定通信協(xié)議(包括設(shè)置通信波特率、數(shù)據(jù)位數(shù)、數(shù)據(jù)停止位及奇偶校驗(yàn))。

(一)硬件連接

一臺(tái)PC機(jī)可與一臺(tái)或最多16臺(tái)FX系列PLC通信,PC與PLC之間不能直接連接。如圖a、b為點(diǎn)對(duì)點(diǎn)結(jié)構(gòu)的連接,圖a中是通過(guò)FX-232AW單元進(jìn)行RS-232C/RS-422轉(zhuǎn)換與PLC編程口連接,圖b中通過(guò)在PLC內(nèi)部安裝的通信功能擴(kuò)展板FX-232-BD與PC連接;如圖c所示為多點(diǎn)結(jié)構(gòu)的連接,F(xiàn)X-485-BD為安裝在PLC內(nèi)部的通信功能擴(kuò)展板,F(xiàn)X-485PC-IF為RS-232C和RS-485的轉(zhuǎn)換接口。除此之外當(dāng)然還可以通過(guò)其它通信模塊進(jìn)行連接,不再一一贅述。下面以PC與PLC之間點(diǎn)對(duì)點(diǎn)通信為例。

PC機(jī)與FX系列PLC不能直接連接,要經(jīng)過(guò)FX-232AW單元進(jìn)行RS232C/RS-422的變換,下圖表示了它們之間的連接關(guān)系:

(二)FX系列PLC的通信

在PC機(jī)中必須依據(jù)互聯(lián)的PLC的通信協(xié)議來(lái)編寫(xiě)通信程序,F(xiàn)X系列PLC的通信協(xié)議。

1.?dāng)?shù)據(jù)格式。FX系列PLC采用異步格式,由1位起始位、7位數(shù)據(jù)位、1位偶校驗(yàn)位及1位停止位組成,波特率為9600bps,字符為ASCII碼。格式如下:

2.通信命令。FX系列PLC有4個(gè)通信命令,它們是讀命令、寫(xiě)命令、強(qiáng)制通命令、強(qiáng)制斷命令,如下表所示。表中X輸入繼電器;Y輸出繼電器;M輔助繼電器;S狀態(tài)元件;T定時(shí)器;C計(jì)數(shù)器;D數(shù)據(jù)寄存器。

3.通信控制字符。FX系列PLC采用面向字符的傳輸規(guī)程,用到5個(gè)通信控制字符,如下表所示。

注:當(dāng)PLC對(duì)計(jì)算機(jī)發(fā)來(lái)的ENQ不理解時(shí),用NAK回答。

4.報(bào)文格式。計(jì)算機(jī)向PLC發(fā)送的報(bào)文格式如下:

其中,STX為開(kāi)始標(biāo)志:02H;ETX為結(jié)束標(biāo)志:03H;CMD為命令的ASCⅡ碼;SUMH、SUML為按字節(jié)求累加和,溢出不計(jì)。由于每字節(jié)十六進(jìn)制數(shù)變?yōu)閮勺止?jié)的ASCⅡ碼,故校驗(yàn)和為SUMH與SUML。

數(shù)據(jù)段格式與含義如下:

注:寫(xiě)命令的數(shù)據(jù)段有數(shù)據(jù),讀命令數(shù)據(jù)段則無(wú)數(shù)據(jù)。

PLC向PC發(fā)的應(yīng)答報(bào)文格式如下:

注:對(duì)讀命令的應(yīng)答報(bào)文數(shù)據(jù)段為要讀取的數(shù)據(jù),一個(gè)數(shù)據(jù)占兩字節(jié),分上位下位:

數(shù)據(jù)段:對(duì)寫(xiě)命令的應(yīng)答報(bào)文無(wú)數(shù)據(jù)段,而用ACK及NAK作應(yīng)答內(nèi)容。

5.傳輸規(guī)程

PC與FX系列PLC間采用應(yīng)答方式通信,傳輸出錯(cuò),則組織重發(fā)。

PLC根據(jù)PC的命令,在每個(gè)循環(huán)掃描結(jié)束處的END語(yǔ)句后組織自動(dòng)應(yīng)答,無(wú)需用戶在PLC一方編寫(xiě)程序。

(三)PLC的設(shè)置

計(jì)算機(jī)與PLC通訊的目的是實(shí)現(xiàn)計(jì)算機(jī)對(duì)PLC運(yùn)行狀態(tài)、數(shù)據(jù)區(qū)的監(jiān)控、PLC的管理并可用計(jì)算機(jī)編程。一般來(lái)說(shuō),在通訊過(guò)程中PLC是被動(dòng)的,每一次通訊都由計(jì)算機(jī)發(fā)起與終止,但也可以由PLC發(fā)起。通訊前需用外部輸入設(shè)備在系統(tǒng)數(shù)據(jù)寄存器D8120中進(jìn)行通訊條件設(shè)定。

五、結(jié)束語(yǔ)

生產(chǎn)自控系統(tǒng)的設(shè)計(jì)要解決好三部分的問(wèn)題:PC上人機(jī)操作界面的編制,PC與PLC的通信程序編寫(xiě),PLC生產(chǎn)控制程序的編寫(xiě)。對(duì)于串行通信的單機(jī)自控系統(tǒng),因?yàn)榫哂胁僮鹘缑婧蜕a(chǎn)工藝流程簡(jiǎn)單的特點(diǎn),所以利用Visual Basic設(shè)計(jì)操作界面和利用PLC編程語(yǔ)言設(shè)計(jì)生產(chǎn)控制程序都比較方便,但對(duì)如何編寫(xiě)通信程序就比較陌生,也沒(méi)有許多相關(guān)資料可學(xué)習(xí)。本文介紹的方法簡(jiǎn)單、實(shí)用,供各位參考。利用通信控件MSComm的OnComm事件和CommEvent屬性還可以設(shè)計(jì)出功能更完善的通信程序。

參考文獻(xiàn):

[1]三菱公司,F(xiàn)X2N可編程控制器編程手冊(cè).

[2]邱公偉,可編程控制器網(wǎng)絡(luò)通信及應(yīng)用,清華大學(xué)出版社.

[3]三菱公司,F(xiàn)X系列通訊手冊(cè).

[4]Visual Basic6.0從入門(mén)到精通,電子工業(yè)出版社.

[5]夏幸明,可編程控制器及應(yīng)用,北京理工大學(xué)出版社.

猜你喜歡
PC機(jī)通信協(xié)議元件
際華高分子材料高科產(chǎn)業(yè)園能源管理系統(tǒng)設(shè)計(jì)
基于WiFi技術(shù)的智能手機(jī)雙控視頻小車(chē)
用VC++實(shí)現(xiàn)PC機(jī)與單片機(jī)的串行通信
如何讀懂色環(huán)電阻
單片機(jī)與PC機(jī)串行數(shù)據(jù)通信的工程實(shí)踐
基于單片機(jī)與PC機(jī)的電氣量采集系統(tǒng)設(shè)計(jì)
非線性元件的處理
上海風(fēng)云“東邪”誰(shuí)屬
Protel?。梗梗螅寰W(wǎng)絡(luò)表裝載中糾錯(cuò)探索
基于R8C的汽車(chē)OBD通用故障診斷儀設(shè)計(jì)