This is topic Как решить задачу телеметрии? in forum Общие вопросы / Common questions at Форум TRACE MODE: техническая поддержка.


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

Posted by vbul (Участник № / Member № 1285) on :
 
Добрый день.
Я являюсь новичком в работе с Trace Mode и поэтому многие аспекты создания проектов АСУ мне еще не понятны. Хочу узнать ответ на один вопрос, а дело вот в чем.
На данный момент мной разработана система телеметрии газовых котельных и газораспределительных пунктов, при этом схема телеметрии такая:
1. На объекте находится программируемый GSM терминал Siemens TC65. Java программа следит за контролируемыми параметрами, периодически посылает СМС с данными об объекте, и в случае аварии формирует СМС аварии.
2. В диспетчерской на компьютере стоит программа написанная на Delphi, которая посредством GSM модема принимает СМС, посланные объектом и обрабатывает их. В программе реализована возможность запроса параметров и изменения граничныхз значений. Все это также происходит посредством СМС.

Вопрос в следующем:
Можно ли реализовать такую схему с использованием Trace Mode. То есть я хочу заменить Delphi программу на программу написанную в Trace Mode, не меняя схемы объмена данными (только СМС).
Если это возможно, подскажите пожалуйста план действий.

Спасибо за внимание.
С уважением.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Монитор может принимать значения по СМС в формате Имя_канала=Значение. Вам нужно только организовать отправку СМС в таком формате.
 
Posted by vbul (Участник № / Member № 1285) on :
 
то есть смотрите если ддо этого смс у меня имела такой вид:
N01\P1=8.5\P2=4.6\T1=65\T2=60...
то придется переделывать формат смс(то есть модифицировать Java - программу в контроллерах) Имя_канала=Значение
как я понимаю вида такого
кан1=N01 кан2=8.5 и т.д.
 
Posted by vbul (Участник № / Member № 1285) on :
 
попутно еще вопрос ...
формат смс, то есть правилло его формирования где-нибудь описано...
то есть как будет правильно чтоб понимал монитор... и до скошльки пар-в (значений каналов можно передавать в одном смс?)
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
В одном смс возможна передача только одного атрибута.
Формат: имя канала = значение

Для разбора более сложных СМС необходимо писать драйвер.
 
Posted by vbul (Участник № / Member № 1285) on :
 
писать драйвер....
можно поподробнее...
это делается в TraceMode, или нет?
 
Posted by vbul (Участник № / Member № 1285) on :
 
просто програамма на Java в TC65 отлажена, оттестирована и проверена 3 месяцами работы... не хотелось бы снова менять ее и придумывать новый формат смс... неизбежно в новой программе возникнут ошибки, будут нужны доработки, а это дополнительное время.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Пишется отдельная dll и привязывается как внешняя библиотека к программе ST, или пишется пользовательский драйвер.

В итоге, Ваш формат СМС будет разбираться этим драйвером и распределяться по каналам в Trace Mode.
 
Posted by vbul (Участник № / Member № 1285) on :
 
про разбор смс понятно, а что насчет написания драйвера... на каком языке пишется dll, и выполнял кто-нибудь такую задачу из пользователей, или это могут сделать только разработчкики TM?
 
Posted by vbul (Участник № / Member № 1285) on :
 
хотелось узнать можете ли вы написать драйвер под задачу? То есть если будет расписан весь алгоритм "общения" по смс диспетчерского пункта и объектов и подробный формат смс.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
dll может написать кто-нибудь, разбирающийся в этом, на языке С++.

Для разработки подобного драйвера можно обратиться на адрес si@adastra.ru
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
В следующем релизе будет возможность посылать несколько атрибутов в одном СМС через разделитель.

Т.е. P1=8.5\P2=4.6\T1=65\T2=60

такое СМС запишет, в канал P1 значение 8,5, в канал P2 - 4.6 и т.д.
 
Posted by vbul (Участник № / Member № 1285) on :
 
Когда ориентировочно выйдет новый релиз?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Все вопросы по выходу нового релиза отправляйте на адрес adastra@adastra.ru.
 
Posted by vbul (Участник № / Member № 1285) on :
 
Здравтсвуйте.

У меня сразу несколько вопросов:

Я решаю задачу телеметрии. В проете осуществляется обменн данными по следующей схеме (Объект<> СМС<>МРВ)

1. Мною написана библиотека dll для обмена СМС сообщениями. Каналы получают данные из СМС (назовем такую СМС - СМС данных и аварий), значения каналов с помощью трендов выводятся в график от времени. СМС данных и аварий может придти гораздо позднее, чем она была послана с объекта (в случае загруженности сети, в случае когда МРВ был отключен на какое-то время). Процедура чтения СМС из библиотеки dll, кроме чтения значений каналов из СМС читает и время отправки СМС объектом. Вопрос в следующем как сделать так что бы на тренде значение канала соответсвовало не реальному времени, а времени отправки СМС объектом, т.е время изменения канала соответсвовало времени отправки СМС объектом?

2. В случае аварии на объекте СМС данных и аварий посылается на МРВ немедленно. Если нет аварий на объекте, объект посылает СМС данных и аварий на МРВ с некоторым заданным периодом (например 1 час, т.е. в 00:00, 01:00, 02:00 и т.п.). Если СМС не пришла в заданный срок, то МРВ должен формировать сообщение (индикация и т.п) что мол объект не отвечает. Так как время прихода СМС определяется еще и задержкой оператора сотовой сети, то целесообразно увеличить время котроля прихода таких СМС (например, на 10 мин, т.е. МРВ выдает сообщение что объект не отвечает для нашего примера в случае если СМС не пришла до: 00:10, 01:10, 02:10 и т.п.). Подскажите пожалуйста как реализовать вышеописанную процедуру.

3. Не могли бы вы сбросить пример использования системной переменной @Sound_File для проигрывания wav файла. На форуме уже читали подобные вопросы, но реализовать что-то никак не получается. Задача в следующем: по приходу СМС данных и аварий, в случае аварии должен воспроизводиться звук в зацикленном режиме. Диспетчер по нажатию кнопки имеет возможность отключить звук.

4. Есть отчет тревог. Необходимо реализовать выборку из отчета по времени. Понятно, что это можно сделать посредством фильра. Но как сделать так чтоб диспетчер мог вводить время (период), за которое необходимо просмотреть отчет тревог. Существует ли возможность распечатки отчета в табличном виде или экспорт в Excel, например, или с помощью чего это реализовать.

5. В какой зависимости находиться количество каналов, источников, экранов и т.п. от ресурсов компьютера. На данный момент я заканчиваю проект для одного объекта, но уже при разработке заметны притормаживания. Нужно же завязать 10 таких объектов в одном проекте.

адресс: fedrom1986@mail.ru
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
1. Можно воспользоваться функцией "Запрос времени значения" только время нужно передавать в 45 атрибут раньше значения.

2. Считываете время прихода СМС и текущее, и если оно в течении первых 10 минут часа отрицательное, то значит объект не отвечает

3. Завтра пришлю Вам пример.

4. Правой кнопкой мыши на ГЭ "ОТ узла" и там выбирается время. Вывести можно в наш документ, правда на данный момент фильтры по времени не работают.

5. Прямой зависимости нет. Что Вы подразумеваете под объектом?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
3. Из другого топика, как я понял Вы уже разобрались.
 
Posted by vbul (Участник № / Member № 1285) on :
 
Доброе утро!
1). Ответте пожалуйста на следующий вопрос.
В проекте ТМ есть програама, в которой один аргумент (назовем его argSQL) привязал к входному значению SQL запроса (связь с СУБД). Если входное значение равно 1 выполняется первый SQL запрос. В программе есть цикл в котором по некоторому условию должен выполнятся данный запрос (до 20 раз). Как сделать так чтобы этот запрос выполнялся по несколько раз в теле цикла. Если просто присваивать входному значению argSQL единицу в цикле, то запрос не выполняется нужное количество раз, а всего лишь один.
Я пробовал еще завести один аргумент и прявязать его к атрибуту 39-Отработать канала вызова SQL запроса, но тоже желаемого результата это не дало.

2). У меня к Вам следующий вопрос.
Есть несколько каналов типа float (10 каналов). Значения этих каналов берутся из СМС (написана dll, по разбору СМС). Как сделать так, чтобы пересчет каналов был программный. Цикл вызова программы 1 минута. Программа проверяет наличие новых СМС, если пришла СМС с данными, то программа записывает эти значения в своиаргументы, которые связаны с входными значениями каналов и соответсвенно должна вызвать пересчет этих каналов, при том время пересчета должно быть записано не реальное, а время отправки СМС. Пробовал сделать так: создал канал класса call типа OUTPUT с вызовом SET, привязал к его аргументам все эти каналы по атрибуту 39-отработать (предварительно сделав их тип OUTPUT). В программе два аргумента связал с атрибутами канала call: входное значение и отработать. Ну и по ходу программы последовательно присваюваю этим аргументам единицы. Желаемого результата не получил. В чем я ошибаюсь?
Подскажите как решить данную задачу?

Я уже задавал вопрос как сделать так чтоб время изменения канала было не реальное, а задавалось в прогграмме по времени отправки СМС. Вы ответили: Можно воспользоваться функцией "Запрос времени значения". Но честно говоря не понял этого. Можно примерчик?
fedrom1986@mail.ru
Спасибо за внимание.
 
Posted by vbul (Участник № / Member № 1285) on :
 
Здравтсвуйте.
Хочу задать несколько вопросов по пересчету каналов:
1. Как сделать сдвиг фаз по времи при пересчете нескольких каналов не в циклах CALC. Например есть два канала, период пересчета 1 минута, необходимо сделать так чтобы второй канал пересчитывался на 20 секунд позднее первого.
2. Как сделать так чтобы канал пересчитывался с отчетом периода не от времени запуска МРВ, а от заданного времени, например от 00:00.
 
Posted by vbul (Участник № / Member № 1285) on :
 
Уважаемая техническая поддержка, не могли бы вы ответить на мой вопрос как можно скорее. Мне очень нужно успеть запустить проект на тестирование до Нового года.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
1. Это невозможно. Для чего Вам это нужно?

2. Можно возпользоваться переменной @Recalculation_Flag

3. Пример отправлен

4. Поставьте у одного канала цикл пересчета 40 сек, у другого 1 мин. Первый канал у Вас будет пересчитываться на 40 секунде каждой минуты. Второй в начале минуты.

5. Воспользуйтесь циклом пересчета по времени(13)
 
Posted by vbul (Участник № / Member № 1285) on :
 
1. По первому вопросу: неоднократный вызов SQL запроса из программы.
Ситуация следующаяя: на приемный GSM модем приходят СМС с 10 объектов телеметрии, соответсвенно на период опроса модема в модеме может присутствовать 10 СМС. Не исключена возможность прихода нескольких СМС с одного объекта телеметрии. Программа проверяет наличие СМС, расшифровывает, и, если СМС соответсвует СМС с объекта, записывает данные в каналы и выполняет SQL запрос на вставку значений каналов в соответсвующую таблицу базы данных Access. Модем имеет 20 ячеек памяти для входящих СМС. Получается чтоб реализовать данную операцию необходимо писать 20 программ которые будут именно работать с определенным номером СМС в памяти модема, должны вызываться последовательно? Странно...
Вопрос:
2. Так как любая программа является каналом типа Call, то получается нельзя и программу несколько раз вызвать в теле другой программы? Для чего это нужно: хотел разделить обработку аргументов одной программы по нескольким, во избежании путаницы.

3. Спасибо, за пример.

4. По поводу разности фаз в пересчете каналов:
"Поставьте у одного канала цикл пересчета 40 сек, у другого 1 мин. Первый канал у Вас будет пересчитываться на 40 секунде каждой минуты. Второй в начале минуты."
Как понимать правильно, а если я поставлю период пересчета одного канала 40 минут, а другого 1 час - то это равносильные примеры?
Как определяется относительность в пересчете каналов, относительно минуты, часа, секунды?
Возвращаясь к Вашей цитате; если мне нужно вести пересчет канала каждые 40 (через 40 секунд) секунд, то как это сделать в данном случае.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
1. Может лучше сделать 20 SQL запросов, в каждый из которых будет записываться свои аргументы, а потом последовательно выполнить их. И попутно вопрос, почему Вам нужно выполнить все 20 вычислений за один цикл?

2. Что значит (для чего необходимо) вызвать программу в данном случае? Аргументы чужой программы Вы можете обрабатывать безприпятственно.

4. Если Вы ставите тип пересчета сек, мин и т.д. Вы указываете тот делитель при котором будет обрабатываться канал.

Например, если Вы поставите 21 секунду, то канал обрабатывается на 0, 21 и 42 секунде каждой минуты.

Чтобы обрабатывать каждые 40 сек, нужно выставить подходящее число в циклах Calc.
 
Posted by vbul (Участник № / Member № 1285) on :
 
Им надо написать ответ:

Спасибо за ответ.

1. Сделал в одной связи с субд 20 SQL запросов, после перезапуска ТМ эта связь не открывается, а ТМ зависает полностью, спасает (Ctrl-Alt-Del). Пришлось удалить такую связь с СУБД. Подумал на счет опроса в цикле 20 раз и вспомнил про глобальные переменные. Чтобы решить этот вопрос буду вызывать программу чаще, но опрос будет вестись относительно глобальной переменной (счетчик прочитанных СМС от 1 до 20). Думаю так будет правильней.

2. Так и решаю проблему с вызовом другой программы. По поводу Вашего замечания "Аргументы чужой программы Вы можете обрабатывать безприпятственно". В данном случае я хотел помимо основной программы (прграмма обработки входящих СМС) написать еще несколько подпрограмм, чтоб не было путаницы в основной когда чило аргументов дойдет до 100. То есть хотел разделить присваивание аргументов программы. Например, в СМС каждого объекта телеметрии содержит 10 параметров. Я хотел сделать так: эти параметры присваиваются 10 аргументам программы. В зависимости от того с какого объекта пришла СМС вызывать соответсвующую подпрограмму в которой значение этих аргументов передается каналам для данного объекта телеметрии и не посредственно эта же программа делает запрос пересчета только этих каналов. С таким разделением легче ориентироваться во всем проекте. Можно все это сделать и в основной программе, в данном случае в основной программе будет очень много аргументов и соответсвенно большая путанница.
Такой концепции я придерживался в данном вопросе.
4. Пересчет должен происходить через определенные периоды, например, запуск одной программы должен быть через 1 час, а запуск второй должен отставать на 10 минут по фазе. Я подумал и наверно сделаю пересчет каналов по времени, задав разность фаз.

Еще хочу задать вопрос по примеру который вы мне выслали.
Почему когда я ввожу время а затем значение канала, на тренде это изменение отображается как текущее, а когда нажимаю кнопку архивные значения, то этого значения на графике нет.
Еще раз опишу проблему которую мне нужно реализовать.
Пришла СМС с данными для объекта телементрии с номером №1, программа записвает эти данные в свои аргументы.
Вызывается программа соответсвующая объекту телеметрии №1 (программа которая записывает аргументы основной программы в каналы первого объекта телеметрии). В этой программе время прихода СМС передается в 45 атрибут каждого канала (время изменения), а значения аргументов главной программы передаются во входные атрибуты каналов. Далее должен произвестись принудительный пересчет каналов.
На тренде должна отображаться ломаная вершины которой соответствуют значениям каналов и времени их изменения, которое равно времени отправки СМС. Подскажимте как это сделать. А то получается график ступеньками, и почему то не хочет изменение канала на графике отображаться в то время в которое необходимо. необходимо чтобы точки (изменения каналов) могли вставлятся в график в прошедшем времени (вдруг СМС задержалась или диспетчерский комп был выключен ну и т.п.) .
Скорее всего я что-то недо понимаю, поправте пожалуйста, если у Вас есть возможность сделать и послать мне пример, то я очень буду рад.
 
Posted by vbul (Участник № / Member № 1285) on :
 
Вы предлагаете воспользоваться системной переменной @Recalculation_Flag при принудительном пересчете каналов. А как это реализовать можно по подробней в книгах и хелпе описывается только поверхностно.

[ 18.09.2015, 11:16: Сообщение отредактировал / Message edited by AdAstra Technical Support ]
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
а) На реальном тренде Вы этого увидеть не сможете. Только в архивном режиме. Туда записи попадают, но чуть позже.

б) Ставите у канала цикл пересчета флаги. У станавливаете @Recalculation_Flag = 1. А когда нужно разрешить пересчет каналов =0. Правда в этом случае будет происходить пересчет всех каналов, имеющих тип пересчета "флаги".
 
Posted by vbul (Участник № / Member № 1285) on :
 
Слушай напиши им вопрос:

Здравсвуйте.
Разбираюсь с Вашим примером, не могу понять некоторые вещи.
Кратко напомню проблему. Приходит СМС в которой записано значение канала. На тренде необходимо фиксировать изменения канала не в реальном времени, а по времени отправки СМС.
Вы писали: "...Меняете время в проекте, потом значение канала, потом смотрите запись в архиве."

В вашем примере ввожу время, ввожу значение канала. На тренде отображается только изменение канала в реальном времени. Изменение не хочет прописываться по заданному времени прихода СМС.
Может я не правильно понимаю фразу "смотрите запись в архиве", разъясните пожалуйста.
 
Posted by vbul (Участник № / Member № 1285) on :
 
извините не заметили вторую страницу.
но поясните через какое время происходит запись в архивный тренд, то есть когда можно видеть такую запись на тренде в архивном режиме
 
Posted by vbul (Участник № / Member № 1285) on :
 
Здравсвуйте.
Ответте пожалуйста на следующие вопросы:
Программа на ТМ6 должна получить данные с нескольких объектов (тепловые пункты).
1. На объекте стоит тепловычислитель Логика СПТ943, к которому подключены датчики и GSM модем. Возможно ли установить модемное соединение с тепловычислителем и получить данные. Если это возможно, то просим Вас подробно описать эту процедуру.
2. Альтернатива вышеописанной процедуре - использование ОРС сервера фирмы Логика. Я так понимаю, что ТМ6 может быть подключен к ОРС серверу. Фирма Логика поставляет бесплатный ОРС сервер вместе сос своей продукцией. Подскажите пожалуйста как подключить данный сервер. Нет ли у Вас примеров?
3. В счетчиках СПТ943 содержатся архивы данных, можноли считывая архивы строить соответсвенно архивные тренды?
 
Posted by vbul (Участник № / Member № 1285) on :
 
Добрый день!
Существует ли возможность колллективной разработки одного проекта одновременно несколькими разработчиками? Например по сети: один ПК сервер остальные клиенты... В руководстве я не нашел этого.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
1. Данные поступать в архив должны в течении 2-3 минут, а если у Вас паралелльно пишутся частоизменяющиеяся каналы, то в пределах минуты.

2. а) Установка модемного соединения между компьютером и GSM модема контроллера происходит за рамками Trace Mode. SCADA будет общаться с контроллером как по обычному COM-порту.

б) Примеров нет. Использование OPC сервера логика ничем не отличается от работы с другими OPC серверами.

в) Да, это возможно.

3) Нет, групповая разработка не предусмотрена.
 
Posted by vbul (Участник № / Member № 1285) on :
 
Добрый день!
Ответьте пожалуйста еще на один вопрос!
В проекте надо,чтобы канал пересчитывался в начале каждого часа ... выбрал соответсвенно в свойствах канала период пересчета 1 еданица измерения: в начале часа...
не пересчитывает.
В руководстве пользователя (том 1) написано пересчет в начале часа , а в справке ТМ6 написано один раз в сутки в начале часа, час задается в окошке период..
Почему такие разногласия? Как в реальности сделать пересчет канала в начале каждого часа и можно ли ВООБЩЕ?
Спасибо за внимание!
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
есть цикл пересчета
(3) час – период в часах
а есть
(11) в нач. часа – один раз в сутки в начале часа, заданного атрибутом Период

вам нужно использовать первый и поставить 1 час.
 
Posted by vbul (Участник № / Member № 1285) on :
 
Добрый день!
1. Разясните пожалуйста как сделать так, чтоб пересчет канала был в начале каждого часа, а не с интервалом 1 час?
2. С помощью @Recalculation_Flag можно принудительно пересчитать каналы, но проблема в следующем нужно пересчитывать не все каналы у которых установлен период пересчета флаг, а по группам. Программа должна вызывать пересчет канала, взависимости о того какие данные пришли.
 
Posted by vbul (Участник № / Member № 1285) on :
 
Еще раз, добрый ден.
Спасибо за совет, хотя я считаю можно бы было реализовать готовый период пересчета канала, который бы пересчитывался в начале часа.

Хочу задать еще один вопрос тестовому проекту (отправил на Ваш адрес Test.prj). Вроде бы элементарные действия, но что-то я недопонимаю некоторые моменты.
В поекте создан канал типа float, который архивируется в SIAD1. На экране имеется два тренда один типа "Тренд" другой типа "Архивный тренд". На каждом тренде создана кривая которая привязана к реальному значению канала. Для канала установлен флаг "Запрос времени значения".
Крутится программа которая время от времени (реализовано с помощью Случайного числа). Присваивает атрибуту время изменения канала значение времени, а во входное значение канала передает значение генератора синусойда. (В реальном проекте значение времени канала берется как время отправки принятой СМС, ну и эта же СМС содержит значение канала).
Проблемы в следующем:
1. Не поисходит архивирования канала, хотя все вроде бы все свойства канала и узла выставил правильно. Неотображается соответсвенно архивный тренд, который должен содержать график изменения этого канала. Вы писали что запись в архив идет раз 2-3 минуты, ждал 20 минут, на архивном тренде ничего не появилось. После повторного запуска проекта, старый график должен быть прорисован, хотя на тренде "Тренд", график начинается заново, а на архивном так по прежнему ничего и нет.
2. Второй вопрос такой: некоторые точки на тренде ну никак не могут соответсвовать синусойде, они либо выше либо ниже, если мысленно построить синусойду по этим точкам.

Спасибо за внимание.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
1. На данный момент канал с циклом пересчета 1 час обрабатывает в 00 минут 00 секунд каждого часа. В след. релизе появится возможность смещать время отбработки относительно 0 минуты.

2. В таком случае надо писать программу, которая в зависимости от критерия, будет включать канал, а потом все выключать.
 
Posted by vbul (Участник № / Member № 1285) on :
 
ДОбрый день!
А на последние 2 вопроса, что с тестовым примером?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Время значения канала, которое Вы присваеваете 45 атрибуту, все время равно 0. Естественно все записи в архиве имеют это время.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
В смысле время 01.01.1970 03:00:00
 
Posted by vbul (Участник № / Member № 1285) on :
 
Добрый день.

Извините что допустили такую нелепую ошибку в тестовом проекте, просто хотели показать прпоблему возникающую в реальном проекте, но не получилось.

Для примера снова Вам отравил тестовый исправленный проект, и, соответсвенно вопросы хочу задать по этому проекту:
1. Запускаю проект в МРВ среды разработки. В архив СИАД записываются некоторые данные. На тренде отображаются эти данные как текущие и как архивные - работает так как и предполагалось. Запускаю проект в исполняемом модуле МРВ. Архивация не происходит, в чем разница и почему не происходит архивация данных. На архивном тренде ничего не отображает.
2. В проекте создан графический элемент "Тренд". Почему в МРВ среды разработки на нем кнопка "Текущие/Архивные значения" активна и с помощью нее можно переключаться между архивными и текущими данными, а в МРВ исполняемого модуля эта кнопка не активна? На графическом же элементе "Архивный тренд" эта кнопка активна в обоих МРВ (исполняемом и среды), почему нет возможности переключаться между архивными и текущими данными.
Как было Вами сказано основное различие МРВ среды разработки от МРВ исполняемого модуля тем что МРВ среды разработки работает ограниченное время. Есть ли еще отличия?

Спасибо за внимание.
 
Posted by vbul (Участник № / Member № 1285) on :
 
пример отправлен Вам на hotline3@adastra.ru
 
Posted by vbul (Участник № / Member № 1285) on :
 
Добрый день!
Рассмотрите вопрос пожалуйста и прокомментируйте пример!
Спасибо за понимание!
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
У Вас куплен МРВ без поддержки архива.
 
Posted by vbul (Участник № / Member № 1285) on :
 
Добрый день.

Хочу сделать замечание по IDE TM 6.06.
При создании SQL запроса с помощью мастера необходимо создать список аргументов, а после чего привязывать их к столбцам базы данных. Неудобство в следующем: при создании большого числа аргументов не появляется вертикальной прокрутки, что затрудняет дальнейшую привязку аргументов к столбцам базы данных. Приходится растягивать окно, чтобы выбрать соответсвующий аргумент. А что будет если создать список аргументов превышающий размер экрана?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Уточните при какой операции не появляется полоса прокрутки. При попытке создать запросы SELECT и INSERT с числом аргументов 100 полоса появлялась.
 
Posted by vbul (Участник № / Member № 1285) on :
 
Добрый день!
Да есть полоса прокрутки , но чтиоб видеть нижние аргументы приходится каждый раз растягивать окно, то есть на начальном этапе как только диалоговое окно с аргументами открывается то полоса прокрутки не соответсвует масштабу(кол-ву аргументов), после того как растянешь то тогда видно все и нижние аргументы...
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Можете выслать нам скрншот, не можем понять, где искать такую проблему?
 
Posted by vbul (Участник № / Member № 1285) on :
 
Добрый день!
отправил скриншот с пояснением на hotline3@adastra.ru
 
Posted by shugai (Участник № / Member № 1285) on :
 
Возможно ли реализовать телеметрию нескольких объектов с использованием радиоканала (радиомодемов), контроллеров ICP-CON 7188 и, соответсвенно, Trace Mode. Должен быть диспетчерский центр и несколько объектов телеметрии с которыми ведется связь посредством радиоканала.

Спасибо за внимание.
 
Posted by shugai (Участник № / Member № 1285) on :
 
Какие лучше использовать радиомодемы?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
1. Спасибо за скриншот, будем разбираться.
2 и 3. Настройка и подключение радиомодемов происходит вне Trace Mode. Для Trace Mode это обычные COM-порты, по которым идет обмен.
 
Posted by shugai (Участник № / Member № 1285) on :
 
Здравствуйте.

У меня возникла проблема с воспроизведением аудио файлов с использованием системной переменной @Sound_File.
Программа имеет аргумент привязанный к значению системной переменной @Sound_File. Если посылаем 1 - то проигрывается 1.wav, соответсвенно. В проекте каждые 10 секунд выполняется программа, которая присваивает значению @Sound_File 1. На экране создана кнопка "Выключить звук", которая также привязана к значению @Sound_File. При нажатии кнопки в значение @Sound_File передается -1, что соответсвенно останавливает воспроизведение файла. Проблема в следующем: после запуска проекта, программа запускает воспроизведение файла 1.wav, нажимаем на кнопку "Выключить звук" - воспроизведение файла прекращается, но при следующей отработке программы файл уже не воспроизводиться, в чем проблема?
Может что-то я недопонимаю? Помогите пожалуйста разобраться.

Архив тестового проекта - TestSoundFile.rar отправлен Вам на адресс hotline3@adastra.ru
 
Posted by shugai (Участник № / Member № 1285) on :
 
Добрый день!
Ответьте, пожалуйста, на вопрос! Очень мало времени!
Спасибо за понимание!
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Проблема в использовании системной переменной напрямую. В этом случае создаются два разных виртуальных канала. В один Вы посылаете 1, в другой -1. Т.к. в первом 1 не сбрасывается, то воспроизведение звука не восстанавливается.

Создайте из переменной Soundfile канал и работайте с ним.
 
Posted by shugai (Участник № / Member № 1285) on :
 
Здравтсвуйте, уважаемая тех-поддержка.
У меня снова к Вам вопрос.
В справке сказано, что графический элемент ОТ узла имеет настройки, которые прописываются в файле TMcom_<ordinal>.cnf. Я хочу чтоб в ОТ узла отображались все строки отчета тревог, соответсвенно прописываю в этот файл:
MEMTGRP=0
END_OF_CNF

При запуске не происходит отображения всех строк отчета тревог, не могу понять в чем проблема, хотя все записи в файле есть. Пробовал указывать разные параметры. Заметил, что отображение отчета тревог идет за последние два дня (фильтры не использую). Подскажите пожалуйста как решить данный вопрос.
 
Posted by shugai (Участник № / Member № 1285) on :
 
Добрый день!

Есть небольшое замечание!
При открытии проекта test.prj ИЗ TM6.0.6 после сохранения в МРВ нажимаю кнопку запустить профайлер, НО если открыть проект не из ТМ а просто двойным щелчком левой клавиши мыши, то сохранить для МРВ работает, а вот кнопка запустить профайлер не активна... порядок действий в первом и втором случае одинаковый...
думаю Вам это пригодится!
таккая ситуация наблюдалась на 2 компах что я пробовал... переустановка ТМ 6.0.6 не помогла
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
1. Какие именно строки не попадают в графику?

2. Мы в курсе этой ситуации.
 


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



Powered by Infopop Corporation
UBB.classic™ 6.7.2