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

  Рет қаралды 15,913

Portal View

Portal View

Күн бұрын

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

Пікірлер: 77
@ildarz3344
@ildarz3344 3 жыл бұрын
Уроки просто супер, наконец нашел что то подходящее для себя спасибо тебе за это.
@igorprice9047
@igorprice9047 3 жыл бұрын
Классные уроки. Если есть время и желание, пили еще. Много почерпнул из несовсем очевидных вещей.
@portalview3028
@portalview3028 3 жыл бұрын
Хочется делать ролики, но времени совсем нет. Как появится время, что нибудь сделаю)
@andrey47579
@andrey47579 3 жыл бұрын
Очень интересно и полезно для обучения. Если будет время, запиши пожалуйста видео про обработку аналоговых сигналов.
@GeorGakkenshmidt
@GeorGakkenshmidt Жыл бұрын
Красавчик! Уроки интересные и голос хорошо поставлен, не засыпаешь при просмотре. Так держать!
@Kordya4ello
@Kordya4ello 2 жыл бұрын
Спасибо большое, очень информативно и понятно
@denisivanov3611
@denisivanov3611 Жыл бұрын
Нет слов. Очень доступно, и довольно полезно. Буду пробовать внедрять такую защиту!
@framos9991
@framos9991 Жыл бұрын
Круто! Спасибо тебе!
@user-pn2bh4uu6g
@user-pn2bh4uu6g Жыл бұрын
Красавчик, брат
@bazlevich
@bazlevich 3 жыл бұрын
так ну ждём видео по обработке аналоговых сигналов. Чем быстрее тем лучше. А то диплом пишу и делаю стенд с ПЛК и панелью оператора)
@eriksonneu7202
@eriksonneu7202 2 жыл бұрын
Привет тебе коллега из Германии.
@SERVICE_KARELIA
@SERVICE_KARELIA 4 ай бұрын
16:03 можно также с таймером TOF сделать, а датчик подключить к входу таймера RESET. Как только сигнал с датчика пропадает по истечении времени выход отключится.
@fanystason
@fanystason 3 жыл бұрын
красава
@user-1970IGOR
@user-1970IGOR Жыл бұрын
нравится
@user-hx5il7xj3t
@user-hx5il7xj3t 3 жыл бұрын
Огромное ВАМ спасибо за ТРУД! Отличные уроки и полезные фишки. Если будет возможность, то сделайте, пожалуйста, видео про фильтрацию дребезга аналоговых сигналов. Видео о создание SCADA будете делать? К сожалению в инете по SCADA ни чего вразумительного пока не нашел. Сможете помочь?
@portalview3028
@portalview3028 3 жыл бұрын
Когда-нибудь до этих тем может и доберёмся. Времени не хватает на всё)
@user-hx5il7xj3t
@user-hx5il7xj3t 3 жыл бұрын
@@portalview3028 ждём с нетерпением :-)
@user-ps4he1ym6p
@user-ps4he1ym6p 2 жыл бұрын
В меню создания блока памяти для таймера. Если выбрать multi instants то создаться экземплярный блок памяти таймера внутри блока памяти FB1
@SergAlex81
@SergAlex81 2 жыл бұрын
Здравствуйте. Вы хорошо обьясняете. Спасибо. Хочется некоторого усовершенствования. Сам пока не могу воплотить то что задумал. Может вы поможете. Есть например сотня дискретных сигналов. По вашей программе будет создано 100 блоков данных. Хочется чтобы это был один блок, а в нём сотня переменных с некоторым пользовательским типом данных. Чтобы структура была более красивее)).
@portalview3028
@portalview3028 2 жыл бұрын
А для чего вам тогда блок данных с этими сигналами? Если вы их не обрабатываете, от обращайтесь напрямую к тэгу. А если обрабатываете, то у вас в любом случае будет сто блоков данных. Можно заморочиться и переписать в отдельный блок данных все, но это явно лишнее)
@user-dp9ow2di9m
@user-dp9ow2di9m 2 жыл бұрын
@@portalview3028 Есть такая мысль. Разбить эти сигналы по группам, напр. группа безопасности (технологические блокировки), группа контроля питания цепей управления, группа контроля силовых цепей - мы все эти группы сигналов все равно обрабатываем как одно из условий начала работы. И таймер ставить на общий тэг, например, Tech_safety
@aking83
@aking83 3 жыл бұрын
Видео Класное.... и не длинное... Скажите, или снимите ролик :), как обработать дискретный сигнал по количеству нажатий или по времени нажатия(короткое - выход 1, два коротких - выход 2, длинное - выход 3).
@portalview3028
@portalview3028 3 жыл бұрын
Спасибо;) не думаю, что буду делать ролик именно на эту тему, но расскажу про таймеры и счётчики. Понимая это, вы сможете сделать кнопку с нужным вам функционалом. Сейчас несколько роликов одновременно делаю, выйдут в ближайшее время, я надеюсь :)
@Kotov-Senia
@Kotov-Senia 6 ай бұрын
Спасибо за уроки! Подскажите как в 11 клик меняете переменные в таблице базы данных(во время симуляции)?
@portalview3028
@portalview3028 6 ай бұрын
Не в один клик, а в 2) просто щелкаю по переменной в блоке данных двойным кликом
@AndreyPolischuk
@AndreyPolischuk 3 жыл бұрын
Здравствуйте. У вас очень интересные и познавательные видео! Подскажите, пожалуйста, как задавать произвольные (Random) значения? или как написать блок?
@portalview3028
@portalview3028 3 жыл бұрын
Привет. К сожалению, насколько я знаю, в тиа портале нет таких блоков для генерирования случайного значения. Можно попробовать поискать готовые библиотечные блоки на сайте Сименса. Возможно что-то найдется
@AndreyPolischuk
@AndreyPolischuk 3 жыл бұрын
@@portalview3028 Спасибо за ответ!
@user-dk8gy4zy2r
@user-dk8gy4zy2r 3 жыл бұрын
посоветуйте где скачать ТИА портал, спасибо
@volodymyrbobyk9997
@volodymyrbobyk9997 2 жыл бұрын
Спасибо. Пытался сделать симуляцию, но так понял что с ДБ этого не сделать? У меня нет физического контроллера что бы поэкспериментировать
@portalview3028
@portalview3028 2 жыл бұрын
Стимуляция заменяет реальный ю контроллер, в этом и суть. Все симулируется, дб в том числе
@andrey47579
@andrey47579 3 жыл бұрын
Напиши пожалуйста, как ты меняешь значения с TRUE на FALSE в таблице тегов в режиме симуляции? Я жму двойным щелчком и приходится писать вручную. На видео видно, что ты как-то делаешь, не прописывая вручную. Буду благодарен за ответ.
@aking83
@aking83 3 жыл бұрын
CTRL+F2 and CTRL+F3
@user-th6th3yt1j
@user-th6th3yt1j 5 ай бұрын
Друг подскажи как на ФБД сделать Есть вход (i1) и выход (q1) как их привязать друг к другу , какой блок использовать ?
@user-1970IGOR
@user-1970IGOR Жыл бұрын
Мне кажется что логичнее и правильнее было поставить последовательно контакты tags Sensor c Sensor 1.value мы бы видели как мигает сам вход и как после него работает фильтр так бы это было и в реальной схеме только вместо тags.sensor стоял например вход контроллера i0.1 это на 36мин
@user-hx5il7xj3t
@user-hx5il7xj3t 3 жыл бұрын
Здравствуйте! Можете в вкратце рассказать, как реализовать фильтрацию дребезга аналоговых сигналов? или это тоже займет очень много времени?
@portalview3028
@portalview3028 3 жыл бұрын
Здраствуйте. Ну на самом деле тут ничего сложного нет и это просто творческая задачка, но описывать ее будет долго, наверное) Я бы смотрел в сторону таймеров и усреднений значений. Попробуйте в конце каждого цикла записывать измерение аналогового сигнала, а после 10-30 циклов, например, усреднять это значение. Также сделайте отслеживание аномальных показаний, если значение измерения резко изменилось более чем на 50 процентов, к примеру опять же. А лучше посмотреть лучшие практики по фильтрации значений сигнала и применять их в своей программе)
@user-hx5il7xj3t
@user-hx5il7xj3t 3 жыл бұрын
@@portalview3028 Спасибо. Попробую
@Sergnavin
@Sergnavin Жыл бұрын
Это видео было прекрасно долгим! ) Кирилл, подскажи пожалуйста, зачем FB фильтрации сигнала ты вставил в функцию Discrete inputs (FC1)? Почему нельзя было вставить FB сразу в Main(OB1) ? Если это несет какой то смысл, расскажи пожалуйста, какой?
@portalview3028
@portalview3028 Жыл бұрын
Смысл только в организации) можно и сразу в main было вставить. Но чтобы не засорять сильно вызовами блок main, я объединяю вызовы fb в функциях
@Sergnavin
@Sergnavin Жыл бұрын
@@portalview3028 А можно где то почитать как работает эта система вызовов с блока Main? И как правильно организовать структуру программы чтоб не засорять. Может подскажешь где искать или ссылочку подкинешь?
@portalview3028
@portalview3028 Жыл бұрын
Последовательно сверху вниз работает) я имел ввиду не засорять для себя, программе в принципе все равно
@georgiyteplov80
@georgiyteplov80 3 ай бұрын
@@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-шная соответственно..
@SWiVi
@SWiVi 2 жыл бұрын
А как теперь выключить Tag Out, если уже DB Sensor_1 на вход Tag Sensor_1_input не реагирует
@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-sq6wr5wu2c
@user-sq6wr5wu2c 5 ай бұрын
Привет. У тебя ошибка на 36:20 (глючит датчик на выходе единица так же моргает)
@user-sq6wr5wu2c
@user-sq6wr5wu2c 5 ай бұрын
За два года ни кто ошибки не заметил))))
@portalview3028
@portalview3028 5 ай бұрын
Я пересмотрел и тоже не заметил никакой ошибки. Вы не в дб смотрите, а в самом нетворке что происходит
@zubr86
@zubr86 Жыл бұрын
подскажите, почему могут не работать горячие клавиши в мониторинге (ctrl+F2,F3)?
@portalview3028
@portalview3028 Жыл бұрын
Могу только предположить, что вы за ноутбуком работаете и у вас не получается, потому что надо, к примеру, нажать ещё кнопку fn. Других идей нет, мало ли чего оно может не работать)
@zubr86
@zubr86 Жыл бұрын
@@portalview3028 это на PC, причем в таблице force все работает)?
@scolpak
@scolpak 2 жыл бұрын
Я могу ошибаться, но в самом конце (kzbin.info/www/bejne/bHjbY32ins-sqZY 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.
@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 для взлома. Использовать только для учебы.
@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 да. Спасибо! :-)
@notecoder
@notecoder Жыл бұрын
Оператору нельзя разрешать симуляцию сигналов. Только киповцам и их руководству.
@mslq
@mslq Жыл бұрын
От дребезга надо на низком уровне разбираться, я в своём контроллере только параметрами фильтрации настраиваю из среды программирования.
@portalview3028
@portalview3028 Жыл бұрын
Зачем лезть на низкий уровень и усложнять себе жизнь, если можно сделать все просто?
@mslq
@mslq Жыл бұрын
@@portalview3028 Зачем просто? Надо правильно, вещи должны все лежать на своих местах. А антидребезг у меня исключительно хорош, и себе где нибудь запишите что ли - в "ассемблере существуют макросы", работают замечательно. фильтр у меня намного более сложный, не такой примитив как у вас, ну понятно, у вас треть ресурсов контроллера сожрёт, если будете ставить что то хорошее, а так вы привыкли каким попало пользоваться. Вы не можете себе позволить глубину фильтрации использовать как у меня, фигли, по упрощёнке всё.
@mslq
@mslq Жыл бұрын
@@portalview3028 Вам следует течь по течению со всеми, так что ничего вы поделать тут не можете, впаривайте дальше что какой замечательный контроллер, и что вы тут сейчас антидребезг наваяете.
MEU IRMÃO FICOU FAMOSO
00:52
Matheus Kriwat
Рет қаралды 39 МЛН
Василиса наняла личного массажиста 😂 #shorts
00:22
Денис Кукояка
Рет қаралды 9 МЛН
SEE Electrical 3D Panel+ | Presentación módulo Copper
1:27
IGE-XAO is becoming ETAP - Español
Рет қаралды 10 М.
Что представляет из себя язык STL?
47:00
DB part1
18:55
Igor Alterman
Рет қаралды 23 М.