?

淺談西門子MES與DCS數據交互在生產中的應用

2022-01-12 01:08王東鵬陳乙鋒白凌云左冬宋悅
機電信息 2022年1期

王東鵬 陳乙鋒 白凌云 左冬 宋悅

摘要:面對不斷增長的成本壓力、愈加嚴格的法規和安全指南以及日益多樣化的產品線,制藥企業正不斷尋找改進生產工藝的方法。SIMATIC IT eBR為制藥行業提供了專用的MES解決方案,它實現了徹底的無紙化制造和完全電子化的批量記錄。SIMATIC IT eBR包括生產執行系統(MES)、SIMATIC PCS 7過程控制系統(DCS)與SIMATIC Batch的HMI層之間的內在集成?,F就MES與DCS之間的數據交互方式、DCS和MES協同問題的解決方案進行梳理和研究。

關鍵詞:MES;DCS;數據交互;協同問題

中圖分類號:TP274? 文獻標志碼:A? 文章編號:1671-0797(2022)01-0011-05

DOI:10.19514/j.cnki.cn32-1628/tm.2022.01.003

0? ? 引言

2015年,《中國制造2025》規劃出臺,劍指“工業4.0”,其中涉及醫藥行業的內容成為指導我國醫藥行業智能化轉型升級的行動目標和綱領。醫藥工業在智能化技術趨勢的影響下,正在進入全面轉型升級的階段。制藥工業的新紀元——無紙化生產即將成為新的標準。借助于西門子成熟的電子批記錄解決方案(SIMATIC IT eBR)[1],可實現完全無紙化生產。本文針對SIMATIC IT eBR中的生產執行系統(MES)、SIMATIC PCS 7過程控制系統(DCS)[2],展開了對這兩套系統的數據交互以及協同問題解決方法的研究。

1? ? DCS與MES數據交互方式

1.1? ? MES與DCS通過OPC進行數據交互

此交互方式適用于MES系統需要讀取第三方設備數據的場景,同時也適用于一些狀態的顯示,如設備的CIP清洗、SIP滅菌的時效。如圖1所示,當MES系統需要讀取DCS系統某個數據時,可通過OPC訪問DCS或WinCC的數據庫直接獲取DCS系統的數據;當MES系統需要下發某個數據給DCS系統時,也可通過OPC將數據寫入DCS系統。當MES需要多次讀取DCS數據,或需要判斷讀取數據的正確性時,經常采用OPC讀取這種方式。比如在溫度調整過程中,MES系統需要多次獲取罐子溫度,直到罐溫滿足要求以后才記錄,這時就可以選擇OPC讀取這種方式。值得注意的是,在通過OPC進行數據交互時,需要明確DCS中OPC服務器的IP地址以及數據的變量名。當OPC通信變量獲取出現異常時,需要查看EBROPC服務是否開啟,若服務正常開啟,則查看DCS中的OPC服務器是否異常,檢查設備是否打到仿真狀態,如打到仿真狀態,而OPC無法讀取到仿真值,則查看OPC配置點位是否正確(新增點位出現異常的可能性最大)。

MES直讀DCS或WinCC變量功能是通過腳本“YA_READ_MAXMIN”讀取一段時間內單個DCS或WinCC點位的最大/最小值及相應時間點,并且需要在DCS服務器上運行“YAWinCC.EXE”插件。

“YA_READ_MAXMIN”腳本輸入/輸出參數說明:

insTag:輸入WinCC點位;

intStart:輸入讀取時間段的開始時間點;

intEnd:輸入讀取時間段的結束時間點;

oudMax:輸出讀取時間段內的最大值;

oudMin:輸出讀取時間段內的最小值;

oulResult:輸出運行返回值[建議在PI中放出來,方便異常情況查看,正確的返回值為“0”,當返回值為“1”時,讀出數值為空值,檢查配置的點位是否有錯誤(非格式錯誤);當返回值為“2”時,檢查DCS服務器是否有異常,服務器上“YAWinCC.EXE”插件是否啟用;當返回值為“3”時,檢查配置點位格式是否有錯誤];

outMaxTime:輸出最大值對應的時間點;

outMinTime:輸出最小值對應的時間點。

1.2? ? DCS與MES數據交互方式——Batch

SIMATIC Batch是一個模塊化和可升級的批處理平臺。Batch在執行特定動作時(如批處理訂單啟動),MES與Batch可直接進行數據交互。MES中的事件PI與Batch中相關的EPH或QCS綁定,當該QCS觸發特定事件,如Start、Refresh、Completed或者Aborted時,MES就可通過事件PI與Batch進行數據交互,如圖2所示。

2? ? DCS和MES協同問題的解決

兩個系統在配合運行時,出現協同問題在所難免。DCS和MES的協同問題主要體現在:

(1)參數匹配,其中包括Batch的設定值中是否包含了MES需要下發的設定值、MES與Batch的參數是否在配方啟動時直接傳送、MES與Batch的參數是否來自于計算值、MES與Batch的參數是否來自于不同步驟的計算值;

(2)流程匹配,包括時序的匹配(具體ROP的激活時序)、MES中的人工確認(采樣、手動加料、放行等)、MES與Batch的配合(pH調節的次數;與第三方設備的交互,雖然和Batch沒有控制上的關系,但MES需要數據,還是需要在Batch上進行考慮);

(3)Master Recipe的影響,例如同一個Unit的不同操作是否是在同一個配方中(如緩沖液的配制和出料功能)。

針對這一系列的協同問題,借助于本公司部分生產工藝流程的設計思路(部分流程進行了模糊化處理或替代),于下文中給出了一定的解決方案。

2.1? ? 參數匹配問題

2.1.1? ? Batch的設定值中是否包含了MES需要下發的設定值

針對這類問題的解決,需要MES提供與Batch的接口數據表,進行Batch配方編輯的人員在拿到這個數據表之后,需要考慮EM的設定值的創建,具體可以參考MES與Batch的接口數據表和協同工作的流程。

2.1.2? ? MES與Batch的參數是否在配方啟動時直接傳送

設定值參數在Batch訂單中運行時如為固定值,一般該參數需要上傳到表頭,由MES在啟動Batch訂單時更新表頭參數。例如在某一生產流程中的溫度控制階段,反應罐的溫度設定值是一個固定參數,需要上傳到表頭,具體如圖3所示。

2.1.3? ? MES與Batch的參數是否來自于計算值

當某個QCS觸發了特定的PI事件,然后計算的值寫入相同的QCS時,這種寫值方式不受Batch流程架構影響。如圖4所示,如果想要將MES在進生理鹽水階段計算出的生理鹽水加料量寫入到本階段的進生理鹽水設定值中,這時在DCS的順控中就需要考慮MES的計算是否已經完成,或者是否可以應用當前的數據來運行進料程序。

如下幾個步驟需要在SFC中考慮:

步驟1,在EPH中創建一個交互設定值參數MES_

Unblock(數據類型為Bool型),其主要的目的是讓MES通過這個參數告訴DCS相關運算已經完成;

步驟2,在SFC的Starting中,需要復位這個交互設定值參數,確保程序運行前MES_Unblock值為假;

步驟3,在SFC的Run中,“等待MES操作”這一步置位REFRESH信號(置位此信號的主要目的是在SFC運行的過程中還能實時接收來自于MES的設定值即MES_Unblock的信號),同時在“MES操作完成”中設置檢查MES_Unblock信號是否被MES置位這一條件,若MES_Unblock信號為真,則表示MES計算已經完成,可以開始執行該程序;

步驟4,在SFC的QCS的Completing、Aborting與Stopping中復位MES_Unblock和REFRESH信號;

步驟5,在配方中該設定值參數不能有源,且必須可更改并立即生效,如加生理鹽水階段的加料量設定值需要MES計算后寫入。

Batch中正確組態如圖5所示。

2.1.4? ? MES與Batch的參數是否來自于不同步驟的計算值

MES的數據通過EM或者QCS寫入。當某個QCS觸發了一個PI事件,然后計算的值寫入相同的QCS,接著在Batch底層通過將MES寫入的參數作為目標參數上傳,再在另一步驟中將上傳的參數作為源引用。這種方式寫值不需要有確定的Batch架構。如圖6所示,如果需要將MES在緩沖液進料階段計算出來的緩沖液的加料量寫入緩沖液加料階段的設定值中,只需在緩沖液進料階段的屬性參數配置中找到緩沖液加料量(PH_WI_SP),為其設置上傳目標參數(PH_ADD_SP),并在緩沖液加料階段的屬性參數配置中找到緩沖液加料設定值(WI_SP),將目標參數(PH_ADD_SP)作為源引用。

2.2? ? 流程匹配問題

2.2.1? ? 時序的匹配(具體ROP的激活時序)

在很多MES管理的項目中,罐子的CIP清洗是單獨的訂單,與主流程平行進行,所以主流程在占用該罐子之前,需要事先確認罐子是否干凈可用。以圖7所示工藝流程為例:PI301在完成制作工序1之后,可以進行PI303的制作工序2。在沒有MES協調的情況下,按照圖中方式進行組態,在PI301完成工序1后,PI303便被主流程訂單占用。如果此時PI303為不清潔狀態,調用PI303的CIP清洗訂單則無法啟動。要解決此類問題,只需在PI301完成制作工序1后,增加一條下游設備PI303確認功能,通知MES進行設備檢查確認,同時將PI303的組態動態單元設置為條件啟動,條件為MES已經確認設備(MES將設備確認參數DevCheck通過OPC傳遞到DCS,DCS再將其組態為單元參數),如圖8、圖9所示。

若設備已經為清潔狀態,MES確認設備并且下發參數通知DCS,DCS主流程啟動PI303;若設備為不清潔狀態,則MES啟動對應的清洗訂單,待設備清洗完成后,MES確認該設備并通知DCS,DCS主流程啟動PI303。

2.2.2? ? MES中的人工確認(采樣、手動加料、放行等)

在一些緩沖液的配制過程中,需要進行手動加料。此時,Batch流程通過特定的EM或QCS觸發MES進行手動加料,完成后通知Batch繼續生產小結流程。如圖10所示,PI100在進行完工序1后需要手動進行加料,若沒有MES的干預,在手動加料過程中訂單將繼續往下執行生產小結,為避免這種情況,在工序1完成后增加手動投料這一過程,并通過MES確認已經添加完成,訂單繼續向下執行。

2.2.3? ? MES與Batch的配合(如多次調整進料)

很多情況需要MES和Batch配合,MES下發加料量給Batch,Batch自動加料完成后通知MES檢測再調整。如乙醇配制階段,在預加一定量的水和乙醇后,需要檢測乙醇濃度進行再次調節,直到合格后進行后續步驟。此時需要MES和Batch配合完成,如圖11所示。

2.3? ? 同一個Unit的不同操作不在一個訂單中,需要MES進行協調解決

如緩沖液的配制和出料操作不在一個訂單中,如果沒有MES協調,在Buffer配制之后和出料之前有一定的空檔期,可能存在安全隱患等,如圖12所示。此時只需在配制訂單結束前增加一步用于等待MES確認,在MES準備啟動出料訂單前,才停止配制訂單,保證流程的延續性和安全性,如圖13所示。

3? ? 結語

本文就MES與DCS數據交互方式展開了研究,為實際生產中出現的數據交互問題的及時解決提供了有力保障,提高了自動化運營的生產效率。

另外,本文基于本公司實際生產部分流程對MES與DCS的一些協調問題給出了一定的解決方案,可供相關從業人員參考學習、共同進步。

[參考文獻]

[1] 米勒.西門子自動化系統實戰S7和PCS7應用實例[M].張懷勇,譯.北京:人民郵電出版社,2007.

[2] 利昂·烏爾巴斯,安尼特·克勞澤,延斯·齊格勒.過程控制系統工程[M].朱振華,譯.北京:機械工業出版社,2018.

收稿日期:2021-09-17

作者簡介:王東鵬(1981—),男,山東鄆城人,工程師,從事工程項目管理及自控調試工作。

陳乙鋒(1998—),男,四川資陽人,技術員,從事自控信息系統維護工作。

白凌云(1976—),男,湖北武漢人,工程師,從事自控信息化項目工作。

91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合