S7-1200 & Modbus TCP. Server & Client

Поделиться
HTML-код
  • Опубликовано: 1 дек 2024

Комментарии • 23

  • @9год_под_Пситеррором

    Спасибо товарищъ

  • @asutp2089
    @asutp2089 2 года назад +2

    Laik and coment

  • @SERVICE_KARELIA
    @SERVICE_KARELIA 3 месяца назад

    А, для двух MB_CLIENT нужно ли создавать индивидуальные TCON_IP?

  • @PersonalNIK
    @PersonalNIK 2 года назад +1

    Обычный plc sim не поддерживает ethernet соединения. Если хотите потестить работу с ethernet портом, необходимо использовать plc sim advance. Но он не поддерживает работу с 1200, там возможно использовать только 1500 и et200cpu. Но в случаи с modbus разницы в программирование 1500 и 1200 нет. В случаи с connect, у неё есть графический интерфейс) FB с одноимённым названием

    • @PersonalNIK
      @PersonalNIK 2 года назад

      Не знаю говорили вы или нет, но по умолчанию offset адресов нет, чтобы они были необходимо выключить оптимизацию в настройках блоков

    • @SlavaSlavin1
      @SlavaSlavin1  2 года назад

      Понятно, спасибо. Да, разницы в этой теме между 1200-1500 мало, кроме того, что на 1500 можно использовать сконфигурированные соединения. Как я понял - только на 1500

    • @SlavaSlavin1
      @SlavaSlavin1  2 года назад

      Сказал )

    • @PersonalNIK
      @PersonalNIK 2 года назад

      @@SlavaSlavin1 это и на 1200 можно, есть отличия в блоках, которые я не помню)

    • @SlavaSlavin1
      @SlavaSlavin1  2 года назад

      @@PersonalNIK Понял, отличие как минимум в этой структуре, которая на CONNECT подаётся

  • @Hip67channel
    @Hip67channel 2 года назад

    У вас реквест для клиента происходит каждый скан? У меня в таком случае функция ругалась, что невозможно выполнить 2 запроса одновременно. Для этого я перед реквестом ставил условие NOT BUSY. Кстати, снимать оптимизацию с блока с данными не обязательно. У меня отлично работает и так.

    • @SlavaSlavin1
      @SlavaSlavin1  2 года назад

      Запрос хотя бы раз, но выполнился бы. Не стал перегружать видео информацией о синхронизации запросов.
      Не будет работать P# поинтер при оптимизированном доступе. По кр мере в таком виде как я показал. Это указатель на адрес.

    • @PersonalNIK
      @PersonalNIK 2 года назад

      @@SlavaSlavin1 В новых сериях ПЛК (1200\1500) 4 вида указателей (Pointer, ANY, REF и Variant) Последние 2 работают только с оптимизированными блоками. Есть операции разименования (перед := нужно поставить ^). Я пока не понимаю зачем это нужно применять, но например универсальные блоки с автоматическим определением типа данных в коде стало значительно удобным. Прада большинство фишек работает только на 1500. Там например есть новые типы данных, тот же 64 битный word.

    • @SlavaSlavin1
      @SlavaSlavin1  2 года назад

      @@PersonalNIK Спасибо, что то проясняется в голове) Разименование - это стандартная процедура в традиционном программировании. Передача переменной по ссылке, означает что Вы передаёте только её адрес в памяти. А при разименовании, Вы получаете само значение. И ещё момент. В классике, ANY - это тип переменной, а Pointer, это метод обращения к такому типу. Тот самый указатель. Думаю, что тут также))

    • @PersonalNIK
      @PersonalNIK 2 года назад

      @@SlavaSlavin1 any от pointer отличается только тем, что в первом случаи известна длина соответственно размер переменной этого типа имеет большей размер, как тип данных, можно было оба использовать. Хотя я могу уже что-то и позабыть. Ну и по разименования, я понимаю что это, но не понимаю применение в контексте программирования плк. Но адреса видеть прикольно) В общем Siemens в портале добавили очень много фишек, которых не было в классике, что-то прям совсем поменяли, мне понравилось неплохая фишка по тестирование блоком и возможность писать типа гайда, при компиляции если Вы ему не следуете будет предупреждения слать в лог. Ну и я если честно не помню, было это раньше, но на свои блоки прям в проект можно добавить pdf-ку с докой, которая будет доступна по ctr+f1

    • @Hip67channel
      @Hip67channel 2 года назад

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

  • @SERVICE_KARELIA
    @SERVICE_KARELIA 3 месяца назад

    7:40😊 А, можно кликнуть по пиктограмме и ничего не писать.

  • @valeryshmaraev2967
    @valeryshmaraev2967 2 месяца назад

    озвучка статьи с хабра.

    • @SlavaSlavin1
      @SlavaSlavin1  2 месяца назад

      Не читал, не знаю)