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

Поділитися
Вставка
  • Опубліковано 31 гру 2024

КОМЕНТАРІ •

  • @igorprice9047
    @igorprice9047 3 роки тому +7

    Классные уроки. Если есть время и желание, пили еще. Много почерпнул из несовсем очевидных вещей.

    • @portalview3028
      @portalview3028  3 роки тому +1

      Хочется делать ролики, но времени совсем нет. Как появится время, что нибудь сделаю)

  • @ildarz3344
    @ildarz3344 3 роки тому +4

    Уроки просто супер, наконец нашел что то подходящее для себя спасибо тебе за это.

  • @GeorGakkenshmidt
    @GeorGakkenshmidt 2 роки тому

    Красавчик! Уроки интересные и голос хорошо поставлен, не засыпаешь при просмотре. Так держать!

  • @denisivanov3611
    @denisivanov3611 Рік тому

    Нет слов. Очень доступно, и довольно полезно. Буду пробовать внедрять такую защиту!

  • @andrey47579
    @andrey47579 3 роки тому +4

    Очень интересно и полезно для обучения. Если будет время, запиши пожалуйста видео про обработку аналоговых сигналов.

  • @user-ob7eb5sh5w
    @user-ob7eb5sh5w Місяць тому

    полезно, но сложно, буду пересматривать чтоб воспринять инфу 👍

  • @SERVICE_KARELIA
    @SERVICE_KARELIA 10 місяців тому +1

    16:03 можно также с таймером TOF сделать, а датчик подключить к входу таймера RESET. Как только сигнал с датчика пропадает по истечении времени выход отключится.

    • @fara0n333
      @fara0n333 3 місяці тому

      Так практичніше, плюс час відсутності сигналу для аналіза можна зафіксувати

  • @Kordya4ello
    @Kordya4ello 3 роки тому

    Спасибо большое, очень информативно и понятно

  • @framos9991
    @framos9991 Рік тому

    Круто! Спасибо тебе!

  • @eriksonneu7202
    @eriksonneu7202 3 роки тому

    Привет тебе коллега из Германии.

  • @АртемНеволин-ф1з
    @АртемНеволин-ф1з 3 роки тому +4

    Огромное ВАМ спасибо за ТРУД! Отличные уроки и полезные фишки. Если будет возможность, то сделайте, пожалуйста, видео про фильтрацию дребезга аналоговых сигналов. Видео о создание SCADA будете делать? К сожалению в инете по SCADA ни чего вразумительного пока не нашел. Сможете помочь?

    • @portalview3028
      @portalview3028  3 роки тому +4

      Когда-нибудь до этих тем может и доберёмся. Времени не хватает на всё)

    • @АртемНеволин-ф1з
      @АртемНеволин-ф1з 3 роки тому

      @@portalview3028 ждём с нетерпением :-)

  • @АртемСуслов-п9м
    @АртемСуслов-п9м 2 роки тому +1

    В меню создания блока памяти для таймера. Если выбрать multi instants то создаться экземплярный блок памяти таймера внутри блока памяти FB1

  • @БакытбекАбдулкаримов-я2л

    Красавчик, брат

  • @bazlevich
    @bazlevich 3 роки тому +1

    так ну ждём видео по обработке аналоговых сигналов. Чем быстрее тем лучше. А то диплом пишу и делаю стенд с ПЛК и панелью оператора)

  • @deslexplotizin4785
    @deslexplotizin4785 Місяць тому

    Network1:
    //Сброс значения состояния кнопки
    L 0
    = "tag_out_1"
    //Смотрим активна ли кнопка
    A "BUTTON"
    JCN BUTTON_INACTIVE
    //Таймер устанавливаем, если кнопка нажата
    L S5T#10ms
    SD "TIMER"
    Network2:
    WHILE_TIMER_WORK : AN "BUTTON"
    JC BUTTON_INACTIVE
    A "TIMER"
    JCN WHILE_TIMER_WORK
    NOP 0
    Network3:
    //Устанавливаем активное состояние кнопки
    L 1
    = "tag_out_1"
    Netrowk4:
    BUTTON_INACTIVE : NOP 0

  • @SergAlex81
    @SergAlex81 3 роки тому +1

    Здравствуйте. Вы хорошо обьясняете. Спасибо. Хочется некоторого усовершенствования. Сам пока не могу воплотить то что задумал. Может вы поможете.
    Есть например сотня дискретных сигналов. По вашей программе будет создано 100 блоков данных. Хочется чтобы это был один блок, а в нём сотня переменных с некоторым пользовательским типом данных. Чтобы структура была более красивее)).

    • @portalview3028
      @portalview3028  3 роки тому

      А для чего вам тогда блок данных с этими сигналами? Если вы их не обрабатываете, от обращайтесь напрямую к тэгу. А если обрабатываете, то у вас в любом случае будет сто блоков данных. Можно заморочиться и переписать в отдельный блок данных все, но это явно лишнее)

    • @АлексейНасуленко
      @АлексейНасуленко 3 роки тому +1

      @@portalview3028 Есть такая мысль. Разбить эти сигналы по группам, напр. группа безопасности (технологические блокировки), группа контроля питания цепей управления, группа контроля силовых цепей - мы все эти группы сигналов все равно обрабатываем как одно из условий начала работы. И таймер ставить на общий тэг, например, Tech_safety

  • @aking83
    @aking83 3 роки тому

    Видео Класное.... и не длинное... Скажите, или снимите ролик :), как обработать дискретный сигнал по количеству нажатий или по времени нажатия(короткое - выход 1, два коротких - выход 2, длинное - выход 3).

    • @portalview3028
      @portalview3028  3 роки тому +1

      Спасибо;) не думаю, что буду делать ролик именно на эту тему, но расскажу про таймеры и счётчики. Понимая это, вы сможете сделать кнопку с нужным вам функционалом. Сейчас несколько роликов одновременно делаю, выйдут в ближайшее время, я надеюсь :)

  • @volodymyrbobyk9997
    @volodymyrbobyk9997 3 роки тому +1

    Спасибо. Пытался сделать симуляцию, но так понял что с ДБ этого не сделать? У меня нет физического контроллера что бы поэкспериментировать

    • @portalview3028
      @portalview3028  3 роки тому +1

      Стимуляция заменяет реальный ю контроллер, в этом и суть. Все симулируется, дб в том числе

  • @Kotov-Senia
    @Kotov-Senia Рік тому

    Спасибо за уроки! Подскажите как в 11 клик меняете переменные в таблице базы данных(во время симуляции)?

    • @portalview3028
      @portalview3028  Рік тому

      Не в один клик, а в 2) просто щелкаю по переменной в блоке данных двойным кликом

  • @andrey47579
    @andrey47579 3 роки тому +3

    Напиши пожалуйста, как ты меняешь значения с TRUE на FALSE в таблице тегов в режиме симуляции? Я жму двойным щелчком и приходится писать вручную. На видео видно, что ты как-то делаешь, не прописывая вручную. Буду благодарен за ответ.

    • @aking83
      @aking83 3 роки тому +3

      CTRL+F2 and CTRL+F3

  • @НиколайЗеленев-к2ф
    @НиколайЗеленев-к2ф 11 місяців тому

    Друг подскажи как на ФБД сделать Есть вход (i1) и выход (q1) как их привязать друг к другу , какой блок использовать ?

  • @SWiVi
    @SWiVi 3 роки тому

    А как теперь выключить Tag Out, если уже DB Sensor_1 на вход Tag Sensor_1_input не реагирует

  • @Sergnavin
    @Sergnavin Рік тому

    Это видео было прекрасно долгим! )
    Кирилл, подскажи пожалуйста, зачем FB фильтрации сигнала ты вставил в функцию Discrete inputs (FC1)? Почему нельзя было вставить FB сразу в Main(OB1) ? Если это несет какой то смысл, расскажи пожалуйста, какой?

    • @portalview3028
      @portalview3028  Рік тому +1

      Смысл только в организации) можно и сразу в main было вставить. Но чтобы не засорять сильно вызовами блок main, я объединяю вызовы fb в функциях

    • @Sergnavin
      @Sergnavin Рік тому

      @@portalview3028 А можно где то почитать как работает эта система вызовов с блока Main? И как правильно организовать структуру программы чтоб не засорять. Может подскажешь где искать или ссылочку подкинешь?

    • @portalview3028
      @portalview3028  Рік тому +1

      Последовательно сверху вниз работает) я имел ввиду не засорять для себя, программе в принципе все равно

    • @georgiyteplov80
      @georgiyteplov80 9 місяців тому

      @@portalview3028 а программе действительно все равно? у функции нет своей памяти и не значит ли это то, что каждый раз стирается память ФБ? ну или что-нибудь в этом роде? Функция действительно эквивалентна "обычному программированию в main"?

  • @AndreyPolischuk
    @AndreyPolischuk 4 роки тому

    Здравствуйте. У вас очень интересные и познавательные видео! Подскажите, пожалуйста, как задавать произвольные (Random) значения? или как написать блок?

    • @portalview3028
      @portalview3028  4 роки тому +1

      Привет. К сожалению, насколько я знаю, в тиа портале нет таких блоков для генерирования случайного значения. Можно попробовать поискать готовые библиотечные блоки на сайте Сименса. Возможно что-то найдется

    • @AndreyPolischuk
      @AndreyPolischuk 4 роки тому

      @@portalview3028 Спасибо за ответ!

    • @АнтонРудченко-м8й
      @АнтонРудченко-м8й 4 роки тому

      посоветуйте где скачать ТИА портал, спасибо

  • @ПланетЮзер
    @ПланетЮзер 11 місяців тому

    Привет. У тебя ошибка на 36:20 (глючит датчик на выходе единица так же моргает)

    • @ПланетЮзер
      @ПланетЮзер 11 місяців тому

      За два года ни кто ошибки не заметил))))

    • @portalview3028
      @portalview3028  11 місяців тому

      Я пересмотрел и тоже не заметил никакой ошибки. Вы не в дб смотрите, а в самом нетворке что происходит

  • @user-1970IGOR
    @user-1970IGOR 2 роки тому

    нравится

  • @zubr86
    @zubr86 2 роки тому

    подскажите, почему могут не работать горячие клавиши в мониторинге (ctrl+F2,F3)?

    • @portalview3028
      @portalview3028  2 роки тому

      Могу только предположить, что вы за ноутбуком работаете и у вас не получается, потому что надо, к примеру, нажать ещё кнопку fn. Других идей нет, мало ли чего оно может не работать)

    • @zubr86
      @zubr86 2 роки тому

      @@portalview3028 это на PC, причем в таблице force все работает)?

  • @fanystason
    @fanystason 3 роки тому

    красава

  • @АртемНеволин-ф1з
    @АртемНеволин-ф1з 3 роки тому

    Здравствуйте! Можете в вкратце рассказать, как реализовать фильтрацию дребезга аналоговых сигналов? или это тоже займет очень много времени?

    • @portalview3028
      @portalview3028  3 роки тому +2

      Здраствуйте. Ну на самом деле тут ничего сложного нет и это просто творческая задачка, но описывать ее будет долго, наверное) Я бы смотрел в сторону таймеров и усреднений значений. Попробуйте в конце каждого цикла записывать измерение аналогового сигнала, а после 10-30 циклов, например, усреднять это значение. Также сделайте отслеживание аномальных показаний, если значение измерения резко изменилось более чем на 50 процентов, к примеру опять же. А лучше посмотреть лучшие практики по фильтрации значений сигнала и применять их в своей программе)

    • @АртемНеволин-ф1з
      @АртемНеволин-ф1з 3 роки тому

      @@portalview3028 Спасибо. Попробую

  • @mx0x0xm
    @mx0x0xm 3 роки тому

    можно переменную (структуру) таймера определять как тип TON или TOF

    • @portalview3028
      @portalview3028  3 роки тому

      Структура для любого таймера одинаковая. Вы только выбираете нужную инструкцию (TON, TOF, TP, TONR), а структуру используете IEC_TIMER

    • @mx0x0xm
      @mx0x0xm 3 роки тому +1

      @@portalview3028 я в db таймера определяю переменную типа TON например и формитуется соответствующая структура, таким образом можно использовать таймер в fb возможно кому то будет полезно, я так понимаю что TON это сименсовская библиотека а TON_IEC IEC-шная соответственно..

  • @Aleksandr_Kashirin
    @Aleksandr_Kashirin 4 роки тому

    У меня нет возможности выбрать IEC_TIMER в качестве типа данных. Как это сделать? 7:23

    • @portalview3028
      @portalview3028  4 роки тому

      Странно. Проверьте, где вы создаёте таймер. Я в видео создаю его как static переменную. Возможно вы его создаёте куда-то в другое место

    • @Aleksandr_Kashirin
      @Aleksandr_Kashirin 4 роки тому

      @@portalview3028 Я решил проблему другим способом. Когда ТИА портал предлагает создать блок данных, я выбираю блок экземпляра данных, который находится внизу диалогового окна. Тогда создается в точности как у вас, только тип данных у него TON. Можно еще на выбор поставить TOF, TP или если счетчики то CTU, CTD и тд.

    • @АнтонРудченко-м8й
      @АнтонРудченко-м8й 4 роки тому

      посоветуйте где скачать ТИА портал, крякнутый

    • @andrey47579
      @andrey47579 3 роки тому

      @@АнтонРудченко-м8й можешь скачать с торрента какого-нибудь и программку sim ekb install для взлома. Использовать только для учебы.

  • @user-1970IGOR
    @user-1970IGOR 2 роки тому

    Мне кажется что логичнее и правильнее было поставить последовательно контакты tags Sensor c Sensor 1.value мы бы видели как мигает сам вход и как после него работает фильтр так бы это было и в реальной схеме только вместо тags.sensor стоял например вход контроллера i0.1 это на 36мин

  • @АртемНеволин-ф1з
    @АртемНеволин-ф1з 3 роки тому

    Здравствуйте!
    Может Вы знаете как вернуть к заводским настройкам(обнулить) LOGO!8.2? Проблема вот в чем. При первой настройке после установки языка и часов видимо что то нажал и сейчас LOGO! находиться в одном состоянии, в котором на дисплее отображается только "Установки", "Сеть" и "Диагностика". В эти подменю заходить могу, но только для просмотра, а вот например часы изменить и запустить программу уже не могу. Нажимал уже все что угодно, но пока результата нет. Через ПК программа загружается и стартует тоже через ПК. Помогите разобраться или как можно все обнулить, что заново настроить.

    • @portalview3028
      @portalview3028  3 роки тому +1

      Здравствуйте. Давно с лого не занимался. Там есть такая штука, типа упрощённое меню и расширенное. Сталкивался с подобным, нужно было ввести пароль, чтобы попасть в это расширенное меню, где остальные параметры становятся доступными. Не подскажу сейчас, как это сделать, нужно смотреть. Но ваша ситуация очень на это похожа.
      Сброс на заводские настройки должен быть описан как минимум в мануале на контроллер, посмотрите. Там и решение проблемы может найдёте)

    • @АртемНеволин-ф1з
      @АртемНеволин-ф1з 3 роки тому

      @@portalview3028 спасибо. Всё правильно. Необходимо ввести пароль ADMINA. Поискал этот пароль. По умолчанию LOGO

    • @portalview3028
      @portalview3028  3 роки тому +1

      Решили проблему?)

    • @АртемНеволин-ф1з
      @АртемНеволин-ф1з 3 роки тому

      @@portalview3028 да. Спасибо! :-)

  • @АнтонРудченко-м8й
    @АнтонРудченко-м8й 4 роки тому

    всё чётко и ясно, красава, Только вот негде не могу найти где скачать тиа портал, для практики хотелось бы и самому пробовать делать свои проекты, кто посоветует где скачать ааа, буду очень благодарен ......

    • @AndreyPolischuk
      @AndreyPolischuk 4 роки тому +1

      Я с рутрекера скачал.

    • @АнтонРудченко-м8й
      @АнтонРудченко-м8й 4 роки тому

      @@AndreyPolischuk можете ссылку скинуть пожалуйста, буду благодарен

    • @portalview3028
      @portalview3028  4 роки тому

      plc4me.com/download-tia_portal_v16_full_version-real-100/
      16 версия здесь с полным пакетом допов. Включайте VPN, если не открывается страница

  • @scolpak
    @scolpak 3 роки тому

    Я могу ошибаться, но в самом конце (ua-cam.com/video/6Gx2Jlijys4/v-deo.html 36:12 )при проверке дребезга не правильно сделана схема. тк при дребезге датчика sensor_1_input на прямую управляет out. Спасибо за уроки!

    • @AmirFamily02
      @AmirFamily02 3 роки тому

      У автора все верно. Я сам собрал схему со своим плк и именно value на db sensor 1 срабатывает таймер на 5 секунд все верно

    • @scolpak
      @scolpak 3 роки тому

      @@AmirFamily02 внимательно посмотрите на переменную выход "Tags.Out"
      в момент дребезга входом котроллера и когда не прошло 5 секунд, он повторяет "дребезг" датчика и двигатель включается/выключается

    • @AmirFamily02
      @AmirFamily02 3 роки тому

      ​@@scolpak да есть такое, когда только допустим наполнился бак с водой до уровня датчика, тоесть из положения не наполнен в наполнен есть срабатывание помню такое. надо вновь вкл. схему.
      .

    • @eugenbeutnr2694
      @eugenbeutnr2694 Рік тому

      @@scolpak Абсолютно верно говорите, для этого и написана эта программа, чтобы исключить дребезг. Хотя в ней нет необходимости, фильтр чувствительности дискретных входов настраиваются прямо в Tia Portal.

  • @eduardbae9691
    @eduardbae9691 26 днів тому

    База

  • @notecoder
    @notecoder 2 роки тому

    Оператору нельзя разрешать симуляцию сигналов. Только киповцам и их руководству.

  • @mslq
    @mslq Рік тому

    От дребезга надо на низком уровне разбираться, я в своём контроллере только параметрами фильтрации настраиваю из среды программирования.

    • @portalview3028
      @portalview3028  Рік тому

      Зачем лезть на низкий уровень и усложнять себе жизнь, если можно сделать все просто?

    • @mslq
      @mslq Рік тому

      @@portalview3028 Зачем просто? Надо правильно, вещи должны все лежать на своих местах. А антидребезг у меня исключительно хорош, и себе где нибудь запишите что ли - в "ассемблере существуют макросы", работают замечательно. фильтр у меня намного более сложный, не такой примитив как у вас, ну понятно, у вас треть ресурсов контроллера сожрёт, если будете ставить что то хорошее, а так вы привыкли каким попало пользоваться. Вы не можете себе позволить глубину фильтрации использовать как у меня, фигли, по упрощёнке всё.

    • @mslq
      @mslq Рік тому

      @@portalview3028 Вам следует течь по течению со всеми, так что ничего вы поделать тут не можете, впаривайте дальше что какой замечательный контроллер, и что вы тут сейчас антидребезг наваяете.