亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Host Link FINS協(xié)議的PLC遠程通信

        2014-03-08 09:22:12裴忠誠陳洪駿
        自動化與儀表 2014年11期
        關(guān)鍵詞:校驗碼串口指令

        裴忠誠 ,陳洪駿 ,葉 樺

        (1.東南大學(xué) 自動化學(xué)院,南京 210096;2.蘇州經(jīng)貿(mào)職業(yè)技術(shù)學(xué)院 機電與信息技術(shù)學(xué)院,蘇州215009)

        遠程通信和監(jiān)控技術(shù)是通過各種通信手段收集并處理遠端監(jiān)控設(shè)備的多元信息,以便實時了解設(shè)備的運行情況以及對設(shè)備進行統(tǒng)一管理的一種技術(shù)。為了幫助自動化設(shè)備企業(yè)進一步縮短設(shè)備故障診斷時間,提高設(shè)備維護效率,改進設(shè)備制造質(zhì)量,降低去現(xiàn)場修改PLC程序的人員費用[1]。本項目設(shè)計了一種基于歐姆龍PLC的工業(yè)監(jiān)控網(wǎng)絡(luò)系統(tǒng),該系統(tǒng)現(xiàn)場設(shè)備使用歐姆龍CP1H型號PLC,其核心技術(shù)之一就是對Host Link FINS協(xié)議解析和使用。通過對PLC通信指令進行解析,基于通信協(xié)議定制相關(guān)監(jiān)控指令和操作指令來實現(xiàn)監(jiān)控軟件與PLC的遠程通信以及遠程程序下載上傳[2]。維護人員只需連接至網(wǎng)絡(luò),即可通過監(jiān)控軟件在線監(jiān)視PLC的程序運行情況,從而降低運營成本。

        1 總體架構(gòu)

        整個監(jiān)控系統(tǒng)分成2個部分:現(xiàn)場設(shè)備和監(jiān)控軟件,如圖1所示?,F(xiàn)場的PLC負(fù)責(zé)設(shè)備的控制和信息采集;信號發(fā)射器通過串口和PLC相接,用于實現(xiàn)PLC設(shè)備與監(jiān)控軟件的遠程通訊,實時監(jiān)測PLC設(shè)備的運行狀態(tài)以及實現(xiàn)程序的遠程修改和升級[3];服務(wù)器主要作為數(shù)據(jù)通信與數(shù)據(jù)處理部分,主要為客戶端軟件提供它所需的數(shù)據(jù)源,同時將來自客戶端軟件的遠程控制指令實時轉(zhuǎn)發(fā)給目標(biāo)PLC設(shè)備;客戶端部分則主要提供數(shù)據(jù)監(jiān)控與分析、程序升級、客戶信息查詢、設(shè)備位置管理等功能[5]。

        圖1 監(jiān)控系統(tǒng)結(jié)構(gòu)圖Fig.1 Monitor and control system structure

        1.1 信號發(fā)射器

        CP1H型號PLC設(shè)備沒有配置網(wǎng)絡(luò)拓展模塊,無法直接和服務(wù)器通信。需要在PLC側(cè)開發(fā)信號發(fā)射器,使PLC設(shè)備能與監(jiān)控軟件進行數(shù)據(jù)通信。發(fā)射器模塊具有串口數(shù)據(jù)轉(zhuǎn)WIFI發(fā)送、串口數(shù)據(jù)轉(zhuǎn)以太網(wǎng)發(fā)送和串口數(shù)據(jù)轉(zhuǎn)GPRS發(fā)送3種功能,根據(jù)PLC設(shè)備所在現(xiàn)場的不同環(huán)境,選擇不同的工作模式。

        1.2 PLC控制設(shè)備

        底層PLC部分選用的是歐姆龍公司較新的一款PLC CP1H,是一種能夠?qū)崿F(xiàn)高速處理、高功能的程序一體化型PLC,處理速度可達到以往CP1M2A設(shè)備的10倍;豐富的高速計數(shù)器功能,多樣的脈沖控制,各種組件如串口、USB等使其連接相容性大大提高;可用于CJ拓展系列的高單元功能,靈活性比較高[4]。它能夠支持較新的Host Link FINS傳輸協(xié)議,通過串口直接與信號發(fā)射器相連,負(fù)責(zé)數(shù)據(jù)收發(fā),并且能自動校驗,通過通信鏈路進行檢測。

        1.3 監(jiān)控軟件

        PC監(jiān)控軟件主要負(fù)責(zé)數(shù)據(jù)的采集、處理、實時顯示、警報和PLC程序的遠程下載、調(diào)試,從而實現(xiàn)對PLC的實時狀態(tài)進行監(jiān)控等[6]。這個功能方便監(jiān)控人員查詢PLC設(shè)備的參數(shù)數(shù)據(jù)狀態(tài),及時發(fā)現(xiàn)故障點,以及進行參數(shù)配置和遠程指令控制操作。

        監(jiān)控軟件包括客戶端和服務(wù)器2部分,服務(wù)器分別與客戶端和PLC設(shè)備通信。服務(wù)器對接收到2邊的指令進行處理和轉(zhuǎn)發(fā),實現(xiàn)設(shè)備和終端通信,并且將數(shù)據(jù)存儲到數(shù)據(jù)庫中,為客戶端提供數(shù)據(jù)源??蛻舳瞬糠种饕鞘瞻l(fā)指令,并且對數(shù)據(jù)進行處理,顯示出監(jiān)控狀態(tài)。MFC中的各種類構(gòu)成了一個應(yīng)用程序框架,在此基礎(chǔ)上建立Windows應(yīng)用程序,是一種相對SDK來說更為簡單的方法[9]??蛻舳瞬捎肕FC技術(shù)設(shè)計監(jiān)控所需的界面,后臺進行指令傳送、解析、數(shù)據(jù)接收和處理,并且將需要的數(shù)據(jù)在軟件界面上顯示,方便工程人員監(jiān)控。當(dāng)工程人員需要調(diào)試時,可以將監(jiān)控程序關(guān)閉,切換到調(diào)試狀態(tài),系統(tǒng)打開PC上的CX-ONE軟件,進行修改、測試,并且能夠遠程上傳下載程序。

        2 Host Link FINS通信協(xié)議

        2.1 Host Link FINS簡介

        Host Link協(xié)議是歐姆龍公司產(chǎn)品的一種常用通信協(xié)議,通過Host Link協(xié)議,PLC可以和開發(fā)軟件相互之間進行串口通信。Host Link FINS協(xié)議采用的是問答式的通信方式,主機(Host computer)沒有向PLC發(fā)送任何指令時,PLC設(shè)備除了內(nèi)部程序執(zhí)行發(fā)送數(shù)據(jù)指令,是不會通過串口對外發(fā)送數(shù)據(jù)。當(dāng)通信鏈路為通的狀態(tài),主機向連接的PLC發(fā)送一條指令,PLC必須返回對應(yīng)的一條指令。PLC接收到主機發(fā)送的指令之后,首先進行指令校驗(FCS),沒有問題,取出FINS的指令部分,轉(zhuǎn)換成ASCII碼執(zhí)行相關(guān)操作,執(zhí)行結(jié)束后將返回給主機的指令重新進行校驗,發(fā)送給主機,完成一次通信過程。

        2.2 Host Link FINS數(shù)據(jù)幀格式

        Host Link FINS協(xié)議是基于Host Link協(xié)議的FINS通信協(xié)議。主機發(fā)送數(shù)據(jù)幀中,由Host Link數(shù)據(jù)幀頭、FINS發(fā)送指令數(shù)據(jù)、Host Link FCS校驗碼、Host Link幀尾組成,在PLC的返回數(shù)據(jù)幀中,由Host Link數(shù)據(jù)幀頭、FINS返回指令數(shù)據(jù)、Host Link FCS校驗碼、Host Link幀尾組成。

        圖2和圖3是Host Link FINS發(fā)送指令和應(yīng)答指令的數(shù)據(jù)幀格式。

        圖2 Host Link FINS發(fā)送指令Fig.2 Host Link FINS send command

        圖3 Host Link FINS應(yīng)答指令Fig.3 Host Link FINS reply command

        @:在PLC的Host Link FINS數(shù)據(jù)幀中,是以ASCII碼‘@’為開頭;

        Unit No.:單元號,對應(yīng)PLC內(nèi)置串口或串行通訊單元設(shè)置的Host Link單元號;

        Header code:在PC主機直連PLC的情況下,頭代碼為FA;

        ICF:為信息控制域,用于標(biāo)明指令和響應(yīng),當(dāng)FINS指令依賴網(wǎng)絡(luò)就用80,如果是直連就用00;

        RSV:為系統(tǒng)保留,設(shè)定為00;

        GCT:為網(wǎng)關(guān)允許數(shù)目;

        DNA:為目的網(wǎng)絡(luò)號;

        DA1:為目的節(jié)點號;

        DA2:為目的單元號;

        SNA:為源網(wǎng)絡(luò)號;

        SA1:為源節(jié)點號;

        SA2:為源單元號;

        SID:為服務(wù)和響應(yīng)的標(biāo)識號,可任意設(shè)置,指令和響應(yīng)對應(yīng)相同;

        MRC和SRC:分別為FINS指令的主指令和從指令;

        FCS:用于標(biāo)明所操作的數(shù)據(jù)地址、范圍等,在響應(yīng)幀中前2個字節(jié)MRES和SRES構(gòu)成響應(yīng)碼,用來診斷錯誤信息。

        2.2.1 FINS數(shù)據(jù)幀格式

        上面的Host Link FINS指令中,包含了FINS指令。FINS指令的數(shù)據(jù)幀格式如圖4和圖5所示。

        圖4 FINS發(fā)送指令Fig.4 FINS send command

        圖5 FINS應(yīng)答指令Fig.5 FINS reply command

        指令開頭2字節(jié)是指令碼,這里0102說明是讀存儲區(qū)的指令,82是變量分類,根據(jù)指令碼的不同而含義不同,當(dāng)指令碼是讀數(shù)據(jù)指令時,那么這個字節(jié)的意義就是確定數(shù)據(jù)區(qū),82表示DM存儲區(qū)。接著為數(shù)據(jù)區(qū)的起始地址(3個字節(jié)),字?jǐn)?shù)(2個字節(jié))。

        2.2.2 FCS校驗碼

        數(shù)據(jù)幀中Host Link結(jié)束符前面是FCS校驗碼。校驗采用異或校驗方式,將FCS字段之前的所有字段逐一進行異或,最終得到的就是FCS校驗碼,接收端在收到指令的時候,就要用這個FCS校驗碼去驗證這條指令是否正確。如表1所示為FCS校驗碼計算。

        表1 FCS校驗碼計算Tab.1 FCS code calcutation

        [A]FCS校驗碼采用的是逐位異或,如表中第3列和上一行第5列的值進行異或,異或值為第5行,依次異或,XXXXXXXX為最終異或結(jié)果。

        2.2.3 PLC數(shù)據(jù)區(qū)設(shè)計

        Host Link FINS協(xié)議具有一定字節(jié)數(shù)量的數(shù)據(jù)頭和尾。傳輸?shù)臄?shù)據(jù)連續(xù)字?jǐn)?shù)越長,傳輸?shù)男试礁?,接收一個比特位時需要接收最短數(shù)據(jù)包長度為43字節(jié),傳輸效率只有2.3%,當(dāng)傳輸連續(xù)50字?jǐn)?shù)據(jù)時,傳輸效率有54%,當(dāng)連續(xù)傳輸200個字的時候,傳輸效率高達82.6%,所以為了能夠高效地傳輸有效數(shù)據(jù),PLC的內(nèi)存區(qū)最好取連續(xù)區(qū)域,表2列出PLC中內(nèi)部劃分的幾種常用IO區(qū)。

        為了能夠增加傳輸效率,可以將待傳輸數(shù)據(jù)發(fā)送到一個連續(xù)的內(nèi)存區(qū)域中,比如是D區(qū),這樣可以通過比較簡單的指令完成一系列的數(shù)據(jù)通信。在有限的串口傳輸速度下,這是一種比較好的提高傳輸效率的方法[7-8]。

        3 監(jiān)控軟件與PLC通信

        如圖6、圖7所示為監(jiān)控軟件指令發(fā)送(PLC設(shè)備接收)和接收(PLC設(shè)備返回指令)的通信指令的流程。用MFC軟件編寫出簡易的串口通信軟件,MFC主要做的是根據(jù)輸入的指令計算出FCS校驗碼,然后生成一條完整的指令發(fā)送到PLC中。在數(shù)據(jù)返回部分,采用多線程技術(shù)和基于MFC的消息處理機制,當(dāng)有數(shù)據(jù)接收時,系統(tǒng)捕獲到這一消息,觸發(fā)串口接收事件,然后從接收緩沖區(qū)讀取數(shù)據(jù),并且存放在隊列中,當(dāng)數(shù)據(jù)讀取完畢時,設(shè)置數(shù)據(jù)處理事件,系統(tǒng)捕獲到這一事件后,在數(shù)據(jù)處理線程中繼續(xù)從隊列中讀取數(shù)據(jù)并且進行解析處理,事件處理線程開始FCS校驗指令,取出所需要的數(shù)據(jù)。這種采用多線程的方式更加高效利用CPU執(zhí)行能力,加快了數(shù)據(jù)讀取處理能力[9]。

        圖7 指令接收流程圖Fig.7 Flow chart of reply command

        在通信之前要先進行初始化,設(shè)置傳輸波特率,數(shù)據(jù)傳輸格式,要根據(jù)PLC中的設(shè)置來確定監(jiān)控軟件的這些串口通信參數(shù)[10]。

        MFC支持MSComm插件,可以進行簡易串口收發(fā)數(shù)據(jù)[11]。如圖8所示為讀取數(shù)據(jù)的通信界面。

        圖8 監(jiān)控軟件測試界面Fig.8 Monitor and control software testing interface

        圖8中為數(shù)據(jù)要求從D20000起50個字的數(shù)據(jù),在接收數(shù)據(jù)框中便顯示接收到的數(shù)據(jù)。從監(jiān)控軟件界面上發(fā)送和接收的數(shù)據(jù)來看,整個監(jiān)控過程中能夠正確地發(fā)送需要的指令,以及接收到從底層PLC返回來的所有需要的數(shù)據(jù),監(jiān)控功能完成。

        4 結(jié)語

        基于Host Link FINS協(xié)議的串口通信方式具有較強的數(shù)據(jù)傳輸能力和傳輸效率,其問答模式大大提高了這種方式下數(shù)據(jù)傳輸?shù)目煽啃?。本文以歐姆龍公司CP1H型號的PLC為應(yīng)用背景,設(shè)計了基于Host Link Fins協(xié)議的PLC設(shè)備遠程監(jiān)控系統(tǒng)。信號發(fā)射器的設(shè)計實現(xiàn)了PLC串口數(shù)據(jù)在網(wǎng)絡(luò)中的傳輸;基于MFC開發(fā)的通信軟件則實現(xiàn)了監(jiān)控軟件與PLC的遠程通信功能,能夠?qū)LC進行遠程監(jiān)控與管理?,F(xiàn)場測試和運行結(jié)果表明,該系統(tǒng)運行穩(wěn)定可靠,PLC通信性能較高,具有很好的實用價值。

        [1] 侯瑞春,丁香乾,陶冶,等.制造物聯(lián)及相關(guān)技術(shù)架構(gòu)研究[J].計算機集成制造系統(tǒng),2014,20(1):11-20.

        [2] 郭永勇,潘存海,李軍鋒,等.WinCC監(jiān)控系統(tǒng)中OPC通信及數(shù)據(jù)處理方法[J].制造業(yè)自動化,2014,36(2):98-100.

        [3] 謝揚球,吳宏棟.微成形制造中的上下位機通信設(shè)計及實現(xiàn)[J].制造業(yè)自動化,2013,35(1):71-72,84.

        [4] 樊銳,宋曉亮.通過DP通訊改變6RA70裝置參數(shù)設(shè)定在鋁冷軋機上的應(yīng)用[J].制造業(yè)自動化,2014,36(3):141-145,156.

        [5] 蘇寶平.基于無線通信的軌道車防溜智能監(jiān)控系統(tǒng)設(shè)計[J].制造業(yè)自動化,2014,36(3):46-49.

        [6] 黃大偉.LabVIEW與S7-200 PLC PPI協(xié)議通訊的設(shè)計與實現(xiàn)[J].自動化與儀器儀表,2013(4):94-95,99.

        [7] 段潤群,謝云山.上位機軟件與S7-1200 PLC的OPC通信研究[J].自動化與儀器儀表,2014(5):13-15,19.

        [8] 蘇虎平,沈三民,劉文怡,等.基于冗余CAN總線的實時通信系統(tǒng)設(shè)計[J].自動化與儀表,2013,28(1):26-29,55.

        [9] 孫鑫.VC++深入詳解[M].北京:電子工業(yè)出版社,2012.

        [10]劉艷平,李化南,趙連環(huán),等.基于ARM的FreeModbus通信協(xié)議的實現(xiàn)[J].自動化與儀表,2013,28(5):22-26.

        [11]李敏.基于PPI協(xié)議的PLC通信控制設(shè)計[J].自動化與儀器儀表,2013(2):66-68. ■

        猜你喜歡
        校驗碼串口指令
        聽我指令:大催眠術(shù)
        淺談AB PLC串口跟RFID傳感器的通訊應(yīng)用
        ARINC661顯控指令快速驗證方法
        LED照明產(chǎn)品歐盟ErP指令要求解讀
        電子測試(2018年18期)2018-11-14 02:30:34
        基于Excel實現(xiàn)書號校驗碼的驗證
        USB接口的多串口數(shù)據(jù)并行接收方法探索
        基于藍牙串口適配器的GPS接收機與AutoCAD的實時無線通信
        地礦測繪(2015年3期)2015-12-22 06:27:26
        基于FPGA的循環(huán)冗余校驗碼設(shè)計
        電子世界(2015年14期)2015-11-07 05:32:29
        身份證號碼中的數(shù)學(xué)
        基于并行控制的FPGA多串口拓展實現(xiàn)
        亚欧乱色束缚一区二区三区| 久久久久亚洲av无码麻豆| 日本乱人伦在线观看| 欧美中文字幕在线看| 亚洲精品在线一区二区三区| 少妇一级淫片中文字幕| 亚洲国色天香卡2卡3卡4| 国产成人精品精品欧美| 亚洲精品在线观看一区二区| 国产av精品一区二区三区久久| 中文字幕av免费专区| 可以免费在线看黄的网站| 日韩av他人妻中文字幕| 音影先锋中文字幕在线| 国产精品制服| 综合无码综合网站| 亚洲一区二区三区免费av| 粉嫩小泬无遮挡久久久久久| 久久精品人人做人人爽电影蜜月| 国产亚洲精品综合一区| 91国内偷拍精品对白| 狂野欧美性猛xxxx乱大交| 少妇人妻在线视频| 最新国产精品精品视频| 日本熟女人妻一区二区| 痉挛高潮喷水av无码免费| 国产精品无码专区综合网| 最新日本久久中文字幕| 久久精品国产亚洲av麻豆长发 | 日韩黄色大片免费网站| 欧美做受又硬又粗又大视频| 国产精品无码不卡一区二区三区| 日本韩国三级aⅴ在线观看| 国产高清一区二区三区三州| 国产边摸边吃奶叫床视频| 伊人色网站| 色婷婷久色国产成人免费| 国产freesexvideos中国麻豆| 欧美黑人巨大xxxxx| 国产91精品丝袜美腿在线| 亚洲一区二区在线观看网址|