Konfigurieren der Workstation für die serielle Portkommunikation

Konfigurieren der Workstation für die serielle Portkommunikation

Ich versuche, durch Herstellen einer seriellen Portverbindung auf das Siemens RuggedComm 900W ROS (mit dem Ethernet-Switch verknüpftes Betriebssystem) zuzugreifen.

Ich habe die Anweisungen im Konfigurationshandbuch befolgt -https://cache.industry.siemens.com/dl/files/218/109737218/att_1028764/v1/C79000-G8976-1280_ROS_v4.3_RS900W_ConfigurationManual.pdfab Seite 33 unter Konsolenverbindung herstellen.

Wie in der Anleitung beschrieben, öffne ich ein Terminal auf meinem Ubuntu-Rechner und verbinde den Computer dann physisch mit einem USB-zu-Seriell-Port-Kabel (RS232) mit dem Ethernet-Switch. Ich verwende dannsudo journalctl --followund stellen Sie fest, dass der serielle Anschluss als ttyUSB0 identifiziert wird.

Anschließend konfiguriere ich den seriellen Port, was zu folgenden Parametern führt:

speed 57600 baud; rows 0; columns 0; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>;
eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R;
werase = ^W; lnext = ^V; discard = ^O; min = 1; time = 0;
-parenb -parodd -cmspar cs8 hupcl -cstopb cread clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl -ixon -ixoff
-iuclc -ixany -imaxbel -iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt
echoctl echoke -flusho -extproc

Ich führe dann den Befehl ausexportieren TERM=VT100um die Terminal-ID auf VT100 einzustellen. Ich erwarte, dass das Anmeldeformular angezeigt wird, aber das tut es nicht. Ich habe versucht, den USB-zu-Seriell-Port zu trennen und erneut anzuschließen.

Antwort1

Dann führe ich den Befehl „export TERM=VT100“ aus, um die Terminal-ID auf VT100 festzulegen. Ich erwarte, dass das Anmeldeformular angezeigt wird, aber das tut es nicht.

So funktioniert das überhaupt nicht. TERM ändernstellt das Terminal nicht mit einer anderen Leitung her.Es macht etwas völlig anderes und wird vom Terminal überhaupt nicht gelesen.

(Die Variable $TERM geht eigentlich in die entgegengesetzte Richtung; sie istgesetzt vondas Terminal, und es informiert Programme wie „ls“ oder „vim“ über das von diesem Terminalmodell verwendete Protokoll – d. h. welche Codes die Farben ändern, welche Codes den Cursor bewegen usw.)

Um Ihr Terminal tatsächlich an eine serielle Leitung wie /dev/ttyUSB0 anzuschließen – nun, die meisten Terminals haben keine Möglichkeit, eine direkte Verbindung herzustellen, also müssen SieEin Programm ausführenwas auch der Fall ist. Häufige sind picocom, minicom, dterm, tio, und screen.

Zum Beispiel:

  • picocom -b 57600 /dev/ttyUSB0(mit Ctrla„dann Ctrlx“ beenden)

  • minicom -D /dev/ttyUSB0 -b 57600oder minicom -s(verwenden Sie (verwenden Sie Ctrladann xzum Beenden)

  • dterm /dev/ttyUSB0 57600(mit Ctrl]„dann q“ beenden)

  • screen /dev/ttyUSB0 57600(mit Ctrla„dann k“ beenden)


Sobald Sie verbunden und angemeldet sind, ist es dasFernbedienungSystem, das Ihre Terminal-ID kennen muss. (Wenn es ein Linux- oder Unix-System wäre, würden Sie dort TERM festlegen.)

Antwort2

Du machst das falsch.

Es ist fast so, als würden Sie versuchen, den seriellen Port so zu konfigurieren, dass eingehende Verbindungen akzeptiert werden. Obwohl Sie mit Ihrer Vorgehensweise den seriellen Port konfigurieren können, wird dadurch weder eine Ausgabe noch Interaktivität bereitgestellt.

(Gemäß dem PDF, obwohl ich verstehen kann, warum Sie verwirrt sein könnten - dieses Setup erinnert an die schlechten alten Zeiten vor der Existenz des Webs) Sie benötigenTerminalemulationSoftware. Es gibt zweifellos noch andere, aber Minicom ist eine gängige. Damit können Sie den seriellen Port konfigurieren und mit der Konsole interagieren.

verwandte Informationen