Показать сообщение отдельно
Старый 10.11.2014, 21:23   #10
sensei
Member
 
Регистрация: Jan 2014
Сообщения: 62
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Аварии останавливают работу контура. Как избежать?

Цитата:
Сообщение от Arsie Посмотреть сообщение
Но если очень хочется, то просто в статусе циркуляции перед процессором заблокируйте прохождение первого бита. Процессор никогда не увидит аварию.

"Работа" - это нулевой бит. Сам макрос насосов сигнал управления насосом отключит.
Бит 1 "Авария", по крайней мере, согласно связям внутри макроса "Процессор" никак не учитывается. Сигнал "Stat: Циркуляция Кх" подается на вход "Stat: Насосы" макроса "Контроль контура К". Там он подается в макрос "stat2bit", с выхода которого снимаются бит 0 "Работа" и бит 7 "Enabled".

Непосредственное разрешение на запуск останов контура производится в макросе "Пуск/Стоп", находящего в макросе "Контроль контура К". На вход "Можно работать" макроса "Пуск/Стоп" подаётся сигнал "~Проблемы с водой", который есть ИЛИ-НЕ ("Отказ подпитки", "Отказ циркуляции"). Сигналы "Отказ подпитки" и "Отказ циркуляции" есть, соответственно, биты 5 и 3 сигнала "Кх: Код отключения".

Сигнал "Кх: Код отключения", который, как мы выяснили, несет в себе информацию об отказе, генерируется макросом "Отключение устройств" из состава макроса "Обработка аварий 3.00" (который в свою очередь входит во состав макроса "Обработка аварий"). Я не могу понять, как работает макрос "Отключение устройств" и что означают входы d0...d30, на некоторые из которых подаются какие-то битовые последовательности (часть напрямую, часть через входы "Disable" макросов Кху). Понял лишь, что эти битовые последовательности участвуют (по очереди для снижения нагрузки на ЦП) в неких логических операциях с соответствующими им битами аварий из состава сигнала "Код аварии xx".

В свою очередь сигнал "Код аварии xx" получается из сигнала "Код xx" в макросе "Реакция системы", таким образом, что в сигнале "Код аварии xx" те биты, которые отмечены как запоминаемые ("Не запоминать?"=0), единожды возникая не исчезают до сброса, т.к. в макросе "Реакция системы" на D-триггере фактически реализован вектор из "самозалипающих реле".

Сигнал "Код xx" генерируется в макросе "Scan" из состава макроса "scan4x". Как в макросе "Scan" из входов аварий генерируется "Код xx" я тоже не понял. Понял лишь, что "№ события" инкрементируется с каждой новой возникающей аварией.

Итого:
Уважаемый Арсений! Буду чреззвычайно блвгодарен, если проверите, все ли я правильно написал, и ответите на вопросы (постарался выделить их жирным, т.к. они получились преимущественно не в вопросительной форме).
sensei вне форума   Ответить с цитированием