[發明專利]一種用于在線修改控制系統邏輯算法程序的方法有效
| 申請號: | 201310481575.5 | 申請日: | 2013-10-15 |
| 公開(公告)號: | CN103529743B | 公開(公告)日: | 2017-01-04 |
| 發明(設計)人: | 師嘉;王鼎;劉剛;黃磊;焦邵華 | 申請(專利權)人: | 北京四方繼保自動化股份有限公司 |
| 主分類號: | G06F12/00 | 分類號: | G06F12/00;G05B19/048 |
| 代理公司: | 北京金闕華進專利事務所(普通合伙)11224 | 代理人: | 吳鴻維 |
| 地址: | 100085 北京*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 用于 在線 修改 控制系統 邏輯 算法 程序 方法 | ||
技術領域
本發明屬于工業自動化控制系統技術領域,更具體地說,涉及一種用于在線修改控制系統邏輯算法程序的方法。
背景技術
在工業自動化控制中,由組態軟件與控制器(也稱為上位機與下位機)組成的控制系統廣泛的應用于各控制領域:如分布式控制系統(DCS)、可編程控制器(PLC)、安全儀表控制系統(SIS)等。通常,組態軟件(上位機)完成控制算法的組態、算法程序的生成、算法程序下載至控制器、以及算法執行情況的在線監視等工作;控制器(下位機)完成算法任務調度、控制算法執行、現場數據采集等工作,是工業控制的核心部分。目前工業控制系統對于控制的實時性、連續性、穩定性、安全性都提出了越來越高的要求。在控制系統對工業現場進行控制的過程中,可能會需要修改已有的控制算法,已達到更理想的控制效果,那么如何在控制系統已運行算法程序的情況下,可以不對控制器運行狀態進行擾動,完成控制器中算法程序的更新,實現新舊控制算法的無縫切換,是工業自動化控制領域必須要解決的問題。
目前在線修改控制系統邏輯算法程序通常采用以下兩種方式:
第一種方式是,控制器的存儲區中采用一塊代碼區與一塊數據區的方式,其算法程序中每個子算法程序保存在指定的區域,新增的子程序保存在新的區域,變化的子程序可以在停止任務執行后進行替換,也可以執行過程中替換,但替換后的子程序不可以被執行,該方法對于控制的實時性具有較大影響;
第二種方式是,控制器中存儲區中采用兩塊代碼區,兩塊代碼區同用一塊數據區,該方法可以在不影響運行程序的前提下,對另一塊代碼區進行配置,滿足控制實時性的要求,但其缺點在于修改程序后可能要求對原有變量的內存空間進行初始化,若該階段執行后發生異常,系統無法退回到原算法程序運行的狀態,存在算法擾動的風險,第一種方式也存在同樣的問題。
發明內容
為克服現有技術存在的上述問題,本發明提供一種用于在線修改控制系統邏輯算法程序的方法,實現對控制過程無擾動的情況下更新算法程序的目的,并且更新過程的任何階段出現異常,都可以繼續執行原算法程序,不會對控制系統造成不必要的擾動。
本發明所述控制系統包含組態軟件和控制器兩大部分,組態軟件負責生成修改后的算法程序及生成需要在線修改的數據;控制器使用組態軟件生成的數據,進行算法程序的在線修改;
所述控制器包括一套微處理器和存儲器,存儲器進一步包括:
兩份代碼區,保存算法程序數據,其中只有一份代碼區中的算法程序被執行;
兩份數據區,保存分別對應兩份代碼區中算法程序使用的變量信息,每個變量對應惟一的一片內存空間;
兩份輔助區,保存對應兩份代碼區中算法程序的數據區排布信息、數據區配置命令;
當前運行的算法程序對應的代碼區、數據區、輔助區為活動區,另一份為備用區;
采用兩份代碼區和數據區,在線修改過程中出現任何異常,都可以繼續使用活動區的數據來完成工程控制,不會對修改前算法的執行造成任何影響。
所述控制系統以任務調度的方式對算法程序進行執行,控制系統支持多任務調度方式;
所述算法程序由若干子程序組成,不同子程序完成不同的控制功能,不同的子程序可以被不同的任務調度;
所述數據區中每一個變量對應惟一的一片內存空間,根據算法中數據的類型分配不同大小的內存空間,不同變量的內存空間不會重疊;
所述數據區排布信息進一步指,算法程序中使用的所有變量數據,其數據內容包括變量名稱、變量在數據區的相對偏移地址、變量的大小信息。
本發明具體采用以下技術方案:
一種用于在線修改控制系統邏輯算法程序的方法,包括以下步驟:
(1)數據生成階段:組態軟件從控制器讀取當前運行算法程序的信息,生成待修改的算法程序在修改后的算法程序數據、新的數據區排布信息、備用數據區的配置命令;
(2)數據下載階段:組態軟件將生成的所述修改后的算法程序數據下載到控制系統中,控制器驗證下載數據正確后,將修改后的算法程序數據保存到備用代碼區,將新的數據區排布信息、備用數據區配置命令保存到備用輔助區;
(3)程序配置階段:控制器在周期執行算法程序的空閑時間內,根據備用數據區配置命令完成備用數據區的狀態配置,使備用數據區保持在運行的算法程序中數據的運算狀態;
(4)程序切換階段:控制器配置完成后,在所有任務周期執行結束后,停止舊的算法程序,切換至備用代碼區,繼續執行備用代碼區中新的算法程序。
本發明還可以進一步優選以下技術方案:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京四方繼保自動化股份有限公司,未經北京四方繼保自動化股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310481575.5/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:信息處理裝置
- 下一篇:一種電源系統喪失及后果的分析方法





