PDA

Просмотр полной версии : период архивации



StanislavU
13.01.2008, 19:53
возможно ли программно изменять период архивации?

Kirill
14.01.2008, 10:03
возможно ли программно изменять период архивации?

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

StanislavU
14.01.2008, 18:40
ок, спасибо

Филоненко Владислав
14.01.2008, 20:51
а еще есть режим архивации по команде, тут полный простор для творчества...

biga
22.01.2008, 19:02
Подключил (ппероснальное спасибо Кириллу!) к плк100 мву +мва, использую Овен протокол. Архивирую в память плк. Только вот переменные типа byte и sint пишутся а float и стринг ни в какую : для флоата 0 вместо температуры а для стринга есть набор символов да только он не меняется при изменении температуры. Температурки у меня не высокие и точность не так важно так что я и синтом обойдусь в этот раз, да и память сэкономлю. Но как быть в следующий раз?
И еще вопрос по архивации: в файл писать - это понятно - все таки указываю имя файла. А если канал ТСР выбрать то где же мне ети данные искать?

Филоненко Владислав
22.01.2008, 21:17
1. по флоатам - пришлите проект.
2. TCP/IP - в данном случае ПЛК выступает в качестве серверной стороны. На ПК (или другом ПЛК) необходимо написать код клиента, к-й будет соединяться с ПЛК-сервером по его IP и указанному порту. После установления коннекта через соединение пойдёт поток данных из архиватора в том-же формате, что и записывается в файл.
К сожалению, пока у нас такого приложения не написано, т.к. не было заинтересованных потребителей.

biga
29.01.2008, 11:35
с флоатом как и со стрингом разобрался самостоятельно, хотя если бы информация была в описаниии PLC_Configuration_OWEN то потратил бы меньше времени на освоение методом "осознанного тык":( .
В установках стоит ASCII но байтовые переменные пишутся в хексе а стринговые - в обратной последовательности и с разделителем 3, т.о. я узнал открыл нового ...
попробовал реализовать ТСР/IP архивирование. Желательно таки уточнить протокол тк я пользую функцию TCP Read у которой есть 4 моды (standard, buffered, CRLF, immediate) соответственно мне какую то нужно выбрать.
И наконец еще вопрос со HMI. Сколько времени действует временная лицензия? При установке я увидел срок 14 дней. Прошло уже 22 а визуализация таки работает. Может для простой визуализации лицензия и не нужна вовсе?

Филоненко Владислав
29.01.2008, 12:00
Проблему с реверсированием стринга мы решим в ближайшее время, мы о ней знаем.
По TCP/IP - не знаю, что это за режимы (standard, buffered, CRLF, immediate) и с такой программой не работал. Можете её прислать на plc_prog@owen.ru.

Протокола как такового нет. Устанавливается соединение и передаются данные от ПЛК как есть.

Kirill
29.01.2008, 15:36
И наконец еще вопрос со HMI. Сколько времени действует временная лицензия? При установке я увидел срок 14 дней. Прошло уже 22 а визуализация таки работает. Может для простой визуализации лицензия и не нужна вовсе?

HMI по идее работает по полчаса, а потом ее надо перегружать. При этом на самом компе она может стоять сколько угодно долго.

biga
29.01.2008, 16:32
Проблему с реверсированием стринга мы решим в ближайшее время, мы о ней знаем.


Можно не спешить решать проблему реверсирования стринга если информировать об этом пользователя. :)
Так же не лишне сообщить в мануале, что в архив можно записать данные только глобальных переменных типа output (по крайне мере мне записать в архив данные с input не удалось).

biga
29.01.2008, 16:44
По TCP/IP - не знаю, что это за режимы (standard, buffered, CRLF, immediate) и с такой программой не работал. Можете её прислать на plc_prog@owen.ru.

Протокола как такового нет. Устанавливается соединение и передаются данные от ПЛК как есть.

я пользовал функцию LabView 7.1 TCP read для ТСР client.
ей нужно указать количество байтов для чтения и выбрать одну из мод:

mode indicates the behavior of the read operation.


0 Standard (default)—Waits until all bytes you specify in bytes to read arrive or until timeout ms runs out. Returns the number of bytes read so far. If fewer bytes than the number of bytes you requested arrive, returns the partial number of bytes and reports a timeout error.
1 Buffered—Waits until all bytes you specify in bytes to read arrive or until timeout ms runs out. If fewer bytes than the number you requested arrive, returns no bytes and reports a timeout error.
2 CRLF—Waits until the function receives a CR (carriage return) followed by a LF (linefeed) within the number of bytes you specify in bytes to read or until timeout ms runs out. Returns the bytes up to and including the CR and LF. If the function does not find a CR and LF, returns no bytes and reports a timeout error.
3 Immediate—Waits until the function receives any bytes. Waits the full timeout only if the function receives no bytes. Returns the number of bytes so far. Reports a timeout error if the function receives no bytes.

Скопировал из хелпа наслучай если у Вас нет лабвью.

Филоненко Владислав
29.01.2008, 17:32
Больше всего подходит режим 3, т.к. не известно, сколько байт и когда придёт. Тамаут не более 100 мс, поставить вызов функции в бесконечный цикл и принятые байты накапливать в буфере и анализировать на конец строки.
Режим 2 вроде делает то-же, но отлаживаться лучше на режиме 3.