Важная информация

Горячая линия Ответы на срочные технические вопросы

Старый 29.05.2018, 13:23   #1
Александр Агеев
Новый участник
 
Регистрация: 19.07.2017
Сообщений: 22
По умолчанию коды ошибок из приложения 1

прошу дать коды ошибок MBIR[5] - у меня в инструкции только по битам, а монтажники оперируют номерами типа 140, 0140.
При опросе по модбасу вижу только байт. описание ошибок есть, инструкция ссылается на Приложение1, а вот его нет.

цитата из мануала по интеграции в УД:
Error_Code_0 – Код текущей ошибки (см. также Приложение 1) Bit 0 – неисправность в цепи датчика температуры канала 0 (обрыв или КЗ) Bit 1 – неисправность в цепи датчика температуры канала 1 (обрыв или КЗ) Bit 2 – неисправность в цепи датчика температуры канала 2 (внутренний датчик температуры) Bit 3 – неисправность датчика давления (формируется, при считывании с датчика кода АЦП, соответствующего абсолютному максимуму кода АЦП) Bit 4 – неисправность в цепи канала аналогового вывода 0 (возможно КЗ в цепи нагрузки, или подключена нагрузка несоответствующего сопротивления) Bit 5 – неисправность в цепи канала аналогового вывода 1 Bit 6 – ошибка чтения цифрового датчика по Modbus (устройство 0) Bit 7 – ошибка чтения цифрового датчика по Modbus (устройство 1) Bit 8 – ошибка (неисправность) в увлажнителе (кроме аварии дренажа и перегрева) Bit 9 – ХОЛОДНАЯ ВОДА формируется при установленном режиме ЗИМА, если температура обратной воды в калорифере меньше 12 оС (возможно отключено ГВС и нужно переключиться в режим ЛЕТО) Bit 10 – загрязнен фильтр (сбрасывается пользователем) Bit 11 – получен сигнал ПОЖАР от внешнего прибора приёмноконтрольного пожарного (сбрасывается пользователем) Bit 12 – УГРОЗА ЗАМОРАЖИВАНИЯ - сработал капилярный датчик обмерзания калорифера или температура воды в калорифере, измеренная датчиком температуры обратной воды, ниже 5 оС (сбрасывается пользователем) Очень низкая температура на выходе приточной установки, было выполнено защитное отключение Bit 13 – ПЕРЕГРЕВ, включена защитная продувка - сработал дискретный датчик перегрева на входе DI0, либо температура, измеренная аналоговым датчиком температуры канала AI1 (доп. канал) выше порога, заданного в регистре Tsens1_Mode Сбрасывается пользователем Bit 14 – авария охладителя (для приточных установок, оборудованных секцией охлаждения) - сбрасывается пользователем невозможно получить на выходе заданную влажность (для контроллера увлажнителя, не является ошибкой) Bit 15 – авария дренажа, сбрасывается пользователе
Александр Агеев вне форума   Ответить с цитированием
Старый 29.05.2018, 13:30   #2
Step
Автоматика
 
Регистрация: 06.10.2010
Адрес: Пенза
Сообщений: 753
По умолчанию

На пульте отображаются ошибки в HEX-формате и расшифорвка.
Если вы читатете по Modbus, то переведите прочитанный код в двоичную систему, соответственно получите номера битов.
http://www.forum.breezart.ru/attachm...1&d=1427968563
Step вне форума   Ответить с цитированием
Старый 29.05.2018, 14:15   #3
Александр Агеев
Новый участник
 
Регистрация: 19.07.2017
Сообщений: 22
По умолчанию

пульт отключен. вызывать ошибки для этого не стоит. на визу надо вывести код ошибки. по битам - выводятся словесные описания ошибок из инструкции. как использовать вашу табличку в которой 5 символов и связать с 16 битами 5-го регистра? чуть поподробнее, пож
Александр Агеев вне форума   Ответить с цитированием
Старый 29.05.2018, 16:56   #4
Step
Автоматика
 
Регистрация: 06.10.2010
Адрес: Пенза
Сообщений: 753
По умолчанию

Александр, вы это как-то программно расшифровывать планируете. Какой язык программирования?
Step вне форума   Ответить с цитированием
Старый 29.05.2018, 20:33   #5
Александр Агеев
Новый участник
 
Регистрация: 19.07.2017
Сообщений: 22
По умолчанию

у меня сделано на ST кодесус:



IF modbus_response.Data[5].0 THEN //это MBIR[5] побитно
vent_error :=0;
ELSIF modbus_response.Data[5].1 THEN
vent_error :=1;
ELSIF modbus_response.Data[5].2 THEN
vent_error :=2;
ELSIF modbus_response.Data[5].3 THEN
vent_error :=3;
ELSIF modbus_response.Data[5].4 THEN
vent_error :=4;
ELSIF modbus_response.Data[5].5 THEN
vent_error :=5;
ELSIF modbus_response.Data[5].6 THEN
vent_error :=6;
ELSIF modbus_response.Data[5].7 THEN
vent_error :=7;
ELSIF modbus_response.Data[5].8 THEN
vent_error :=8;
ELSIF modbus_response.Data[5].9 THEN
vent_error :=9;
ELSIF modbus_response.Data[5].10 THEN
vent_error :=10;
ELSIF modbus_response.Data[5].11 THEN
vent_error :=11;
ELSIF modbus_response.Data[5].12 THEN
vent_error :=12;
ELSIF modbus_response.Data[5].13 THEN
vent_error :=13;
ELSIF modbus_response.Data[5].14 THEN
vent_error :=14;
ELSIF modbus_response.Data[5].15 THEN
vent_error :=15;
END_IF


на визуализации(Iridium) мультистейт кнопка, каждое состояние которой - это описание ошибки. кнопка становится видимой при переменной "глобальная ошибка" в 1. Задача добавить в эти описания коды, которыми оперирует ваш пульт, если это, вообще, возможно.
Александр Агеев вне форума   Ответить с цитированием
Старый 30.05.2018, 09:26   #6
Step
Автоматика
 
Регистрация: 06.10.2010
Адрес: Пенза
Сообщений: 753
По умолчанию

Ну вот... вы же делаете побитовый разбор Data[5]. Тогда не понимаю в чём проблема. Вы же в первом посте привели текстовые описания каждого бита.

Недостаток вашего кода в том, что у вас отобразится только первая ошибка по ходу разбора. А в коде может быть комбинация взведенных битов (ошибок/аварий).
Step вне форума   Ответить с цитированием
Старый 30.05.2018, 10:30   #7
Александр Агеев
Новый участник
 
Регистрация: 19.07.2017
Сообщений: 22
По умолчанию

мне нужен цифровой код ошибки. типа - чтото сломалось, заказчик звонит инсталлятору и говорит у меня на экране написано:
"ХОЛОДНАЯ ВОДА формируется при установленном режиме ЗИМА, если температура обратной воды в калорифере меньше 12 оС (возможно отключено ГВС и нужно переключиться в режим ЛЕТО)"

а инсталлятор системы ему говорит - код ошибки какой? я этим не пользовался сам и все со слов заказчика. инсталлятору требуется цифровой код, а не словесное описание ошибки.
я объяснил вопрос? он может быть не корректно задан
Александр Агеев вне форума   Ответить с цитированием
Старый 30.05.2018, 10:40   #8
Step
Автоматика
 
Регистрация: 06.10.2010
Адрес: Пенза
Сообщений: 753
По умолчанию

Т.е. как из Data[5] получить цифровой код, аналогичный штатному пульту? Ну просто переведите его отображение в HEX формат. Тогда его можно будет разобрать вручную по Приложению 1.
Step вне форума   Ответить с цитированием
Старый 31.05.2018, 10:21   #9
Александр Агеев
Новый участник
 
Регистрация: 19.07.2017
Сообщений: 22
По умолчанию

понял, спасибо. чего делать со старшим разрядом - "объединеная авария"?
он же из другого регистра, вроде. и когда возникает? при любой ошибке?
Александр Агеев вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 17:49.