Jump to content
  • Sign in to follow this  

    Передача данных между системами ПЛК – TSEND_C и TRCV_C

       (0 reviews)

    leigehong

    В последних статьях мы обсуждали, как установить соединение между двумя ПЛК с помощью блоков TCON и TDISCON и как перемещать данные между ними с помощью блоков TSEND и TRCV.

    Передача данных между системами ПЛК

    В этой статье мы изучим новую инструкцию, которую можно использовать для связи и передачи данных между системами ПЛК с помощью блоков TSEND_C и TRCV_C.

    TSEND_C

    Инструкция TSEND_C — это инструкция TIA Portal, которая используется для настройки и установления соединения между двумя ПЛК. После настройки и установки соединения оно будет автоматически поддерживаться и контролироваться ПЛК.

    Инструкция TSEND_C выполняется асинхронно и имеет следующие функции:

    • Настройка и установление коммуникационного соединения, аналогичного блоку TCON.
    • Отправка данных через существующее коммуникационное соединение, аналогичное блоку TSEND.
    • Завершение или сброс коммуникационного соединения, аналогично TDISCON.

    Следовательно, название «компактный» дается TSEND_C, поскольку он действует как более 3 блоков одновременно.

    TRCV_C

    Инструкция TRCV_C также является инструкцией TIA Portal, которая используется для настройки и установления соединения между двумя ПЛК. После настройки и установки соединения оно будет автоматически поддерживаться и контролироваться ПЛК.

    Инструкция «TRCV_C» выполняется асинхронно и последовательно реализует следующие функции:

    • Настройка и установление коммуникационного соединения, аналогично TCON.
    • Прием данных через существующее коммуникационное соединение, аналогично TRCV.
    • Завершение или сброс коммуникационного соединения, аналогично TDISCON.

    Следовательно, название «компактный» дается TRCV_C, поскольку он действует как более 3 блоков одновременно.

    Использование TSEND_C и TRCV_C в нашем проекте ПЛК

    В последней статье, когда нам нужно было установить и перейти к отправке данных из ПЛК_1 в ПЛК_2, нам пришлось использовать три разных блока в каждом ПЛК. Смотрите рисунок 1.

    89-1.gif

    рисунок 1. Логика внутри ПЛК_1

    Как вы можете видеть, мы использовали блоки TCON и TDISCON для установки и сброса соединения, а также использовали TSEND для отправки данных из ПЛК_1. То же самое было сделано для ПЛК_2. Смотрите рисунок 2.

    89-2.gif

    рисунок 2. Логика ПЛК_2

    Снова мы использовали блоки TCON и TDISCON для установки и сброса соединения, а также использовали TRCV для получения данных из ПЛК_1.

    Теперь мы хотим заменить все эти блоки и попытаться использовать TSEND_C и TRCV_C вместо этого, чтобы достичь той же функциональности.

    Сначала в ПЛК_1, где нам нужно отправлять данные, мы будем использовать блок TSEND_C, просто перетащив блок внутрь основного OB1. Смотрите рисунок 3.

    89-3.gif

    рисунок 3. Добавьте блок TSEND_C.

    Поскольку TSEND_C по сути является функциональным блоком, вам будет предложено создать экземпляр данных. Смотрите рисунок 4.

    89-4.gif

    рисунок 4. Создайте экземпляр для TSEND_C

    TSEND_C похож на блок TSEND в том смысле, что вам нужно сделать некоторые настройки и добавить некоторые сигналы. См. рисунок 5.

    89-5.gif

    рисунок 5. Блок TSEND_C

    Теперь нам нужен сигнал для REQ и Data для отправки, а также для настройки соединения. Для сигнала REQ мы создали тег SendData.

    Кроме того, мы можем просто перетащить блок данных, который мы создали в прошлой статье, который нам нужно отправить в ПЛК_2, мы можем просто перетащить его на вход DATA блока. См. рисунок 6.

    89-6.gif

    рисунок 6. Конфигурация блока TSEND_C.

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

    Представление конфигурации будет выглядеть очень похоже на представление блока TCON. См. рисунок 7.

    89-7.gif

    рисунок 7. Параметр соединения TSEND_C

    Мы уже показали, как настроить параметр соединения в предыдущих статьях, поэтому мы можем просто сделать то же самое, что и с блоком TCON, см. рисунок 8.

    89-8.gif

    рисунок 8. Настройка параметра соединения

    С этой конфигурацией соединения мы завершили все настройки TSEND_C. Обратите внимание, насколько это быстрее по сравнению с настройкой блоков TCON, TDISCON и TSEND.

    Теперь нам нужно добавить TRCV_C в ПЛК_2, чтобы он мог получать данные, отправленные из ПЛК_1. В главном OB1 ПЛК_1 просто перетащите TRCV_C в свою логику. см. рисунок 9. Не забудьте создать экземпляр данных для блока TRCV_C.

    89-9.gif

    рисунок 9. Добавьте TRCV_C

    После добавления TRCV_C в вашу логику нам нужно его настроить. Как мы это делали с TSEND_C, нам нужно добавить сигнал для включения приема данных, а также нам нужно добавить блок данных, внутри которого мы будем сохранять данные. Смотрите рисунок 10.

    89-10.gif

    рисунок 10.TRCV_C

    Мы определили тег RecieveData как сигнал EN_R. Смотрите рисунок 11.

    89-11.gif

    рисунок 11. Определите тег EN_R

    Не забудьте снять флажок «оптимизированный доступ к блоку» блока данных, иначе блок не будет работать, как мы показали в прошлых статьях.

    Далее нам нужно настроить параметры соединения блока TRCV_C, как мы это делали с TSEND_C, просто помните, что неуказанный партнерский ПЛК теперь является ПЛК_1, см. рисунок 12.

    89-12.gif

    фото 12. Параметры соединения TRCV_C

    Моделирование проекта ПЛК

    Теперь, когда мы настроили блоки TSEND_C и TRCV_ C, мы хотим смоделировать наш проект и посмотреть, как они будут работать, но сначала мы создадим простую логику для автоматического обновления данных ПЛК_1, которые будут отправлены в ПЛК_2. См. рисунок 13.

    89-13.gif

    фото 13. Простая логика для автоматического обновления данных.

    Теперь давайте скомпилируем и запустим моделирование для нашего проекта. Первое, что вы заметите, это то, что ПЛК_1 и ПЛК_2 попытаются установить соединение сразу, потому что мы настроили TSEND_C и TRCV_C, они автоматически попытаются установить соединение. Вот почему будет соединение между двумя ПЛК. Смотрите рисунок 14.

    89-14.gif

    Рисунок 14. Соединение устанавливается напрямую.

    Как вы видите, соединение между ПЛК устанавливается напрямую, потому что параметр CONT в TSEND_C и TRCV_C установлен на TRUE, что означает, что блок автоматически попытается установить соединение с партнерским ПЛК. Мы можем поместить сюда любой управляющий сигнал для управления установлением соединения.

    Другое, что вы можете увидеть, это то, что REQ TSEND_C и EN_R TRCV_C установлены на FALSE, и именно поэтому не будет никаких данных, перемещаемых между ПЛК. См. рисунок 15.

    89-15.gif

    рисунок 15. Нет передачи данных между ПЛК.

    Если сигнал REQ TSEND_C установлен на значение true, ПЛК_1 попытается отправить данные, но будет ждать, пока другой ПЛК разрешит прием данных, см. рисунок 16.

    89-16.gif

    рисунок 16. REQ имеет значение true.

    Как вы можете видеть, SendData имеет значение TRUE, но данные не были отправлены, поскольку RecieveData все еще имеет значение false.

    ПЛК_2 будет получать данные от ПЛК_1 только тогда, когда ReceiveData имеет значение true. См. рисунок 17.

    89-17.gif

    рисунок 17. Данные отправляются в ПЛК_2

    Как вы можете видеть, когда RecieveData имеет значение true. Данные будут отправлены из ПЛК_1 в ПЛК_2, однако вы можете видеть, что данные внутри двух ПЛК отличаются, поскольку данные ПЛК_1 автоматически изменяются в соответствии с простой логикой, которую мы создали ранее. Это означает, что сигнал EN_R позволяет передавать данные один раз, когда мне нужно снова передать данные, этот сигнал должен стать ложным, а затем снова истинным.

    Ознакомьтесь с прикрепленным проектом TIA Portal и посмотрите на передачу данных между ПЛК.

    Sign in to follow this  


    User Feedback

    Create an account or sign in to leave a review

    You need to be a member in order to leave a review

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now

    There are no reviews to display.


Apply for friendship links:WhatsApp or E-mail: admin@plchmis.com
×
×
  • Create New...