Как использовать универсальный драйвер последовательного интерфейса на шлюзе ввода/вывода
  • 31 Oct 2023
  • 3 Минуты для чтения
  • Авторы

Как использовать универсальный драйвер последовательного интерфейса на шлюзе ввода/вывода


Вводный текст

Как использовать универсальный драйвер последовательных устройств на шлюзе ввода/вывода

Узнайте, как обеспечить связь шлюза I/O Gateway с любым последовательным устройством.

**С 1 ноября 2021 года компания Tulip прекращает продажу устройств I/O Gateway. Устройства Edge IO и Edge MC по-прежнему доступны. Узнать больше

Руководство по последовательной настройке Edge IO

Руководство по настройке последовательного интерфейсаEdge MC

В этой статье объясняется, как использовать общий драйвер последовательного интерфейса на шлюзе ввода/вывода для связи с большинством последовательных устройств. Эта статья может быть использована и для других устройств Tulip Edge, таких как Edge MC и Edge IO.

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

Обратите внимание, что этот драйвер отличается от драйвера Serial Driver (Player Only), который в настоящее время доступен только для Windows Tulip Player.

Что такое универсальный последовательный драйвер?

Общий последовательный драйвер позволяет шлюзу ввода-вывода взаимодействовать с другими устройствами, используя общий последовательный протокол. Эти устройства могут быть такими, как:

  • Arduino
  • Raspberry Pi
  • Другие устройства Tulip Edge
  • Микроконтроллеры
  • Многие другие устройства

Ввиду универсальности этого драйвера он имеет сложную конфигурацию. Эта конфигурация должна точно соответствовать конфигурации другого устройства.

Этот драйвер может поддерживать связь с несколькими устройствами одновременно.

Примечание: Tulip не пишет пользовательский код для устройств, которые вы подключаете к общему последовательному драйверу.

Включение универсального последовательного драйвера

Подключите компьютер к шлюзу ввода/вывода, войдя в созданную им локальную сеть.

Откройте портал устройств. На странице приборных панелей нажмите на кнопку "Configure Drivers" в левой части страницы.

На странице конфигурации драйвера щелкните на опции "Generic Serial".

По умолчанию опция "Generic Serial" уже должна быть зеленой (включенной) и сконфигурированной с некоторыми общими настройками.

Windows обычно использует \r для возврата каретки.

Для включения драйвера Generic Serial требуется выполнить некоторые настройки.

Ниже приведены параметры для каждого поля:

Суффикс записи

  • Ожидаемый ввод: Любая строка - она добавляется к любому сообщению, которое шлюз ввода-вывода будет посылать устройству, и обычно представляет собой новую строку (\n) или возврат каретки (\n\r).
  • Требуется: Нет

Сопоставитель путей

  • Ожидаемые данные: Системный путь к устройству - может быть * для сопоставления с любым неиспользуемым последовательным устройством (это полезно при использовании usb-to-serial адаптеров).
  • Требуется: да

Имя

  • Ожидаемый ввод: Имя устройства (оно будет использоваться для ссылок на устройство в приложениях)
  • Требуется: да

Разделитель

  • Ожидаемый ввод: Любая строка (используется для разделения сообщения с устройства на фрагменты для отправки на ваш аккаунт Tulip)
  • Требуется: да

Бод

  • Ожидаемый ввод: Скорость передачи данных, которую устройство будет использовать для обмена данными
  • Требуется: да

Родной порт DB9

Если вы планируете использовать родной порт DB9 на шлюзе ввода-вывода, то вам необходимо использовать путь /dev/ttyO4 в устройстве сопоставления путей. То есть именно заглавную букву O, а не ноль.

Создание приложения для работы с последовательным драйвером

Вот как создать приложение для тестирования драйвера.

Сначала создайте новое приложение и добавьте в него кнопку.

Добавьте к этой кнопке триггер, вызывающий типовое последовательное устройство с именем, которое вы использовали при настройке драйвера.

Вот поля, которые необходимо заполнить в операторе "Then":

  • "Run Device Function"
  • "Generic Serial Device"
  • "Отправить строку на последовательное устройство"
  • На "этой станции"
  • Устройство для отправки: "text" "RS232"
  • Сообщение для отправки: "text" "testing generic serial"

Добавьте в это приложение триггер, который будет записывать данные в переменную, когда драйвер generic serial выдает данные. Используйте оператор "If", чтобы сохранять данные только в том случае, если их выдает нужное устройство.

Когда

  • "Устройство" "Generic Serial Device" выдает данные на "этой станции"

Если

  • "Выход устройства"
  • "имя"
  • "="
  • "текст" "RS232"

Тогда

  • "Манипуляция данными"
  • "Хранить"
  • "Выход устройства" "данные"
  • местоположение: "generic serial" (это имя переменной).

Добавьте эту переменную в приложение. Она будет представлять собой объект со свойствами "name" и "data".

Протестируйте приложение

Для тестирования приложения используйте нуль-модем и преобразователь USB в RS232.

Подключите USB к компьютеру. Затем подключите нуль-модемный адаптер к адаптеру RS232 и порту DB9 шлюза ввода-вывода.

Начните работу с:

Если вы работаете под Windows, используйте Putty для проверки соединения. Получите номер порта с помощью Диспетчера устройств.

Введите номер COM-порта в поле "Скорость" и выберите "Тип подключения" "Последовательный".

Терминал Putty будет печатать сообщения на шлюз ввода-вывода только при нажатии кнопки в запущенном приложении.

Отправьте сообщение 'Tulip' через Putty, набрав его и нажав клавишу Enter.

Как протестировать универсальный последовательный драйвер на Linux или Mac с помощью Node.js

Для этого требуется node.js и npm. Затем установите пакет serialport через npm.

const SerialPort = require('serialport')

const Readline = require('@serialport/parser-readline')

const port = new SerialPort('/dev/ttyUSB0', { baudRate: 19200 })

const parser = new Readline()

port.pipe(parser)

parser.on('data', line => {

console.log(> ${line})

});

let test = false;

setInterval(()=>{

if (test){

port.write('output\n');

test = false

}

else {

port.write('другой выход\n');

test = true

}

},1000) ```


Была ли эта статья полезной?