This is topic Запись архива SCADA TRACE MODE в СУБД in forum TRACE MODE 6 бесплатная Базовая версия / TRACE MODE 6 free Base version at Форум TRACE MODE: техническая поддержка.


To visit this topic, use this URL:
http://forum.adastra.ru/ultimatebb.php/ubb/get_topic/f/31/t/001731.html

Posted by Plumber (Участник № / Member № 7942) on :
 
Добрый день.Создал по вашему уроку "Запись архива SCADA TRACE MODE в СУБД" проект.В качестве источника данных использую OPC сервер.Нужа запись показаний температуры и давления.Не получилось.Помогите пожалуйста.
 
Posted by Plumber (Участник № / Member № 7942) on :
 
Добрый день.Удалось записать в БД все что требовалось.Лишь одна проблема при выборке значений за период времени,значения выводятся с большим количеством знаков после запятой и один параметр не читается хотя в БД он есть.Как это поправить?
 
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
 
Сделайте простой проект с запросов только этого параметра. Проверьте достоверность канала, запрашивающего данные. Если данные не удалось получить, рекомендуем запустить трассировщик ODBC драйвера (Администратор ODBC - Трассировка) и анализировать полученные логи, если что-то не так в обмене, информация об ошибке там будет.
 
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
 
Для изменения количества знаков после запятой при выводе данных можно графическим элементам задать нужный формат вывода чисел. В свойствах графических элементов: Общие свойства - Текст - Форматы. Форматы описаны в справке: Приложения - Форматы - Формат Си вывода чисел.
 
Posted by Plumber (Участник № / Member № 7942) on :
 
Спасибо,помогло.
 
Posted by Plumber (Участник № / Member № 7942) on :
 
Добрый день.Удалось включить свои параметры в ваш урок.Теперь все пишется в Access c точностью до второго знака после запятой,но читается программой иначе, вот так например температура "47.9700012207031".Редко пишет целое число "48".И еще,если я правильно понял,параметр записывается только если он изменился по отношению к предыдущему.Еще хотелось бы узнать как сделать чтобы запись в базу происходила реже, раз в 5-10 минут?
 
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
 
Какая задача стоит? Писать целочисленные значения? Может в этом случае удобнее будет преобразовать значение программно (например в FBD есть блок округления). Для принудительной записи подается значение 1 на вход канала Call, вызывающего шаблон связей с СУБД. Можно настроить подачу сигнала на запись программно или посылать значение от битового меандра с нужным периодом.
 
Posted by Plumber (Участник № / Member № 7942) on :
 
Может я не сколько сумбурно объяснил.В базу данные записываются точно по показаниям приборов например давление 2.4 температура 47.97,а в ТМ делаю выборку за интервал времени и вижу температуру 47.9700012207031.
 
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
 
quote:
Отправитель / Originally posted by Plumber:
Еще хотелось бы узнать как сделать чтобы запись в базу происходила реже, раз в 5-10 минут?

При указанной периодичности стоит рассмотреть вариант использования обычного механизма записи в БД с периодической активацией записи (например, программно). В этом случае запись в БД будет происходить в указанный Вами период времени.

quote:
Отправитель / Originally posted by Plumber:
В базу данные записываются точно по показаниям приборов например давление 2.4 температура 47.97,а в ТМ делаю выборку за интервал времени и вижу температуру 47.9700012207031.

С помощью Трассировки определите какое число записывается в БД, а какое считывается из нее.

Так же в Свойствах столбца БД уточните число десятичных знаков (на примере Access, выбираете Таблицу, открываете ее с помощью Конструктора, выделяете строку и анализируете ее свойства).
 


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2