Папок не будет. Слишком уж гемороен механизм папок в CoDeSys.
По поводу флешек - были у нас флешки, которые на 3-й день переставали работать, а перезагрузка помогала не на долго, были и надёжные.
И программными средствами не все вылечивается. Просто флешка перестаёт отвечать на запросы хоста. И хоть кол ей теши.
Рекомендации - не использовать флешку как постоянный накопитель. Для длительного хранения есть внутренний диск, он ГОРАЗДО надёжнее.
Мне возразят - диск маленький и туда гигабайты архивов всего на свете не помещаются - да, и задачей ПЛК не является хранение файлов, для это есть такие штуки как файл-серверы. И размеры были ограничены именно потому, что большие размеры мешали бы ПЛК выполнять ОСНОВНУЮ задачу - управлять техпроцессом, а не архивировать график прироста кур за последний год, вести лог всех действий всех исполнительных устройств и действий оператора и много другое.
Если у Вас такая "зависающая" флешка - ей поможет только перетыкание или пересброс питания. В принципе, в ПЛК есть механизм отключения питания хоста. Сейчас он работает автоматически при перегрузке по питанию. Можно его сделать управляемым из программы. Если есть герои на бета-тест - можем протестировать функционал на таких "зависающих" флешках.
Тролль-наседка, добрый, нежный и ласковый
Добрый день. Посоветуйте промышленную флешку для USB(ПЛК 110-30 MS4D)Бытовые мрут.
Привет всем.
Петренко опубликовал с год назад толковый пример
"Овен ПЛК 110-М02 сохранение переменных REAL на USB FLASH в Excel"
но, как всегда, самое интересное утаил...
Макрос позволяет указанные переменные писать в лог фай на внешнюю флешку в формате Excel.
Где такое взять? Хоть в текстовый файл.
Есть описание Navigator_PLC_DVD_v3\04. Библиотеки\2022\Описание\OwenLibFileAsync.pdf.
Но там с ходу в 10 листах трудно разобраться.
Есть ли готовые и проверенные примеры, типа:
<имя файла.txt>, дописать с новой строки <Data>, <TIME>,
<Var1>, <Var2>, <Var3>, <Var4>, <Var5>, <Var6>, <Var7>, <Var8>.
Необходимо вести простой лог-файл раз в минуту - одна запись - одна строка.
P.S. Используется визуализация в Codesys V2 - может там есть какая фитча по теме???
Сам же и отвечаю, дошёл в документации до этой темы:
Использовал для лог-файла Модуль «Archiver» (Архиватор) уже в ПЛК160.
Эти команды выполняются нормально:
By timer (по таймеру) – данные записываются в архив с заданным периодом архивации, значение по умолчанию;
By change value (по изменению значений) – если какая-то переменная, включенная в список архивации, меняет свое значение, то происходит ее архивация,
причем только этой переменной.
Правда, тут сохраняются все переменные - но что, в итоге, мне и надо.
А вот с этой загвоздка:
By command (по команде) – если в переменной Status модуля архивации записана специальная команда, то происходит старт архивации, либо ее остановка (0x00FE –«стоп», 0x00FF – «старт»)
Обозвал в настройках модуль Status, присвоил 255 - не пишет в файл. Status :=255;
Пробовал 0x00FF - пытается это объявить как переменную.
и не понятно, сколько надо ждать, чтоб все 16 переменных записались, и остановить запись.
Проверил - работает Status :=255; пишет переменные в файл.
Сразу чтение Status ещё 255,
и второй раз чтение Status уже =1.
Фактические это флаг выполнения операции записи переменных в файл.
Последний раз редактировалось ПавелП; 16.03.2023 в 00:03.
ПавелП Напиши мне на info@cs-cs.net - я делал пример сбора данных для себя (когда ПЛК тестировал). Могу скинуть. Вроде как это то, что тебе надо - дописать в строку и запустить. Под CodeSys 2.3.
Но без наглости с твоей стороны чтобы было: только пример, и всё. Без "А как быть", "А вот ещё подскажи". Не хочу этого.
Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте. © Steve McConnell
Мой рабочий блог со статьями про щиты и автоматику ОВЕН - Cs-Cs.Net | Почта: Info@Cs-Cs.Net | Канал в ТГ @CsCsNetLab