在現(xiàn)代化的自動(dòng)化控制網(wǎng)絡(luò)中,一臺(tái)設(shè)備往往不是孤立的存在,而是需要跟它的外圍系統(tǒng)進(jìn)行各種各樣的通信。比如:工廠設(shè)備要跟管理系統(tǒng)(MES)進(jìn)行通信以傳送過程數(shù)據(jù)、跟生產(chǎn)線進(jìn)行通信以獲取相關(guān)的啟停信號(hào)、跟車間生產(chǎn)管理系統(tǒng)(ANDON)進(jìn)行通信以收發(fā)一些可視化數(shù)據(jù)等等。設(shè)備在與外圍系統(tǒng)的通信中要發(fā)送/接收一種信號(hào),用來判斷通信是處于正常狀態(tài)還是中斷狀態(tài)。這是一種跳變的信號(hào),只要通信正常,它就會(huì)按照某種規(guī)律變化;一旦在某段時(shí)間內(nèi)檢測(cè)不到這種變化,就認(rèn)為通信中斷了。這種跳變的信號(hào)被形象的稱為"心跳信號(hào)"。
心跳信號(hào)是為了確認(rèn)一個(gè)事實(shí)網(wǎng)絡(luò)通信的雙方在長(zhǎng)時(shí)間沒有通訊的情況下是否都還在線,或者說存在于互聯(lián)的雙方之間的通訊鏈路是否已經(jīng)斷開。而不是網(wǎng)上有些人所謂的“用來保持連接”,“用來維持長(zhǎng)連接”。連接一旦建立,只能被異常或正常的斷開,而不會(huì)因?yàn)闆]有數(shù)據(jù)傳輸而斷開的,所以沒有什么長(zhǎng)連接的概念,更不需要用發(fā)送數(shù)據(jù)的方式來保持連接。
今天便和大家分享PLC網(wǎng)絡(luò)處理心跳的兩種辦法。
1、心跳計(jì)數(shù)器
編程者編制一計(jì)數(shù)器,數(shù)值從0開始計(jì)數(shù),每隔一定時(shí)間(通常是1秒)加1,當(dāng)?shù)竭_(dá)值后再從0開始重新計(jì)數(shù)。對(duì)于心跳計(jì)數(shù)器的檢測(cè)采用定時(shí)取樣的方法,每隔一定時(shí)間采集心跳計(jì)數(shù)器的數(shù)值(比如5秒鐘),用當(dāng)前值跟上一次采樣的值進(jìn)行比較,如果不同,說明心跳信號(hào)正常;如果兩者相同,說明心跳計(jì)數(shù)器沒有更新,即通信發(fā)生了中斷。
2、心跳脈沖
心跳脈沖比較簡(jiǎn)單,使用布爾變量作為心跳值。編程者編制一個(gè)脈沖位,每間隔一段時(shí)間發(fā)一個(gè)脈沖。一般周期為1秒或者0.5秒發(fā)送脈沖信號(hào),接收方用該脈沖信號(hào)的取反值啟動(dòng)延時(shí)接通定時(shí)器(TON),并設(shè)置一個(gè)比脈沖周期長(zhǎng)的延時(shí)時(shí)間。如果脈沖信號(hào)處于變化狀態(tài),延時(shí)接通定時(shí)器不會(huì)到達(dá)其設(shè)定時(shí)間;如果脈沖信號(hào)停止變化,延時(shí)接通定時(shí)器會(huì)開始計(jì)時(shí),達(dá)到其設(shè)定時(shí)間后觸發(fā)通信中斷報(bào)警;脈沖的周期不宜太短或太長(zhǎng),一般使用1秒的脈沖信號(hào)。