способ синхронизации двух управляющих устройств и автоматическая система с резервированием
Классы МПК: | G05B19/05 программируемые логические контроллеры, например моделирование логических межсоединений сигналов в соответствии с многозвенными диаграммами или номограммами |
Автор(ы): | ЙОРДАН Карстен (DE), УНКЕЛЬБАХ Михаэль (DE) |
Патентообладатель(и): | СИМЕНС АКЦИЕНГЕЗЕЛЛЬШАФТ (DE) |
Приоритеты: |
подача заявки:
2007-09-27 публикация патента:
10.09.2012 |
Настоящее изобретение относится к способу синхронизации первого управляющего устройства (2) и второго управляющего устройства (5) автоматической системы (1) с резервированием для управления техническим процессом. Технический результат - надежная и быстрая синхронизация двух управляющих модулей. Первое управляющее устройство (2) и второе управляющее устройство (5) соединены друг с другом. Каждое содержит несколько функциональных модулей (FB1, FB2, FB3, FB1 , FB2 , FB3 ), с помощью которых реализуются их функции управления техническим процессом. Первое управляющее устройство (2) циклически выполняет свои функциональные модули (FB1, FB2, FB3) для управления техническим процессом, благодаря чему генерируются внутренние состояния функциональных модулей (FB1, FB2, FB3). Во время управления техническим процессом посредством первого управляющего устройства (2) данные о внутренних состояниях его функциональных элементов передаются с распределением в течение нескольких циклов на второе управляющее устройство (5). Второе управляющее устройство (5) присваивает переданные данные о внутренних состояниях своим функциональным модулям (FB1 , FB2 , FB3 ). Кроме того, настоящее изобретение относится к автоматической системе (1) с резервированием. 2 н. и 23. з.п. ф-лы, 3 ил.
Формула изобретения
1. Способ синхронизации первого управляющего устройства (2) и второго управляющего устройства (5) автоматической системы (1) с резервированием для управления техническим процессом, при этом первое управляющее устройство (2) и второе управляющее устройство (5) представляют операционные среды, в котором первое управляющее устройство (2) и второе управляющее устройство (5) соединены друг с другом, и каждое содержит несколько функциональных модулей (FB1, FB2, FB3, FB1 , FB2 , FB3 ), с помощью которых реализуются функции управления техническим процессом, и первое управляющее устройство (2) циклически выполняет свои функциональные модули (FB1, FB2, FB3) для управления техническим процессом, благодаря чему генерируются внутренние состояния функциональных модулей (FB1, FB2, FB3), во время управления техническим процессом первым управляющим устройством (2) данные о внутренних состояниях его функциональных модулей (FB1, FB2, FB3) передаются распределенно по циклам на второе управляющее устройство (5), и второе управляющее устройство (5) присваивает переданные данные о внутренних состояниях своим функциональным модулям (FB1 , FB2 , FB3 ).
2. Способ по п.1, отличающийся тем, что данные о внутренних состояниях функциональных модулей (FB1, FB2, FB3) первого управляющего устройства (2) перед началом выполнения функциональных модулей (FB1, FB2, FB3, FB1 , FB2 , FB3 ) передаются за несколько циклов на второе управляющее устройство (5).
3. Способ по одному из пп.1 и 2, отличающийся тем, что данные о внутренних состояниях функциональных модулей (FB1, FB2, FB3) первого управляющего устройства (2) вместе с входными данными от полевых приборов и/или дополнительных управляющих устройств передаются на второе управляющее устройство (5).
4. Способ по одному из пп.1 и 2, отличающийся тем, что второе управляющее устройство (5) присваивает переданные данные о внутренних состояниях разделенно в течение нескольких циклов своим функциональным модулям (FB1 , FB2 , FB3 ).
5. Способ по п.3, отличающийся тем, что второе управляющее устройство (5) присваивает переданные данные о внутренних состояниях разделенно в течение нескольких циклов своим функциональным модулям (FB1 , FB2 , FB3 ).
6. Способ по одному из пп.1, 2, 5, отличающийся тем, что данные о внутренних состояниях функциональных модулей (FB1, FB2, FB3) передаются помодульно.
7. Способ по п.3, отличающийся тем, что данные о внутренних состояниях функциональных модулей (FB1, FB2, FB3) передаются помодульно.
8. Способ по п.4, отличающийся тем, что данные о внутренних состояниях функциональных модулей (FB1, FB2, FB3) передаются помодульно.
9. Способ по одному из пп.1, 2, 5, 7, 8, отличающийся тем, что несколько функциональных модулей (FB1, FB2, FB3, FB1 , FB2 , FB3 ) выполняются в течение нескольких циклов в заданной очередности, и данные о внутренних состояниях функциональных модулей (FB1, FB2, FB3) передаются в этой заданной очередности.
10. Способ по п.3, отличающийся тем, что несколько функциональных модулей (FB1, FB2, FB3, FB1 , FB2 , FB3 ) выполняются в течение нескольких циклов в заданной очередности, и данные о внутренних состояниях функциональных модулей (FB1, FB2, FB3) передаются в этой заданной очередности.
11. Способ по п.4, отличающийся тем, что несколько функциональных модулей (FB1, FB2, FB3, FB1 , FB2 , FB3 ) выполняются в течение нескольких циклов в заданной очередности, и данные о внутренних состояниях функциональных модулей (FB1, FB2, FB3) передаются в этой заданной очередности.
12. Способ по п.6, отличающийся тем, что несколько функциональных модулей (FB1, FB2, FB3, FB1 , FB2 , FB3 ) выполняются в течение нескольких циклов в заданной очередности, и данные о внутренних состояниях функциональных модулей (FB1, FB2, FB3) передаются в этой заданной очередности.
13. Способ по одному из пп.1, 2, 5, 7, 8, 10-12, отличающийся тем, что дополнительно передается входное значение входа функциональных модулей (FB1, FB2, FB3) первого управляющего устройства (2) на второе управляющее устройство (5), и второе управляющее устройство (5) присваивает это переданное входное значение входу одного из своих функциональных модулей (FB1 , FB2 , FB3 ).
14. Способ по п.3, отличающийся тем, что дополнительно передается входное значение входа функциональных модулей (FB1 , FB2, FB3) первого управляющего устройства (2) на второе управляющее устройство (5), и второе управляющее устройство (5) присваивает это переданное входное значение входу одного из своих функциональных модулей (FB1 , FB2 , FB3 ).
15. Способ по п.4, отличающийся тем, что дополнительно передается входное значение входа функциональных модулей (FB1 FB2, FB3) первого управляющего устройства (2) на второе управляющее устройство (5), и второе управляющее устройство (5) присваивает это переданное входное значение входу одного из своих функциональных модулей (FB1 , FB2 , FB3 ).
16. Способ по п.6, отличающийся тем, что дополнительно передается входное значение входа функциональных модулей (FB1 FB2, FB3) первого управляющего устройства (2) на второе управляющее устройство (5), и второе управляющее устройство (5) присваивает это переданное входное значение входу одного из своих функциональных модулей (FB1 , FB2 , FB3 ).
17. Способ по п.9, отличающийся тем, что дополнительно передается входное значение входа функциональных модулей (FB1 FB2, FB3) первого управляющего устройства (2) на второе управляющее устройство (5), и второе управляющее устройство (5) присваивает это переданное входное значение входу одного из своих функциональных модулей (FB1 , FB2 , FB3 ).
18. Способ по одному из пп.10-12, 14-17, отличающийся тем, что переданное входное значение присваивается вторым управляющим устройством (5) тому входу одного из своих функциональных модулей (FB1 , FB2 , FB3 ), который соединен с выходом другого функционального модуля (FB1 , FB2 , FB3 ), который в заданной очередности расположен после одного из его функциональных модулей (FB1 , FB2 , FB3 ), при этом одному из его функциональных модулей (FB1 , FB2 , FB3 ) уже были присвоены данные о внутренних состояниях, а другому функциональному модулю (FB1 , FB2 , FB3 ) не были присвоены никакие данные о внутренних состояниях.
19. Способ по п.9, отличающийся тем, что переданное входное значение присваивается вторым управляющим устройством (5) тому входу одного из своих функциональных модулей (FB1 , FB2 , FB3 ), который соединен с выходом другого функционального модуля (FB1 , FB2 , FB3 ), который в заданной очередности расположен после одного из его функциональных модулей (FB1 , FB2 , FB3 ), при этом одному из его функциональных модулей (FB1 , FB2 , FB3 ) уже были присвоены данные о внутренних состояниях, а другому функциональному модулю (FB1 , FB2 , FB3 ) не были присвоены никакие данные о внутренних состояниях.
20. Способ по п.13, отличающийся тем, что переданное входное значение присваивается вторым управляющим устройством (5) тому входу одного из своих функциональных модулей (FB1 , FB2 , FB3 ), который соединен с выходом другого функционального модуля (FB1 , FB2 , FB3 ), который в заданной очередности расположен после одного из его функциональных модулей (FB1 , FB2 , FB3 ), при этом одному из его функциональных модулей (FB1 , FB2 , FB3 ) уже были присвоены данные о внутренних состояниях, а другому функциональному модулю (FB1 , FB2 , FB3 ) не были присвоены никакие данные о внутренних состояниях.
21. Способ по одному из пп.1, 2, 5, 7, 8, 10-12, 14-17, 19, 20, отличающийся тем, что соответствующим функциональным модулям (FB1, FB2, FB3, FB1 , FB2 , FB3 ) назначены собственные области (4а-4n, 7а-7n) памяти, и присвоенные каждому функциональному модулю (FB1, FB2, FB3, FB1 , FB2 , FB3 ) данные о внутренних состояниях сохраняются в соответственных назначенных каждому функциональному модулю (FB1, FB2, FB3, FB1 , FB2 , FB3 ) областях (4а-4n, 7а-7n) памяти.
22. Способ по п.3, отличающийся тем, что соответствующим функциональным модулям (FB1, FB2, FB3, FB1 , FB2 , FB3 ) назначены собственные области (4а-4n, 7а-7n) памяти, и присвоенные каждому функциональному модулю (FB1, FB2, FB3, FB1 , FB2 , FB3 ) данные о внутренних состояниях сохраняются в соответственных назначенных каждому функциональному модулю (FB1, FB2, FB3, FB1 , FB2 , FB3 ) областях (4а-4n, 7а-7n) памяти.
23. Способ по п.4, отличающийся тем, что соответствующим функциональным модулям (FB1, FB2, FB3, FB1 , FB2 , FB3 ) назначены собственные области (4а-4n, 7а-7n) памяти, и присвоенные каждому функциональному модулю (FB1, FB2, FB3, FB1 , FB2 , FB3 ) данные о внутренних состояниях сохраняются в соответственных назначенных каждому функциональному модулю (FB1, FB2, FB3, FB1 , FB2 , FB3 ) областях (4а-4n, 7а-7n) памяти.
24. Способ по п.6, отличающийся тем, что соответствующим функциональным модулям (FB1, FB2, FB3, FB1 , FB2 , FB3 ) назначены собственные области (4а-4n, 7а-7n) памяти, и присвоенные каждому функциональному модулю (FB1, FB2, FB3, FB1 , FB2 , FB3 ) данные о внутренних состояниях сохраняются в соответственных назначенных каждому функциональному модулю (FB1, FB2, FB3, FB1 , FB2 , FB3 ) областях (4а-4n, 7а-7n) памяти.
25. Автоматическая система (1) с резервированием для управления техническим процессом, имеющая первое управляющее устройство (2) и второе управляющее устройство (5), представляющие операционные среды, при этом первое управляющее устройство (2) и второе управляющее устройство (5), соединенные друг с другом, и каждое содержит несколько функциональных модулей (FB1, FB2, FB3, FB1 , FB2 , FB3 ), с помощью которых реализуются его функции по управлению техническим процессом, при этом первое управляющее устройство (2) и второе управляющее устройство (5) в целях их синхронизации выполнены так, что
- первое управляющее устройство (2) циклически выполняет свои функциональные модули (FB1, FB2, FB3) для управления техническим процессом, благодаря чему функциональные модули (FB1, FB2, FB3) генерируют внутренние состояния,
- первое управляющее устройство (2) во время управления техническим процессом передает данные о внутренних состояниях своих функциональных модулей (FB1, FB2, FB3) распределенно в течение нескольких циклов на второе управляющее устройство (5), и
- второе управляющее устройство (5) присваивает переданные данные о внутренних состояниях своим функциональным модулям (FB1 , FB2 , FB3 ).
Описание изобретения к патенту
Настоящее изобретение относится к способу синхронизации первого управляющего устройства и второго управляющего устройства автоматической системы с резервированием для управления техническим процессом, при этом первое управляющее устройство и второе управляющее устройство взаимосвязаны и каждое из них содержит несколько функциональных модулей, с помощью которых реализуются функции управления техническим процессом. Кроме того, настоящее изобретение относится к автоматической системе с резервированием.
Такая автоматическая система с резервированием для управления техническим процессом применяется в области автоматизированной техники, где к устройствам автоматизации предъявляются повышенные требования к доступности и безаварийности. Обычно это такие области, где простой установки, с помощью которой осуществляется технический процесс, может вызывать очень высокие издержки или оказаться опасным для окружающей среды или для задействованных лиц. Такое устройство с резервированием характеризуется высоким коэффициентом готовности. Оно применяется, например, в химической промышленности или при эксплуатации электростанций. Автоматическая система содержит два работающих с распределением управляющих устройства, с помощью которых централизованные функции управления технических процессом спроектированы с резервированием. В нормальном состоянии оба управляющих устройства обычно выполняют одинаковые программы управления процесса.
Эти программы содержат функциональные модули, с помощью которых реализуются функции управления техническим процессом.
Такие функциональные модули представляют собой, например, логические функции, например функцию «И», арифметические функции, функцию счета, функцию контроля, с помощью которой следят за превышением температуры и т.д. Функциональные модули в программе соединены по цепочке или скоммутированы.
Программы и их функциональные модули обрабатываются циклически или синхронно. При этом синхронно обозначает, что при выполнении функциональных модулей возникающие внутренние состояния функциональных модулей в обоих управляющих устройствах одинаковы. В случае функции счета со счетчиком в качестве функционального элемента ее внутреннее состояние является, например, показанием счетчика. Активно всегда только одно из двух управляющих устройств, т.е. только активное управляющее устройство действительно активно управляет техническим процессом посредством выходных управляющих данных. Другое управляющее устройство находится в пассивном состоянии. Чтобы постоянно информировать пассивное управляющее устройство о состоянии активного управляющего устройства, перед началом каждого цикла входные данные подаются также и на пассивное управляющее устройство. Эти входные данные обычно поступают от полевых устройств или дополнительных и при необходимости избыточных управляющих устройств. Такие полевые устройства или полевые приборы обычно представляют собой внешние модули или приборы, например датчики или исполнительные элементы. В случае сбоя, при котором возникает ошибка в управляющем устройстве, или в случае технического обслуживания управляющего устройства происходит переключение с затронутого управляющего устройства на бесперебойно работающее управляющее устройство так, что оно продолжает управлять техническим процессом.
После устранения ошибки или после завершения работ по техническому обслуживанию нужно привести отключенное управляющее устройство к текущему состоянию управляющего устройства, которое в текущий момент времени управляет техническим процессом. Для этого необходимо, чтобы все внутренние состояния функциональных модулей управляющего устройства, управляющего в текущий момент процессом, направляются также на функциональные модули отключенного управляющего устройства. Для этого обычно в начале определенного цикла управление прерывается. В течение этого прерывания все данные о внутренних состояниях сразу передаются от управляющего устройства, которое управляет процессом прерывания, на отключенное управляющее устройство. Так как передача данных о внутренних состояниях требует определенного времени, обработка программы для управления техническим процессом с помощью обоих управляющих устройств в течение этого времени, к сожалению, невозможна. Чтобы сделать этот промежуток времени как можно меньшим, данные о внутренних состояниях функциональных модулей сначала можно упаковать, т.е. расположить друг за другом, записать в специальную область памяти, а затем запакованные данные можно скопировать на отключенное управляющее устройство.
Отключенное управляющее устройство должно знать начальные адреса данных о внутренних состояниях, соответствующих отдельным функциональным элементам. Только таким образом оно может найти соответствие между переданными данными о внутренних состояниях и его функциональными модулями. При этом могут возникать небольшие ошибки присвоения данных о внутренних состояниях к функциональным элементам.
Задачей настоящего изобретения является сделать возможной надежную синхронизацию двух управляющих элементов автоматической системы технически простым способом.
Эта задача решается для способа посредством изобретения по п.1 и для устройства посредством изобретения по п.10 формулы. Преимущественные варианты исполнения изобретения описаны в зависимых пунктах формулы изобретения.
В способе согласно изобретению первое управляющее устройство циклически исполняет свои функциональные модули для управления техническим процессом, посредством чего генерируются внутренние состояния функциональных модулей. Во время управления техническим процессом посредством первого управляющего устройства данные о внутренних состояниях его функциональных модулей передаются с распределением в течение нескольких циклов на второе управляющее устройство. Кроме того, второе управляющее устройство присваивает переданные данные о внутренних состояниях своим функциональным элементам.
Автоматическая система с резервированием для управления техническим процессом согласно изобретению включает первое управляющее устройство и второе управляющее устройство, соединенные друг с другом и содержащие несколько функциональных модулей, с помощью которых реализуются функции управления техническим процессом. Первое управляющее устройство и второе управляющее устройство в целях синхронизации выполнены таким образом, что первое управляющее устройство циклически выполняет свои функциональные модули для управления техническим процессом, посредством чего функциональные модули генерируют внутренние состояния. Кроме того, во время управления техническим процессом первое управляющее устройство передает данные о внутренних состояниях его функциональных модулей с распределением в течение нескольких циклов на второе управляющее устройство.
Второе управляющее устройство присваивает переданные данные о внутренних состояниях своим функциональным элементам.
В соответствии с настоящим изобретением оба управляющих устройства синхронизируются в течение нескольких циклов. Данные о внутренних состояниях подаются на второе управляющее устройство не одновременно, а в течение нескольких этапов передачи. Таким образом, можно передавать достаточно малые количества данных о внутренних состояниях в различных циклах от первого на второе управляющее устройство. Первое управляющее устройство может передавать эти малые количества данных в циклах наряду с управлением техническим процессом, т.е. для циклического выполнения функциональных модулей. При этом не возникает необходимости в прерывании управления процессом управляющим устройством. Данные о внутренних состояниях могут последовательно передаваться на второе управляющее устройство.
Соответствующее количество данных, передаваемых наряду с управлением процессом в одном цикле от первого на второе управляющее устройство, может преимущественно зависеть от того, сколько мощности первого управляющего устройства требуется для управления процессом или других задач, имеющих более высокий приоритет, чем синхронизация двух управляющих устройств. Управляющие устройства представляют собой, в частности, системы для выполнения функциональных модулей для реализации проектируемых и свободно программируемых задач управления и регулирования. В частности, функциональные модули первого и второго управляющего устройства выполнены одинаково. Внутренние состояния функциональных модулей являются состояниями или значениями, которые принимают функциональные модули. Внутренние состояния могут содержать, в частности, данные об инстанциях, которые сохраняют старые значения из предыдущих циклов, суммируемые или интегрируемые в течение нескольких циклов. Если внутренние состояния одинаково выполненных функциональных модулей обоих управляющих устройств одинаковы, то оба управляющих устройства работают синхронно.
В преимущественном варианте исполнения данные о внутренних состояниях функциональных модулей первого управляющего устройства перед началом выполнения функциональных модулей в нескольких циклах передаются на второе управляющее устройство. Это обеспечивает, в частности, равномерную загрузку обоих управляющих устройств. Второе управляющее устройство может таким образом назначать эти переданные данные соответствующим функциональным модулям. В начале следующего цикла функциональные модули могут запускаться с присвоенными текущими внутренними состояниями.
В другом, особенно преимущественном варианте исполнения данные о внутренних состояниях функциональных модулей первого управляющего устройства вместе с входными данными от полевых устройств и/или других управляющих устройств передаются на второе управляющее устройство. Это позволяет выполнять особенно эффективную передачи информации и данных на второе управляющее устройство.
Управление передачей необходимой информации и данных может просто реализовано.
Преимущественно второе управляющее устройство присваивает переданные данные о внутренних состояниях своим функциональным модулям разделенно в течение нескольких циклов. Это обеспечивает, в частности, равномерную загрузку второго управляющего устройства.
Особенно предпочтительно, когда данные о внутренних состояниях функциональных модулей передаются по отдельным функциональным модулям. Это обеспечивает оптимальную организацию и управление процессом передачи. Кроме того, это позволяет второму управляющему устройству присваивать переданные данные на его функциональные модули по функциональным модулям, благодаря чему процесс присвоения может быть просто реализован. Количество функциональных модулей, для которых передаются данные об их внутренних состояниях, при этом не играет роли. Однако более предпочтительно удостовериться в том, что не допускается негативное воздействие синхронизации на циклическое выполнение функциональных модулей.
Также предпочтительно выполняются несколько функциональных модулей в течение нескольких циклов заданной очередности процесса, и данные о внутренних состояниях функциональных модулей передаются в этой заданной очередности. Это позволяет особенно эффективно управлять процессом передачи.
Особенно предпочтительно, когда дополнительно входное значение со входа функциональных модулей первого управляющего устройства передается на второе управляющее устройство, и второе управляющее устройство присваивает это переданное входное значение на вход одного из его функциональных модулей.
Это обеспечивает особенно надежную и быструю синхронизацию обоих управляющих устройств.
Особенно предпочтительно, когда переданное входное значение от второго управляющего устройства назначается на тот вход одного из его функциональных модулей, который связан с выходом одного из его остальных функциональных модулей, который следует за одним из его функциональных модулей в заданной очередности. При этом одному из его функциональных модулей были назначены уже переданные данные о внутренних состояниях и другим функциональным модулям не были назначены никакие данные о внутренних состояниях. Благодаря этому можно обеспечить надежную синхронизацию особенно в случае функциональных модулей с обратной связью. Один раз синхронизированный функциональный модуль второго управляющего устройства, которому были присвоены обновленные внутренние состояния, остается синхронизированным с соответствующим функциональным модулем первого управляющего устройства и в том случае, если подчиненный функциональный модуль еще не синхронизирован.
Предпочтительно функциональным модулям назначаются собственные области памяти. Данные о внутренних состояниях, назначенные соответствующим функциональным модулям, сохраняются в приписанной соответствующему функциональному модулю области памяти. Благодаря этому можно предотвратить ошибочную повторную запись данных другими функциональными модулями. Также благодаря этому достигается свободное и надежное программирование функциональных модулей и программных оболочек. В частности, собственные области памяти защищены операционной системой управляющих устройств от превышения счетчика.
Изобретение и его преимущества далее будут детально раскрыты со ссылками на примеры выполнения и сопровождающие чертежи, где:
фиг.1 иллюстрирует схему автоматической системы с резервированием в соответствии с изобретением,
фиг.2 иллюстрирует схему первого и второго управляющего устройств автоматической системы с резервированием без блоков обратной связи,
фиг.3 иллюстрирует схему первого и второго управляющего устройств автоматической системы с резервированием с блоками обратной связи.
Одинаковые или функционально одинаковые элементы обозначены на фигурах одинаковыми ссылочными позициями, если не указано иное.
На фиг.1 изображена схема устройства 1 автоматической системы с резервированием для управления техническим процессом, выполняющимся на какой-нибудь установке. Такой установкой может быть, например, электростанция или химическая установка. Устройство 1 автоматизации содержит первое управляющее устройство 2, имеющее память 3. В памяти 3 записана управляющая программа, которая выполняется как циклическая программа для управления процессом первого управляющего устройства 2 и которая содержит функции, параметры и другие данные. Управляющая программа содержит множество функциональных модулей, с помощью которых могут выполняться элементы функций для управления процессом посредством автоматической системы.
Эти функциональные модули определенным образом взаимосвязаны между собой и обмениваются данными в соответствии с подключением. При выполнении программы управления с помощью управляющего устройства 2 функциональные модули принимают определенные внутренние состояния. Память 3 разделена на различные области 4а-4n памяти. Эти области 4а-4n памяти назначены для различных функциональных модулей программы управления. При этом каждому функциональному модулю назначена собственная область 4а-4n памяти, к которой он может обращаться. В областях 4а-4n памяти хранятся данные о внутренних состояниях функциональных модулей и другие данные.
Автоматическая система 1 также содержит второе управляющее устройство 5. Конструкция второго управляющего устройства 5 практически соответствует конструкции первого управляющего устройства 2. Второе управляющее устройство 5 содержит память 6, в которой хранится такая же программа управления, как и в памяти 3. Соответственно память 6 также имеет множество функциональных модулей. Функциональные модули второго управляющего устройства 5 соответствуют функциональным модулям первого управляющего устройства 2. Функциональные модули обоих управляющих устройств 2, 5 устроены одинаково. Память 6 разделена на различные области 7а-7n памяти. Эти области 7а-7n памяти предназначены для различных функциональных модулей программы управления, имеющейся на втором управляющем устройстве 5. При этом каждому функциональному модулю назначена собственная область 7а-7n памяти, к которой он может обращаться. В областях 7а-7n памяти хранятся данные о внутренних состояниях функциональных модулей и другие данные. Кроме обоих управляющих устройств 2, 5 устройство автоматизации может иметь дополнительные, при необходимости одинаково устроенные управляющие устройства.
Оба управляющих устройства 2, 5 представляют программную среду процесса, с помощью которой можно выполнять управление техническим процессом, как с обратной связью, так и без нее. Автоматическая система имеет резервирование за счет управляющих устройств 2, 5. Оба управляющих устройства 2, 5 в нормальном режиме одинаково выполнены и выполняют параллельно содержащиеся на них программы управления. При этом функциональные модули выполняются циклически. В нормальном режиме функциональные модули обоих управляющих устройств 2, 5 в каждый момент времени принимают одинаковые внутренние значения. Оба управляющих устройства 2, 5 работают синхронно и таким образом в состоянии управлять процессом. Автоматическая система 1 управляет обоими управляющими устройствами 2, 5 так, что в каждый момент времени активно одно их них. Активно означает в данном случае, что активное управляющее устройство действительно управляет процессом, т.е. что генерируемые им выходные данные подаются на управляемую установку.
Другое управляющее устройство в этом случае переключено в пассивное состояние. Т.е. пассивное управляющее устройство, хотя и выдает программу управления, генерируемые при этом выходные данные не передаются на установку. В примере варианта исполнения в соответствии с фиг.1 первое управляющее устройство 2 и второе управляющее устройство соединено с переключателем 8, с помощью которого либо выход первого управляющего устройства 2, либо выход второго управляющего устройства 5 может быть соединен с выходом 9 автоматической системы 1. С помощью выхода 9 автоматическая система 1 соединена с управляемой технической установкой.
Первое управляющее устройство 2 и второе управляющее устройство 5 соединены друг с другом с помощью коммуникационной линии 10. С помощью коммуникационной линии 10 оба управляющих устройства 2, 5 могут обмениваться друг с другом данными. В частности, оба управляющих устройства 2, 5 могут передавать по коммуникационной линии 10 данные о внутренних состояниях соответствующих функциональных модулей на другое управляющее устройство 2, 5. Благодаря этому устройство 1 автоматизации может поддерживать оба свои управляющие устройства 2, 5 в синхронном состоянии.
Коммуникационная линия 10 используется также для того, чтобы синхронизировать оба управляющих устройства 2, 5, если одно из двух управляющих устройств 2, 5 должно быть отключено, например, в случае сбоя или необходимости технического обслуживания и т.д. В таком случае программу управления выполняет только одно из двух управляющих устройств 2, 5. В этом случае внутренние состояния функциональных модулей другого отключенного управляющего устройства после устранения сбоя или завершения технического обслуживания не совпадают с внутренними состояниями функциональных модулей работающего в нормальном режиме управляющего устройства. Данные о внутренних состояниях могут быть переданы на другое управляющее устройство через коммуникационную линию 10 для повторной синхронизации обоих управляющих устройств, чтобы передать внутренние состояния работающего в нормальном режиме управляющего устройства на отключенное управляющее устройство.
Оно сохраняет переданные данные в областях памяти своей памяти. Если одно из двух управляющих устройств 2, 5 отключено, текущие внутренние состояния не отключенного работающего в нормальном режиме управляющего устройства в соответствии с изобретением поэтапно поделены на несколько циклов выполнения функциональных модулей и передаются через коммуникационную линию 10 на отключенное управляющее устройство.
Автоматическая система 1 имеет вход 11, посредством которого она соединяется с полевыми приборами, например датчиками и исполнительными элементами и другими устройствами автоматизации и регулирования. Вход 11 автоматической системы 1 принимает от этих приборов и устройств сигналы и данные, отправляемые на оба управляющих устройства 2, 5. Это происходит соответственно перед началом циклов выполнения функциональных модулей.
На фиг.2 показана схема первого управляющего устройства 2 и второго управляющего устройства 5 автоматической системы с резервированием. Здесь упрощенно первое управляющее устройство 2 имеет три функциональных модуля FB1, FB2, FB3, скоммутированные друг с другом. Кроме того, первое управляющее устройство 2 имеет вход 12, на которые оно принимает входные данные от полевых приборов и/или других устройств управления или автоматизации. Вход 13 первого управляющего устройства 2 для вывода данных соединен с полевыми устройствами и/или другими устройствами управления или автоматизации. Также он соединен с переключателем 8. Вход 12 соединен с входом функционального модуля FB1 и с входом функционального модуля FB3. Выход функционального модуля FB1 соединен с выходом 13, а другой выход функционального модуля FB1 с входом функционального модуля FB2. Выход функционального модуля FB2 соединен с другим входом функционального модуля FB3. Функциональные модули FB1, FB2, FB3 здесь скоммутированы друг с другом в ряд без обратной связи.
Обратная связь означает в этом случае, что выход следующего по очередности процесса функциональных модулей FB1, FB2, FB3 функционального модуля соединен со входом предыдущего функционального модуля.
Второе управляющее устройство 5 выполнено соответственно первому управляющему устройству 2. Таким образом, второе управляющее устройство 5 имеет три функциональных модуля FB1 , FB2 , FB3 , скоммутированные друг с другом. Второе управляющее устройство 5 имеет вход 14, на которые оно принимает входные данные от полевых приборов и/или других устройств управления или автоматизации. Эти входные данные могут передаваться с первого управляющего устройства 2 на второе управляющее устройство 5 также по коммуникационной линии 10. Выход 15 второго управляющего устройства 5 для вывода данных соединен с полевыми устройствами и/или другими устройствами управления или автоматизации. Также он соединен с переключателем 8. Вход 14 соединен с входом функционального модуля FB1 и с входом функционального модуля FB3 . Выход функционального модуля FB1 соединен с выходом 15, а другой выход функционального модуля FB1 с входом функционального модуля FB2 . Выход функционального модуля FB2' соединен с другим входом функционального модуля FB3 . Функциональные модули FB1 , FB2 , FB3 здесь скоммутированы друг с другом в ряд без обратной связи.
Первое управляющее устройство 2 здесь является активным управляющим устройством, которое управляет техническим процессом. Второе управляющее устройство 5 включено пассивно и, например, было отключено на несколько часов из-за сбоя. В нормальном режиме эксплуатации первого управляющего устройства 2 для управления процессом последовательно и циклически выполняются функциональные модули FB1, FB2, FB3. При этом функциональные модули FB1, FB2, FB3 принимают внутренние состояния, изменяющиеся в каждом выполненном цикле.
Из-за того, что второе управляющее устройство 5 было отключено, и его функциональные модули FB1 , FB2 , FB3 не выполнялись, их внутренние состояния не обновлены. С помощью пошагового обновления внутренних состояний внутренние состояния функциональных модулей FB1 , FB2 , FB3 синхронизируются с состояниями функциональных модулей FB1, FB2, FB3. При этом процесс выполняется в очередности циклической обработки или выполнения.
В представленном примере перед первым циклом входные данные от полевых приборов и/или дополнительных устройств управления или автоматизации передаются от первого управляющего устройства 2 по коммуникационной линии 10 на второе управляющее устройство 5. Дополнительно перед первым циклом данные о внутреннем состоянии функционального модуля FB1 передаются с первого управляющего устройства 2 по коммуникационной линии 10 на второе управляющее устройство 5. Затем эти данные о внутреннем состоянии присваиваются функциональному модулю FB1 второго управляющего устройства 5.
Затем на обоих управляющих устройствах 2, 5 запускается первый цикл. При этом выполняются функциональные модули FB1 и FB1 . Так как внутренние состояния обоих функциональных модулей FB1 и FB1 были предварительно синхронизированы, и на оба функциональных модуля FB1 и FB1 были поданы одни и те же входные данные, выходы обоих функциональных модулей FB1 и FB1 или их выходные данные после первого цикла одинаковы. Так как также в последующих циклах входные данные для обоих функциональных модулей FB1 и FB1 по-прежнему одинаковы, они не становятся асинхронными и в последующих циклах. В дальнейшем при одинаковых входных данных внутренние состояния обоих функциональных модулей FB1 и FB1 устанавливаются одинаковыми. В последующих циклах функциональные модули FB1 и FB1 не нужно больше синхронизировать.
Перед вторым циклом дополнительно к входным данным от первого управляющего устройства 2 по коммуникационной линии 10 на второе управляющее устройство 5 передаются также данные о внутреннем состоянии функционального модуля FB2. Эти переданные данные о внутреннем состоянии затем присваиваются функциональному модулю FB2' второго управляющего устройства 5. Затем на обоих управляющих устройствах 2, 5 запускается второй цикл. При этом выполняются функциональные модули FB2 и FB2 . Так как внутренние состояния обоих функциональных модулей FB2 и FB2 были предварительно синхронизированы, и на оба функциональных модуля FB2 и FB2 были поданы одни и те же входные данные, выходы обоих функциональных модулей FB2 и FB2 или их выходные данные после первого цикла одинаковы. Оба функциональных модуля FB2 и FB2 остаются синхронизированными и в последующих циклах. В дальнейшем при одинаковых входных данных обоих функциональных модулей 2, 5 и предварительно синхронизированных функциональных модулях FB1 и FB1 внутренние состояния обоих функциональных модулей FB2 и FB2' устанавливаются одинаковыми. В последующих циклах функциональные модули FB2 и FB2 не нужно больше синхронизировать.
То же применимо для синхронизации функциональных модулей FB3 и FB3 в последующем третьем цикле. При этом данные о внутреннем состоянии функционального модуля FB3 передаются от первого управляющего устройства 2 по коммуникационной линии 10 на второе управляющее устройство 5 и присваиваются этим устройством функциональному модулю FB3 . После третьего цикла все функциональные модули первого управляющего устройства 2 и второго управляющего устройства 5 и, таким образом, сами оба управляющих устройства синхронизируются. Таким образом, второе управляющее устройство 5 снова оказывается в состоянии принять на себя управление техническим процессом. Переданные от первого управляющего устройства 2 данные о внутренних состояниях его функциональных модулей FB1, FB2, FB3 сохраняются вторым управляющим устройством 5 в областях 7а-7n памяти, назначенных функциональным модулям FB1 , FB2 , FB3 .
На фиг.3 изображена схема первого управляющего устройства 2 и второго управляющего устройства 5 автоматической системы 1 с резервированием. Конструкции обоих управляющих устройств 2, 5 в значительной мере соответствуют конструкции управляющих устройств из примера, изображенного на фиг.2. Однако изменена коммутация функциональных модулей FB1 и FB2, а также FB1 и FB2 . В представленном примере имеются соединения обратной связи. Выход функционального модуля FB2 соединен с входом функционального модуля FB1, а выход функционального модуля FB2 соединен соответственно с входом функционального модуля FB1 . Таким образом, при последовательной синхронизации функциональных модулей обоих управляющих устройств 2, 5 встает проблема, что, несмотря на передачу и назначение данных о внутреннем состоянии функционального модуля FB1 функциональному модулю FB1 , входные данные, подаваемые на входы функциональных модулей FB1 и FB1 , из-за обратной связи и различных внутренних состояний обоих функциональных модулей FB2 и FB2 различны. Таким образом, после первого цикла оба функциональных модуля FB1 и FB1 снова асинхронны.
Чтобы этого избежать, дли синхронизации дополнительно к входным данным от полевых приборов и/или устройств управления или автоматизации, а также данных о внутреннем состоянии одного из функциональных модулей FB1, FB2, FB3 от первого управляющего устройства 2 по коммуникационной линии 10 на второе управляющее устройство 5 передаются также входные значения для тех входов функциональных модулей FB1 , FB2 , FB3 , которые по обратной связи соединены с выходами функционального модуля, стоящего далее по очередности процесса или выполнения. Таким образом, в примере, изображенном на фиг.3, передаются входные значения функционального модуля FB1, соединенного с выходом функционального модуля FB2. Эти переданные выходные значения присваиваются вторым управляющим устройством 5 входу функционального модуля FB1 , соединенного с выходом функционального модуля FB2 .
Таким образом, оба управляющих устройства 2, 5 могут быть синхронизированы простым способом и при наличии обратной связи в подключении функциональных модулей.
Также возможно передавать входные значение для функциональных модулей отключенного управляющего устройства 5 каждый раз и дополнительно к данным о внутренних состояниях активного управляющего устройства 2.
Предпочтительно в случае обратной связи синхронизацию можно оптимизировать, передавая только входные значения для тех входов уже синхронизированных функциональных модулей, которые по обратной связи соединены с функциональным модулем, который еще не был синхронизирован.
Описанное изобретение можно преимущественно также применять тогда, когда отдельные функциональные модули выполняются не в каждом цикле. Также и в этом случае очередность выполнения повторяется после определенного количества основных циклов.
Преимущественно могут синхронизироваться полностью объектно-ориентированные программируемые управляющие устройства или операционные среды с компонентами в виде функциональных модулей, в которых данные и внутренние состояния закрыты, и возможен доступ только через определенные интерфейсы. В одном из таких случаев функциональные модули имеют интерфейсы, с помощью которых управляющее устройство или операционная среда считывает синхронизирующие данные и передает и присваивает их на синхронизируемые функциональные модули.
Класс G05B19/05 программируемые логические контроллеры, например моделирование логических межсоединений сигналов в соответствии с многозвенными диаграммами или номограммами