ПРОГРАММИРУЕМЫЙ ЛОГИЧЕСКИЙ КОНТРОЛЛЕР И СПОСОБ ЕГО СОБЫТИЙНО-УПРАВЛЯЕМОГО ПРОГРАММИРОВАНИЯ

1. Способ событийно-управляемого программирования программируемого логического контроллера, содержащий:
регистрацию, по меньшей мере, одного подлежащего обнаружению события;
сохранение, по меньшей мере, одной программной секции обработки события, соответствующей, по меньшей мере, одному подлежащему обнаружению событию, соответственно;
обнаружение возникновения, по меньшей мере, одного подлежащего обнаружению события;
добавление обнаруженного события в очередь событий;
извлечение события из очереди событий;
исполнение программной секции обработки события, соответствующей извлеченному событию.
2. Способ по п. 1, в котором, по меньшей мере, одно подлежащее обнаружению событие включает в себя событие, выбираемое, по меньшей мере, из одного предопределенного события пользователем.
3. Способ по п. 2, в котором, по меньшей мере, одно подлежащее обнаружению событие включает в себя настраиваемое пользователем событие, вводимое пользователем.
4. Способ по п. 3, в котором настраиваемое пользователем событие включает в себя логическую комбинацию предопределенных событий.
5. Способ по п. 2, в котором предопределенное событие включает в себя событие ввода/вывода, событие передачи данных, диагностическое событие, событие системной ошибки, событие бездействия системы.
6. Способ по п. 1, в котором, по меньшей мере, одна программная секция обработки события включает в себя программную секцию обработки предопределенного события.
7. Способ по п. 6, в котором, по меньшей мере одна программная секция обработки события включает в себя вводимую пользователем программную секцию обработки настраиваемого пользователем события.
8. Способ по п. 7, дополнительно содержащий замену
соответствующей программной секции обработки предопределенного события программной секцией обработки настраиваемого пользователем события.
9. Способ по п. 1, в котором очередь событий включает в себя множество очередей событий с разными уровнями приоритета,
причем регистрация, по меньшей мере, одного подлежащего обнаружению события, дополнительно содержит: регистрацию уровня приоритета подлежащего обнаружению события,
добавление обнаруженного события в очередь событий, содержащее: добавление подлежащего обнаружению события в соответствующую очередь событий, на основании уровня приоритета события,
извлечение события из очереди событий содержит: преимущественное извлечение события из очереди событий с высоким уровнем приоритета.
10. Способ по п. 1, в котором добавление обнаруженного события в очередь событий содержит:
отбрасывание обнаруженного события, если это событие уже имеется в очереди событий.
11. Программируемый логический контроллер содержащий:
очередь событий для сохранения подлежащих обработке событий;
детектор событий для регистрации, по меньшей мере, одного подлежащего обнаружению события, обнаружения возникновения подлежащего обнаружению события, и добавления обнаруженного события в очередь событий;
программную память для сохранения, по меньшей мере, одной секции обработчика событий, соответствующей, по меньшей мере, одному подлежащему обнаружению событию, соответственно;
диспетчер событий для извлечения события из очереди событий; и
обработчик событий для исполнения программной секции обработки события, соответствующей извлеченному событию.
12. Программируемый логический контроллер по п. 11, в котором, по меньшей мере, одно подлежащее обнаружению событие включает в себя событие, выбираемое пользователем, по меньшей
мере, из одного предопределенного события.
13. Программируемый логический контроллер по п. 12, в котором, по меньшей мере, одно подлежащее обнаружению событие включает в себя настраиваемое пользователем событие, вводимое пользователем.
14. Программируемый логический контроллер по п. 13, в котором настраиваемое пользователем событие включает в себя логическую комбинацию предопределенных событий.
15. Программируемый логический контроллер по п. 12, в котором предопределенное событие включает в себя событие ввода/вывода, событие передачи данных, диагностическое событие, событие системной ошибки, событие бездействия системы.
16. Программируемый логический контроллер по п. 11, в котором, по меньшей мере, одна программная секция обработки события включает в себя программную секцию обработки предопределенного события.
17. Программируемый логический контроллер по п. 16, в котором, по меньшей мере, одна программная секция обработки события включает в себя вводимую пользователем программную секцию обработки настраиваемого пользователем события.
18. Программируемый логический контроллер по п. 17, в котором соответствующая программная секция обработки предопределенного события заменяется программной секцией обработки настраиваемого пользователем события в программной памяти.
19. Программируемый логический контроллер по п. 11, в котором очередь событий включает в себя множество очередей событий с разным уровнем приоритета,
детектор событий регистрирует уровень приоритета подлежащего обнаружению события, и добавляет обнаруженное событие в соответствующую очередь событий, на основании уровня приоритета события,
диспетчер событий преимущественно извлекает событие из очереди событий с высоким уровнем приоритета.
20. Программируемый логический контроллер по п. 11, в котором детектор событий отбрасывает обнаруженное событие, если это событие уже имеется в этой очереди событий.