Ваши комментарии

Еще один вопрос? Возможно ли реализовать функцию экспорта данных из бд в соответствии с каким-либо условием, то есть с выбором интервала дат, шага экспорта,пути экспорта и т.п. точно также как это реализовано в Просмотре графиков! Чтобы экспорт можно было делать в скрипте!
С уважением, Евгений
Добрый день! Планируете ли Вы добавлять в редактор скриптов функции доступа к бд: чтения, записи, выборки?

С уважением, Евгений
Добрый день! У нас на производстве при внедрении SL (128 тэгов) появилась небольшая проблема. Опишу её суть. Один из рабочих участков оснащен приборами "Термодат"; значения на приборах отображается в виде числа с плавающей точкой, однако на компьютер возможно передать только целое значение(в этом особенность этих приборов,поэтому даже меняя тип переменной в opc-сервере на вещественный, мы получаем на выходе ноль), но на мониторе должно отображаться значение с плавающей точкой.
Изначально попробовал использовать поле "Формула" в Редакторе каналов, вводя в него следующее: val/10. Результат это действия можно показать на примере: на приборе значение температуры - 24,7, на программе Монитор - 24. Таким образом на лицо, проблема с типом данных, в котором представлено значение, передаваемое в программу.
Решил, что необходимо использовать скрипт, в котором в вещественную переменную записать значение из физического канала, затем применить к нему выше написанную формулу, а результат вывести в виртуальный канал. Написал скрипт, все получилось. Теперь оставалось только создать нужное число виртуальных каналов(пропорционально числу физических каналов, а именно 108). Сделав это обнаружил что из виртуальных каналов в Мониторе отображаются только 19(108 физических каналов и 1 виртуальный канал со скриптом сделаны невидимыми). Долго не мог понять в чем дело. Понял, когда подсчитал общее число задействованных каналов - 128. Таким образом, я пытался задействовал суммарно 217 каналов, что намного превышает число каналов доступных по лицензии. На этом всё и встало!
Затем появилась идея,а вместе с ней и предложение по доработке!! Суть идеи в том, чтобы добавить в Редакторе для всех физических каналов поля "Тип переменной" и "Формат переменной". Изначально Тип переменной должен иметь тип заданный в opc-сервере, формат переменной будет меняться в зависимости от типа - принцип такой же как у виртуальных каналов. Список типов такой же как и у виртуального канала, хотя я бы еще добавил строковый тип. Для типов Datetime и Time также можно добавить различные форматы даты и времени(поле Формат переменной). Главное цель доработки - это конвертация типов, для удобного представления значений, приходящих с приборов, и конечно исчезнет необходимость использовать избыточное число виртуальных каналов.

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

у меня обычный перебор не получается
да этого не хватает
Здравствуйте!Ответьте когда ждать релиза?
Евгений, я не вижу причины использовать скрипт для такой простой задачи, у каждого физического канала, есть свойство "формула", в которой Вы можете задать пересчёт получаемого значения.


Дело в том, что значение с прибора Termodat на opcserver приходит в виде целого числа, например, на приборе температура - 27,4 градуса, а на opcserver приходит 274. При применении к нему формулы val/10 на выходе получаем 27.
Решается это только в скрипте - преобразованием значения в переменную типа Real, а далее применение к нему формулы :

var t:real; ///действительное число t:= ReadValue('COM1/dev2(addr=2)/var1'); WriteValue('Virtual channel 1', t/10);
по-моему я чего-то не понимаю. мнемосхема же просто должна выводить значение, тоже что и на Мониторе

На мнемосхему можно поставить компонент, для записи значения в канал.

этот компонент называется "цифровой задатчик"?


Сервис поддержки клиентов работает на платформе UserEcho