У меня возникли вопросы по часам реального времени и механизму watchdog’а.
Подскажите пожалуйста:
Я правильно понимаю, что аппаратный watchdog завязан на RTC?
Какая точность у RTC?
На какое минимальное и максимальное время можно настроить аппаратный watchdog?
С каким отклонением от настройки гарантированно срабатывание аппаратного watchdog, и как?
Как я могу использовать аппаратный watchdog для контроля над моим пользовательским процессом в системе?
Сколько разных watchdog’ов одновременно может быть в системе?
Я ищу альтернативу промышленным PLC.
Мне нужно понимать:
Сколько критичных процессов я могу контролировать одновременно.
Сколько групп таких процессов может контролироваться одновременно.
Каковы размеры временного окна для того, чтобы процесс отработал.
Какова погрешность этого временного окна.
В каких пределах я могу изменять это временное окно.
Могу ли я сбросить только не успевший процесс/ группу процессов, или я обязательно должен перезапустить всю систему?
Смотрите, наш контроллер не на системе реального времени. Вы не сможете выполнять процессы с точностью в 10 мс. То есть если вам нужно управлять станком, который идеально ровно что-то где-то обрезает, то это задача не для нашего контроллера.
Плюс к этому мы не знакомы с вашей терминологией.
Поэтому вы можете более подробно описать задачу целиком, и что в ней должен делать контроллер, и с какой точностью, а мы скажем, стоит пытаться, или нет.
Конкретной задачи сейчас нет.
Я ищу платформу для автоматизации процессов фасовки и упаковки в пищевой промышленности.
Время для цикла исполнения программы около 32 +/- 8 мс. Но важнее не время, а стабильность этого цикла от раза к разу.
Обычно это опрос входов, чтение буферов обмена, приведение типов данных, присвоение текущих значений, логические операции не сложнее if else if, выставление выходов.
Экземпляры класса в процессе исполнения не создаются, ООП и структуры используется больше для уменьшения кодовой базы и повышения читаемости.
Классические PLC не устраивают своими средствами разработки, поддержки и развития проекта.
Стандартное решение в таком случае: критичный цикл работы программы нужно вынести на отдельный ПЛК с настоящим реальным временем. Параметры работы сделать доступными по RS-485 по протоколу Modbus, например. Дальше всю интеграцию делать с нашего контроллера.
При желании, можно и обновление прошивки ПЛК сделать с нашего контроллера.