Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?

Официальный форум Simple-Scada.

Автор Тема: Отрицательные значения  (Прочитано 15305 раз)

596039

  • Новичок
  • *
  • Сообщений: 24
    • Просмотр профиля
Отрицательные значения
« : 21 Сентября 2016, 11:59:12 »
   Здравствуйте, столкнулись с такой проблемой: получаем отрицательные значения с контроллера по Modbus, а в arOPC наблюдаем пересчитанные положительные значения, то есть -10=246 , -1=255. Можно как нибудь получать отрицательные значения в arOPC без пересчета?

arOPC

  • Модератор
  • *****
  • Сообщений: 249
  • За словом дело, за делом результат
    • Просмотр профиля
    • ardsoft
Re: Отрицательные значения
« Ответ #1 : 21 Сентября 2016, 12:42:53 »
Здравствуйте.

Вы какой тип данных у тега используете, Word?
Если так  попробуйте ShortInt.

596039

  • Новичок
  • *
  • Сообщений: 24
    • Просмотр профиля
Re: Отрицательные значения
« Ответ #2 : 21 Сентября 2016, 12:54:24 »
С контроллера отправляем ShortInt, на OPC перебрали все варианты какие были, все время идет пересчет.

arOPC

  • Модератор
  • *****
  • Сообщений: 249
  • За словом дело, за делом результат
    • Просмотр профиля
    • ardsoft
Re: Отрицательные значения
« Ответ #3 : 21 Сентября 2016, 13:04:38 »
Вы в контроллере оперируете байтами (8 бит), а в Modbus минимальный доступный тип данных - слово (16 бит).
Поэтому OPC сервер считает что работает с положительным числом.

596039

  • Новичок
  • *
  • Сообщений: 24
    • Просмотр профиля
Re: Отрицательные значения
« Ответ #4 : 21 Сентября 2016, 13:20:05 »
Спасибо за помощь, поменяли тип данных в контроллере на 2-х байтный, все работает корректно.