- Распечатать
Как использовать универсальный драйвер последовательного интерфейса на шлюзе ввода/вывода
Как использовать универсальный драйвер последовательных устройств на шлюзе ввода/вывода
Узнайте, как обеспечить связь шлюза 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) ```