Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 16

Тема: плк63(мастер)+мва8+сп270

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Пользователь
    Регистрация
    22.12.2006
    Адрес
    Тихое зимовье
    Сообщений
    182

    По умолчанию плк63(мастер)+мва8+сп270

    Задача такая, ПЛК63 должен считывать показания с МВА8 и передавать их на панель СП270. Все устройства сидят на 485, протокол modbus rtu.
    Первую часть реализовал с помощью библиотеки, а вот со второй затык, данные формата float.
    Как их передать через библиотеку modbus не понятно....
    Подскажите в какую сторону копать
    Последний раз редактировалось AVit; 09.08.2010 в 16:04.

  2. #2
    Пользователь
    Регистрация
    11.01.2009
    Адрес
    Кострома
    Сообщений
    3,144

    По умолчанию

    Преобразуйте в инт, умножте если нужно с точностью до n*. В панеле укажите нужное количество цифр после запятой

  3. #3
    Пользователь
    Регистрация
    22.12.2006
    Адрес
    Тихое зимовье
    Сообщений
    182

    По умолчанию

    Цитата Сообщение от lara197a Посмотреть сообщение
    Преобразуйте в инт, умножте если нужно с точностью до n*. В панеле укажите нужное количество цифр после запятой
    там есть несколько параметров температуры, которые могут быть как положительными так и отрицательными, из за этого и хотел float, а с int, что то со знаком не получается...
    Последний раз редактировалось AVit; 09.08.2010 в 16:21.

  4. #4
    Пользователь
    Регистрация
    11.01.2009
    Адрес
    Кострома
    Сообщений
    3,144

    По умолчанию

    тип Int от -32768 до +32767,
    а Float-это с запятой 64 бит

  5. #5
    Пользователь
    Регистрация
    22.12.2006
    Адрес
    Тихое зимовье
    Сообщений
    182

    По умолчанию

    Цитата Сообщение от lara197a Посмотреть сообщение
    тип Int от -32768 до +32767,
    а Float-это с запятой 64 бит
    проблема в том что у меня отрицательное число при этом на сп270 почему то не выводится, хотя... наверное надо завтра еще раз попробывать на свежую голову....

    спасибо.

  6. #6
    Пользователь
    Регистрация
    22.12.2006
    Адрес
    Тихое зимовье
    Сообщений
    182

    По умолчанию

    вроде на свежую голову получилось..., но появился еще вопрос, как оптимально отследить отсутствие обмена с одним или несколькими устройствами в сети?

    файл проекта прилагаю.

    (его можно использовать как пример для опроса мва8 по модбас рту, ибо такого примера еще не было)
    Вложения Вложения

  7. #7
    Пользователь
    Регистрация
    22.12.2006
    Адрес
    Тихое зимовье
    Сообщений
    182

    По умолчанию

    Руководство по эксплуатации МВА8 , пункт 6.3.1.2, таблица 5 - адреса регистров Modbus.

    Измеренное значение входа 1 формата Float32 считывается вопреки данным таблице (4 и 5 регистры) с 3 и 4 регистров.
    Вопрос в том, где искать статус измерения входа 1?
    методом тыка не получается...


    ну и прошлый вопрос остается в силе...

  8. #8
    Пользователь
    Регистрация
    18.08.2008
    Адрес
    Екатеринбург
    Сообщений
    983

    По умолчанию

    Прогнал проект предложенный AVit ПЛК63+МВА8...( проба.rar выше) , обмен между плк63 и мва8 длится несколько секунд. Это особенность ПЛК63? Или можно ускорить процесс?
    Делаю проект , в котором кроме МВА8 будут еще ИП320 и МВУ8. С ними задержек по обмену нет(взял пример ПЛК63+МДВВ - по аналогии) . Может есть пример рабочий ПЛК63+МВА8? Неделю рыскаю по форуму....
    Для скорости конечно же читаю INT не FLOAT как в примере
    Последний раз редактировалось Александр Ч.; 29.08.2011 в 09:37.

  9. #9

    По умолчанию

    Цитата Сообщение от AVit Посмотреть сообщение
    данные формата float.
    Как их передать через библиотеку modbus не понятно....
    Подскажите в какую сторону копать
    Когда я передавал float с ПЛК150 на СП270, то приходилось перед отправкой на панель менять местами старшее и младшее слово в переменной (float как раз 64 байта). Может в этом проблема.

    Если точности нужно пара-тройка символов после запятой, то проще умножить на 10, 100 или 1000, преобразовать в int и передавать в таком виде.

  10. #10
    Пользователь
    Регистрация
    22.12.2006
    Адрес
    Тихое зимовье
    Сообщений
    182

    По умолчанию

    vlkv: спасибо, с этим уже разобрались.

    Техподдержке: Руководство по эксплуатации МВА, та же таблица.... статус измерения первого канала нашелся во втором регистре, что то у вас напутано в этой таблице...
    у меня получилось так (для первого канала):
    0 регистр -положение десятичной точки;
    1 регистр - целое значение
    2 регистр - статус измерения
    3,4 регистры - значение с плавающей точкой

    циклическое время не искал, но похоже оно в 5 регистре

    по прежнему не ясно как с помощью библиотеки отследить отсутствие обмена с одним из нескольких устройств в сети...

    !!!!!!!!!!!!!!!!!!!!
    16.10.2010 Сказанному выше на счет регистров не верить, там все как в инструкции.
    !!!!!!!!!!!!!!!!!!!!
    Последний раз редактировалось AVit; 16.12.2010 в 17:23. Причина: Чтоб народ не путать...

Страница 1 из 2 12 ПоследняяПоследняя

Ваши права

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