PDA

Просмотр полной версии : CП307-P запись на флеш



Владимир Технос М
27.05.2016, 13:48
24600

если цикл взять секунда, то в файл сохраняет, правда проскакивает через отсчётов 30-40 по 10-20 пустых строчек или с мусором
если выбираю минуту - всё, не пишет.

как это работает?

Владимир Технос М
27.05.2016, 13:57
Обязательно ли использовать бит управления?

Евгений Кислов
27.05.2016, 14:04
Обязательно ли использовать бит управления?

Нет.

Описание элемента Архивирование на USB приведено в РП.

В аттаче пример ведения архива с помощью функциональной области (он тоже рассмотрен в РП).

petera
27.05.2016, 14:07
24600

если цикл взять секунда, то в файл сохраняет, правда проскакивает через отсчётов 30-40 по 10-20 пустых строчек или с мусором
если выбираю минуту - всё, не пишет.

как это работает?
На самом деле выборка работает с регистрами панели (см. вкладку "Хранилище")
Как только наберется 60 записей, то они скидываются на флешку.
В вашем случае один раз в час. По этому и кажется, что "...все, не пишет"

ЗЫ, Кроме того Вы ничего не сказали, какую переменную архивируете, может это регистр PSW 256 или другой из области хранилища. Ведь по умолчанию хранилище начинается с регистра PSW256 и занимает в вашем случае область по PSW687(если используется дата и время).
И вполне возможно, что Вы сами, используя эти регистры где-нибудь еще, портите выборку, по тому и "мусор"

Владимир Технос М
27.05.2016, 14:38
ЗЫ, Кроме того Вы ничего не сказали, какую переменную архивируете, может это регистр PSW 256 или другой из области хранилища. Ведь по умолчанию хранилище начинается с регистра PSW256 и занимает в вашем случае область по PSW687(если используется дата и время).
И вполне возможно, что Вы сами, используя эти регистры где-нибудь еще, портите выборку, по тому и "мусор"

Архивирую много переменных.., и совсем не понятно с размером хранилища 24603

petera
27.05.2016, 14:43
Архивирую много переменных.., и совсем не понятно с размером хранилища 24603

Мало информации сколько переменных, это регистры ПЛК или панели, формат Word/DWord.
Размер хранилища для выборки, т.е. архива, можно подсчитать здесь http://www.owen.ru/forum/showthread.php?t=9992&p=139595&viewfull=1#post139595

ЗЫ Для одной переменной Word, при 60 точках( почему-то назвали кол.записей в файле) нужно 431 регистр
4+(60+1)*(1+6)=431
Для двух переменных
4+(60+1)*(2+6)=492
для трех
4+(60+1)*(3+6)=553
и т.д.

Глядите, чтобы Ваш архив не пересекался с другими архивами или графиками.

ЗЫ2.
Естественно в качестве хранилища можно использовать PFW, тогда освободите регистры PSW для своих нужд и кроме того не записанный вовремя архив перед отключением питания не пропадет.

Владимир Технос М
27.05.2016, 15:01
24604

переменных много, и Word и Вооl а как задать диапазон для хранилища? Пост выше место только для одного регистра ..

petera
27.05.2016, 15:12
http://www.owen.ru/forum/attachment.php?attachmentid=24604&stc=1

переменных много, и Word и Вооl а как задать диапазон для хранилища? Пост выше место только для одного регистра ..

Формула в посте по ссылке

Для выборки
N=4+(n+1)*(Kw+2*Kdw+6) регистров, если выбран способ "ymrhms"
или
N=4+(n+1)*(Kw+2*Kdw) регистров, если выбран способ "none".
где n-количество записей в выборке, заданное в ее настройках, см первый рисунок.
Kw-количество переменных Word
Kdw--количество переменных DWord
Как Вы умудряетесь переменные Вооl архивировать?

ЗЫ. В новой панели можно еще и String архивировать, естественно в формуле этого нет.

Владимир Технос М
27.05.2016, 15:39
Как Вы умудряетесь переменные Вооl архивировать?
ЗЫ. В новой панели можно еще и String архивировать, естественно в формуле этого нет.
24605

вот так..., но сейчас закралось сомнение будет ли работать.., ещё не проверил.
А string в моей панели есть!

petera
27.05.2016, 15:54
24605

вот так..., но сейчас закралось сомнение будет ли работать.., ещё не проверил.
А string в моей панели есть!
Ну и где здесь битовая переменная?
24606

В файле в столбце для этой переменной будет число типа 1,234 с тремя знаками после запятой

petera
27.05.2016, 16:51
По поводу записи в архив событий, т.е. переменных типа bool.
Можно сделать так.
В одном регистре(Word) можно хранить два символа ASCII, например Ок= 4F 6B, Er= 45 72.
И если при событии, авария например, записывать в регистр 7245hex=29253 (ВНИМАНИЕ. Байты нужно в регистре переставлять местами), то в архиве будет текстовое сообщение "Er".
Если аварии нет, то можно записывать в регистр или 6b4f=27471, или просто 0, последний вариант наверно более предпочтителен
Для одного регистра
24609

24610 24611

24612
Получится так

https://www.youtube.com/watch?v=tEAMMx_4gjo

Соответственно в файле будет так
24613

petera
27.05.2016, 18:04
По поводу количества записей в настройке.
Нет смысла делать 60 записей, можно одну-две, и все.
Все равно новые записи дописываются в конец файла, если задано фиксированное имя файла, за то резко уменьшится размер хранилища.:rolleyes:
Если у Вас цикл стоит 1 минута, и если задать Кол. записей=1, то каждые две минуты в файле будут добавляться две новые строчки.

Владимир Технос М
30.05.2016, 08:23
:cool: Спасибо за исчерпывающий ответ!!!!

Бинкевич Игорь
10.09.2016, 09:48
Создан небольшой проект на СП-307 Р, создан элемент архивирование на USB.
(архивирование по событию)
Выявлена проблема: архив пишется только если активен тот экран на котором размещен элемент архивирования. Как обеспечить запись вне зависимости от экрана?

Евгений Кислов
10.09.2016, 10:12
Создан небольшой проект на СП-307 Р, создан элемент архивирование на USB.
(архивирование по событию)
Выявлена проблема: архив пишется только если активен тот экран на котором размещен элемент архивирования. Как обеспечить запись вне зависимости от экрана?

Правой кнопкой на элемент архивирования - команда Глобальный.