- Распечатать
Как использовать драйвер Generic Serial Driver на шлюзе ввода/вывода
Как использовать драйвер Generic Serial Driver на шлюзе ввода/вывода
Узнайте, как обеспечить связь шлюза ввода-вывода с любым последовательным устройством.
**С 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":
- "Запустить функцию устройства"
- "Generic Serial Device"
- "Отправить строку на последовательное устройство"
- На "этой станции"
- Устройство для отправки: "текст" "RS232"
- Сообщение для отправки: "text" "testing 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');
тест = true
}
},1000)