Показано с 1 по 2 из 2

Тема: help! Не работает ReadIEEE32 c МВА8. Почему?

  1. #1

    По умолчанию help! Не работает ReadIEEE32 c МВА8. Почему?

    Помогите разобраться!

    Функция ReadIEEE32 не выдает измеренное значение датчика при опросе МВА8. "Ошибка MVA[addr=8][0]=-101:<Неверный формат данных для запроса>. Хотя Конфигуратор легко читает все каналы.

    owen_io.dll 13/12/2006, WinXP, Visual C++ 6.0, COM-порт - плата 4портовая RS-485, 2-жильн витая пара, без АС-3М и т.п.

    В сети RS485 (протокол ОВЕН) 3 устройства: ТРМ101 (addr=80), МВА8 (addr=16), МВА8 (addr=32)? 9600/8/n/1.
    Предварительно конфигуратором установлены параметры входов МВА, к неккоторым подключены датчики, некоторые не подключены и не сконфигурированы (тип датчика не задан).
    При включении опроса входов в Конфигураторе каналы с датчиками выдают реальные значения, не подключенные дают ошибки "Обрыв датчика", "Датчик не задан"

    Выхожу из Конфигуратора и запускаю vc_sample (owen_io_lib) с таким текстом:
    ...
    if(OpenPort(COM_1,spd_9600,prty_NONE,databits_8,st opbit_1,RS485CONV_AUTO)<0)
    return 0;

    for(hh=0;hh<8;hh++)
    {
    res=ReadIEEE32(16+hh,0,"rEAd",val,tm1,-1);
    if(res>=0)
    printf("Read=16[%d] ,Time=[%5d]\n",val,tm1);
    else printf("16[%d] Err: %d !\n", hh, res);
    }
    for(hh=0;hh<8;hh++)
    {
    res=ReadIEEE32(32+hh,0,"rEAd",val,tm1,-1);
    if(res>=0)
    printf("Read=32[%d] ,Time=[%5d]\n",val,tm1);
    else
    printf("32[%d] Err: %d !\n", hh, res);
    }

    Каналы, которые не подключены или не задан тип датчика возвращают ошибки -105. Каналы, к которым подключены датчики возвращают ошибку -101.

    В рабочей программе (ТРМ101 (addr=80), МВА8 (addr=8), МВА8 (addr=16)) периодически сигнал датчика получаем, но весьма редко. Задержки между посылками делали в 1сек. Не помогло. Вот пример лога с вызовом LastErrToStr:

    20:48:44: Pv[80][0]=(28.020996)
    20:48:44: o[80][0]=(0.000000)
    20:48:44: SP[80][0]=(43.700195)
    20:48:44: Ошибка MVA[8][0]=-101:<Неверный формат данных для запроса>
    20:48:44: Ошибка MVA[8][1]=-101:<Неверный формат данных для запроса>
    20:48:45: Ошибка MVA[8][2]=-101:<Неверный формат данных для запроса>
    20:48:45: Ошибка MVA[8][3]=-101:<Неверный формат данных для запроса>
    20:48:45: Ошибка MVA[8][4]=-101:<Неверный формат данных для запроса>
    20:48:45: Ошибка MVA[8][5]=-101:<Неверный формат данных для запроса>
    20:48:45: Ошибка MVA[8][6]=-101:<Неверный формат данных для запроса>
    20:48:45: MVA[8][7]=(19.700623)
    20:48:45: Ошибка MVA[16][0]=-105:<Обрыв датчика.>
    20:48:45: Ошибка MVA[16][1]=-105:<Обрыв датчика.>
    20:48:46: Ошибка MVA[16][2]=-105:<Датчик отключен.>
    20:48:46: Ошибка MVA[16][3]=-105:<Датчик отключен.>
    20:48:46: Ошибка MVA[16][4]=-105:<Датчик отключен.>
    20:48:46: Ошибка MVA[16][5]=-105:<Датчик отключен.>
    20:48:46: Ошибка MVA[16][6]=-101:<Неверный формат данных для запроса>
    20:48:46: Ошибка MVA[16][7]=-101:<Неверный формат данных для запроса>
    20:48:46: Pv[80][0]=(28.057129)
    20:48:46: o[80][0]=(0.000000)
    20:48:46: SP[80][0]=(43.700195)
    20:48:47: Ошибка MVA[8][0]=-101:<Неверный формат данных для запроса>
    20:48:47: Ошибка MVA[8][1]=-101:<Неверный формат данных для запроса>
    20:48:47: Ошибка MVA[8][2]=-101:<Неверный формат данных для запроса>
    20:48:47: Ошибка MVA[8][3]=-101:<Неверный формат данных для запроса>
    20:48:47: Ошибка MVA[8][4]=-101:<Неверный формат данных для запроса>
    20:48:47: Ошибка MVA[8][5]=-101:<Неверный формат данных для запроса>
    20:48:47: Ошибка MVA[8][6]=-101:<Неверный формат данных для запроса>
    20:48:47: Ошибка MVA[8][7]=-105:<Обрыв датчика.>
    20:48:48: Ошибка MVA[16][0]=-105:<Обрыв датчика.>
    20:48:48: Ошибка MVA[16][1]=-105:<Обрыв датчика.>
    20:48:48: Ошибка MVA[16][2]=-105:<Датчик отключен.>
    20:48:48: Ошибка MVA[16][3]=-105:<Датчик отключен.>
    20:48:48: Ошибка MVA[16][4]=-105:<Датчик отключен.>
    20:48:48: Ошибка MVA[16][5]=-105:<Датчик отключен.>
    20:48:48: Ошибка MVA[16][6]=-101:<Неверный формат данных для запроса>
    20:48:48: Ошибка MVA[16][7]=-101:<Неверный формат данных для запроса>
    20:48:49: Pv[80][0]=(28.057129)
    20:48:49: o[80][0]=(0.000000)
    20:48:49: SP[80][0]=(43.700195)
    20:48:49: MVA[8][0]=(20.180618)
    20:48:49: Ошибка MVA[8][1]=-101:<Неверный формат данных для запроса>
    20:48:49: Ошибка MVA[8][2]=-101:<Неверный формат данных для запроса>
    20:48:49: Ошибка MVA[8][3]=-101:<Неверный формат данных для запроса>
    20:48:49: Ошибка MVA[8][4]=-101:<Неверный формат данных для запроса>
    20:48:49: Ошибка MVA[8][5]=-101:<Неверный формат данных для запроса>
    20:48:50: Ошибка MVA[8][6]=-101:<Неверный формат данных для запроса>
    20:48:50: Ошибка MVA[8][7]=-105:<Обрыв датчика.>

    Везде где ответ "-101:<Неверный формат данных для запроса>" Конфигуратор принмает нормальные значения температур.

    Вот опрос одного МВА с интервалом в 200 мс:

    21:17:49: Ошибка MVA[8][0]=-101:<Неверный формат данных для запроса>
    21:17:50: Ошибка MVA[8][1]=-101:<Неверный формат данных для запроса>
    21:17:50: Ошибка MVA[8][2]=-101:<Неверный формат данных для запроса>
    21:17:50: Ошибка MVA[8][3]=-101:<Неверный формат данных для запроса>
    21:17:51: Ошибка MVA[8][4]=-101:<Неверный формат данных для запроса>
    21:17:51: Ошибка MVA[8][5]=-101:<Неверный формат данных для запроса>
    21:17:51: Ошибка MVA[8][6]=-101:<Неверный формат данных для запроса>
    21:17:51: Ошибка MVA[8][7]=-105:<Обрыв датчика.>
    21:17:52: Ошибка MVA[8][0]=-101:<Неверный формат данных для запроса>
    21:17:52: MVA[8][1]=(19.675247)
    21:17:52: Ошибка MVA[8][2]=-101:<Неверный формат данных для запроса>
    21:17:53: Ошибка MVA[8][3]=-101:<Неверный формат данных для запроса>
    21:17:53: Ошибка MVA[8][4]=-101:<Неверный формат данных для запроса>
    21:17:53: Ошибка MVA[8][5]=-101:<Неверный формат данных для запроса>
    21:17:53: Ошибка MVA[8][6]=-101:<Неверный формат данных для запроса>
    21:17:54: Ошибка MVA[8][7]=-105:<Обрыв датчика.>
    21:17:54: Ошибка MVA[8][0]=-101:<Неверный формат данных для запроса>
    21:17:54: Ошибка MVA[8][1]=-101:<Неверный формат данных для запроса>
    21:17:55: Ошибка MVA[8][2]=-101:<Неверный формат данных для запроса>
    21:17:55: Ошибка MVA[8][3]=-101:<Неверный формат данных для запроса>
    21:17:55: Ошибка MVA[8][4]=-101:<Неверный формат данных для запроса>
    21:17:56: Ошибка MVA[8][5]=-101:<Неверный формат данных для запроса>
    21:17:56: Ошибка MVA[8][6]=-101:<Неверный формат данных для запроса>
    21:17:56: Ошибка MVA[8][7]=-105:<Обрыв датчика.>
    21:17:57: Ошибка MVA[8][0]=-101:<Неверный формат данных для запроса>
    21:17:57: Ошибка MVA[8][1]=-101:<Неверный формат данных для запроса>
    21:17:57: Ошибка MVA[8][2]=-101:<Неверный формат данных для запроса>
    21:17:58: Ошибка MVA[8][3]=-101:<Неверный формат данных для запроса>
    21:17:58: Ошибка MVA[8][4]=-101:<Неверный формат данных для запроса>
    21:17:58: Ошибка MVA[8][5]=-101:<Неверный формат данных для запроса>
    21:17:58: Ошибка MVA[8][6]=-101:<Неверный формат данных для запроса>
    21:17:59: Ошибка MVA[8][7]=-105:<Обрыв датчика.>
    21:17:59: Ошибка MVA[8][0]=-101:<Неверный формат данных для запроса>

  2. #2

    По умолчанию

    Самое загадочное для меня то, что эта же программа работала стабильно в сети из трех МВА8 и трех ТРМ101. Различие в том, что ранее был AC3-М.
    Длина кабелей порядка 15-20 м

Ваши права

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