Вход

Просмотр полной версии : СП310-Р, тренды, usb, csv



brmvsrg
13.04.2023, 08:49
Здравствуйте, подскажите по трендам.
Необходима циклическая запись текущий значений (14 регистров) в cvs на usb. По нажатию кнопки должна происходить выгрузка данных из файла (я так понимаю нужно выгрузить в PFW область) и открытие окна с историческим графиком.
С записью в файл разобрался, а считывание не получается.

Не понятно зачем в этом элементе автозапись текущий значений регистров используется. Если ставлю галочку на запись по биту (и не включаю бит) , то по нажатию кнопки импорта csv в графике какая-то ерунда вместо времени и даты и график пустой.
Дата и время в файле стандартные HH:MM:SS и YY.MM.DD в настройках импорта такой же формат.

Пока пробую в эмуляторе

kondor3000
13.04.2023, 09:49
Здравствуйте, подскажите по трендам.
Необходима циклическая запись текущий значений (14 регистров) в cvs на usb. По нажатию кнопки должна происходить выгрузка данных из файла (я так понимаю нужно выгрузить в PFW область) и открытие окна с историческим графиком.
С записью в файл разобрался, а считывание не получается.

Не понятно зачем в этом элементе автозапись текущий значений регистров используется. Если ставлю галочку на запись по биту (и не включаю бит) , то по нажатию кнопки импорта csv в графике какая-то ерунда вместо времени и даты и график пустой.
Дата и время в файле стандартные HH:MM:SS и YY.MM.DD в настройках импорта такой же формат.

Пока пробую в эмуляторе

Зачем вам писать на флешку, а потом обратно считывать, так вы и флешку быстро затрёте и память панели в районе PFW500
лучший вариант записывать тренд в автообласти, ставите галку, авторазмещение будет использовать всю область равномерно, начиная с PFW4096 регистра до PFW4000000. Примерно при записи 14 регистров, вам хватит на пол-года или больше.
тренд со всеми переменными будет записываться автоматически или по биту, если надо кнопками можно просмотреть тренд и если надо экспортировать в файл на флешку.

brmvsrg
13.04.2023, 09:59
Зачем вам писать на флешку, а потом обратно считывать, так вы и флешку быстро затрёте и память панели в районе PFW500
лучший вариант записывать тренд в автообласти, ставите галку, авторазмещение будет использовать всю область равномерно, начиная с PFW4096 регистра до PFW4000000.
тренд со всеми переменными будет записываться автоматически или по биту, если надо кнопками можно просмотреть тренд и если надо экспортировать в файл.
Лучше внешнюю флешку "испортить", чем память панели. В этом и причина использования внешней флешки. По моим подсчётам будет использовано около 1 млн. регистров памяти. Когда будет переполнение данных он ведь начнёт удалять самый старый, перемещать каждую ячейку на 1 позицию вниз и записывать новые данные в верхнюю и так каждый проход цикла.
Или я ошибаюсь?

kondor3000
13.04.2023, 10:15
Лучше внешнюю флешку "испортить", чем память панели. В этом и причина использования внешней флешки. По моим подсчётам будет использовано около 1 млн. регистров памяти. Когда будет переполнение данных он ведь начнёт удалять самый старый, перемещать каждую ячейку на 1 позицию вниз и записывать новые данные в верхнюю и так каждый проход цикла.
Или я ошибаюсь?

Если сделать запись по кругу, стирать будет старые записи. Как написал это лучший вариант, памяти панели вам хватит, сколько панель не проработает, флешка же у вас умрёт от недели до нескольких месяцев.
Кроме того вы за несколько минут записи, всё равно залезете в автообласть и получится бардак, что у вас и происходит сейчас.
На ону строку записи сейчас надо 14 регистров WORD+ 6 регистров время и дата, если FLOAT сами посчитайте.

brmvsrg
13.04.2023, 10:32
Если сделать запись по кругу, стирать будет старые записи. Как написал это лучший вариант, памяти панели вам хватит, сколько панель не проработает, флешка же у вас умрёт от недели до нескольких месяцев.
Кроме того вы за несколько минут записи, всё равно залезете в автообласть и получится бардак, что у вас и происходит сейчас.
На ону строку записи сейчас надо 14 регистров WORD+ 6 регистров время и дата, если FLOAT сами посчитайте.

Не согласен на счёт флешки, но да ладно. Тогда другой вопрос, как-то можно считать тренды, которые находятся на флешке? В элемент таблица у меня отлично считывается, а в график не хочет

kondor3000
13.04.2023, 10:39
Не согласен на счёт флешки, но да ладно. Тогда другой вопрос, как-то можно считать тренды, которые находятся на флешке? В элемент таблица у меня отлично считывается, а в график не хочет

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

brmvsrg
13.04.2023, 10:51
Ещё раз это не нужно, тренды надо писать в автообласть и они уже там. Зачем их опять считывать?
В таблице условно 30 значаний, в графике за 1 час, их уже десяток тысяч, куда их считывать?

их там нет, я записываю через архивирование на usb

petera
13.04.2023, 11:25
Ещё раз это не нужно, тренды надо писать в автообласть и они уже там. Зачем их опять считывать?
В таблице условно 30 значаний, в графике за 1 час, их уже десяток тысяч, куда их считывать?

Товарищ НЕ ЗАПИСЫВАЕТ исторический график, товарищ архивирует значения на USB. И просто хочет архив отобразить на графике.

petera
13.04.2023, 11:30
Короче...
Структура строки архива - количество регистров их порядок, не соответствуют структуре одной выборке графика

ЗЫ
Еще у графика есть циклический (кольцевой) буфер, это тоже нужно учитывать

petera
13.04.2023, 11:44
Короче...
Структура строки архива - количество регистров их порядок, не соответствуют структуре одной выборке графика

ЗЫ
Еще у графика есть циклический (кольцевой) буфер, это тоже нужно учитывать

Структура одной выборки в графике
Данные1, Данные2, штамп времени(6 регистров год,месяц,день, час, мин, сек)
ИТОГО - ВОСЕМЬ регистров
По этому в архиве, для строки, необходимо включить(добавить) ЯВНО 6 регистров PSW30...PSW35)
67268

А эту галку "Дата Время" убрать!!!
67269

Соответственно и в импорте структура каждой строки д.б исправлена - включить(добавить) ЯВНО 6 регистров и галку "Дата Время" убрать!!!

Не забываем, что хранилище графика начинается с адресов головы и хвоста циклического буфера - 2 регистра DWORD
А сами данные для графика, начинаются с PFW604

ЗЫ
Файл архива д.б таким
67274

petera
13.04.2023, 12:20
Небольшое отступление...
Кто Вас научил так пользоваться Экспортом на USB - писать на флешку каждую секунду это жесть. Уездите ее очень быстро.
Значит в руководстве не ясно описан принцип работы

И так
Изначально архив записывается во внутренние регистры панели с адреса указанного в настройках Хранилище.
И в тот момент когда количество выборок достигнет значения указанного в поле кол. строк для одной записи
67272
На флешку, в конец файла, из памяти панели выгружается весь массив записей, т.е. у Вас всего одна!
Если, например, указать кол. строк для одной записи == 100, то ОДИН раз в СТО секунд на флешку, с конца файла добавится СРАЗУ СТО строк.

Есть однако в архивировании на USB один баг - после достижения заданного количества строк, первая запись на флешку выполняется правильно. И тут бы должны сбросится адреса головы и хвоста ц. буфера, но этого не происходит! По этому в архиве будут возникать повторяющиеся записи от предыдущих, ранее записанных, блоков. НО это легко исправить - включить галку "Очистить регистры после экспорта"
67273

brmvsrg
13.04.2023, 13:17
Не большое отступление...
Кто Вас научил так пользоваться Экспортом на USB - писать на флешку каждую секунду это жесть. Уездите ее очень быстро.
Значит в руководстве не ясно описан принцип работы

И так
Изначально архив записывается во внутренние регистры панели с адреса указанного в настройках Хранилище.
И в тот момент когда количество выборок достигнет значения указанного в поле кол. строк для одной записи
67272
На флешку, в конец файла, из памяти панели выгружается весь массив записей, т.е. у Вас всего одна!
Если, например, указать кол. строк для одной записи == 100, то ОДИН раз в СТО секунд на флешку, с конца файла добавится СРАЗУ СТО строк.

Есть однако в архивировании на USB один баг - после достижения заданного количества строк, первая запись на флешку выполняется правильно. И тут бы должны сбросится адреса головы и хвоста ц. буфера, но этого не происходит! По этому в архиве будут возникать повторяющиеся записи от предыдущих, ранее записанных, блоков. НО это легко исправить - включить галку "Очистить регистры после экспорта"
67273

Спасибо, а вы тоже считаете, что лучше использовать внутреннюю память панели?

Сделал вроде все также, на графике теперь стартовое время корректно отображается, но самих графиков нет.

petera
13.04.2023, 13:34
Спасибо, а вы тоже считается, что лучше использовать внутреннюю память панели?

Сделал вроде все также, на графике теперь стартовое время корректно отображается, но самих графиков нет.
1. Нужно для импорта адрес хранилища сделать PFW604

2. Все было бы хорошо, но если график остановлен (PSB256), то адреса головы и хвоста ц. буфера "обнулены" - оба указывают на начало данных графика, т.е.
PFW600 = PFW602 = 604 и график "не работает"
Нужно принудительно установить адрес головы циклического буфера на последнюю запись хранилища.
Например если у Вас в графике 10 точек
67276

то в регистр PFW600 нужно записать
начало обл. данных + (кол.срезов) х (кол. регистров в одном срезе)
т.е. PFW600 = 604 + 10 х 8 = 684.

Это можно добавить в ф.кнопку ИМПОРТ
67277

ЗЫ.

вы тоже считается, что лучше использовать внутреннюю память панели?
Тут однозначно, что хранилище для архивирования на USB и хранилище графика нужно разместить в обычных регистрах, т.е. PSW. Зачем там PFW если архив ведется на внешнем накопителе.

brmvsrg
13.04.2023, 13:49
Тут однозначно, что хранилище для архивирования на USB и хранилище графика нужно разместить в обычных регистрах, т.е. PSW. Зачем там PFW если архив ведется на внешнем накопителе.
Я имею ввиду полностью тренды хранить лучше на флешке или в памяти панели

petera
13.04.2023, 14:08
Я имею ввиду полностью тренды хранить лучше на флешке или в памяти панели

Не понятен изначальный смысл использования флешки + экспорт на USB, если все таки нужен именно ГРАФИК.

Ведь если использовать флешка + экспорт на USB, то размер файла будет расти до бесконечности. Тут нет механизма старые записи в топку, а по верх пишем новые, в отличии от исторического графика, где предусмотрено при заполнении хранилища новую запись делать поверх самой старой.

Если флешка + экспорт на USB, как тогда отображать график? Импорт, по умолчанию грузит файл с первой строки, но не весь, а заданное количество строк. Как добраться до последних?
Единственный способ - в импорте есть поле с какой строки загружать данные. Т.е. можно организовать вместо простой кнопки "ИМПОРТ", постраничный импорт из файла. Указываем номер страницы, например, из 20 строк и загружаем только 20 строк. Хранилище для графика делаем только для 20 срезов.

brmvsrg
13.04.2023, 14:29
Не понятен изначальный смысл использования флешки + экспорт на USB, если все таки нужен именно ГРАФИК.

Ведь если использовать флешка + экспорт на USB, то размер файла будет расти до бесконечности. Тут нет механизма старые записи в топку, а по верх пишем новые, в отличии от исторического графика, где предусмотрено при заполнении хранилища новую запись делать поверх самой старой.

Если флешка + экспорт на USB, как тогда отображать график? Импорт, по умолчанию грузит файл с первой строки, но не весь, а заданное количество строк. Как добраться до последних?
Единственный способ - в импорте есть поле с какой строки загружать данные. Т.е. можно организовать вместо простой кнопки "ИМПОРТ", постраничный импорт из файла. Указываем номер страницы, например, из 20 строк и загружаем только 20 строк. Хранилище для графика делаем только для 20 срезов.

Как выше писал - смысл в защите памяти панели. Мне нужно 14 параметров записывать раз в минуту, хранить месяц. По формуле, которая в справке это больше 800к регистров. Вот я и подумал, что панели станет плохо

petera
13.04.2023, 14:40
Как выше писал - смысл в защите памяти панели. Мне нужно 14 параметров записывать раз в минуту, хранить месяц. По формуле, которая в справке это больше 800к регистров. Вот я и подумал, что панели станет плохо
для 14 параметров WORD, раз в минуту, для месяца нужно 30 х 24 х 60 = 43 200 выборок(срезов)
Кол.регистров для такого графика = (14+6) * (43200 +1) + 4 = 864 024 регистров

Что такое 800к регистров, по сравнению с объемом энергонезависимой памяти ~ 4 000 000 регистров.

kondor3000
13.04.2023, 15:40
petera, человек переживает за ресурс памяти панели, а не за количество регистров. Поэтому и начал мудрить с флешкой.
При заявленном количестве циклов перезаписи 70 000,
при записи раз в секунду в одни и те же регистры, дырку можно протереть за 3 недели, при перезаписи раз в месяц, ресурс составит 5833 года.
То же самое, только без цифр, написал в первых постах.

Mikhail_NNT
12.02.2025, 09:59
Добрый день, по примеру из документации пытаюсь сделать Архивирование на USB с панели СП310Р, изучил эту и другие темы форума, но так и не могу сделать рабочий вариант.
Необходимо 1 раз в конце дня делать Архивацию таблицы простоев на USB. Архивация происходит по заданному времени. Переменная xArchiveShift1 привязана к регистру PSB 293 через канал Write Multiple Coils (код 15).

xArchiveShift1: BOOL //Метка архивирования простоев I смены на USB

TargetVars.xArchiveShift1:= (TargetVars.stRTC.sGetFormatTime=TargetVars.sDataS torageS1 OR TargetVars.stRTC.sGetFormatTime='08:42:00');

Код в Codesys работает, бит срабатывает, но файл на флешке не создается. Пробовал разные флешки на 4 и 8Гб. Форматирую в FAT32 через стандартные средства Windows.

Таблица простоев 81938, значения которой нужно ежедневно записывать в архив. Заполнение таблицы начинается с PSW 409.

Создал элемент Архивирование на USB, сделал его глобальным. Запись происходит по фронту бита, количество записей 16 = количество строк в таблице. Создано 9 столбцов WORD, UNSIGNED, привязаны регистры. ID 0, путь к файлу Shift_1/Archive.csv (названия файла и папки не более 8 символов), название задается по дате. Запись таблицы начинается с PSW 2000, регистры точно ничем не заняты. Дата/время отключены, включена Очистка регистров после экспорта.

1 Не понимаю, почему не формируется файл, пусть даже пустой.
2 Не уверен, что правильно привязал регистры к столбцам, так как информация в разных источниках неоднозначная. Если не ошибаюсь в Таблице отображения данных заполнение регистрами идет построчно, а в Архивировании получается по столбцам? Как тогда понять какой регистр таблицы нужно привязать, первый регистр столбца (что я и сделал)?

Проект приложил. Версия конфигуратора СП300 V2.D3k-1

petera
12.02.2025, 10:19
Добрый день, по примеру из документации пытаюсь сделать Архивирование на USB с панели СП310Р, изучил эту и другие темы форума, но так и не могу сделать рабочий вариант.
Необходимо 1 раз в конце дня делать Архивацию таблицы простоев на USB. Архивация происходит по заданному времени. Переменная xArchiveShift1 привязана к регистру PSB 293 через канал Write Multiple Coils (код 15).

xArchiveShift1: BOOL //Метка архивирования простоев I смены на USB

TargetVars.xArchiveShift1:= (TargetVars.stRTC.sGetFormatTime=TargetVars.sDataS torageS1 OR TargetVars.stRTC.sGetFormatTime='08:42:00');

Код в Codesys работает, бит срабатывает, но файл на флешке не создается. Пробовал разные флешки на 4 и 8Гб. Форматирую в FAT32 через стандартные средства Windows.

Таблица простоев 81938, значения которой нужно ежедневно записывать в архив. Заполнение таблицы начинается с PSW 409.

Создал элемент Архивирование на USB, сделал его глобальным. Запись происходит по фронту бита, количество записей 16 = количество строк в таблице. Создано 9 столбцов WORD, UNSIGNED, привязаны регистры. ID 0, путь к файлу Shift_1/Archive.csv (названия файла и папки не более 8 символов), название задается по дате. Запись таблицы начинается с PSW 2000, регистры точно ничем не заняты. Дата/время отключены, включена Очистка регистров после экспорта.

1 Не понимаю, почему не формируется файл, пусть даже пустой.
2 Не уверен, что правильно привязал регистры к столбцам, так как информация в разных источниках неоднозначная. Если не ошибаюсь в Таблице отображения данных заполнение регистрами идет построчно, а в Архивировании получается по столбцам? Как тогда понять какой регистр таблицы нужно привязать, первый регистр столбца (что я и сделал)?

Проект приложил. Версия конфигуратора СП300 V2.D3k-1

Архивирование на USB так не работает.
Вот Вы сделали в настройках архивирования "Запись происходит по фронту бита" PSB 293, так ведь по фронту бита записывается в хранилище (внутренняя память панели начиная с PSW2000) ОДНА, ОЧЕРЕДНАЯ, из 16 строк таблицы. И когда Вы в заполните ВСЮ таблицу из 16 строк все хранилище из памяти панели АВТОМАТИЧЕСКИ запишется в файл на USB.
Т.е. для архивирование на USB нельзя принудительно запустить запись в файл. Для этого есть ф.област с функцией экспорта в файл. Вот там можно по фронту бита, например PSB 293 записать в файл область регистров панели в файл.

ЗЫ
п.2

в Таблице отображения данных заполнение регистрами идет построчно, а в Архивировании получается по столбцам? Как тогда понять какой регистр таблицы нужно привязать, первый регистр столбца (что я и сделал)
Каждая строка таблицы - последовательно расположенные регистры панели
т.е.
первая PSW409, PSW410, PSW411.. PSW417
вторая PSW418, PSW418, PSW419.. PSW426
третья PSW427...PSW435
и т.д.
при архивировании на USB или экспорте, в файл запись тоже построчно - первая строка таблицы, вторая, третья и т.д. столько строк, сколько задано в настройках.
Все получается автоматом и в правильном виде.

Mikhail_NNT
12.02.2025, 10:29
Архивирование на USB так не работает.
Вот Вы сделали в настройках архивирования "Запись происходит по фронту бита" PSB 293, так ведь по фронту бита записывается в хранилище (внутренняя память панели начиная с PSW2000) ОДНА, ОЧЕРЕДНАЯ, из 16 строк таблицы. И когда Вы в заполните ВСЮ таблицу из 16 строк все хранилище из памяти панели АВТОМАТИЧЕСКИ запишется в файл на USB.
Т.е. для архивирование на USB нельзя принудительно запустить запись в файл. Для этого есть ф.област с функцией экспорта в файл.

Получается это надо делать в цикле? В моем случае 16 раз, чтобы все строки записались сначала в хранилище. А затем как все данные перенесутся (панель это понимает по заданному количеству строк?), произойдет создание архива на флеш.
По регистрам не могу понять, можете на любом столбце показать, какой регистр указывать, если у меня в столбце 16 строк? Регистр первой ячейки этого столбца?

petera
12.02.2025, 11:17
Получается это надо делать в цикле? В моем случае 16 раз, чтобы все строки записались сначала в хранилище. А затем как все данные перенесутся (панель это понимает по заданному количеству строк?), произойдет создание архива на флеш.
По регистрам не могу понять, можете на любом столбце показать, какой регистр указывать, если у меня в столбце 16 строк? Регистр первой ячейки этого столбца?

Я уже показал

Каждая строка таблицы - последовательно расположенные регистры панели
т.е.
первая PSW409, PSW410, PSW411.. PSW417
вторая PSW418, PSW418, PSW419.. PSW426
третья PSW427...PSW435
и т.д.
Если в настройках таблицы
81940
первый столбец
PSW409
PSW418
PSW427
PSW436
PSW445
454
463
472
и т.д PSW[409 + (n-1) * 9], где n - номер строки(станции) 1..16
для второго столбца PSW[410 + (n-1) * 9]
третьего PSW[411 + (n-1) * 9]

petera
12.02.2025, 11:29
Не понимаю, зачем в цикле 16 раз?
Почему не заполнить всю таблицу и один раз дать команду (по фронту бита) и сделать экспорт в файл через ф.область ?

Если по циклам (по одной строке), то
при таких настройке архивирования
81941
1. кладем в регистры PSW409, PSW410, PSW411.. PSW417 простои Станции 1 (целую строку)
2. формируем фронт бита (0-1-0)

3. В ТЕЖЕ регистры PSW409, PSW410, PSW411.. PSW417 кладем простои станции 2 (целую строку)
4. формируем фронт бита (0-1-0)

5. В ТЕЖЕ регистры PSW409, PSW410, PSW411.. PSW417 кладем простои станции 3 (целую строку)
6. формируем фронт бита (0-1-0)

и так для всех станций
когда заполним последнюю строку запись в файл сформируется автоматом

ЗЫ.
Забыл сказать
при таком способе получим таблицу в регистрах панели начиная с PSW2000
первая PSW2000, PSW2001, PSW2002.. PSW2008
вторая PSW2009, PSW2010, PSW2011.. PSW2017
и т.д.

Если хотите сохранить адресацию для своей существующей таблицы (с адреса PSW409), то в настройках архивирования задайте адрес хранилища PSW405 (409-4)!!! ну и для столбцов в настройках архивирования нужно
вместо PSW409, PSW410, PSW411.. PSW417 указать какие-либо другие, например PSW309, PSW310, PSW311.. PSW317

Mikhail_NNT
12.02.2025, 14:50
Не понимаю, зачем в цикле 16 раз?
Почему не заполнить всю таблицу и один раз дать команду (по фронту бита) и сделать экспорт в файл через ф.область ?

Если по циклам (по одной строке), то
при таких настройке архивирования
81941
1. кладем в регистры PSW409, PSW410, PSW411.. PSW417 простои Станции 1 (целую строку)
2. формируем фронт бита (0-1-0)

3. В ТЕЖЕ регистры PSW409, PSW410, PSW411.. PSW417 кладем простои станции 2 (целую строку)
4. формируем фронт бита (0-1-0)

5. В ТЕЖЕ регистры PSW409, PSW410, PSW411.. PSW417 кладем простои станции 3 (целую строку)
6. формируем фронт бита (0-1-0)

и так для всех станций
когда заполним последнюю строку запись в файл сформируется автоматом

ЗЫ.
Забыл сказать
при таком способе получим таблицу в регистрах панели начиная с PSW2000
первая PSW2000, PSW2001, PSW2002.. PSW2008
вторая PSW2009, PSW2010, PSW2011.. PSW2017
и т.д.

Если хотите сохранить адресацию для своей существующей таблицы (с адреса PSW409), то в настройках архивирования задайте адрес хранилища PSW405 (409-4)!!! ну и для столбцов в настройках архивирования нужно
вместо PSW409, PSW410, PSW411.. PSW417 указать какие-либо другие, например PSW309, PSW310, PSW311.. PSW317

Спасибо большое за развернутый ответ! С регистрами разобрался, сначала берем регистры таблицы и записываем в панель через Архивацию на USB. Затем Через Функциональную область и Экспорт CSV регистры из панели записывает в файл.
Количество строк для одной записи указал 9 в Архивировании на USB, в Экспорте CSV Функциональной области Количество регистров указал также 9. Но в файл записываются только 3 строки, вместо 9.81945

Еще раз прочитал документацию 8194381944 Как я понимаю проблема именно в этих значениях? Как это работает не пойму, указал 9, а заносятся только 3.

petera
12.02.2025, 15:18
Спасибо большое за развернутый ответ! С регистрами разобрался, сначала берем регистры таблицы и записываем в панель через Архивацию на USB. Затем Через Функциональную область и Экспорт CSV регистры из панели записывает в файл.
Количество строк для одной записи указал 9 в Архивировании на USB, в Экспорте CSV Функциональной области Количество регистров указал также 9. Но в файл записываются только 3 строки, вместо 9.81945

Еще раз прочитал документацию 8194381944 Как я понимаю проблема именно в этих значениях? Как это работает не пойму, указал 9, а заносятся только 3.

У вас белибирда с таблицей. Заполнение не понятно. Где настройка экспорта?
Почему столбцов 16 и они называются Station 1...16. Названия станций вообще не должно попадать в файл.
Столбцом должно быть 9! и называться они должны (первая строка текста в файле) - 6_45 7_45, 7_47 9_00,..14_15 15_15.

Mikhail_NNT
20.02.2025, 08:34
У вас белибирда с таблицей. Заполнение не понятно. Где настройка экспорта?
Почему столбцов 16 и они называются Station 1...16. Названия станций вообще не должно попадать в файл.
Столбцом должно быть 9! и называться они должны (первая строка текста в файле) - 6_45 7_45, 7_47 9_00,..14_15 15_15.

Вроде разобрался, все работает. По биту идет сохранение в память, потом автоматически записывается на flesh. Но сохраняет данные не в виде таблицы 16 строк*9 столбцов, а в одну строку 1строка*более 100 столбцов (указал перечислением все регистры по каждому столбцу). Так как более 127 в элементе Архивирование на USB не записать, создал второй элемент Архивирование на USB - его данные записались во вторую строку.82065 82066

Получается, что в одном элементе Архивирование на USB можно вывести только одну строку? Для второй строки использовать новый элемент (в моем случае 16 элементов Архивирование на USB)?

petera
20.02.2025, 10:52
Так и не показали настройки экспорта в файл
Регистры по девяти столбцам нужно перечислять
Вообще полный абзац. На пустом месте. Все вообще просто и элементарно..

Mikhail_NNT
20.02.2025, 13:05
Так и не показали настройки экспорта в файл
Регистры по девяти столбцам нужно перечислять
Вообще полный абзац. На пустом месте. Все вообще просто и элементарно..

На СП310Р у меня нарисована таблица, куда в течении смены заносятся простои конвейера 82126

Для наглядности расписал регистры, которые соответствуют ячейкам таблицы (выделены желтым) 82127
Все эти регистры в конце смены мне нужно сохранить на flash, также в виде таблицы (в таком же порядке).

Настроил элемент Архивирование на USB:
Вкладка Данные. Создал 17 столбцов 6:45-7:45, Кол-во про-ев ..... Total. Регистры присвоил с 417 по 433.
Вкладка Архив. Кол-во строк для одной записи =1 (нужны текущие значения каждого регистра). Запись по фронту бита PSB293.

При вышеописанных настройках при наступлении события PSB293 на flesh в папке SHIFT_1 создается файл 20250222.csv, в котором отображаются заданные столбцы с текущими значениями заданных регистров (417-433) 82128

Ссылка на проект, так как не могу прикрепить к сообщению, выдает ошибку Error 403 (файлообменник DropMeFiles): https://dropmefiles.com/Bn8QB


Как я понимаю, согласно моим настройкам это правильная работа элемента Архивирование на USB. Не могу понять, как мне вывести остальные регистры с 434 по 688 построчно, как в таблице?