久久精品人妻一区二区蜜桃-欧美精品人妻一区二区免费视频-久久精品免费一区二区喷潮-久久精品中文闷骚内射-精品bbw-精品久久无码中文字幕-小小水蜜桃3视频高清在线观看-日韩免费一级aaa片毛太久-欧美激情肉欲高潮无码鲁大师-欧美影片一区二区三区-亚洲精品无码av无码专区一本,波多野吉衣一区二区三区在线观看,囯精品人妻无码一区二区三区99,包哟哟在线观看免费观看

產(chǎn)品分類

當前位置: 首頁 > 工業(yè)控制產(chǎn)品 > 自動化控制 > PLC可編程控制器

類型分類:
科普知識
數(shù)據(jù)分類:
PLC可編程控制器

實現(xiàn)WINDOWS下上位機與PLC網(wǎng)絡之間的數(shù)據(jù)通訊

發(fā)布日期:2022-04-26 點擊率:98 品牌:DOW

     
[摘  要] 
    可編程控制器與PLC機組成的集散控制系統(tǒng),越來越廣泛的應用于生產(chǎn)過程自動化領域。本文就PC機與多臺PLC組成的網(wǎng)絡之間數(shù)據(jù)通訊的通用模式及軟、硬件實現(xiàn)方案加以探討。 
[關鍵詞] 
    計算機  PLC  網(wǎng)絡通訊  軟硬件 
 一、引言
    PLC以其高可靠性、適應工業(yè)過程現(xiàn)場、強大的聯(lián)網(wǎng)功能等特點,被廣泛應用??蓪崿F(xiàn)順序控制、PID回路調(diào)節(jié)、高速數(shù)據(jù)采集分析、計算機上位管理PLC分散控制的集散管理系統(tǒng),是實現(xiàn)機電一體化的重要手段和發(fā)展方向。 
    WINDOWS操作系統(tǒng)以其圖形用戶界面、多任務、自動內(nèi)存管理等特點,已取代了DOS操作系統(tǒng)的地位。WINDOWS操作系統(tǒng)為用戶提供了API接口函數(shù),但非專業(yè)開發(fā)人員難以掌握。VB作為WINDOWS下的應用軟件開發(fā)平臺以其易學好用的優(yōu)點給程序員提供了強大的可視化編程工具。 
    在微機與PLC之間構(gòu)成的集散控制系統(tǒng)中,多數(shù)是由一臺PC計算機與數(shù)臺PLC之間形成1-N的通信模式。該模式系統(tǒng)中PLC負責現(xiàn)場高速數(shù)據(jù)采集、實現(xiàn)邏輯、定時、計數(shù)、PID調(diào)節(jié)等控制任務并通過串行通訊口向微機傳送PLC工作狀態(tài)機有關數(shù)據(jù)從而實現(xiàn)計算機對控制系統(tǒng)的管理,提高了PLC的控制能力的控制范圍。使其從設備級的控制發(fā)展到生產(chǎn)線級乃至工廠級的控制,從而實現(xiàn)工廠智能化的目標。該集散控制系統(tǒng)中,PLC與微型計算機之間的通訊顯得尤為重要。因此如何提高保證它們之間的通訊準確程度、可靠性及效率是通訊成功與否的關鍵技術(shù)之一,下面就對該關鍵技術(shù)做一些探討。 
二、上位計算機與PLC之間的鏈接方式
    本文介紹的是上位機與多臺PLC組成的多鏈系統(tǒng),常用的連接方式有兩種: 
    方式一使用連接適配器較少,也不用信號轉(zhuǎn)換,但若中間一臺PLC出故障,其后續(xù)的PLC無法與上位機通訊。
 
方式二雖然使用了信號轉(zhuǎn)換,但可避免前級故障對后級的影響。

三、上位計算機與PLC的鏈路通訊 
    以OMRON公司CPM1A型PLC和上位計算機通訊為例,通訊協(xié)議如下:

按上圖順序發(fā)送/接受命令。每次通訊發(fā)送/接受的一組數(shù)據(jù)稱為一“幀”。幀由少于131個字符的數(shù)據(jù)構(gòu)成,若發(fā)送數(shù)據(jù)要進行分割幀發(fā)送,分割幀的結(jié)尾用CR碼(CHR(13))一個字符的分界符(分段字符)來代替終端。發(fā)送幀的一方具有發(fā)送權(quán),發(fā)送方發(fā)送完一幀后,將發(fā)送權(quán)交給接受方。 
    發(fā)送幀的基本格式為: 
    @機號  識別碼  正文  FCS  *CR 
    其中:@      為幀開始標志 
          機號    網(wǎng)絡通訊中每一臺PLC被分配給的唯一番號 
          識別碼  該幀的通訊命令碼 
          正文    用來設定命令參數(shù) 
          FCS    幀校驗和 
          終端    命令結(jié)束符 
    響應的基本格式為: 
    @機號  識別碼  結(jié)束碼  正文  FCS  *CR 
    其中:@機號   識別碼  正文等同發(fā)送幀意義 
          結(jié)束碼   返回命令結(jié)束有無錯誤等狀態(tài) 
    關于多于131個字符的分割幀這里不在贅述。 

四、通訊過程 
    通訊開始先由上位計算機依次對網(wǎng)的PLC發(fā)出一串字符的測試幀命令。為充分利用上位機CPU的時間,可使上位機與PLC并行工作,在上位機等待PLC回答信號的同時,使CPU處理其它任務或線程。某PLC在接到上位機的一個完整幀以后,首先判斷是不是自己的代號,若不是就不予理睬,若是就發(fā)送呼叫回答信號。上位機接到回答信號后,與發(fā)送測試的數(shù)據(jù)比較,若兩者無誤,發(fā)出可以進行數(shù)據(jù)通訊的信號,轉(zhuǎn)入正常數(shù)據(jù)通訊,否則提示用戶檢查線路重新測試或通訊失敗。 

五、上位計算機WINDOWS下的通訊程序設計 
    上位機通訊軟件是用VB開發(fā)的,因VB具有強大的圖形顯示功能,可以開發(fā)出界面良好的WINDOWS標準風格的圖形用戶界面。同時VB還提供了串行端口控件MSCOMM,程序員在利用該控件時,只需設置、監(jiān)視其屬性和事件,即可完成對串行口的初始化和數(shù)據(jù)的傳輸工作。 
    Sub forml_load() 
    Mscomml.comport = 1 
    Mscomml.settings = "9600,n,8,1" 
    End sub 
    Sub commandl_click 
        Mscomml.inputlen = 0 
        If mscomml.portopen = false then 
             Mscomml.portopen = true 
        End if 
        For I = 1 to n ;N為網(wǎng)絡系統(tǒng)中的PLC個數(shù) 
        If i<10 then 
             S$ = "@"+"0"+str$(i)+"ts"+"abcd" 
             Else 
             S$ = "@"+str$(i)+ts"+"abcd"    ;abcd為測試字符 
             Endif 
             …    ;形成上位機測試命令數(shù)據(jù)塊sedata$; 
        Mscomml.output = sedata$ 
        Timerl_on = false 
        Timetl.enable = true 
        Do until (mscomml.inbuffercountá?0) 
            or (timerl_on = true) 
            Domy = doevents() 
        Loop 
        Timerl.enable = false 
        … 
        Redata$ = mscomml.input 
        If redata$ = sedata$ 
           …    ;轉(zhuǎn)入正常通訊數(shù)據(jù)處理 
           Else 
        Labell.caption = str$(i)+“測試通訊失敗,檢查線路后再測試” 
        Endif 
        Endsub 

六、PLC方的通訊設置 
    計算機與PLC通訊的目的是實現(xiàn)計算機對PLC運行狀態(tài)、數(shù)據(jù)區(qū)的監(jiān)控、PLC工的管理并可用計算機編程。一般來說,在通訊過程中PLC是被動的,每一次通訊都由計算機發(fā)起與終止,但也可由PLC發(fā)起。 
    通訊前需用外部輸入設備在系統(tǒng)設定區(qū)域的DM6650-DM6653中進行通訊條件設定。
通道地址      位        設定           功能說明 
 

下一篇: PLC、DCS、FCS三大控

上一篇: 索爾維全系列Solef?PV

推薦產(chǎn)品

更多