Segnetics

Вернуться   Segnetics > Форум Segnetics > Связь с внешним миром

Связь с внешним миром Modbus, RS232, RS485, Lon и другое.

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 25.06.2018, 17:29   #1
terrabit
Новичок
 
Регистрация: Feb 2017
Сообщения: 19
Благодарил(а): 1 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию ABB M2M нужен ли перевод long в unsigned long (решено)

Здравствуйте. Есть анализатор сети ABB M2M, из него вычитываю значение активной энергии, которое он отдает в формате unsigned long. Но, поскольку SMH4 работает с типом long, на выходе регистра неверные данные. Можете подсказать, как правильно осуществить перевод данных из long в unsigned long? Документацию от ABB и карту памяти прилагаю.
Вложения
Тип файла: pdf M2M-DMTME Modbus Protocol 2.1.pdf (324.8 Кбайт, 14 просмотров)
Тип файла: map ABB M2M.map (1.2 Кбайт, 18 просмотров)
terrabit вне форума   Ответить с цитированием
Старый 25.06.2018, 18:44   #2
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: ABB M2M перевод long в unsigned long

Цитата
Сообщение от terrabit Посмотреть сообщение
Здравствуйте. Есть анализатор сети ABB M2M, из него вычитываю значение активной энергии, которое он отдает в формате unsigned long.
Что вы с этими данными предполагаете делать дальше?


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 25.06.2018, 23:19   #3
ailcat
Senior Member
 
Аватара для ailcat
 
Регистрация: Oct 2010
Адрес: Москва
Сообщения: 403
Благодарил(а): 29 раз(а)
Поблагодарили: 2 раз(а) в 2 сообщениях
По умолчанию Ответ: ABB M2M перевод long в unsigned long

Значения выше 2147483647 возможны?
Если нет - просто сделайте AND с этим значением.
Если да - сдвиньте вычитанное значение вправо на один бит (и в дальнейшей обработке учитывайте, что работаете с исходными данными, деленными на два).

НО:
Скорее всего, проблема в порядке следования байт (DMTME-72 вроде этим "порадовал", если не путаю).
Тогда вам сюда: http://forum.segnetics.com/showthread.php?t=461
ailcat вне форума   Ответить с цитированием
Старый 26.06.2018, 12:25   #4
terrabit
Новичок
 
Регистрация: Feb 2017
Сообщения: 19
Благодарил(а): 1 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: ABB M2M перевод long в unsigned long

Цитата:
Сообщение от Arsie Посмотреть сообщение
Что вы с этими данными предполагаете делать дальше?
Дальше показания транслируются в INSAT-отвский OPC-сервер и в скаду
terrabit вне форума   Ответить с цитированием
Старый 26.06.2018, 12:38   #5
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: ABB M2M перевод long в unsigned long

Цитата
Сообщение от terrabit Посмотреть сообщение
Дальше показания транслируются в INSAT-отвский OPC-сервер и в скаду
Тогда не заморачивайтесь, в сервере объявите переменную как беззнаковую и всё будет приниматься верно - это совместимые между собой форматы в целых числах, знаковый и беззнаковый.


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 26.06.2018, 14:41   #6
terrabit
Новичок
 
Регистрация: Feb 2017
Сообщения: 19
Благодарил(а): 1 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: ABB M2M перевод long в unsigned long

Цитата:
Сообщение от Arsie Посмотреть сообщение
Тогда не заморачивайтесь, в сервере объявите переменную как беззнаковую и всё будет приниматься верно - это совместимые между собой форматы в целых числах, знаковый и беззнаковый.
Проблема решилась, скрин настроек OPC-сервера (вдруг кому пригодится) во вложении
Миниатюры
Нажмите на картинку для увеличения

Название:  3.jpg
Просмотров: 54
Размер:  79.8 Кбайт  
terrabit вне форума   Ответить с цитированием
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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



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


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