Тёмный

Пишем функциональный блок обработки дискретных входных сигналов, защиту от дребезга и симуляцию 

Portal View
Подписаться 7 тыс.
Просмотров 16 тыс.
50% 1

Телеграм-канал, где можно связаться со мной, пообщаться и задать свои вопросы: t.me/portal_view
Привет! В данном ролике мы напишем свой функциональный блок для обработки дискретных входных сигналов, в нём предусмотрим функционал для защиты от дребезга контакта с указанием времени фильтрации значения на входе, а также сделаем возможность симуляции значения дискретного сигнала
00:00 - Вступление
00:21 - Защита от дребезга
16:14 - Расширяем функционал блока
20:36 - Симуляция для дискретного сигнала
27:20 - Привязка сигналов к блокам и проверка
34:04 - Преимущества самописного блока

Опубликовано:

 

4 авг 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 77   
@ildarz3344
@ildarz3344 3 года назад
Уроки просто супер, наконец нашел что то подходящее для себя спасибо тебе за это.
@Kordya4ello
@Kordya4ello 2 года назад
Спасибо большое, очень информативно и понятно
@igorprice9047
@igorprice9047 3 года назад
Классные уроки. Если есть время и желание, пили еще. Много почерпнул из несовсем очевидных вещей.
@portalview3028
@portalview3028 3 года назад
Хочется делать ролики, но времени совсем нет. Как появится время, что нибудь сделаю)
@denisivanov3611
@denisivanov3611 Год назад
Нет слов. Очень доступно, и довольно полезно. Буду пробовать внедрять такую защиту!
@framos9991
@framos9991 Год назад
Круто! Спасибо тебе!
@andrey47579
@andrey47579 3 года назад
Очень интересно и полезно для обучения. Если будет время, запиши пожалуйста видео про обработку аналоговых сигналов.
@GeorGakkenshmidt
@GeorGakkenshmidt Год назад
Красавчик! Уроки интересные и голос хорошо поставлен, не засыпаешь при просмотре. Так держать!
@user-pn2bh4uu6g
@user-pn2bh4uu6g Год назад
Красавчик, брат
@eriksonneu7202
@eriksonneu7202 2 года назад
Привет тебе коллега из Германии.
@bazlevich
@bazlevich 3 года назад
так ну ждём видео по обработке аналоговых сигналов. Чем быстрее тем лучше. А то диплом пишу и делаю стенд с ПЛК и панелью оператора)
@SERVICE_KARELIA
@SERVICE_KARELIA 5 месяцев назад
16:03 можно также с таймером TOF сделать, а датчик подключить к входу таймера RESET. Как только сигнал с датчика пропадает по истечении времени выход отключится.
@user-1970IGOR
@user-1970IGOR 2 года назад
нравится
@fanystason
@fanystason 3 года назад
красава
@user-hx5il7xj3t
@user-hx5il7xj3t 3 года назад
Огромное ВАМ спасибо за ТРУД! Отличные уроки и полезные фишки. Если будет возможность, то сделайте, пожалуйста, видео про фильтрацию дребезга аналоговых сигналов. Видео о создание SCADA будете делать? К сожалению в инете по SCADA ни чего вразумительного пока не нашел. Сможете помочь?
@portalview3028
@portalview3028 3 года назад
Когда-нибудь до этих тем может и доберёмся. Времени не хватает на всё)
@user-hx5il7xj3t
@user-hx5il7xj3t 3 года назад
@@portalview3028 ждём с нетерпением :-)
@user-ps4he1ym6p
@user-ps4he1ym6p 2 года назад
В меню создания блока памяти для таймера. Если выбрать multi instants то создаться экземплярный блок памяти таймера внутри блока памяти FB1
@aking83
@aking83 3 года назад
Видео Класное.... и не длинное... Скажите, или снимите ролик :), как обработать дискретный сигнал по количеству нажатий или по времени нажатия(короткое - выход 1, два коротких - выход 2, длинное - выход 3).
@portalview3028
@portalview3028 3 года назад
Спасибо;) не думаю, что буду делать ролик именно на эту тему, но расскажу про таймеры и счётчики. Понимая это, вы сможете сделать кнопку с нужным вам функционалом. Сейчас несколько роликов одновременно делаю, выйдут в ближайшее время, я надеюсь :)
@SergAlex81
@SergAlex81 2 года назад
Здравствуйте. Вы хорошо обьясняете. Спасибо. Хочется некоторого усовершенствования. Сам пока не могу воплотить то что задумал. Может вы поможете. Есть например сотня дискретных сигналов. По вашей программе будет создано 100 блоков данных. Хочется чтобы это был один блок, а в нём сотня переменных с некоторым пользовательским типом данных. Чтобы структура была более красивее)).
@portalview3028
@portalview3028 2 года назад
А для чего вам тогда блок данных с этими сигналами? Если вы их не обрабатываете, от обращайтесь напрямую к тэгу. А если обрабатываете, то у вас в любом случае будет сто блоков данных. Можно заморочиться и переписать в отдельный блок данных все, но это явно лишнее)
@user-dp9ow2di9m
@user-dp9ow2di9m 2 года назад
@@portalview3028 Есть такая мысль. Разбить эти сигналы по группам, напр. группа безопасности (технологические блокировки), группа контроля питания цепей управления, группа контроля силовых цепей - мы все эти группы сигналов все равно обрабатываем как одно из условий начала работы. И таймер ставить на общий тэг, например, Tech_safety
@Kotov-Senia
@Kotov-Senia 7 месяцев назад
Спасибо за уроки! Подскажите как в 11 клик меняете переменные в таблице базы данных(во время симуляции)?
@portalview3028
@portalview3028 7 месяцев назад
Не в один клик, а в 2) просто щелкаю по переменной в блоке данных двойным кликом
@AndreyPolischuk
@AndreyPolischuk 3 года назад
Здравствуйте. У вас очень интересные и познавательные видео! Подскажите, пожалуйста, как задавать произвольные (Random) значения? или как написать блок?
@portalview3028
@portalview3028 3 года назад
Привет. К сожалению, насколько я знаю, в тиа портале нет таких блоков для генерирования случайного значения. Можно попробовать поискать готовые библиотечные блоки на сайте Сименса. Возможно что-то найдется
@AndreyPolischuk
@AndreyPolischuk 3 года назад
@@portalview3028 Спасибо за ответ!
@user-dk8gy4zy2r
@user-dk8gy4zy2r 3 года назад
посоветуйте где скачать ТИА портал, спасибо
@andrey47579
@andrey47579 3 года назад
Напиши пожалуйста, как ты меняешь значения с TRUE на FALSE в таблице тегов в режиме симуляции? Я жму двойным щелчком и приходится писать вручную. На видео видно, что ты как-то делаешь, не прописывая вручную. Буду благодарен за ответ.
@aking83
@aking83 3 года назад
CTRL+F2 and CTRL+F3
@user-th6th3yt1j
@user-th6th3yt1j 6 месяцев назад
Друг подскажи как на ФБД сделать Есть вход (i1) и выход (q1) как их привязать друг к другу , какой блок использовать ?
@volodymyrbobyk9997
@volodymyrbobyk9997 2 года назад
Спасибо. Пытался сделать симуляцию, но так понял что с ДБ этого не сделать? У меня нет физического контроллера что бы поэкспериментировать
@portalview3028
@portalview3028 2 года назад
Стимуляция заменяет реальный ю контроллер, в этом и суть. Все симулируется, дб в том числе
@user-hx5il7xj3t
@user-hx5il7xj3t 3 года назад
Здравствуйте! Можете в вкратце рассказать, как реализовать фильтрацию дребезга аналоговых сигналов? или это тоже займет очень много времени?
@portalview3028
@portalview3028 3 года назад
Здраствуйте. Ну на самом деле тут ничего сложного нет и это просто творческая задачка, но описывать ее будет долго, наверное) Я бы смотрел в сторону таймеров и усреднений значений. Попробуйте в конце каждого цикла записывать измерение аналогового сигнала, а после 10-30 циклов, например, усреднять это значение. Также сделайте отслеживание аномальных показаний, если значение измерения резко изменилось более чем на 50 процентов, к примеру опять же. А лучше посмотреть лучшие практики по фильтрации значений сигнала и применять их в своей программе)
@user-hx5il7xj3t
@user-hx5il7xj3t 3 года назад
@@portalview3028 Спасибо. Попробую
@SWiVi
@SWiVi 2 года назад
А как теперь выключить Tag Out, если уже DB Sensor_1 на вход Tag Sensor_1_input не реагирует
@Sergnavin
@Sergnavin Год назад
Это видео было прекрасно долгим! ) Кирилл, подскажи пожалуйста, зачем FB фильтрации сигнала ты вставил в функцию Discrete inputs (FC1)? Почему нельзя было вставить FB сразу в Main(OB1) ? Если это несет какой то смысл, расскажи пожалуйста, какой?
@portalview3028
@portalview3028 Год назад
Смысл только в организации) можно и сразу в main было вставить. Но чтобы не засорять сильно вызовами блок main, я объединяю вызовы fb в функциях
@Sergnavin
@Sergnavin Год назад
@@portalview3028 А можно где то почитать как работает эта система вызовов с блока Main? И как правильно организовать структуру программы чтоб не засорять. Может подскажешь где искать или ссылочку подкинешь?
@portalview3028
@portalview3028 Год назад
Последовательно сверху вниз работает) я имел ввиду не засорять для себя, программе в принципе все равно
@georgiyteplov80
@georgiyteplov80 4 месяца назад
@@portalview3028 а программе действительно все равно? у функции нет своей памяти и не значит ли это то, что каждый раз стирается память ФБ? ну или что-нибудь в этом роде? Функция действительно эквивалентна "обычному программированию в main"?
@mx0x0xm
@mx0x0xm 3 года назад
можно переменную (структуру) таймера определять как тип TON или TOF
@portalview3028
@portalview3028 3 года назад
Структура для любого таймера одинаковая. Вы только выбираете нужную инструкцию (TON, TOF, TP, TONR), а структуру используете IEC_TIMER
@mx0x0xm
@mx0x0xm 3 года назад
@@portalview3028 я в db таймера определяю переменную типа TON например и формитуется соответствующая структура, таким образом можно использовать таймер в fb возможно кому то будет полезно, я так понимаю что TON это сименсовская библиотека а TON_IEC IEC-шная соответственно..
@user-1970IGOR
@user-1970IGOR 2 года назад
Мне кажется что логичнее и правильнее было поставить последовательно контакты tags Sensor c Sensor 1.value мы бы видели как мигает сам вход и как после него работает фильтр так бы это было и в реальной схеме только вместо тags.sensor стоял например вход контроллера i0.1 это на 36мин
@user-dk8gy4zy2r
@user-dk8gy4zy2r 3 года назад
всё чётко и ясно, красава, Только вот негде не могу найти где скачать тиа портал, для практики хотелось бы и самому пробовать делать свои проекты, кто посоветует где скачать ааа, буду очень благодарен ......
@AndreyPolischuk
@AndreyPolischuk 3 года назад
Я с рутрекера скачал.
@user-dk8gy4zy2r
@user-dk8gy4zy2r 3 года назад
@@AndreyPolischuk можете ссылку скинуть пожалуйста, буду благодарен
@portalview3028
@portalview3028 3 года назад
plc4me.com/download-tia_portal_v16_full_version-real-100/ 16 версия здесь с полным пакетом допов. Включайте VPN, если не открывается страница
@user-hx5il7xj3t
@user-hx5il7xj3t 3 года назад
Здравствуйте! Может Вы знаете как вернуть к заводским настройкам(обнулить) LOGO!8.2? Проблема вот в чем. При первой настройке после установки языка и часов видимо что то нажал и сейчас LOGO! находиться в одном состоянии, в котором на дисплее отображается только "Установки", "Сеть" и "Диагностика". В эти подменю заходить могу, но только для просмотра, а вот например часы изменить и запустить программу уже не могу. Нажимал уже все что угодно, но пока результата нет. Через ПК программа загружается и стартует тоже через ПК. Помогите разобраться или как можно все обнулить, что заново настроить.
@portalview3028
@portalview3028 3 года назад
Здравствуйте. Давно с лого не занимался. Там есть такая штука, типа упрощённое меню и расширенное. Сталкивался с подобным, нужно было ввести пароль, чтобы попасть в это расширенное меню, где остальные параметры становятся доступными. Не подскажу сейчас, как это сделать, нужно смотреть. Но ваша ситуация очень на это похожа. Сброс на заводские настройки должен быть описан как минимум в мануале на контроллер, посмотрите. Там и решение проблемы может найдёте)
@user-hx5il7xj3t
@user-hx5il7xj3t 3 года назад
@@portalview3028 спасибо. Всё правильно. Необходимо ввести пароль ADMINA. Поискал этот пароль. По умолчанию LOGO
@portalview3028
@portalview3028 3 года назад
Решили проблему?)
@user-hx5il7xj3t
@user-hx5il7xj3t 3 года назад
@@portalview3028 да. Спасибо! :-)
@Aleksandr_Kashirin
@Aleksandr_Kashirin 3 года назад
У меня нет возможности выбрать IEC_TIMER в качестве типа данных. Как это сделать? 7:23
@portalview3028
@portalview3028 3 года назад
Странно. Проверьте, где вы создаёте таймер. Я в видео создаю его как static переменную. Возможно вы его создаёте куда-то в другое место
@Aleksandr_Kashirin
@Aleksandr_Kashirin 3 года назад
@@portalview3028 Я решил проблему другим способом. Когда ТИА портал предлагает создать блок данных, я выбираю блок экземпляра данных, который находится внизу диалогового окна. Тогда создается в точности как у вас, только тип данных у него TON. Можно еще на выбор поставить TOF, TP или если счетчики то CTU, CTD и тд.
@user-dk8gy4zy2r
@user-dk8gy4zy2r 3 года назад
посоветуйте где скачать ТИА портал, крякнутый
@andrey47579
@andrey47579 3 года назад
@@user-dk8gy4zy2r можешь скачать с торрента какого-нибудь и программку sim ekb install для взлома. Использовать только для учебы.
@zubr86
@zubr86 Год назад
подскажите, почему могут не работать горячие клавиши в мониторинге (ctrl+F2,F3)?
@portalview3028
@portalview3028 Год назад
Могу только предположить, что вы за ноутбуком работаете и у вас не получается, потому что надо, к примеру, нажать ещё кнопку fn. Других идей нет, мало ли чего оно может не работать)
@zubr86
@zubr86 Год назад
@@portalview3028 это на PC, причем в таблице force все работает)?
@user-sq6wr5wu2c
@user-sq6wr5wu2c 6 месяцев назад
Привет. У тебя ошибка на 36:20 (глючит датчик на выходе единица так же моргает)
@user-sq6wr5wu2c
@user-sq6wr5wu2c 6 месяцев назад
За два года ни кто ошибки не заметил))))
@portalview3028
@portalview3028 6 месяцев назад
Я пересмотрел и тоже не заметил никакой ошибки. Вы не в дб смотрите, а в самом нетворке что происходит
@scolpak
@scolpak 2 года назад
Я могу ошибаться, но в самом конце (ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-6Gx2Jlijys4.html 36:12 )при проверке дребезга не правильно сделана схема. тк при дребезге датчика sensor_1_input на прямую управляет out. Спасибо за уроки!
@AmirFamily02
@AmirFamily02 2 года назад
У автора все верно. Я сам собрал схему со своим плк и именно value на db sensor 1 срабатывает таймер на 5 секунд все верно
@scolpak
@scolpak 2 года назад
@@AmirFamily02 внимательно посмотрите на переменную выход "Tags.Out" в момент дребезга входом котроллера и когда не прошло 5 секунд, он повторяет "дребезг" датчика и двигатель включается/выключается
@AmirFamily02
@AmirFamily02 2 года назад
​@@scolpak да есть такое, когда только допустим наполнился бак с водой до уровня датчика, тоесть из положения не наполнен в наполнен есть срабатывание помню такое. надо вновь вкл. схему. .
@eugenbeutnr2694
@eugenbeutnr2694 Год назад
@@scolpak Абсолютно верно говорите, для этого и написана эта программа, чтобы исключить дребезг. Хотя в ней нет необходимости, фильтр чувствительности дискретных входов настраиваются прямо в Tia Portal.
@notecoder
@notecoder Год назад
Оператору нельзя разрешать симуляцию сигналов. Только киповцам и их руководству.
@mslq
@mslq Год назад
От дребезга надо на низком уровне разбираться, я в своём контроллере только параметрами фильтрации настраиваю из среды программирования.
@portalview3028
@portalview3028 Год назад
Зачем лезть на низкий уровень и усложнять себе жизнь, если можно сделать все просто?
@mslq
@mslq Год назад
@@portalview3028 Зачем просто? Надо правильно, вещи должны все лежать на своих местах. А антидребезг у меня исключительно хорош, и себе где нибудь запишите что ли - в "ассемблере существуют макросы", работают замечательно. фильтр у меня намного более сложный, не такой примитив как у вас, ну понятно, у вас треть ресурсов контроллера сожрёт, если будете ставить что то хорошее, а так вы привыкли каким попало пользоваться. Вы не можете себе позволить глубину фильтрации использовать как у меня, фигли, по упрощёнке всё.
@mslq
@mslq Год назад
@@portalview3028 Вам следует течь по течению со всеми, так что ничего вы поделать тут не можете, впаривайте дальше что какой замечательный контроллер, и что вы тут сейчас антидребезг наваяете.
Далее
Help Barry And Barry Woman Scan Prisoners
00:23
Просмотров 2,9 млн
Как похудеть на 10 кг ?! БЫСТРО!
07:06
Help Barry And Barry Woman Scan Prisoners
00:23
Просмотров 2,9 млн