Несколько вопросов по SIMP Light

Avatar
  • обновлен
Скачал демо! Сразу же возникли вопросы!
1.Наличие в полной версии WEB и Sql сервера?
2.Есть удаленный клиент?
3.Есть ли ФБ регуляторов типа ТРМ?
На первый взгляд понравилась простота, по сравнению с комплексом Master-Scada.
Avatar
Barbus
А какой будет ориентировочный суточный трафик клиент-сервер? Допустим, 300 тегов, опрос раз в секунду.
Avatar
Евгений Горло
P.S. Задача с перебором в цикле решена, в ближайшем релизе будет.
здравствуйте! что именно сделано? можно пример в коде как это должно работать?

у меня обычный перебор не получается
Avatar
SIMP Tech (Сергей)
Здравствуйте!Ответьте когда ждать релиза?
В течении одного - двух дней.
Avatar
Евгений Горло
Здравствуйте!Ответьте когда ждать релиза?
Avatar
SIMP Tech (Сергей)
как вариант! создать массив..и поместить в него, в ручную, имена всех каналов..затем обрабатывать этот массив в цикле..единственный минус что нужно в ручную вводить имена 100 каналов

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


Дело в том, что значение с прибора 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);



Ок. Понятно. Тогда я бы сделал следующим образом, к примеру у меня есть 100 физических каналов, мне будет необходимо 100 виртуальных, причём только в одном из них есть скрипт, остальные 99 "без скриптов", в скрипте производим обработку всех каналов, а пишем посчитанное значение уже в те 99 виртуальных канала. Как я писал выше перечисление в цикле имен каналов не получиться сделать(в ближайшее время мы постараемся решить эту задачу).

как вариант! создать массив..и поместить в него, в ручную, имена всех каналов..затем обрабатывать этот массив в цикле..единственный минус что нужно в ручную вводить имена 100 каналов
Avatar
SIMP Tech (Сергей)
Евгений, я не вижу причины использовать скрипт для такой простой задачи, у каждого физического канала, есть свойство "формула", в которой Вы можете задать пересчёт получаемого значения.


Дело в том, что значение с прибора 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);



Ок. Понятно. Тогда я бы сделал следующим образом, к примеру у меня есть 100 физических каналов, мне будет необходимо 100 виртуальных, причём только в одном из них есть скрипт, остальные 99 "без скриптов", в скрипте производим обработку всех каналов, а пишем посчитанное значение уже в те 99 виртуальных канала. Как я писал выше перечисление в цикле имен каналов не получиться сделать в текущей версии.

P.S. Задача с перебором в цикле решена, в ближайшем релизе будет.
Avatar
Евгений Горло
Евгений, я не вижу причины использовать скрипт для такой простой задачи, у каждого физического канала, есть свойство "формула", в которой Вы можете задать пересчёт получаемого значения.


Дело в том, что значение с прибора 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);
Avatar
SIMP Tech (Сергей)
Объясню суть задачи.Работаем с приборами Termodat. Значение температуры с прибора в программу приходит целым числом(тип Word), на приборе значение отображается в виде числа с плавающей точкой(вещественное). Нам нужно, чтобы значение в программе было тоже с плавающей точкой. В принципе задача решается с использованием виртуальных каналов. То есть скрипт в виртуальном канале преобразует значение с прибора в вещественное и выводит его в этом же виртуальном канале.

Евгений, я не вижу причины использовать скрипт для такой простой задачи, у каждого физического канала, есть свойство "формула", в которой Вы можете задать пересчёт получаемого значения.
Avatar
Евгений Горло
по-моему я чего-то не понимаю. мнемосхема же просто должна выводить значение, тоже что и на Мониторе

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

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