Jak korzystać z generycznego sterownika szeregowego na I/O Gateway
  • 31 Oct 2023
  • 3 Minuty do przeczytania
  • Współtwórcy

Jak korzystać z generycznego sterownika szeregowego na I/O Gateway


Article Summary

Jak korzystać z generycznego sterownika szeregowego w I/O Gateway

Dowiedz się, jak umożliwić I/O Gateway komunikację z dowolnym urządzeniem szeregowym.

**1 listopada 2021 r. firma Tulip nie będzie już sprzedawać urządzeń I/O Gateway. Urządzenia Edge IO i Edge MC są nadal dostępne. Dowiedz się więcej

Przewodnik po urządzeniach szeregowych Edge IO

Przewodnik konfiguracji urządzenia szeregowego EdgeMC

W tym artykule wyjaśniono, jak używać ogólnego sterownika szeregowego na bramie I/O Gateway do komunikacji z większością urządzeń szeregowych. Ten artykuł można uogólnić na inne urządzenia Tulip Edge, takie jak Edge MC i Edge IO.

W tym artykule założono, że konfiguracja bramy I/O została już zakończona.

Należy pamiętać, że ten sterownik różni się od sterownika Serial Driver (Player Only), który jest obecnie dostępny tylko dla odtwarzacza Tulip Player dla systemu Windows.

Czym jest ogólny sterownik szeregowy?

Ogólny sterownik szeregowy umożliwia bramce I/O komunikację z innymi urządzeniami przy użyciu wspólnego protokołu szeregowego. Tymi urządzeniami mogą być np:

  • Arduino
  • Raspberry Pi
  • Inne urządzenia Tulip Edge
  • Mikrokontrolery
  • Wiele innych urządzeń

Ze względu na wszechstronność tego sterownika, ma on złożoną konfigurację. Konfiguracja ta musi dokładnie odpowiadać konfiguracji innego urządzenia.

Sterownik ten może obsługiwać komunikację z wieloma urządzeniami jednocześnie.

Uwaga: Tulip nie pisze niestandardowego kodu dla urządzeń podłączonych do ogólnego sterownika szeregowego.

Włączanie ogólnego sterownika szeregowego

Podłącz komputer do bramy I/O Gateway, logując się do utworzonej przez nią sieci lokalnej.

Otwórz portal urządzeń. Na stronie dashboards kliknij przycisk "Configure Drivers" po lewej stronie.

Na stronie konfiguracji sterownika kliknij opcję "Generic Serial".

Domyślnie opcja "Generic Serial" powinna być już zielona (włączona) i skonfigurowana z kilkoma typowymi ustawieniami.

System Windows ma tendencję do używania znaków \r do powrotu karetki.

Ogólny sterownik szeregowy wymaga pewnej konfiguracji, aby kontynuować włączanie sterownika.

Oto opcje dla każdego pola:

Write suffix

  • Oczekiwane dane wejściowe: Dowolny ciąg znaków - jest on dołączany do każdej wiadomości, którą I/O Gateway wyśle do urządzenia i zazwyczaj jest to nowa linia (\n) lub powrót karetki (\n\r).
  • Wymagane: Nie

Path Matcher

  • Oczekiwane dane wejściowe: Ścieżka systemowa do urządzenia - może to być *, aby dopasować do dowolnego nieużywanego urządzenia szeregowego (jest to przydatne w przypadku korzystania z adapterów usb-serial).
  • Wymagane: tak

Nazwa

  • Oczekiwane dane wejściowe: Nazwa tego urządzenia (będzie używana do odwoływania się do urządzenia z aplikacji).
  • Wymagane: tak

Ogranicznik

  • Oczekiwane dane wejściowe: Dowolny ciąg znaków (służy do dzielenia wiadomości z urządzenia na fragmenty wysyłane na konto Tulip).
  • Wymagane: tak

Baud

  • Oczekiwane dane wejściowe: Szybkość transmisji używana przez urządzenie do komunikacji.
  • Wymagane: tak

Natywny port DB9

Jeśli planujesz używać natywnego portu DB9 w bramce I/O, będziesz musiał użyć ścieżki /dev/ttyO4 dla dopasowania ścieżki. Jest to duża litera O, a nie zero.

Tworzenie aplikacji do pracy ze sterownikiem szeregowym

Oto jak zbudować aplikację do testowania sterownika.

Najpierw utwórz nową aplikację i dodaj przycisk.

Dodaj wyzwalacz do tego przycisku, aby wywołać ogólne urządzenie szeregowe o nazwie użytej do skonfigurowania sterownika.

Oto pola potrzebne w instrukcji "Then":

  • "Run Device Function"
  • "Generic Serial Device"
  • "Wyślij ciąg do urządzenia szeregowego"
  • Na "tej stacji"
  • Urządzenie do wysłania: "tekst" "RS232"
  • Wiadomość do wysłania: "text" "testing generic serial"

Dodaj wyzwalacz do tej aplikacji, aby rejestrować dane w zmiennej, gdy ogólny sterownik szeregowy emituje dane. Użyj instrukcji "If", aby zapisać dane tylko wtedy, gdy prawidłowe urządzenie wysyła dane.

Kiedy

  • "Urządzenie" "Generic Serial Device" wysyła dane na "tej stacji"

Jeśli

  • "Wyjście urządzenia"
  • "name"
  • "="
  • "text" "RS232"

Następnie

  • "Manipulacja danymi"
  • "Store"
  • "Wyjście urządzenia" "dane"
  • location: "generic serial" (jest to nazwa zmiennej)

Dodaj tę zmienną do aplikacji. Będzie to obiekt z właściwościami "name" i "data".

Przetestuj aplikację

Użyj modemu zerowego i konwertera USB na RS232, aby przetestować aplikację.

Podłącz USB do komputera. Następnie podłącz adapter modemu zerowego do adaptera RS232 i portu DB9 I/O Gateway

Rozpoczęcie od:

Jeśli korzystasz z systemu Windows, użyj Putty do przetestowania połączenia. Uzyskaj numer portu za pomocą Menedżera urządzeń.

Wprowadź numer portu COM w polu "Prędkość" i wybierz "Typ połączenia" "Szeregowe".

Terminal Putty będzie drukował wiadomości do I/O Gateway tylko po kliknięciu przycisku w uruchomionej aplikacji.

Wyślij wiadomość "Tulip" do Putty, wpisując ją i naciskając enter.

Jak przetestować ogólny sterownik szeregowy w systemie Linux lub Mac przy użyciu Node.js

Wymaga to node.js i npm. Następnie zainstaluj pakiet serialport przez 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('inne wyjście\n');

test = true

}

},1000) ```


Czy ten artykuł był pomocny?