專利名稱:分布式控制系統(tǒng)dcs控制器實時數據庫的實現方法
技術領域:
本發(fā)明屬于大型火力發(fā)電廠、石油、化工、冶金、軌道交通等行業(yè)的工業(yè)自動化領 域,具體涉及自動化系統(tǒng)控制器的軟件設計的方法。
技術背景分布式自動化系統(tǒng)(以下簡稱DCS)是現代工業(yè)控制的最主要的控制系統(tǒng),DCS系 統(tǒng)廣泛用于各個工業(yè)行業(yè),包括電力、石油、化工、冶金、造紙、制藥、食品、市政等 行業(yè),其中在電力和化工行業(yè)的應用最復雜,規(guī)模最大??刂破魇钦麄€DCS系統(tǒng)的核心 大腦,起到上傳下達,邏輯運算的功能。隨著計算機技術、現場總線技術、網絡通信技 術的發(fā)展,以及工業(yè)現場對控制器的實時性、信息化、智能化、標準化、開放性要求的 提高,要求實時數據庫具有速度快、數據抽象合理、通用性、配置靈活和維護工作量低。 發(fā)明內容本發(fā)明涉及一種DCS系統(tǒng)控制器的實時數據庫的實現方法。DCS系統(tǒng)要求控制器的 1/0插件可以熱插拔,即當新插入I/0板卡時,控制器夠自動識別該I/0板卡,與該1/0 板卡建立通訊,進行數據交換;當拔掉I/0板卡時,控制器能夠檢測到該板卡被拔掉, 不刷新該板卡數據,向主站HMI發(fā)送告警信息,這些操作均要求不得重新啟動控制器。 DCS系統(tǒng)要求控制器的不同類型1/0板卡插槽位置無關性,也就是機箱的某個插槽無論 是接什么類型的1/0板卡,如數字量輸入單元DI、模擬量輸入單元AI、數字量輸出單 元DO、模擬量輸出單元AO、脈沖量輸入單元PI等,控制器均能識別,與板卡交換數據。 雖然協(xié)調控制器HDPU和現場控制器LDPU位于DCS系統(tǒng)的不同層次,HDPU負責協(xié)調控制, 控制范圍大,LDPU負責現場控制,但是控制器的硬件均相同,軟件也要求同一套軟件, 便于維護。本發(fā)明釆用以下技術方案滿足以上要求一種分布式控制系統(tǒng)控制器實時數據庫的實現方法,該方法通過建立層次型實時數 據庫,實現控制器I/O插件的熱插拔、插件的插槽位置無關性、以及控制器快速地 與I/O板卡和HMI進行數據交換;該方法包括(1) 采用層次型實時數據庫,表與表關系通過指針關聯(lián),以I/O插件作為最小容器 單元,I/O插件在該實時庫中映射為一個具有獨立意義的最小實體;(2) 不同類型的I/0插件采用通用數據結構的抽象方法;(3) 控制器在啟動時分配系統(tǒng)最大I/O容量,避免由于熱插拔形成內存碎片造成的 系統(tǒng)不穩(wěn)定;(4) 采用I/O板卡的邏輯地址作為板卡的唯一標識,物理地址由機箱背板插槽位置跳線決定的方法實現I/O插件插槽位置無關性;(5) 控制器與I/O和HMI交換數據采用塊拷貝方式;(6) 協(xié)調控制器HDPU和現場控制器LDPU采用相同的實時數據庫,通過配置的不同 來區(qū)分。協(xié)調控制器HDPU和現場控制器LDPU的實時數據庫組織方式相同,只是內部存 放數據不同,同一套代碼在HDPU和LDPU上可以直接運行,通過配置、啟動文件來 區(qū)分。利用上述方法實現的控制器,能夠快速的采集I/0板卡數據,快速的與HMI交換數 據,PLC邏輯運算實時性好,能夠達到工業(yè)控制系統(tǒng)的要求。
圖l示意了DCS系統(tǒng)結構;圖2.1、圖2.2、圖2.3示意了控制器層次型實時數據庫中幾個層次的數據結構,其中圖2.1控制器系統(tǒng)結構;圖2.2為單個控制器數據結構;圖2.3為I/0板卡數據結構;圖3示意了控制器中實時數據庫與PLC數據區(qū)的數據關系。
具體實施方式
下面通過具體實施方式
,對本發(fā)明的技術方案做詳細闡述。 本發(fā)明采用以下技術方案-(1) 如圖l所示,DCS系統(tǒng)結構為層次型結構,控制器釆用層次型數據庫,也叫樹 型結構,能真實反映系統(tǒng)數據模型。表與表關系通過指針關聯(lián),表與表關系緊密,定位 快速,使用內存較少,效率較高。以I/O插件作為我們的最小容器(數據)單元。I/O 插件在實時庫中映射為一個具有獨立意義的最小實體。如圖2. 1、圖2.2、圖2.3為控 制器各個層次的數據結構。圖2.1中,狀態(tài)點結構表示系統(tǒng)屬性數據,系統(tǒng)有多個DPU 映射區(qū),其中一個為本DPU數據,其它為通過通訊交換數據的DPU的數據映像,有幾個 DPU映射區(qū)以及表示哪些DPU的映射可通過配置文件配置。圖2. 2表示圖2. 1中每個DPU 映射區(qū)的結構定義,其中狀態(tài)點結構表示DPU屬性數據,1/0板映射區(qū)為DPU所帶I/0 的數據映射,有幾個I/O板映射區(qū)通過配置文件配置。圖2.3表示圖2.2種每個I/O數據 的結構定義,其中狀態(tài)點信息為I/0屬性數據,數據表區(qū)表示I/0數據區(qū)。(2) 充分采用自描述方式,抽象出不同I/O的共性,即屬性區(qū)、數據區(qū)。不同的 1/0板卡采用相同的數據結構描述,根據屬性區(qū)字段值的不同來區(qū)分不同的板卡,不同 類型的I/O板卡的屬性數據由板卡通訊上送的自描述數據和控制器中的模版文件初始 化。(3) 控制器在啟動時分配系統(tǒng)最大1/0容量,避免了由于熱插拔形成內存碎片造 成的系統(tǒng)不穩(wěn)定。(4) 通過采用I/O板卡的邏輯地址作為板卡的唯一標識,物理地址由機箱背板插 槽位置跳線決定的方法實現1/0插件插槽位置無關性。(5) 1/0板卡的各個點值采用數據區(qū)的描述方法,在內存中連續(xù)排列,當從板卡接 入和上送HMI數據時可采用內存塊拷貝的方式,速度快,效率高。(6) 控制器的一個重要的功能是邏輯運算,DCS系統(tǒng)要求邏輯運算的速度快,執(zhí)行 效率高,遵循IEC61131國際標準,通過采用內存塊拷貝和內存地址映射共享兩種方式 與PLC運算引擎交換數據。實時數據庫和PLC數據關系如圖3所示。當邏輯任務開始執(zhí) 行時,通過內存塊拷貝方式將板卡數據讀取到PLC輸入數據區(qū)進行邏輯運算;當邏輯 任務執(zhí)行結束時,通過內存塊拷貝方式將在PLC輸出數據區(qū)的邏輯運算結果輸出到板 卡;共享數據區(qū)的數據為實時數據庫和PLC數據的公用數據,采用內存地址映射方式與 系統(tǒng)共享。控制器的CPU采用摩托羅拉的MPC885,實時操作系統(tǒng)采用美國風河公司的VxWorks, 充分利用操作系統(tǒng)的多任務特點,使用同步量(如信號燈、同步鎖、消息隊列等)進行 任務間通訊。對操作系統(tǒng)接口進行封裝,使上層應用可以不涉及操作系統(tǒng)接口,便于跨 平臺移植。數據結構充分利用指針描述數據區(qū),考慮字節(jié)對齊。提供訪問實時數據的接 口API函數,保護關鍵數據,同時方便上層應用調用。接入1/0有(1) DI開關量輸入單元(2) AI模擬量輸入單元(3) AO模擬量輸出單元(4) DO數字量輸出單元(5) PI脈沖量輸入單元(6) 智能終端保護測控設備建立不同類型I/O的模板文件放在控制器中,控制器初始化時讀取文件內容,初 始化I/O模版庫,當I/O板卡建立通訊時完成板卡初始化過程。PLC運算引擎采用德國kw公司ProConOS內核,通過編寫I/O驅動程序,在邏輯任 務開始運行時把實時數據庫中該I/O的數據讀取到PLC內核的輸入區(qū),邏輯運算結束時 把出口數據寫到輸出區(qū),通過通訊下發(fā)命令給i/o板卡。
權利要求
1、分布式控制系統(tǒng)控制器實時數據庫的實現方法,該方法通過建立層次型實時數據庫,實現控制器I/O插件的熱插拔、插件的插槽位置無關性、以及控制器快速地與I/O板卡和主站HMI進行數據交換;其特征在于,該方法包括(1)采用層次型實時數據庫,表與表關系通過指針關聯(lián),以I/O插件作為最小容器單元,I/O插件在該實時庫中映射為一個具有獨立意義的最小實體;(2)不同類型的I/O插件采用通用數據結構的抽象方法;(3)控制器在啟動時分配系統(tǒng)最大I/O容量,避免由于熱插拔形成內存碎片造成的系統(tǒng)不穩(wěn)定;(4)采用I/O板卡的邏輯地址作為板卡的唯一標識,物理地址由機箱背板插槽位置跳線決定的方法實現I/O插件插槽位置無關性;(5)控制器與I/O和HMI交換數據采用塊拷貝方式;(6)協(xié)調控制器HDPU和現場控制器LDPU采用相同的實時數據庫,通過配置的不同來區(qū)分。
2、 根據權利要求1所述的分布式控制系統(tǒng)控制器實時數據庫的實現方法,其特 征在于,所述不同類型的1/0插件采用通用數據結構的抽象方法是指采用自描述方式, 抽象出不同1/0的共性,即屬性區(qū)、數據區(qū),不同的1/0板卡采用相同的數據結構描述, 根據屬性區(qū)字段值的不同來區(qū)分不同的板卡,不同類型的1/0板卡的屬性數據由板卡通 訊上送的自描述數據和控制器中的模版文件初始化。
3、 根據權利要求1所述的分布式控制系統(tǒng)控制器實時數據庫的實現方法,其特 征在于,所述VO板卡的各個點值采用數據區(qū)的描述方法,在內存中連續(xù)排列,當控制 器從板卡接入和上送HMI數據時采用內存塊拷貝的方式。
4、 根據權利要求1所述的分布式控制系統(tǒng)控制器實時數據庫的實現方法,其特征 在于,所述控制器通過采用內存塊拷貝和內存地址映射共享兩種方式與PLC運算引擎交 換數據,當邏輯任務開始執(zhí)行時,通過內存塊拷貝方式讀取板卡數據進行運算;當邏輯 任務執(zhí)行結束時,通過內存塊拷貝方式輸出計算結果;邏輯運算中間結果采用內存地址 映射方式與系統(tǒng)共享。
5、 根據權利要求1所述的分布式控制系統(tǒng)控制器實時數據庫的實現方法,其特征 在于,在DCS系統(tǒng)中位于不同層次的HDPU和LDPU采用相同的程序代碼實現,根據 配置不同來區(qū)分數據和屬性功能的不同。
全文摘要
本發(fā)明涉及分布式控制系統(tǒng)DCS中控制器的實時數據庫的實現方法,該方法通過建立層次型實時數據庫,滿足I/O插件的熱插拔,插件的插槽位置無關性,快速地與I/O板卡和HMI進行數據交換;抽象出通用的數據結構,對于不同類型(如DI、DO、AI、AO、PI等)、不同協(xié)議、不同插槽位置的I/O插件,采用相同數據結構處理;與PLC運算引擎采用內存映射和塊拷貝的交換數據方式,配置靈活,速度快,執(zhí)行效率高。
文檔編號G05B19/418GK101231525SQ20081005792
公開日2008年7月30日 申請日期2008年2月21日 優(yōu)先權日2008年2月21日
發(fā)明者劉靜芳, 奚志江, 張海棠, 磊 朱, 焦邵華 申請人:四方電氣(集團)有限公司;北京四方博能自動化設備有限公司