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

Тема: СП307+МВ210-101+NTC Помогите пожалуйста

  1. #1

    По умолчанию СП307+МВ210-101+NTC Помогите пожалуйста

    Доброго времени суток.

    Стоит задача измерять температуру на шинах электрической подстанции. В качестве датчиков выбрали термисторы NTC 10К, выбор был обусловлен ценой самих датчиков, доступностью и диапазоном контролируемой температуры. Затем эти датчики опрашивают модули аналоговых входов МВ210-101 в режиме опроса резистивных датчиков 5 кОм, контролируемая температура 45-155 *С (при температуре 45 *С сопротивление термистора 4,102 кОм ). Задача стоит вывести на панель оператора температуру на шинах в *С, в случае <45 *C и >155 *C вывести сообщения "Менее 45 *С" и "Более 155 *С" соответственно.

    В качестве руководства к действию использовал документ "Mx210 Примеры настройки обмена". Сконфигурировал панель и модуль, собрал макет проекта, на панель вывел окошки "Цифровой дисплей" и опросил модуль, значения сопротивлений отображаются и изменяются при нагреве.

    Далее стоит задача перенести значения сопротивлений из регистров модулей в регистры панели. Для этого использовал глобальный макрос:
    Read(NET_0, 1, MODBUS_TCP_REG_4X, 4000, 0, TYPE_DWORD, &PSW[300]);

    Использовал помощник встроенный в конфигуратор панели(т.е. Read( а затем указал регистры внутренней памяти в которые хочу записать данные &PSW[300]). Повторно вывел "Цифровой дисплей" с параметрами регистр PSW[300], значение Dword, дисплей/формат float. В итоге ничего не получилось: в цифровом дисплее для отображения регистров панели значение 0, при этом в цифровом дисплее для отображения регистров модуля по прежнему нормальные значения сопротивлений.

    Подскажите пожалуйста в чем может быть проблема?

    Далее планирую использовать формулу =(1/((1/298,5)+(1/4300)*LN(R/10000))-273,15), для пересчета сопротивлений в градусы Цельсия, где R значения сопротивления из внутренних регистров PSW[300]...

    Результаты пересчета записать в новые регистры панели, например PSW[400]... Затем планирую вывести 16 элементов "Цифровой дисплей", которые отображают температуры.
    Как на графическом дисплее реализовать вывод сообщений "Менее 45 *С" и "Более 155 *С" и при этом не отображать или зафиксировать"Цифровой дисплей" на значениях "45" и "155"?
    Может быть есть более изящные решения?

  2. #2

    По умолчанию

    Вы точно уверенны, что очень высокоомный датчик будет корректно работать в ТП, при больших наводках на соединительные линии и 2-х проводном подключении даже экранированным проводом?

  3. #3

    По умолчанию

    нет не уверен,
    В моём представлении наводки не влияют на сопротивление. А скомпенсировать длину кабеля, сопротивление втычного разъёма, и сопротивление проходных клемм можно 3х проводной системой подключения термисторов. Точность не критична +/- 5 градусов допустимо.

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

    По умолчанию

    double Scaler (double input, double in_min, double in_max, double out_min, double out_max)

    {
    double out1 = 0;
    double out2 = 0;
    double output = 0;
    double diff = in_max - in_min;

    if (diff != 0)
    {
    if (input > in_max) out1 = in_max;
    else out1 = input;
    if (in_min > out1) out2 = in_min;
    else out2 = out1;
    output = (out_max - out_min) / diff * (out2 - in_min) + out_min;
    }
    return output;
    }

    Это переделанный код из LINTRAFO, по идее в CodeSys найдите этот блок, он как раз и фиксирует мин и макс если они выходят за пределы. (точно не помню уже, но если что переделаете из этого кода, если в CodeSys как то иначе.)

  5. #5

    По умолчанию

    Цитата Сообщение от Gi0 Посмотреть сообщение
    нет не уверен,
    В моём представлении наводки не влияют на сопротивление.
    Безусловно! Но сопротивление измеряется электрическими методами - скажем, подаем стабилизированный ток, измеряем падение напряжения.
    Я не энергетик, но всех встречаемых мной сухих трансформаторах для измерения температуры обмоток используется Pt100. И не так дорого (относительно много чего в ТП) они стОят, что бы искать приключения.

  6. #6

    По умолчанию

    Цитата Сообщение от ASo Посмотреть сообщение
    Безусловно! Но сопротивление измеряется электрическими методами - скажем, подаем стабилизированный ток, измеряем падение напряжения.
    Я не энергетик, но всех встречаемых мной сухих трансформаторах для измерения температуры обмоток используется Pt100.
    Спасибо, Вы правы. Результаты с переходными сопротивлениями и наводками смогу проконтролировать только на следующей неделе. Поэтому сейчас и не уверен в результате.
    Pt100 более чем в 15 раз дороже, NTC стоит менее 50 центов.

    melky, спасибо, попробую разобраться в этом коде. К сожалению макросы тут не на привычном мне языке программирования и могу путаться в синтаксисе.

  7. #7

    По умолчанию

    Да причем тут 15раз!!!!!
    Вы же не просто так этот проект реализуете. Значит есть опасность перегрева шин. Которая может закончиться как прямыми (повреждения элементов ТП) так и косвенными (убытки, повреждения оборудования за ТП) потерями. Поэтому экономить неск. тыс. руб. - просто глупо! Это не запредельные суммы, вместо того, чтобы установить - и забыть.

  8. #8
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    6,903

    По умолчанию

    capzap я вообще написал с чего код делал собственно. никто не мешает взять оригинал и использовать, вместо придумывания или переписывания. А так да, это банальный LIN_TRAFO который при выходе за диапазоны оставляет минимальные и максимальные значения. не более того.
    Последний раз редактировалось melky; 11.05.2020 в 12:07.

  9. #9
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    6,903

    По умолчанию

    Вы только одну задачу написали, вторая у автора звучит так, что на индикации должны остаться минимальные или максимальные значения

    при этом не отображать или зафиксировать"Цифровой дисплей" на значениях "45" и "155"?
    з.ы. а вообще делал в Scada и подобную задачу, когда отображалось значение и в случае выхода за пределы была надпись > X или < X

    но тот код автору не поможет, даже переделать, так как там связано со свойствами отображения на мнемосхеме самой Scada.
    Последний раз редактировалось melky; 11.05.2020 в 12:53.

  10. #10

    По умолчанию

    capzap, да вижу я что этот код "не совсем то"
    Я вообще не понял зачем мне кодесисовый код приводят. Скрипты согласно руководству пишутся на Си. И моя задача будет реализована скорее всего через if / else с операторами сравнения...
    У меня основная проблема -- не могу записать данные из модуля в панель и вообще не понимаю почему так происходит. Глобальный макрос должен ведь постоянно выполняться т.е. постоянный опрос датчиков.
    Вторая задача уже пересчет, тут тоже есть вопросы.

    Есть еще идея попробовать реализовать "таблицу событий реального времени" и температуру показывать как события, например сопротивление в диапазоне >5к Ом выводим сообщение"менее 45 *С", при R в диапазоне 4102-3336 Ом --температура "45-50 *С".
    Последний раз редактировалось Gi0; 11.05.2020 в 13:03.

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

Похожие темы

  1. Ответов: 12
    Последнее сообщение: 14.06.2019, 17:50
  2. МВ210-204 - помогите настроить MasterOPC
    от Бубнов Александр в разделе Мх210
    Ответов: 3
    Последнее сообщение: 03.05.2019, 15:01
  3. Помогите пожалуйста
    от Мердан в разделе Подбор Оборудования
    Ответов: 5
    Последнее сообщение: 15.07.2016, 10:57
  4. помогите,пожалуйста!!!
    от Studentik в разделе ПЛК1хх
    Ответов: 5
    Последнее сообщение: 03.06.2010, 10:39
  5. Помогите пожалуйста!!!
    от timursan в разделе ПЛК1хх
    Ответов: 28
    Последнее сообщение: 26.04.2009, 00:48

Ваши права

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