戰(zhàn):DCS與PLC之間的最佳選擇)
簡介一套完整的ABB Freelance 2016 SP1分布式控制系統(tǒng)DCS軟件資源面向過程控制工程師、系統(tǒng)集成商及DCS維護(hù)人員可解決在Freelance平臺下進(jìn)行控制策略組態(tài)、界面設(shè)計(jì)與系統(tǒng)調(diào)試的軟件環(huán)境需求。資源包內(nèi)共2000個文件總大小約445.95MB以png、jpg、gif等圖像文件為主承載操作界面、圖標(biāo)與說明文檔dll、js、htm、xml等構(gòu)成軟件組件與幫助系統(tǒng)chm、pdf為使用手冊和參考資料exe、msi為安裝程序另有afw、bat、crc等工程與工具文件便于后續(xù)安裝部署和輔助操作。已有1022人學(xué)習(xí)下載。該資源包含軟件本體、Hotfix1熱修復(fù)補(bǔ)丁及CBF Viewer組件附帶防火墻配置腳本和常用工具能幫助用戶在離線環(huán)境下順利安裝Freelance 2016 SP1快速搭建DCS開發(fā)與運(yùn)行環(huán)境尤其適合需要對照官方界面和文檔進(jìn)行工程組態(tài)與上機(jī)練習(xí)的技術(shù)人員。1. 項(xiàng)目概述1.1 為什么選FREELANCE 2016 SP1而不是PLC在工控圈里摸爬滾打這些年“用PLC還是用DCS”這個問題基本貫穿了每一個中小型過程控制項(xiàng)目的前期討論。ABB FREELANCE 2016 SP1這套軟件我一直把它定義為“PLC和DCS之間的那座橋”——它保留了DCS的分布式架構(gòu)、冗余能力、集中監(jiān)控思維但組態(tài)方式和上手難度又比傳統(tǒng)大型DCS友好得多特別適合幾百到幾千個I/O點(diǎn)的中小規(guī)模過程控制項(xiàng)目。FREELANCE 2016 SP1是ABB在2016年發(fā)布的一個服務(wù)包版本基于Freelance工程平臺核心由Control Builder F組態(tài)軟件、DigiVis人機(jī)界面運(yùn)行環(huán)境、Freelance Engineering工程管理工具幾大模塊組成。它并不是一套“新軟件”而是對之前版本的集中增強(qiáng)控制器固件更新、組態(tài)工具穩(wěn)定性提升、對Windows新版本操作系統(tǒng)的兼容性調(diào)整這些都在SP1里做了整合。那什么時候該選它我個人的判斷標(biāo)準(zhǔn)很簡單如果你的項(xiàng)目有模擬量閉環(huán)控制、有聯(lián)鎖邏輯、有上位機(jī)集中監(jiān)控、可能還要考慮冗余但規(guī)模又沒大到需要上Symphony Plus或800xA那種重型DCS那FREELANCE就是那個“卡在中間的正合適”。相反如果項(xiàng)目只是幾個氣缸加電機(jī)的順序控制那用PLC性價比更高殺雞不用牛刀。1.2 這套軟件能解決什么問題FREELANCE 2016 SP1解決的核心問題是讓中小型過程控制項(xiàng)目擁有“類DCS”的完整能力而不用付出大型DCS的采購和運(yùn)維成本。具體來說它能做的事情包括通過Control Builder F完成控制器邏輯組態(tài)支持IEC 61131-3標(biāo)準(zhǔn)的LD、FBD、ST、IL、SFC語言通過DigiVis完成畫面的開發(fā)和運(yùn)行實(shí)現(xiàn)實(shí)時數(shù)據(jù)監(jiān)控、報(bào)警管理、歷史趨勢通過通信接口模塊把Modbus RTU/TCP、PROFIBUS DP、以太網(wǎng)等第三方設(shè)備比如變頻器、智能儀表、其他品牌PLC接入系統(tǒng)如果項(xiàng)目有高可靠性要求還能選配冗余控制器和冗余通信實(shí)現(xiàn)無擾切換。在DCS數(shù)據(jù)采集這個方向上FREELANCE也有自己的答案。它自帶的過程站PS可以掛本地I/O或遠(yuǎn)程I/O通過PROFIBUS DP或私有總線把現(xiàn)場信號采集回來再往上送到操作員站OS。這個架構(gòu)和大型DCS在邏輯上是一致的只是規(guī)模輕量化了。2. 系統(tǒng)架構(gòu)與軟件組成拆解2.1 典型的FREELANCE系統(tǒng)拓?fù)湟惶讟?biāo)準(zhǔn)的FREELANCE系統(tǒng)從上到下大致分為三個層次操作員站OS、控制器站PS、現(xiàn)場I/O。操作員站負(fù)責(zé)運(yùn)行DigiVis人機(jī)界面是操作工和系統(tǒng)交互的窗口。在FREELANCE 2016 SP1中OS站可以是單機(jī)模式也可以是多臺并列通過以太網(wǎng)和控制器通信。控制器站是系統(tǒng)的核心運(yùn)行實(shí)時任務(wù)執(zhí)行控制邏輯進(jìn)行數(shù)據(jù)采集和輸出。FREELANCE 2016 SP1支持的控制器主要是AC700F和AC800F兩個系列其中AC800F定位更高支持冗余配置AC700F更經(jīng)濟(jì)緊湊適合小型系統(tǒng)。再往下是I/O層包括S700 I/O、S800 I/O等系列通過PROFIBUS DP或FBPField Bus Plug通信。我遇到過不少第一次接觸FREELANCE的工程師上來就想搞懂“到底哪個軟件是干嘛的”結(jié)果被ABB的命名繞暈。簡單梳理Control Builder F約等于“PLC編程軟件”負(fù)責(zé)邏輯組態(tài)和硬件組態(tài)DigiVis約等于“組態(tài)王/WinCC”負(fù)責(zé)做畫面Freelance Engineering是一個綜合管理界面用來管理項(xiàng)目和工程庫實(shí)際組態(tài)時也是從它里面啟動Control Builder F和DigiVis的。你把它理解成一套“全家桶”入口是Freelance Engineering干活的是兩個子工具。2.2 控制器與I/O選型邏輯選控制器這件事很多項(xiàng)目在前期沒想清楚等到了設(shè)計(jì)階段才手忙腳亂。根據(jù)我的經(jīng)驗(yàn)可以從幾個維度來判斷。第一看點(diǎn)數(shù)。如果項(xiàng)目總I/O點(diǎn)在200~300點(diǎn)以內(nèi)且沒有冗余要求AC700F完全夠用成本優(yōu)勢明顯。如果I/O點(diǎn)數(shù)到了500以上或者有冗余需求、有較復(fù)雜的連續(xù)控制回路AC800F更合適它的處理能力、內(nèi)存、通信能力都更強(qiáng)。第二看冗余需求。有些項(xiàng)目雖然I/O不多但工藝不允許停機(jī)比如化工裝置里的關(guān)鍵溫度回路、汽包液位聯(lián)鎖這時候就必須考慮冗余。AC800F支持1:1冗余包括控制器冗余、電源冗余、通信冗余但注意FREELANCE的冗余是“主備切換”機(jī)制工程組態(tài)時需要把冗余參數(shù)配置好下載時要先備后主這個順序亂了容易出問題。第三看現(xiàn)場設(shè)備通信需求。如果項(xiàng)目里有大量第三方設(shè)備要接入比如ABB變頻器通過Modbus RTU接入、西門子PLC通過PROFIBUS DP接入那你選型時就要注意控制器通信模塊的端口數(shù)量和協(xié)議支持情況。AC800F的通信模塊可以擴(kuò)展AC700F則相對固定端口不夠就沒法通過加模塊解決只能外接網(wǎng)關(guān)既增加成本又多了故障點(diǎn)。3. 軟件安裝與工程創(chuàng)建實(shí)操3.1 安裝過程的關(guān)鍵注意事項(xiàng)FREELANCE 2016 SP1的安裝不像普通辦公軟件那樣一路Next就完事有幾個坑我在不同項(xiàng)目里踩過多次值得單獨(dú)說一下。第一操作系統(tǒng)兼容性。2016 SP1官方支持Windows 7 Professional/Ultimate64位和Windows 10 Enterprise/LTSB64位。我強(qiáng)烈建議不要在家庭版系統(tǒng)上裝也別用最新的Windows 11去嘗試ABB對操作系統(tǒng)的驗(yàn)證很保守用非官方支持的版本可能會出現(xiàn)組態(tài)軟件閃退、通信卡頓、授權(quán)無法激活等各類怪問題。第二安裝順序。先裝操作系統(tǒng)然后裝SQL ServerFREELANCE會用到數(shù)據(jù)庫再裝FREELANCE主程序最后裝授權(quán)。如果你先裝了FREELANCE再補(bǔ)SQL Server大概率要修復(fù)安裝。另外殺毒軟件務(wù)必在安裝前退出或者說至少把安裝目錄加入白名單否則安裝過程中殺毒軟件攔截了某個DLL注冊后面啟動時會莫名其妙報(bào)錯。第三授權(quán)管理。FREELANCE的授權(quán)分測試授權(quán)和正式授權(quán)測試授權(quán)通常有時間限制正式授權(quán)則綁定加密狗或硬件密鑰。我碰到過項(xiàng)目現(xiàn)場臨時要演示但測試授權(quán)過期的情況解決方法是聯(lián)系A(chǔ)BB當(dāng)?shù)卮硖幧暾埮R時授權(quán)但這個過程可能需要兩天以上所以在項(xiàng)目計(jì)劃里一定要提前把這個時間留出來。3.2 新建工程與硬件組態(tài)步驟安裝完成后首次啟動Freelance Engineering會進(jìn)入一個項(xiàng)目管理界面。新建工程的流程比較固定選擇工程模板通常是“Empty Project”設(shè)置工程名稱和路徑然后進(jìn)入硬件組態(tài)。硬件組態(tài)的入口在Control Builder F里。雙擊打開后你會看到一個類似Windows資源管理器的樹狀結(jié)構(gòu)里面有控制器節(jié)點(diǎn)、I/O節(jié)點(diǎn)、通信節(jié)點(diǎn)。右鍵控制器節(jié)點(diǎn)添加實(shí)際型號的控制器比如PM802F是AC800F的控制模塊需要對照訂貨號確認(rèn)。添加完后需要設(shè)置控制器的IP地址和站地址。注意FREELANCE控制器默認(rèn)的IP網(wǎng)段要和OS站設(shè)置在同一網(wǎng)段否則后面下載時找不到控制器。I/O組態(tài)相對直觀——添加遠(yuǎn)程I/O站設(shè)置PROFIBUS DP地址然后往里面掛I/O模塊。每個模塊的通道地址、信號類型AI/AO/DI/DO、量程都要逐一配置。這塊工作量不大但很瑣碎一個一百多點(diǎn)的項(xiàng)目光硬件組態(tài)可能就要半天時間。我的習(xí)慣是先在Excel里把I/O清單整理好標(biāo)明設(shè)備位號、信號類型、模塊位置、通道號組態(tài)時照著填能省不少返工時間。注意硬件組態(tài)里設(shè)置的模塊地址和實(shí)際柜內(nèi)接線位置必須一一對應(yīng)。如果發(fā)現(xiàn)某一路信號采集不上先查組態(tài)地址再查現(xiàn)場接線不要上來就懷疑模塊壞了。3.3 控制器IP與通信參數(shù)設(shè)置控制器IP設(shè)置這塊是新手最容易被卡住的地方之一。FREELANCE的控制器通信分兩層一層是工程組態(tài)通信即Control Builder F與控制器之間的通信用于下載和調(diào)試另一層是運(yùn)行通信即DigiVis與控制器之間的實(shí)時數(shù)據(jù)交換。這兩層在組態(tài)里是分開配置的。AC800F的控制模塊PM802F上有一個以太網(wǎng)口固定在IP 172.16.0.10這個地址是出廠默認(rèn)的。首次連接時你的電腦需要配一個同網(wǎng)段的IP比如172.16.0.1然后用網(wǎng)線直連或通過交換機(jī)連接。連接成功后在Control Builder F里可以修改控制器的正式IP地址。我見過一個比較典型的問題項(xiàng)目上用了無線網(wǎng)卡電腦同時連著WiFi和有線網(wǎng)結(jié)果下載時一直連不上控制器。這是因?yàn)閃indows路由表里存在多條可達(dá)目標(biāo)網(wǎng)段的路徑系統(tǒng)選擇了錯誤的出口。解決辦法是臨時禁用無線網(wǎng)卡或者用route命令調(diào)整路由優(yōu)先級。這個坑寫出來希望其他人別像我一樣在項(xiàng)目現(xiàn)場滿頭大汗地排查了半天才發(fā)現(xiàn)是網(wǎng)卡沖突。4. 控制邏輯組態(tài)與調(diào)試實(shí)戰(zhàn)4.1 基于IEC 61131-3的編程語言選擇FREELANCE控制邏輯組態(tài)支持IEC 61131-3全部五種語言但實(shí)際項(xiàng)目中真正高頻使用的就那么一兩種。作為工程師在項(xiàng)目開始前就要統(tǒng)一團(tuán)隊(duì)的編程語言風(fēng)格否則后續(xù)維護(hù)時會很痛苦。我個人的建議是連續(xù)控制類邏輯用FBD功能塊圖邏輯聯(lián)鎖類用LD梯形圖順序控制類用SFC順序功能圖ST結(jié)構(gòu)化文本用來寫一些復(fù)雜算法或自定義功能塊。S7項(xiàng)目的經(jīng)驗(yàn)可以直接平移到FREELANCE的門檻不高只是函數(shù)塊庫的命名和調(diào)用方式不同。比如模擬量PID控制FREELANCE內(nèi)置了功能塊庫DigiLib里面包含類似PID_INT、PID_REAL這樣的控制塊。拖拽到FBD頁面里連線、設(shè)置參數(shù)閉環(huán)控制就有了雛形。和西門子的FB41CONT_C相比思路基本一致只是參數(shù)名稱和聯(lián)系方式略有差異。4.2 一個實(shí)際聯(lián)鎖邏輯的組態(tài)思路拿一個典型的化工安全聯(lián)鎖舉例反應(yīng)釜溫度高報(bào)時需要切斷進(jìn)料閥并啟動冷卻水泵。這個邏輯如果用FBD來做大致是溫度模擬量信號經(jīng)過比較器和高報(bào)設(shè)定值比較輸出布爾量該布爾量與操作員確認(rèn)信號、泵運(yùn)行反饋信號做邏輯與最終輸出到切斷閥的DO通道。這里面有幾個容易被忽視的細(xì)節(jié)。第一模擬量信號進(jìn)控制器后第一步應(yīng)該做質(zhì)量判斷——信號是否超量程、傳感器是否斷線。很多DCS系統(tǒng)在信號故障時默認(rèn)值為0如果用這個0去參與聯(lián)鎖可能導(dǎo)致設(shè)備誤動作。FREELANCE里可以用功能塊檢測信號質(zhì)量再通過聯(lián)鎖邏輯里的“信號有效”位去閉鎖輸出。第二聯(lián)鎖邏輯里的“旁路”功能要用鑰匙開關(guān)或操作員權(quán)限控制不能做成任何人都能自由旁路的按鈕這涉及安全規(guī)范要求。第三聯(lián)鎖復(fù)位邏輯用上升沿觸發(fā)避免按鈕一直按著時反復(fù)動作。這些細(xì)節(jié)單看軟件功能其實(shí)都不復(fù)雜但真正考驗(yàn)工程師功力的地方在于你能不能提前在組態(tài)里把這些工業(yè)現(xiàn)場的實(shí)際問題考慮進(jìn)去。這也是DCS組態(tài)和PLC編程最大的區(qū)別之一——DCS項(xiàng)目更注重完整性和可靠性而不是單純實(shí)現(xiàn)某個動作。4.3 編譯下載與在線調(diào)試技巧邏輯寫完后在Control Builder F里點(diǎn)擊“Build”進(jìn)行編譯。編譯器會檢查語法錯誤、變量未聲明、硬件地址沖突等問題。編譯通過后就可以進(jìn)行下載操作了。下載前需要確認(rèn)控制器處于“STOP”或者“RUN”狀態(tài)。如果控制器正在運(yùn)行直接下載會導(dǎo)致停機(jī)取決于工程設(shè)置所以在生產(chǎn)裝置的調(diào)試窗口期之外不要隨便做下載操作。FREELANCE支持在線下載部分變更——只下載修改過的程序段這在生產(chǎn)項(xiàng)目里非常實(shí)用但前提是你要理解這個功能的限制有些組態(tài)變更比如刪除功能塊、修改接口變量不支持在線修改必須停機(jī)全量下載。在線調(diào)試時Control Builder F提供變量監(jiān)視和強(qiáng)制功能。你可以把某個變量強(qiáng)制為1或0觀察邏輯響應(yīng)也可以直接給模擬量輸出通道加一個固定值來驗(yàn)證現(xiàn)場執(zhí)行機(jī)構(gòu)的動作方向是否正確。這里要特別提醒強(qiáng)制功能是雙刃劍調(diào)試完一定要逐一取消強(qiáng)制否則生產(chǎn)階段某個被強(qiáng)制的點(diǎn)會掩蓋真實(shí)故障造成誤判斷。我有一次在項(xiàng)目收尾時忘了一個強(qiáng)制點(diǎn)導(dǎo)致業(yè)主生產(chǎn)時那臺泵一直不啟動排查了兩天才發(fā)現(xiàn)是被強(qiáng)制為0了這個教訓(xùn)記憶猶新。5. 人機(jī)界面設(shè)計(jì)與報(bào)警管理5.1 DigiVis畫面組態(tài)入門DigiVis是FREELANCE的人機(jī)界面運(yùn)行環(huán)境它在工程中的對應(yīng)開發(fā)工具叫DigiVis Configuration。開發(fā)者用這個工具繪制工藝流程圖、設(shè)備狀態(tài)、實(shí)時趨勢等運(yùn)行后由DigiVis加載顯示。畫面組態(tài)的思路和組態(tài)王、WinCC等上位機(jī)軟件類似先建畫面Picture然后在畫面里放置圖元再給圖元的動態(tài)屬性綁定變量。DigiVis的圖元庫里有泵、閥門、管道、儀表等標(biāo)準(zhǔn)圖元你也可以用基本圖形自己拼。常用做法是靜態(tài)圖形設(shè)備外形、管道走向用Drawing元素繪制動態(tài)數(shù)值用Text元素綁定變量設(shè)備狀態(tài)用顏色變化來表現(xiàn)——比如泵運(yùn)行時綠色停止時紅色故障時閃爍。一次比較復(fù)雜的DCS畫面包含幾十上百個變量如果一個個手動綁定效率極低。FREELANCE提供了批量替換和導(dǎo)入導(dǎo)出機(jī)制你可以在Excel里維護(hù)好畫面變量清單然后批量導(dǎo)入。另外畫面模板功能值得好好利用——同類設(shè)備比如“進(jìn)料泵”可能有十幾臺做好一個模板后面復(fù)制改變量名就行能省下大量重復(fù)勞動。5.2 報(bào)警分級與歷史趨勢配置報(bào)警管理是DCS不同于PLC的一個重要能力。FREELANCE的報(bào)警系統(tǒng)支持優(yōu)先級分級High、Medium、Low、報(bào)警抑制Alarm Suppression、報(bào)警延遲等高級功能。在配置報(bào)警時不要簡單地把每個模擬量的高限、低限都加進(jìn)去而是要結(jié)合工藝分析哪些報(bào)警是真正有用的。報(bào)警泛濫是DCS系統(tǒng)運(yùn)行中最常見的問題之一——現(xiàn)場操作工被一堆無關(guān)緊要的報(bào)警轟炸最終導(dǎo)致真正重要的報(bào)警被忽視。我接觸過的一個項(xiàng)目調(diào)試初期一天報(bào)警幾千條操作員直接麻了后來通過分級、抑制、死區(qū)設(shè)置把有效報(bào)警縮減到日均幾十條操作員才愿意認(rèn)真看報(bào)警。歷史趨勢配置方面DigiVis支持將過程值歸檔到SQL Server數(shù)據(jù)庫操作員可以查詢?nèi)我鈺r間段的趨勢曲線。對于關(guān)鍵參數(shù)比如反應(yīng)溫度、壓力、關(guān)鍵設(shè)備狀態(tài)比如泵啟停次數(shù)建議在工程階段就統(tǒng)一規(guī)劃歸檔清單而不是等投產(chǎn)后再補(bǔ)。歸檔數(shù)據(jù)量會隨周期增長建議根據(jù)系統(tǒng)硬盤容量和工藝要求合理設(shè)置歸檔周期比如1秒、5秒、10秒。5.3 操作權(quán)限與安全策略設(shè)置工業(yè)生產(chǎn)系統(tǒng)的操作權(quán)限管理不是一個“要不要做”的問題而是一個“怎么做”的問題。FREELANCE提供基于用戶組和角色的權(quán)限體系可以精確控制到某個操作按鈕是否可見、能否操作。實(shí)際項(xiàng)目中我一般會設(shè)置四級權(quán)限操作員只能看畫面、操作常規(guī)起停按鈕無法修改設(shè)定值、班長可以臨時修改部分工藝參數(shù)需填寫修改日志、工程師可以修改畫面、切換操作模式、管理報(bào)警、管理員系統(tǒng)配置、用戶管理、日志審計(jì)。每級權(quán)限對應(yīng)不同的登錄賬號和密碼策略。還有一個容易被忽略的點(diǎn)操作審計(jì)日志。FREELANCE會記錄操作員的所有關(guān)鍵操作修改設(shè)定值、啟停設(shè)備、確認(rèn)報(bào)警等包括操作人、操作時間、操作內(nèi)容。這些記錄在安全事故調(diào)查時非常關(guān)鍵。有些項(xiàng)目把審計(jì)日志默認(rèn)關(guān)閉了或者日志存儲空間不足導(dǎo)致寫不進(jìn)去這到了事后追溯時是要出大問題的。我的建議是系統(tǒng)上線前就把審計(jì)功能全開日志定期導(dǎo)出備份不要等出了事故才想起來。6. 與第三方設(shè)備的通信集成6.1 常見通信協(xié)議與配置方法一個DCS項(xiàng)目里除了自己的I/O設(shè)備通常會涉及變頻器、智能儀表、其他品牌PLC等第三方設(shè)備的接入。FREELANCE對通信協(xié)議的支持相當(dāng)豐富實(shí)際項(xiàng)目中我常用到的有Modbus RTU串口、Modbus TCP以太網(wǎng)、PROFIBUS DP、PROFINET、OPC UA。Modbus是最常見的接入方式不管是ABB自家的變頻器比如ACS580/ACS880系列還是第三方儀表很多都原生支持Modbus RTU或TCP。FREELANCE里配置Modbus通信的步驟大致是在硬件組態(tài)中添加通信模塊比如AC800F的CI830、CI854A模塊設(shè)置主站/從站角色、波特率、奇偶校驗(yàn)、數(shù)據(jù)格式然后在通信映射表中建立Modbus地址與DCS變量的對應(yīng)關(guān)系。PROFIBUS DP的配置邏輯類似但需要在FREELANCE里導(dǎo)入設(shè)備的GSD文件然后在DP主站下掛從站。這里有個老工程師都知道的坑GSD文件的版本一定要和設(shè)備固件版本匹配。如果設(shè)備更新了固件GSD文件沒同步更新通信偶爾會斷而且沒有任何規(guī)律。6.2 ABB變頻器與DCS的聯(lián)動配置ABB變頻器接入FREELANCE我做得最多的就是用Modbus RTU把ACS580/ACS880接入。通信參數(shù)無非是站地址、波特率通常9600或19200、數(shù)據(jù)格式8N1或8E1然后映射運(yùn)行命令字、頻率設(shè)定值、運(yùn)行反饋等。實(shí)際項(xiàng)目中建議把變頻器控制模式設(shè)置為“外部控制”或“通信控制”否則你DCS給的啟動命令會被變頻器本地面板沖突掉。通信控制模式下要特別注意變頻器的“啟動允許”邏輯——有些變頻器默認(rèn)接通啟動端子才允許啟動通信給啟動命令也沒反應(yīng)這個在現(xiàn)場經(jīng)常把人搞懵接線檢查了很久才想起來查啟動允許。除了啟停和頻率給定我一般還會把變頻器的實(shí)際電流、母線電壓、故障代碼、運(yùn)行狀態(tài)反饋全部讀到DCS并在畫面上顯示出來。這樣操作工看到變頻器報(bào)警時不用跑到柜子前面去看直接在DCS畫面就能判斷故障類型能大幅縮短故障響應(yīng)時間。6.3 與西門子PLC及和利時DCS的通信實(shí)踐現(xiàn)場項(xiàng)目中DCS和PLC共存的情況非常普遍比如DCS管過程控制、PLC管設(shè)備聯(lián)鎖或者老裝置區(qū)是PLC、新裝置區(qū)是DCS需要互聯(lián)互通。FREELANCE和西門子PLC通信常見的方式是通過PROFIBUS DP或PROFINET也可以走OPC。如果走PROFIBUS DP需要確認(rèn)S7-300/400是否配置了DP從站模式——S7-300可以通過CPU集成的DP口做從站S7-1200/1500則必須用通信模塊或網(wǎng)關(guān)。如果走OPC則需要在FREELANCE側(cè)裝OPC服務(wù)器或客戶端組件。實(shí)際做下來OPC方式對IP地址、數(shù)據(jù)包格式限制更少適合后期調(diào)試階段再改動配置的項(xiàng)目。和利時DCS通信的情況也類似。工程上最穩(wěn)妥的方案是通過Modbus TCP網(wǎng)關(guān)或標(biāo)準(zhǔn)OPC接口進(jìn)行數(shù)據(jù)交換。這里需要注意數(shù)據(jù)點(diǎn)表的一致性——雙方工程師分別維護(hù)各自系統(tǒng)的點(diǎn)表一旦變更沒有同步DCS讀過來的數(shù)據(jù)就會錯位。我經(jīng)手過一個項(xiàng)目兩套系統(tǒng)通過Modbus TCP交換了20多個點(diǎn)調(diào)試時一切正常運(yùn)行半年后對方改了一個寄存器地址結(jié)果DCS這邊讀到的數(shù)據(jù)全亂了排查了好久才發(fā)現(xiàn)是點(diǎn)表沒更新。所以跨系統(tǒng)通信項(xiàng)目中強(qiáng)烈建議在合同或技術(shù)協(xié)議里明確“點(diǎn)表變更需以書面形式通知對方”并指定雙方唯一的接口負(fù)責(zé)人。7. 常見問題與排查技巧實(shí)錄7.1 通信故障排查通信故障是DCS項(xiàng)目運(yùn)行階段出現(xiàn)頻率最高的問題。結(jié)合我的經(jīng)驗(yàn)可以按“軟件-硬件-現(xiàn)場”三個層面來排查。第一層軟件配置。先確認(rèn)通信參數(shù)是否一致——波特率、數(shù)據(jù)位、停止位、校驗(yàn)位任何一項(xiàng)不一致都會導(dǎo)致通信失敗或數(shù)據(jù)亂碼。Modbus通信中確認(rèn)主站和從站的寄存器地址映射是否對應(yīng)特別是32位浮點(diǎn)數(shù)的字節(jié)序大端/小端和字序不同廠家設(shè)備可能存在差異輕則數(shù)據(jù)亂跳重則讀出來的數(shù)值完全不對。第二層硬件狀態(tài)。檢查通信模塊指示燈查看鏈路狀態(tài)。比如PROFIBUS DP通信中斷后DP主站模塊上會有專門的BF總線故障指示燈亮起。FREELANCE的通信模塊也提供了診斷信息可以在Control Builder F里在線查看通信模塊的從站診斷數(shù)據(jù)。第三層現(xiàn)場物理鏈路。網(wǎng)線或DP電纜接頭松動、屏蔽層接地不良是隱性故障的高發(fā)源。特別是DP電纜對屏蔽和終端電阻非常敏感線路兩端必須各接一個終端電阻中間任何分支點(diǎn)的接線都要用DP接頭壓緊。我遇到過一次現(xiàn)場通信間歇性中斷排查到最后是DP電纜在柜內(nèi)走線時和動力電纜綁在一起電磁干擾導(dǎo)致數(shù)據(jù)幀偶發(fā)錯誤。重新獨(dú)立走線后問題徹底消失。7.2 常見故障速查表故障現(xiàn)象可能原因處理辦法控制器無法連接IP地址不在同一網(wǎng)段檢查OS站和控制器IP確保同網(wǎng)段連接控制器無法連接電腦多網(wǎng)卡路由沖突臨時禁用無關(guān)網(wǎng)卡或調(diào)整路由優(yōu)先級下載程序時報(bào)錯控制器處于運(yùn)行狀態(tài)且工程設(shè)置了停機(jī)下載先切換控制器到STOP或選擇在線修改模式模擬量讀數(shù)異常量程設(shè)置錯誤或信號類型不匹配核對硬件組態(tài)中的信號類型和量程范圍模擬量讀數(shù)跳變信號線屏蔽不良或接線松動檢查現(xiàn)場接線確認(rèn)屏蔽層可靠接地Modbus通信時通時斷波特率或校驗(yàn)方式不一致核對通信參數(shù)統(tǒng)一兩端設(shè)置PROFIBUS DP故障GSD文件版本與設(shè)備固件不匹配從設(shè)備廠商處獲取最新GSD文件畫面數(shù)據(jù)不更新變量綁定錯誤或通信中斷檢查變量名拼寫查看通信鏈路狀態(tài)強(qiáng)制變量在生產(chǎn)時未釋放調(diào)試后遺漏強(qiáng)制點(diǎn)建立調(diào)試收尾清單逐一確認(rèn)釋放強(qiáng)制點(diǎn)控制器冗余切換失敗備用控制器未同步程序按先備后主順序下載確認(rèn)備用機(jī)運(yùn)行狀態(tài)7.3 三個易被忽視的“小問題”說幾個不太常見但非常實(shí)用的經(jīng)驗(yàn)這些大多是我在具體項(xiàng)目里踩坑后總結(jié)出來的。第一DCS系統(tǒng)時間同步。FREELANCE的報(bào)警記錄、趨勢記錄都帶時間戳如果OS站和控制器的時鐘不同步查事故原因時報(bào)警順序和時間線會對不上。建議項(xiàng)目上線時配置NTP時間同步服務(wù)器讓所有操作員站、工程師站、控制器統(tǒng)一時間。很多項(xiàng)目忽略了這一點(diǎn)等到做事故復(fù)盤時才發(fā)現(xiàn)報(bào)警時間差了幾秒鐘給分析帶來了很大的麻煩。第二工程備份和版本管理。FREELANCE工程文件是一個完整的工程數(shù)據(jù)庫包含硬件組態(tài)、邏輯程序、畫面配置等全部內(nèi)容。工程中途做過多次修改后建議定期另存為帶版本號的工程副本。我習(xí)慣每周五下班前把本周的工程壓縮備份一次命名格式是“項(xiàng)目名_日期_版本”存到共享服務(wù)器或網(wǎng)盤。一旦后續(xù)調(diào)試改出了不可逆的問題隨時可以回退到上一個穩(wěn)定版本。第三控制器電池和CF卡。AC800F等控制器的程序存儲在電池保護(hù)的RAM或CF卡上。如果電池失效斷電后程序可能會丟失。建議每年檢查控制器電池電壓并在日常點(diǎn)檢中加入CF卡狀態(tài)檢查。別問我是怎么想起來寫這條的——項(xiàng)目上確實(shí)經(jīng)歷過控制器斷電重啟后程序丟失的“刺激”時刻。8. 最終調(diào)試與項(xiàng)目收尾收尾階段往往是項(xiàng)目里最容易被壓縮時間、也最容易埋雷的階段。FREELANCE項(xiàng)目收尾我始終盯著三件事一是點(diǎn)和畫面的全面核對將設(shè)計(jì)院的I/O清單、實(shí)際組態(tài)、現(xiàn)場表計(jì)逐一比對任何一個“我印象中配過”的點(diǎn)都不算數(shù)要親眼確認(rèn)信號正常二是冗余切換測試模擬主控制器故障、通信斷鏈觀察備用控制器是否能無擾接管三是資料歸檔工程文件的最終版本、點(diǎn)表、通信參數(shù)表、操作手冊要整理成套交給業(yè)主的運(yùn)維人員。另外還有一個值得做的事——給業(yè)主的運(yùn)維工程師做一次現(xiàn)場實(shí)操培訓(xùn)。軟件這東西光看手冊確實(shí)不容易上手特別是FREELANCE這種工程項(xiàng)目型軟件界面和信息量比普通辦公軟件大得多。我記得有一次培訓(xùn)時業(yè)主工程師反復(fù)問的一句是“這個軟件改一個變量會不會把現(xiàn)場正在運(yùn)行的設(shè)備停掉”這個問題背后是對在線修改功能的信任問題。我當(dāng)時就在工程里演示了在線下載一個不涉及運(yùn)行邏輯的注釋修改看到裝置平穩(wěn)運(yùn)行不受影響他才放心了。所以培訓(xùn)時一定要把“在線修改的安全邊界和操作流程”講透這比講任何菜單操作都重要。從選型到上線FREELANCE 2016 SP1這套軟件陪伴我走過了不少項(xiàng)目。它算不上最炫酷的DCS系統(tǒng)但勝在扎實(shí)、穩(wěn)定、適中。如果你正準(zhǔn)備用這套軟件啟動一個新項(xiàng)目或者正在為“PLC還是DCS”的選擇猶豫希望這篇基于實(shí)際項(xiàng)目經(jīng)驗(yàn)的梳理能給你一些參考。真要動手做項(xiàng)目先把工程備份、IP規(guī)劃、點(diǎn)表管理這三件基本功做扎實(shí)后續(xù)會順很多。本文還有配套的精品資源點(diǎn)擊獲取