• ОБЯЗАТЕЛЬНО заполнить свой профиль НА РУССКОМ ЯЗЫКЕ КИРИЛЛИЦЕЙ.
  • НЕ НУЖНО писать свой вопрос в первую попавшуюся тему, а вместо этого создать НОВУЮ тему.
  • Дублирование сообщений приравнивается к спаму.
  • Рекламу мы не размещаем ни на каких условиях.

C-More как байт разложить на биты.

Модератор: специалисты по Weintek

Ответить

Автор темы
Vlad9
здесь недавно
здесь недавно
Сообщения: 43
Зарегистрирован: 28 дек 2015, 14:40
Имя: Vasikov V V
Благодарил (а): 2 раза

C-More как байт разложить на биты.

Сообщение Vlad9 » 23 сен 2018, 20:45

Добрый день. Контроллер отдает состояние входов словом. Как вытащить биты из слова? Математика там ограничена (+ - / * и mod). Панель из серии EA9


Dmitry_081191
здесь недавно
здесь недавно
Сообщения: 6
Зарегистрирован: 21 янв 2017, 07:46
Имя: Лысенко Дмитрий Сергеевич
Благодарил (а): 1 раз

C-More как байт разложить на биты.

Сообщение Dmitry_081191 » 24 сен 2018, 18:11

Добрый день с панелями данного производителя не работал, но могу подсказать как решал подобные задачи на других панелях оператора, может Вам поможет эта информация.
1. При подключении панели оператора и ПЛК в программе использовал драйвер Modbus Extend,в отличии от простого драйвера modbus в этом драйвере можно считать биты из регистров (слово).
2.Писал скрипт который обрабатывает регистр (слово), пример кода ниже.
if (output & 0x1)
compressor=1;
else
compressor=0;


Автор темы
Vlad9
здесь недавно
здесь недавно
Сообщения: 43
Зарегистрирован: 28 дек 2015, 14:40
Имя: Vasikov V V
Благодарил (а): 2 раза

C-More как байт разложить на биты.

Сообщение Vlad9 » 24 сен 2018, 19:38

У C-More я пока не нашел признаков на драйвер, хотя выбор протокола имеется. Вроде простейшая задача в программировании, а тут целая проблемища. Понял поизучаю.


Автор темы
Vlad9
здесь недавно
здесь недавно
Сообщения: 43
Зарегистрирован: 28 дек 2015, 14:40
Имя: Vasikov V V
Благодарил (а): 2 раза

C-More как байт разложить на биты.

Сообщение Vlad9 » 24 сен 2018, 22:43

Нашел на форуме что можно выбирать биты из слова через двоеточие, но пока реализовать не получается.

Аватара пользователя

MuadDib
частый гость
частый гость
Сообщения: 408
Зарегистрирован: 31 июл 2010, 08:12
Имя: Журавлев Павел Евгеньевич
Благодарил (а): 1 раз
Поблагодарили: 12 раз

C-More как байт разложить на биты.

Сообщение MuadDib » 25 сен 2018, 07:25

У C-More что, нет побитовой арифметики? Ни разу не встречал языка программирования, где бы не было побитовых операций. Вам нужна всего лишь побитовая операция "И" (bitwise AND). Варианты обозначения:
  • & (Си и Си-подобные языки)
  • AND (Pascal, ST)
Пример кода привел Dmitry_081191 выше. В качестве константы надо использовать 1, 2, 4, 8, 16 ... (0x1, 0x2, 0x4, 0x8, 0x10 ... - это если в шестнадцатиричной форме)

Аватара пользователя

petr2off
частый гость
частый гость
Сообщения: 474
Зарегистрирован: 06 янв 2016, 19:45
Имя: Петров В.Л.
Благодарил (а): 7 раз
Поблагодарили: 18 раз

C-More как байт разложить на биты.

Сообщение petr2off » 25 сен 2018, 09:57

C-More это не язык, это инструмент настройки панели, он может и не иметь языка. Например АРМ-Конограф не имеет никаких средств программирования. Есть Объекты панели и есть связь этого объекта с ТЭГом, и все....
Я на вскидку посмотрел его описания - никаких средств алгоритмизации не увидел.

Аватара пользователя

MuadDib
частый гость
частый гость
Сообщения: 408
Зарегистрирован: 31 июл 2010, 08:12
Имя: Журавлев Павел Евгеньевич
Благодарил (а): 1 раз
Поблагодарили: 12 раз

C-More как байт разложить на биты.

Сообщение MuadDib » 25 сен 2018, 14:02

petr2off писал(а):
25 сен 2018, 09:57
C-More это не язык, это инструмент настройки панели, он может и не иметь языка. Например АРМ-Конограф не имеет никаких средств программирования. Есть Объекты панели и есть связь этого объекта с ТЭГом, и все....
Я на вскидку посмотрел его описания - никаких средств алгоритмизации не увидел.
В ОП сказано:
Vlad9 писал(а):
23 сен 2018, 20:45
Математика там ограничена (+ - / * и mod). Панель из серии EA9
Как это назвать - язык или инструмент - несущественно. Там, где есть + и mod, как правило, есть и bitwise and. Поэтому я и рекомендую внимательно посмотреть документацию на «инструмент»

Аватара пользователя

petr2off
частый гость
частый гость
Сообщения: 474
Зарегистрирован: 06 янв 2016, 19:45
Имя: Петров В.Л.
Благодарил (а): 7 раз
Поблагодарили: 18 раз

C-More как байт разложить на биты.

Сообщение petr2off » 25 сен 2018, 15:53

Вовсе не правило. Описанная математика это средства которые позволяет немного масштабировать сигнал. Скриптов там нет. И разница весьма существенная - Инструмент может обладать языком (или несколькими, как например WinCC), а может не обладать.


Автор темы
Vlad9
здесь недавно
здесь недавно
Сообщения: 43
Зарегистрирован: 28 дек 2015, 14:40
Имя: Vasikov V V
Благодарил (а): 2 раза

C-More как байт разложить на биты.

Сообщение Vlad9 » 25 сен 2018, 16:24

Да скриптами там не пахнет. И четкое разделение тут, если объект привязан к биту например лампочка или кнопка то при выборе тега автоматически включается фильтр который оставляет только дискретные теги.
В InTouche есть прекрасный инструмент, выбор бита тега. Т.е. если надо выбрать бит пишем имя тега, ставим точку, и пишем номер бита. Перебирая зарубежные форумы мне попадалось подобное и для этих панелей если я конечно правильно понял. Только как это работает до конца не понятно, на уровне драйвера обмена получается.
Вот ссылка https://forum.automationdirect.com/foru ... it-of-word
Productivity Suite это среда разработки для контроллера так понимаю? Для контроллера это слово, а для панели это будет обычный дискретный тег.


Dmitry_081191
здесь недавно
здесь недавно
Сообщения: 6
Зарегистрирован: 21 янв 2017, 07:46
Имя: Лысенко Дмитрий Сергеевич
Благодарил (а): 1 раз

C-More как байт разложить на биты.

Сообщение Dmitry_081191 » 25 сен 2018, 17:05

Всех приветствую. Под драйвером имел ввиду коммуникационный протокол. Панель оператора связана с ПЛК по какому протоколу? Если в среде разработки для панели оператора есть протокол modbus extend и если Вас устраивает этот протокол, то можно попробовать по нему связать ПЛК и панель оператора,там биты регистра слово можно считать.


Автор темы
Vlad9
здесь недавно
здесь недавно
Сообщения: 43
Зарегистрирован: 28 дек 2015, 14:40
Имя: Vasikov V V
Благодарил (а): 2 раза

C-More как байт разложить на биты.

Сообщение Vlad9 » 25 сен 2018, 17:50

Modbus TCP

Отправлено спустя 16 минут 20 секунд:
modbus extend не нашел нашел только Entivity modbus есть в списке


Автор темы
Vlad9
здесь недавно
здесь недавно
Сообщения: 43
Зарегистрирован: 28 дек 2015, 14:40
Имя: Vasikov V V
Благодарил (а): 2 раза

C-More как байт разложить на биты.

Сообщение Vlad9 » 26 сен 2018, 14:49

Квест пройден, проблема решена вроде бы. Создаем дискретный тег, выбираем группу адресов либо 3 либо 4, появляется дополнительное поле, с номером бита который надо прочитать. Все. :ges_slap: Всем большое спасибо за участие.

Ответить

Вернуться в «Операторские панели»