Добрый день.
Уточните, какой контроллер и какой его интерфейс вы используете?
Вид для печати
Вбивал, вылетает ошибка. Ключ смеш какой то не активирован (вроде что то такого, много букАв) ....И ЕСЛИ нажмете....и.т.д. и т.п. Надпись ужАС, ошибка страшная в окошке вылетает. В описании нет такого. А вдруг там чАво то случиться, а? Я ранее, когда переводил с буржуйского про ПЛК перевод, работая в сервисной службе, обязательно всякие такие моменты вставлял в инструкцию, чтоб меньше вопросов задавали звонившие. А начальник проверял и если, что, заставлял даже дополнительно картинки добавлять. Ну это так, лирика. А так да, Вы правы. Ну и IP нужно последний добавить в картинку, ведь root и owen, ведь остались на картинке.
Домосед, сканируете сеть, находите контроллер, у меня например это .250
Вложение 78278
открываете WinSCP
Вложение 78280
IP - тот который у вас, логин root, пароль owen
Вложение 78281
Все, вы великолепны.
Если что-то не получается, не находит сканер контроллер, значит проверяйте настройки адаптера или сетевой провод, если не подключается WinSCP, то может заблокированы порты в контроллере, может поменяли логин и пароль.
Это уже сами себе враги, если поменяли настройки и забыли.
Добрый день! есть ли возможность узнать значение напряжения на питающих клеммах контроллера серии 210, из под программы?
Добрый день!
Подключился через утилиту WinSCP к СПК107 к директории /home/root/CODESYS_WRK/PlcLogic/alarms.
И что далее?
Вытащить (просматривать) эти данные через CSV файл и потом в Excel или как? Я то думал, там сразу в "удобном" (читаемом) варианте для пользователей увидим. А как с ними работать далее, не понятно. Аварийные данные (Error) мы просматривать (по рекомендациям с вашего канала на Ю...тубе, можем, но сейчас с ним проблемы, надо тогда видео на Рутуб кидать) можем. А вот простые оперативные данные из примитива Таблица, как просматривать или чем? Или читать раздел Архив весь?
Добрый день.
Используйте любое ПО, которое поддерживает формат .sqlite.Цитата:
И что далее?
В интернете достаточно информации об этом формате.
Да, прочитайте весь документ по ссылке из предыдущих постов.Цитата:
Или читать раздел Архив весь?
как решил?
Привет,подскажи пожалуйста при установке codesys 3.5 v17 patch 3
it is possible that packages from this path could not be installed
Добрый день.
Удалите CODESYS и установите заново в точности по инструкции:
https://www.youtube.com/watch?v=3KcJWZEVXCg
Проверьте, что на диске C:\ достаточно свободного места (ориентируйтесь на 5 Гб).
Здравствуйте я недавно начал учиться работать с CODESYS вообще это мои первые шаги в програмирование.
Задание:
Ленточный конвейер приводится в движение двигателем «МОТОР». Световой барьер L1 используется для определения того, находится ли транспортируемый объект в начале ленты. Световой барьер L2 используется для определения того, находится ли транспортный объект на выходе из ленты. Ленточный конвейер работает следующим образом: он подает сигнал TRUE, когда световой барьер открыт, и сигнал FALSE , когда световой луч прерывается.
Переключатель, который подает сигнал «ВКЛ (ON) », аппаратно подключен к дисплеям «ВКЛ» и «ВЫКЛ (OFF)», поэтому дисплеи не должны управляться создаваемым вами контроллером.
Весь процесс гарантирует, что пока упаковка находится на пути между световыми барьерами или внутри световых барьеров, на конвейерную ленту не может быть помещена новая упаковка.
Ленточный конвейер необходимо контролировать следующим образом.
Транспорт можно включить только в том случае, если рабочий выключатель подает сигнал ВКЛ = ON = TRUE (загорается индикатор «ВКЛ»). Если световой барьер «L1» прерывается (L1 = FALSE), транспорт запускается (МОТОР). = TRUE). Лента движется до тех пор, пока не пройдет пять секунд после выхода из светового барьера L2. Однако если световой барьер L1 прерывается между моментом выхода светового барьера L2 и истечением времени ожидания в пять секунд, лента продолжает двигаться.
Если рабочий переключатель «ВКЛ (ON) перейдет в положение «FALSE» (загорится индикатор « ВЫКШ (OF), конвейерную ленту нельзя будет перезапустить, просто отключив световой барьер «L1».
Мой не правильный пример снизу.
Вот не правильный пример.
Как исправить?
Здравствуйте! С помощью функц. блока WCONCAT8 ( "склеил строки"в одну длинную строку на языке CFC, строковые двойные). А как теперь добавить пробелы между символами (каким функц. блоком) вставить пробелы далее и потом далее перенести строки (какой функц. блок) на нужное количество строк (я так понимаю) в Таблицу тревог? Хочется проще и быстро.
Здравствуйте. Пробую писать программу для СПК107 на СFC, но у меня один и тот же алгоритм работает по разному. На основном холсте работает нормально, но если убираю в отдельный блок Hister то начинает работать не так как надо.
У меня везде выставлен режим потока данных. Пробовал и по ПКМ, порядок/ В соответствии с потоком данных. но реакция не меняется. Пробовал и внутри блока делать, все тоже самое. Результат одинаковый.
Похоже вы на функцию Hister жалуетесь, если вы не знаете, то функция не имеет памяти и промежуточные результаты не сохраняет.
И RS триггер не работает у вас как надо.
Обычно функцию используют для расчётов. А вам нужно создать ФБ (функц. блок), блок имеет память и по факту работает как часть программы, в ФБ всё будет работать.
Кроме того у ФБ может быть много выходов, в отличие от функции. Но его надо не только вызвать на поле, но и объявить
экземпляр ФБ в VAR. Можно сделать несколько экземпляров, например с разными номерами, типа как несколько таймеров
и так же посмотреть каждый в работе.
И ещё совет, не используйте постраничный режим в CFC, слишком маленькое поле, не удобно же.
Спасибо большое. Разобрался и понял как надо. Вы очень помогли.
Здравствуйте! Прога на CFC. Переменные типа REAL, преобразовываю в двойные строковые WSTRING, для дальнейшей работы в другую POU, через следующий механизм : блок OSU.REAL_TO_STRING_FORMAT далее он переходит на вход OSU.CP1251_TO_UNICODE. Вопрос а как мне BOOL так же перевести в такой же формат? Я далее их буду "склеивать" в одну стпроку, в другой POU, через WCONCAT. С переменными REAL сделал, а про дискретные забыл. Какой блок или блоки для преобразования в строковые двойные использовать для BOOL?
kondor3000 Может BOOL вообще проще через SEL записать? Ну, мол: SEL(bVar, "FALSE", "TRUE")?
Здравствуйте еще раз!
Тут столкнулся с блоком "склеивания" двойных строковых. Блок WCONCAT8 до 255 символов, а у меня на выходе не могу склеить все строковые, обрезает в 2, 3, 4 блоке, что не так с 255 символами (1 блок - это проверочный, тут все значения сплошные склеивает от датчиков). 2 блок - это три первых сигнала с датчиков, 3 блок - другие три сигнала с датчиков. Далее пробую 2 и 3 блок вместе склеить, чтоб одной строкой
все было "склеено" на 4 блоке. Но тут опять на выходе не все строковые, только от одной входной переменной. Что не так, где 255 символов? И как лучше. Задача далее стоит, по Латч переменной вытянуть в Таблицу тревог все сигналы, но желательно по строчно, чтоб было читабельно. И еще вопрос, каким ф. блоком после склеивания WCONCAT8 разбить на выходе сплошную строковую (на несколько строк), чтобы можно по событию заполнить строковые в таблицу?
Хватит страдать ХЕРНЁЙ! Таблица тревог НЕ предназначена для многострочного текста!!! НЕ надо делать так, как ты делаешь!!!
И не надо писать на каких-то блоках (по ходу это CFC)! Надо переходить на ST и там нормально работать со строками.
Строки нужны ТОЛЬКО для вывода на экран. Не надо в них хранить данные!
Поэтому поставь там с kondor3000 пожалуйста задачу, а мы посоветуем решение.
МихаилГл Предупреждение модератора. Просьба не флудить: ТС хочет записывать длинную строку в Таблицу Тревог. К JSON и станкам это не относится.
Если вас повысили до модератора, то будьте вежливы к окружающим, а не вот это:
"Хватит страдать ХЕРНЁЙ! ".
Я тоже делал такое как-то. Использовал строку в 100кБ (длина 100000) для JSON. Это работает хорошо.
Может ТС стоит уломать заказчика развернуть отдельный сервер событий. Например, Gotify. А ПЛК туда будет кидать отчеты по событиям.
Но это требует хорошего уровня знаний.
По поводу склеивания:
Можно попробовать библиотеку "String Util Intern Library" (MSU) - там есть склеивание длинных строк (и STRING, и WSTRING).
Вложение 78463
По поводу переноса строк:
А для удобства переноса строк, наверное, можно использовать спецификаторы формата вывода переменных. Раздел 8.2:
https://ftp.owen.ru/CoDeSys3/11_Docu..._Visu_v2.0.pdf
ВладОвен Нет. Всё нормально. Тех, кто не читает, кто спешит и суетится, я ненавидел и буду ненавидеть. Везде и всюду. И выражать это тоже буду.
Если вы не читаете и не умеете получать инфу - то это для меня красная тряпка.
Поясняю. Задача. 10 входных сигналов от датчиков (6 аналоговых и 4 дискретных). Если авария у оборудования (наш блок определяет, выдает дискретный общий сигнал аварии).
Все. Требуется зафиксировать все аналоговые сигналы и дискретные (положение ключей, датчиков) при этой аварии, т.е. зафиксировать. Потом узнаем кто и КАК неправильно управлял установкой ( -Усе) и правильно фунциклировала сама установка. Сбор статистики и заказчик уже не сможет рассказать сказки про гарантию. Значения могут быть разные при такой общей аварии.
. Теперь задачу хотим в журнале тревог вывести и если что просматривать через csv файл и далее в Экселе. Авария произошла и все 10 сигналов в журнале аварийном зафиксировались. Выводить думаем, через Латч 1 переменную в АлармГрупп. Удобно, понятно, стандартно, есть уже время, квитирование если исправили неисправность и стандартно. Мне нравится идея. Но вот вывод, одновременно в Таблице аварий 10 нужных нам сигналов, немного не ожидали от настройки. Думали как в конструкторе лего.
[QUOTE=DOMOSED;445300]. Уже не хотелось бы менять "коней на переправе". Надо разбираться. Сейчас у нас от сигнала аварии, по Латч переменной, мы можем вытянуть по правилу работы с Латч переменными, только 2 доп. переменные (две температуры). А когда мы начали все это быстро проверять, то проверили 1-2 сигнала. Заработало. Мы подумали, что наверно и все 10 увидим. Попробовали еще 3 сигнал для проверки и журнал аварий один раз зафиксировал вывод 3-х сигналов, а мы далее и не проверяли, только после нескольких дней. Все по 0 было. Мы не стали проверять и временно забросили, думали торопились и это глюк какой то.
Здравствуйте! подскажите, как пользоваться поиском на форуме?
Допустим, ищу "connection aborted socet keep-alive expired" - поиск выдает просто список тем, в которых встречаются слова, без возможности перехода хотя бы на страницу, где это указано. В том числе ссылается на эту ветку - здесь 190 страниц и пролистывать все просто ппц)))