Добрый день. Какая у вас версия прошивки контроллера?
Вид для печати
plc210 2.4.0601.0905
В случае замены ПЛК из комплекта ЗИП было бы чуть удобнее вставить SD-карту и чтобы все настройки и приложение подгрузились без необходимости искать ноутбук, провод, объяснять человеку как подключиться, где Бэкап найти, как загрузить
Вы говорите "В вашем случае" а есть прошивки где такой функционал существует?
В прошивках 3.5.xxxx.xxxx (для ПЛК210-1x - новой аппаратной модификации) мы поддержали возможность автоматического развертывания резервной копии после прошивки с накопителя.
См. здесь п. 3 в новых функциях:
https://owen.ru/forum/showthread.php...l=1#post424209
Здравствуйте.
Подскажите, можно ли каким-либо образом создавать аварию в менеджере тревог из кода, вместо добавления строчек в таблицу менеджера тревог?
Ну вот например: есть у меня в проекте 30 датчиков, для каждого нужно прописать 5 тревог (ав. высокое, пред. высокое, пред. низкое, ав. низкое, отказ датчика). Соответственно, нужно только по ним в таблицу менеджера тревог прописать 150 строчек. Через код это было бы гораздо быстрее.
Добрый день.
Возможно, это видео будет полезным:
https://youtu.be/heTqwXGgzbs?si=QlpJ0EhFzjNJ4Jnn
В общем, рано обрадовался. Мне необходимо, чтобы тревога не уходила мгновенно, а оставалась активной, пока событие ее вызвавшее не уйдет - причем идти очевидным путем и добавлять вторую запись в таблицу вида "тревога ушла" совершенно не вариант, потому что при большом количестве таких событий все превратится в нечитаемую кашу. Это реализуемо?
Ну как и положено. Пришла авария (темно красный индикатор). Нажали подтвердить при активной аварии, она квитировалась (бледно розовый). Если ушла то потухнет. Но без времени. Обычно с регистрацией времени завязывают какой-нибудь SQL сервер. Я вот ни архивы, ни историю в ПЛК стараюсь не писать. Боюсь или память переполнится, или ресурс перезаписи исчерпает себя.
Код:FOR i:= 1 TO 32 DO
IF TMP_MEC.ALA_CUR[i] THEN TMP_MEC.ALA_MEM[i]:= TRUE; END_IF //Взвод бита аварии в память
IF TMP_MEC.ALA_MEM[i] AND TMP_MEC.COM_RES THEN TMP_MEC.ALA_CON[i]:= TRUE; END_IF //Взвод бита подтветждения аварии
IF TMP_MEC.ALA_CON[i] AND NOT TMP_MEC.ALA_CUR[i] THEN
TMP_MEC.ALA_MEM[i]:= FALSE; //Сброс бита аварии из памяти при отсутствии аварии после подтверждения
TMP_MEC.ALA_CON[i]:= FALSE; //Сброс бита подтветждения аварии при отсутствии аварии после подтверждения
END_IF
IF NOT(NOT TMP_MEC.ALA_MEM[i] OR (TMP_MEC.PAR_DIS[i] AND TMP_MEC.COM_DIS[i])) THEN
TMP_MEC.STA_REA:= FALSE; //Сброс бита готовности
TMP_MEC.STA_ALA:= TRUE; //Взведение бита аварии
END_IF
END_FOR
Кстати, а можно ли в данном компоненте отключать какие-либо аварии без использования среды программирования? Честно не знаю, так как не работал. А вот плюсы программных реализаций как раз в том, что вы можете ими вертеть как пожелаете, можете вывести из списка аварий, можете включить. Только для этого должно быть соответствующее инженерное окно настроек быть нарисовано в визуализации.
Была ли уже идея сделать своего рода ключ администратора для ПЛК и СПК (мысль такая) Берём флешку уже готовую, в СПК жмём кнопку применить параметры администратора (если флешки нет то и кнопка в инвизе) и у нас доступ к сервисным настройкам которые сами сделали (вместо ручного ввода логина и пароля) я задумался с библиотекой CAA File будет копирования какого-то текста для запуска таймера обратного отсчёта и последующей деактивации. Вдруг кто-то подобное реализовал, а я начал изобретать колесо заново.
В рамках того варианта, который рассматривается в видео - нет, потому что одна строка группы тревог (со способом наблюдения "событие") будет являться репрезентацией нескольких тревог разных экземпляров ФБ.
Поэтому невозможно "держать" тревоги в таблице, пока они активны - надо сразу отправлять их в историю.
У нас есть пример, как считать серийный номер подключенного к контроллеру USB-накопителя:
https://owen.ru/forum/showthread.php...l=1#post340323
На его базе можно решить описанную вами задачу.
Здравствуйте, появилась такая проблема с ПЛК 200. Есть программа, которая с датчиков в БД sqlite на SD флешку записывает данные. Данные записывались с 01.01.2024г по 13.02.2024г. 5го февраля скачивали "выгрузку" (эксель файл), в нем были данные за 03.02.2024. Вчера (т.е. 13.02.2024) скачали с SD карты всю базу, а в базе пропали записи в промежутке между 26.01.2024 и 13.02.2024г - вопрос, как такое могло произойти ?
Файл Бд сейчас весит 60.9 мб, может быть есть какие то ограничения на размер бд или количество строк в ней ?
При старте ПЛК запускается dir2.sh скрипт для очистки данных из бд:
в нем такой запрос:Код:IF NOT(xIsPlcStarted) THEN
StartDate:=EndDate:=TO_DATE(TargetVars.stRtc.dtDateAndTime);
StartTime:=EndTime:=TargetVars.stRtc.sGetFormatTime;
zapros:='bash /root/dir2.sh'; //проверка и очистка базы sql перед стартом
plc_prg.xSendCommand:=TRUE;
fb_Rtrig(CLK:=xSendCommand);
fb_SE3(xExecute:=xSendCommand, sCommand:=zapros);
Код:sqlite3 /mnt/ufs/media/mmcblk0p1/WRK/drgm_base.db "delete from drgm_table where dates < strftime('%d.%m.%Y','now','-3 month')"
При загрузке любого проекта старых версий в ПЛК и нажатии на кнопку "старт (F5)" в codesys , внизу мигает красная ошибка "Программа загружена - ИСКЛЮЧЕНИЕ" что это такое и как посмотреть, исправить ?
При попытке скачать с SD карты вставленной в ПЛК200 базу данных весом 45мб - ПЛК сам перезагружается не дав докачать файл через ftp. Из за чего такое происходит ?
Сложно сказать, не видя деталей происходящего.
Напишите, пожалуйста, на support@owen.ru.
К письму приложите проект, файл .db и пошаговую инструкцию по воспроизведению проблемы.
Через раз удается скачать базу по ftp без перезагрузки ПЛК. Скрипт, что использован для очистки БД от записей старше 3х месяцев как оказалось вообще не работает. Вопрос - куда делись данные за февраль месяц ? Что могло произойти ? (руками их никто точно не мог стереть)
Правильно ли я понимаю, что вы решили, что они куда-то делись, не найдя их в .csv файле?Цитата:
Вопрос - куда делись данные за февраль месяц ? Что могло произойти ? (руками их никто точно не мог стереть)
Здравствуйте,
Как настроить CodeSys, что бы в режиме отладки, при изменении значения (вручную) значение не фиксировалось и не всплывало окно действий (...отменить фиксацию ..., ...изменить значение... и т.д.). Т.е. в режиме отладки нужно изменить значение вручную и по заложенному алгоритму оно должно измениться, а сейчас нужно снимать фиксацию без изменения значения.
Нет, я скачал с SD карты саму базу в формате "db" и открыл ее программой DB Browser for SQLite
Вложение 73568
Данные с 01.02.2024 по 13.02 пропали
Ок. Эту информацию тоже укажите в вашем письме на support@owen.ru
Добрый день! Где в Codesys 3.5.18.30 я могу настроить адекватное отображение кириллицы в окне визуализации?
P.S. Нашёл. Нужно открыть "Менеджер визуализации" и в окне "Установки" поставить галочку у "Использовать строки Unicode".
Добрый день
Столкнулся с проблемой: не работает виртуальный плк 3.5 v17
Как можно сбросить пароль вирт. контроллера, или где посмотреть его?
Видел этот вопрос в 2017 году, может, удалось найти решение?Вложение 73590
Добрый день. В программе используется управление пользователями. Для персонализации действий/настроек/отображения с помощью функции определяется какой именно пользователь пользуется этим экземпляром визуализации или диалога.
Все прекрасно работает с кнопками, текстовыми полями и т.д... Но не хочет работать с элементом Бегунок. При этом при замене Бегунка на Полосу прокрутки все работает.
Добрый день.
Это баг, он известен, но еще не исправлен:
Вложение 73624
Добрый день уважаемые коллеги, подскажите пожалуйста, что за глюк с визуализацией? У меня ПЛК210 на CODESYS V3.5 SP17 Patch 3. На панели ВП110 некоторые и прямоугольники становятся белыми и кнопки с белой окантовкой. Причем в самом CODESYS и в браузере Edge все хорошо. Можно ли убрать этот эффект. Пробовал фон менять не получается.Вложение 73731Вложение 73732 Причем когда захожу в настройки панели. нажимаю на рисунок - ДОМИК, то все работает хорошо потом.