Segnetics

Вернуться   Segnetics > Форум Segnetics > Связь с внешним миром > Проблемы с панелями Weintek

Проблемы с панелями Weintek Всё о багах панелей Weintek

Ответ
 
Опции темы Поиск в этой теме
Старый 03.06.2013, 13:29   #1
Vladimir
Новичок
 
Регистрация: Apr 2013
Сообщения: 18
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Отображение аварии на жк панеле

Подскажите пожалуйста, если кто знает, связываю панель Weintek с Pixel 25 все сделал вот только не могу никак разобраться с авариями, может кто подскажет как из кода аварии отображать на дисплее нужную аварию?извините если не очень коректно задал вопрос
Vladimir вне форума   Ответить с цитированием
Старый 03.06.2013, 21:57   #2
ViS
Senior Member
 
Регистрация: Aug 2010
Сообщения: 718
Благодарил(а): 1 раз(а)
Поблагодарили: 15 раз(а) в 12 сообщениях
По умолчанию Ответ: Отображение аварии на жк панеле

stat2bit, разложить код на биты, каждый соответствует своей аварии
ViS вне форума   Ответить с цитированием
Старый 04.06.2013, 11:07   #3
Vladimir
Новичок
 
Регистрация: Apr 2013
Сообщения: 18
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию

можно поподробнее?при разложении на биты в каком виде все это будет и что с этим делать потом?

можно как нибудь каждому биту(каждой аварии) назначить свой адрес?

Последний раз редактировалось Arsie, 06.02.2017 в 11:39
Vladimir вне форума   Ответить с цитированием
Старый 04.06.2013, 12:40   #4
Aard
Member
 
Регистрация: Mar 2007
Сообщения: 39
Благодарил(а): 0 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: Отображение аварии на жк панеле

Можно.
Со стороны панели в редакторе EB8000 для чтения конкретного бита конкретной переменной указываете формат <Адрес переменной><номер бита-1>.
Например, если нужно узнать состояние 3-го бита переменной по адресу 345, то пишете
0034502
Тут 00345 - адрес переменной, 02 - номер бита.
Только не забудьте указать тип адреса чтения "Бит".
Aard вне форума   Ответить с цитированием
Старый 04.06.2013, 14:54   #5
Vladimir
Новичок
 
Регистрация: Apr 2013
Сообщения: 18
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Отображение аварии на жк панеле

Цитата:
Сообщение от Aard Посмотреть сообщение
Можно.
Со стороны панели в редакторе EB8000 для чтения конкретного бита конкретной переменной указываете формат <Адрес переменной><номер бита-1>.
Например, если нужно узнать состояние 3-го бита переменной по адресу 345, то пишете
0034502
Тут 00345 - адрес переменной, 02 - номер бита.
Только не забудьте указать тип адреса чтения "Бит".
А адрес переменной в каком формате записывать?hex или dec? если вписывать dec(40968) ,то адрес переменной получается 4096813 (13 бит) и проект не компелируется, т к значение больше чем65535. можно ли вписать адрес в формате hex?в формате hex адрес a008h, а вписать 0000813
Vladimir вне форума   Ответить с цитированием
Старый 04.06.2013, 16:58   #6
Aard
Member
 
Регистрация: Mar 2007
Сообщения: 39
Благодарил(а): 0 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: Отображение аварии на жк панеле

Цитата:
Сообщение от Vladimir Посмотреть сообщение
А адрес переменной в каком формате записывать?hex или dec? если вписывать dec(40968) ,то адрес переменной получается 4096813 (13 бит) и проект не компелируется, т к значение больше чем65535. можно ли вписать адрес в формате hex?в формате hex адрес a008h, а вписать 0000813
dec
40968 < 65535, 13-й бит идет как приписка к адресу
Посмотрите на скриншоте, как я делал. Проект работает нормально
Изображения
Тип файла: png Weintek_bit.PNG (195.1 Кбайт, 468 просмотров)
Aard вне форума   Ответить с цитированием
Старый 05.06.2013, 14:06   #7
Vladimir
Новичок
 
Регистрация: Apr 2013
Сообщения: 18
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию

Спасибо за советы,со всем разобрался,все сделал как хотел

правда одно осталось, у меня в "расшифровке код аварии" больше 15 битов,например, обрыв датчика Тобр.воды- Bit27, а в программе панели можно адресс вводить до 65535, а биты до 15,ввожу адрес 4112027 и проект не компелируется так как биты можно вводить от 0 до 15,как быть не знаю

Последний раз редактировалось Arsie, 06.02.2017 в 11:39
Vladimir вне форума   Ответить с цитированием
Старый 05.06.2013, 15:07   #8
Aard
Member
 
Регистрация: Mar 2007
Сообщения: 39
Благодарил(а): 0 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: Отображение аварии на жк панеле

Разбить переменную типа long в контроллере (там же такой тип для аварий?) на 2 переменные типа int и в панели уже оперировать с ними.
Или играться с адресацией в самой панели - читать long ка кдва отдельных регистра int.
Aard вне форума   Ответить с цитированием
Старый 02.02.2017, 22:20   #9
coverart
Senior Member
 
Регистрация: Mar 2008
Адрес: Екатеринбург
Сообщения: 493
Благодарил(а): 50 раз(а)
Поблагодарили: 14 раз(а) в 13 сообщениях
По умолчанию Ответ: Отображение аварии на жк панеле

Подниму темку.
Делаю журнал аварий в панельке Weintek для конструкторских программ.
Хотелось бы выводить сообщения такие же как пишутся в журнал. Т.е. при аварии частотника вентилятора притока(например) выводить не просто авария вентилятора притока (читаем SCo_Код (Аварии)), а что именно отказ ЧПР (приток).
Из похожих тем, я понял, что нужно городить макрос который преобразует "Код аварии", "Код состояния" и т.д. в нужный "список" аварий, но... в этом как раз и затык.
Пните пожалуйста в нужном направлении.
coverart вне форума   Ответить с цитированием
Старый 03.02.2017, 03:16   #10
tvf
Senior Member
 
Регистрация: Dec 2011
Сообщения: 752
Благодарил(а): 1 раз(а)
Поблагодарили: 10 раз(а) в 10 сообщениях
По умолчанию Ответ: Отображение аварии на жк панеле

Цитата:
Сообщение от coverart Посмотреть сообщение
Пните пожалуйста в нужном направлении.
А не проще упаковать все задействованные входы макроса аварий в int или long и уже в самой панели распаковать и сделать журнал аварий?


__________________
Нет абсолютно бездарных людей. Каждый бездарен в своей области.
tvf вне форума   Ответить с цитированием
Старый 03.02.2017, 16:08   #11
ViS
Senior Member
 
Регистрация: Aug 2010
Сообщения: 718
Благодарил(а): 1 раз(а)
Поблагодарили: 15 раз(а) в 12 сообщениях
По умолчанию Ответ: Отображение аварии на жк панеле

Пример для вывода на экран в Вейнтеке Кода состояния установки.
На входе "Код состояния" с макроса "Процессор", на выходе номер.
Код_Состояния.JPG
В Вейнтеке "Индикатор слова" на 13 состояний. Для каждого состояния прописываем свой текст метки.
W1.JPG
W2.JPG
ViS вне форума   Ответить с цитированием
Старый 04.02.2017, 12:12   #12
coverart
Senior Member
 
Регистрация: Mar 2008
Адрес: Екатеринбург
Сообщения: 493
Благодарил(а): 50 раз(а)
Поблагодарили: 14 раз(а) в 13 сообщениях
По умолчанию

Большое спасибо за помощь. Попробую Ваш вариант в понедельник.
Я правильно понимаю, что из "Код состояния" можно получить аварии типа "Термостат калорифера", "ЧРП притока" и т.д.?

to tvf. По Вашему варианту это нужно делать ручками в каждой проге. Хотелось бы сделать журнал со всеми вариантами аварий и использовать его с минимальными правками. В журнал ведь пишется конкретная авария, помимо общей. Кстати эти обобщенные аварии ваще бесят, особенно "Работа невозможна". Звонит зак, говорит что "ВСЕ ПРОПАЛО, РАБОТА НЕВОЗМОЖНА!!!". Начинаешь объяснять как куда и какими кнопками нужно полистать журнал, чтобы понять почему работа невозможна.

Ну и хотелось бы услышать Арсения.

Последний раз редактировалось Arsie, 06.02.2017 в 11:39
coverart вне форума   Ответить с цитированием
Старый 04.02.2017, 19:33   #13
ViS
Senior Member
 
Регистрация: Aug 2010
Сообщения: 718
Благодарил(а): 1 раз(а)
Поблагодарили: 15 раз(а) в 12 сообщениях
По умолчанию Ответ: Отображение аварии на жк панеле

Код состояния это Жалюзи, Останов, Блокировка, Ожидание, Прогрев и т.п.
Для журнала событий есть в Вейнтеке объект "Журнал сигналов/событий".
Считываете код аварии с контроллера в локаль (чтоб не гонять запросы лишние на каждый бит) объектом "Передача данных по времени".
И в том журнале прописываете отлов изменения нужных битов уже в локальной переменной
В объект "Дисплей событий" выводите на экран нужные записи из Журнала.
Можно вести Журнал событий для всего и вся и создать несколько Дисплеев событий для вывода событий по категориям, например, в разные экраны.
P.S. Все названия и скрины выше для ЕВ8000, в EBPro что-то отличается немного, но суть та же. Давно делал, нет сейчас под рукой проекта для Pro.
ViS вне форума   Ответить с цитированием
Старый 05.02.2017, 21:23   #14
coverart
Senior Member
 
Регистрация: Mar 2008
Адрес: Екатеринбург
Сообщения: 493
Благодарил(а): 50 раз(а)
Поблагодарили: 14 раз(а) в 13 сообщениях
По умолчанию Ответ: Отображение аварии на жк панеле

Да это все понятно. Как сделать журнал я знаю. Мне нужны коды аварии, но не которые в "код аварии", их там не много и они обобщенные, а более детальные, например "термостат калорифера" или "ЧРП приток" и т.д.
coverart вне форума   Ответить с цитированием
Старый 05.02.2017, 22:08   #15
младшой
Senior Member
 
Регистрация: May 2010
Адрес: Москва
Сообщения: 863
Благодарил(а): 4 раз(а)
Поблагодарили: 86 раз(а) в 67 сообщениях
По умолчанию Ответ: Отображение аварии на жк панеле

В стандартной "конструкторской" программе в модбас регистры всегда выведены Status-коды устройств.
В этих кодах также зашифрованы "локальные" аварийные сигналы.
Открывайте макросы устройств и смотрите, как формируются их Status-коды.
Считывайте панелью коды, расшифровывайте, заводите в журнал.
Изображения
Тип файла: png коды аварий 1.png (113.1 Кбайт, 169 просмотров)
Тип файла: png коды аварий 2.png (90.4 Кбайт, 127 просмотров)
младшой вне форума   Ответить с цитированием
Старый 05.02.2017, 22:53   #16
ATS
Senior Member
 
Регистрация: Aug 2013
Сообщения: 3 785
Благодарил(а): 12 раз(а)
Поблагодарили: 194 раз(а) в 190 сообщениях
По умолчанию Ответ: Отображение аварии на жк панеле

Цитата:
Сообщение от coverart Посмотреть сообщение
Мне нужны коды аварии, но не которые в "код аварии", их там не много и они обобщенные, а более детальные, например "термостат калорифера" или "ЧРП приток" и т.д.
Да вроде они все в коде аварии (SCo_Код (Аварии)) и должны быть отдельными битами.
ATS вне форума   Ответить с цитированием
Старый 06.02.2017, 07:45   #17
coverart
Senior Member
 
Регистрация: Mar 2008
Адрес: Екатеринбург
Сообщения: 493
Благодарил(а): 50 раз(а)
Поблагодарили: 14 раз(а) в 13 сообщениях
По умолчанию Ответ: Отображение аварии на жк панеле

Цитата:
Сообщение от ATS Посмотреть сообщение
Да вроде они все в коде аварии (SCo_Код (Аварии)) и должны быть отдельными битами.
Ну если бы это было так, вопросов бы не было.
Младшой спасибо, буду копать.
Ну и что скажет уважаемый Арсений?
coverart вне форума   Ответить с цитированием
Старый 06.02.2017, 11:42   #18
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Отображение аварии на жк панеле

Цитата:
Сообщение от coverart Посмотреть сообщение
Ну и что скажет уважаемый Арсений?
младшой всё верно сказал. В коде аварий только обобщённые аварии.

А что касается "работа невозможна", эта запись появилась в ответ на вопросы типа "у меня тут в журнале 'обрыв ремня' и 'пожарный датчик', почему вентустановка не запускается?".


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 06.02.2017, 18:14   #19
coverart
Senior Member
 
Регистрация: Mar 2008
Адрес: Екатеринбург
Сообщения: 493
Благодарил(а): 50 раз(а)
Поблагодарили: 14 раз(а) в 13 сообщениях
По умолчанию Ответ: Отображение аварии на жк панеле

Всем спасибо, буду работать.
coverart вне форума   Ответить с цитированием
Ответ


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

BB code is Вкл.
[IMG] код Вкл.
HTML код Выкл.



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


Версия vBulletin: 3.8.7
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Segnetics 2005 - 2024