<big id="a5mua"></big>

      <tt id="a5mua"><dfn id="a5mua"></dfn></tt>
      <wbr id="a5mua"><sup id="a5mua"></sup></wbr>

        
        

      1. 亚洲综合小综合中文字幕,国产久爱免费精品视频,精品国产品香蕉在线,国产午夜精品在人线播放,精品一二三四区在线观看,国产成人无码免费看视频软件 ,色欲久久人妻内射,午夜在线观看成人av
        zcb198814
        級別: 探索解密
        精華主題: 0
        發(fā)帖數(shù)量: 12 個
        工控威望: 156 點
        下載積分: 1211 分
        在線時間: 23(小時)
        注冊時間: 2011-06-19
        最后登錄: 2025-08-20
        查看zcb198814的 主題 / 回貼
        樓主  發(fā)表于: 2011-07-03 10:50
        PLC以卓越的可靠性和方便的可編程性廣泛應(yīng)用于工業(yè)控制領(lǐng)域。實現(xiàn)PC機與PLC通信的目的是為了向用戶提供諸如工藝流程圖顯示、動態(tài)數(shù)據(jù)畫面顯示、報表顯示、窗口技術(shù)等多種功能,為PLC提供良好的人機界面。本文詳細(xì)介紹了FX系列PLC的通信協(xié)議,并在Windows環(huán)境下,使用易語言開發(fā)通信程序,實現(xiàn)了PC機與FX系列PLC之間的串行通信。本文對FX系列PLC的通信協(xié)議進行了詳細(xì)的介紹,并以易語言為開發(fā)工具實現(xiàn)了PC機與FX系列PLC的串行通信。

        1 前言

        PLC以卓越的可靠性和方便的可編程性廣泛應(yīng)用于工業(yè)控制領(lǐng)域。實現(xiàn)PC機與PLC通信的目的是為了向用戶提供諸如工藝流程圖顯示、動態(tài)數(shù)據(jù)畫面顯示、報表顯示、窗口技術(shù)等多種功能,為PLC提供良好的人機界面。本文詳細(xì)介紹了FX系列PLC的通信協(xié)議,并在Windows環(huán)境下,使用易語言開發(fā)通信程序,實現(xiàn)了PC機與FX系列PLC之間的串行通信。

        2 PC機與PLC實現(xiàn)通信的條件

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

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

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

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

        3 PC機及與FX系列PLC的串行通訊

        3.1 硬件連接

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

        3.2 FX系列PLC的通信協(xié)議

        在PC機中必須依據(jù)互聯(lián)的PLC的通信協(xié)議來編寫通信程序,因此先介紹FX系列PLC的通信協(xié)議。

        (1)數(shù)據(jù)格式

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

        (2)通信命令

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

        (3)通信控制字符

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

        *當(dāng)PLC對PC機發(fā)來的ENQ不理解時,用NAK回答。

        (4)報文格式

        PC機向PLC發(fā)送的報文格式如下:

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

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

        *寫命令的數(shù)據(jù)段有數(shù)據(jù),讀命令的數(shù)據(jù)段則無數(shù)據(jù)。

        讀/寫字節(jié)數(shù)為01H~40H(1~64)個。

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

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

        對寫命令的應(yīng)答報文無數(shù)據(jù)段,而用ACK及NAK作為應(yīng)答內(nèi)容。

        (5)傳輸過程

        PC機與FX系列PLC之間采用應(yīng)答方式通信,傳輸出錯則組織重發(fā)。其傳輸過程如下:

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

        4 利用易語言編寫通信程序

        下面以一個簡單的例子來說明編寫通信程序的要點。假設(shè)PC機要求從PLC中讀入從D123開始的4個字節(jié)的數(shù)據(jù)(D123,D124),其傳輸應(yīng)答過程及報文如下(圖略可向作者索取):

        命令報文中10F6H為D123的地址,04H表示要讀入4個字節(jié)的數(shù)據(jù)。校驗和SUM=30H+31H+30H+46H+36H+30H+34H+

        03H=174H,溢出部分不計,故SUMH為'7',SUML為‘4’,相應(yīng)的ASCII碼為“37H”,“34H”。應(yīng)答報文中4個字節(jié)的十六進制數(shù),其相應(yīng)的ASCII碼為8個字節(jié),故應(yīng)答報文長度為12個字節(jié)。

        根據(jù)PC機與FX系列PLC的傳輸應(yīng)答過程編制出如下所示的通信程序流程圖略。

        利用VB的MSComm控件,按照流程圖可以編寫如下通信程序?qū)崿F(xiàn)PC機與FX系列PLC之間的串行通信以完成數(shù)據(jù)的讀取。MSComm控件可以采用輪詢或事件驅(qū)動的方法從端口獲取數(shù)據(jù)。在這個例子中使用了輪詢方法。

        (1)通信口初始化

        端口1.端口號=1

        端口1.波特率=9600

        端口1.數(shù)據(jù)位數(shù)=7

        端口1.奇偶校檢方案=2

        端口1.停止位=1

        端口1.啟動()


        (2)請求通信與確認(rèn)

        Private Function MakeHandShaking() As Boolean

        Dim InPackage As String

        MSComm1.OutBufferCount = 0

        MSComm1.InBufferCount = 0

        MSComm1.Output = Chr(&H5)

        Do

        DoEvents

        Loop Until MSComm1.InBufferCount = 1

        InPackage = MSComm1.Input

        If InPackage = Chr(&H6) Then

        MakeHandShaking = True

        Else

        MakeHandShaking = FalseEnd If

        End Function

        (3)發(fā)送命令報文

        Private Sub SendFrame()

        Dim OutString As String

        MSComm1.OutBufferCount = 0

        MSComm1.InBufferCount = 0

        OutStrin = Chr(&H2)+″0″+″10F604″+Chr(&H3)+″74″

        MSComm1.Output = OutString

        End Sub

        (4)讀取應(yīng)答報文

        Private Sub ReceiveFrame()

        Dim InString As String

        Do

        DoEvents

        Loop Until MSComm1.InBufferCount = 12

        InString = MSComm1.Input

        End Sub

        5 結(jié)束語

        以本文所述機制編寫的通信程序已成功用于以FX2N型PLC作為主控制器的高層建筑玻璃幕墻清洗機器人系統(tǒng)中,通過該通信程序,實現(xiàn)了PC機對PLC的監(jiān)視和控制。同時,本程序?qū)Γ校脵C與其它型號PLC之間的通信也有一定的借鑒意義。



        本帖最近評分記錄:
      2. 下載積分:+1(ccyan2014) 好貼好貼!
      3. 下載積分:+2(ykykkhor) 優(yōu)秀文章
        yf183442
        級別: *
        精華主題: * 篇
        發(fā)帖數(shù)量: * 個
        工控威望: * 點
        下載積分: * 分
        在線時間: (小時)
        注冊時間: *
        最后登錄: *
        查看yf183442的 主題 / 回貼
        1樓  發(fā)表于: 2011-07-03 14:40
        學(xué)習(xí)了。。。。。

        主站蜘蛛池模板: 欧美三级欧美成人高清| 夜色福利站WWW国产在线视频| 国产在线小视频| 最新国产精品剧情在线ss| 在线观看无码av免费不卡网站| 亚洲欧洲∨国产一区二区三区 | 中文字幕午夜福利片午夜福利片97| 欧洲中文字幕一区二区| 给我中国免费播放片在线| 久久精品国产主播一区二区| 蜜臀av一区二区国产在线| 精品亚洲成A人在线观看青青 | 99热久久这里只有精品| 深夜福利资源在线观看| 中文字幕国产精品av| 久久午夜夜伦鲁鲁片不卡| 国产精品人成视频免费播放| 久久综合亚洲鲁鲁九月天| 久久久久亚洲AV无码尤物| 国产精品午夜福利免费看| 台湾佬自拍偷区亚洲综合| 风韵丰满熟妇啪啪区老老熟妇| 久久亚洲2019中文字幕| 精品无码视频| 国产日韩乱码精品一区二区| 最近中文字幕完整版2019| 亚洲精品国产精品国在线| 毛片一区二区在线看| 亚欧美国产综合| 亚洲国产美女精品久久久| 日韩有码中文字幕av| 刺激第一页720lu久久| 久久综合狠狠综合久久| 国产乱子伦精品免费视频| 熟女系列丰满熟妇AV| 国产欧美国日产高清| 97视频精品全国免费观看| 国精产品一二三区精华液| 国产综合精品一区二区在线| 最新日韩精品视频在线| 武装少女在线观看高清完整版免费 |