Test der RS232-Kommunikation (Abschlusstest WiSe 22/23)

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen

Betreuer: Prof. Dr.-Ing Ulrich Schneider, Marc Ebmeyer
Autor: Tim Schonlau, Changlai Bao in WS2022/23

Einleitung

Abschließender Test des KOM - Kommunikation Teams Sprint2 und 3 im WiSe 22/23. Die in der OSE Softwareumgebung beinhaltendende RS232-Kommunikation wird auf alle zu übertragenden Daten überprüft.

Anforderungen

Über die RS-232-Schnittstelle müssen die Parameter des zu steuernden Fahrzeugs getestet werden. Das DS1104 gibt die Fahrzeuggeschwindigkeit (Vx,Ego) und den Lenkwinkel α an den PC weiter. Im Gegenzug liefert der PC dem DS1104 die Spurparameter a, b und c sowie die Parameter der Hindernisse. In den Tabellen 1 und 2 sind alle Parameter aufgeführt, die geprüft werden müssen.

Tabelle 1: Übertragene Daten DS1104 zu PC
Signalname Datentyp Beschreibung
V_x_ego float32 (4 Byte) Ego-Längsgeschwindigkeit des Fahrzeugs
alpha float32 (4 Byte) Lenkwinkel: α > 0 Lenkausschlag links, α < 0 Lenkausschlag rechts
Gesamtgröße des Datenpakets 8 Byte

Da momentan für den Handshake 16 Byte große Pakete übertragen werden sind auch die Datenpakete von dSpace zu PC 16 Byte groß(zwei float64 Werte statt float32). Dies sollte in Zukunft geändert werden.


Tabelle 2: Übertragene Daten PC zu DS1104
Signalname Datentyp Beschreibung
a float32 (4 Byte) Fahrspurparameter
b float32 (4 Byte) Fahrspurparameter
c float32 (4 Byte) Fahrspurparameter
lane_asign bool (1 Byte) Spurzuordnung: 1 = rechte Fahrspur, 0 = linke Fahrspur
stop_insight bool (1 Byte) 1 = Stopplinie erkannt, 0 = keine Stopplinie erkannt
stop_distance float32 (4 Byte) Entfernung zur Stopplinie
n_objekte uint8 (1 Byte) Anzahl relevanter Objekte (maximal 5)
number[n_objekte] uint8 (1 Byte) Objektzähler
x_0[n_objekte] float32 (4 Byte) x-Koordinate des Objektmittelpunktes (mitte, vorn)
y_0[n_objekte] float32 (4 Byte) y-Koordinate des Objektmittelpunktes (mitte, vorn)
b[n_objekte] float32 (4 Byte) Objektbreite
t[n_objekte] float32 (4 Byte) Objekttiefe
alpha[n_objekte] float32 (4 Byte) Objektausrichtung
v[n_objekte] float32 (4 Byte) Betrag des Geschwindigkeitsvektors
plausible[n_objekte] uint8 (1 Byte) Vertrauenswert für das Objekt in Prozent ( 0 = minimale Vertrauen, 100 = maximale Vertrauen)
Gesamtgröße des Datenpakets 149 Byte

Outputs von DS1104SER_RX analysieren

Um die Funktionsweise des SenKam-Moduls in bib_Sensoren_Aktoren_online besser zu verstehen, können wir das unten stehende Skript und die in ControlDesk aufgenommenen Daten verwenden, um die Größe der Eingabe- und Ausgabedaten zu vergleichen:

Die folgende Abbildung zeigt eine vergleichende Darstellung der Datenmenge:
Datei:DS1104SER RX Analyse 1.fig
Datei:DS1104SER RX Analyse 2.fig

Testfälle

SVN Versionen

Die ausführlichen Tabellen zu den Testfällen lassen sich mit Klick auf den Button "Ausklappen" anzeigen.

Testfall 1 (Sprint2)

Bezeichnung: Übertragen von Spurpolynom aus OSE - Objekt - und Spurerkennung ()
Tester: Tim Schonlau, Changlai Bao
Datum: 05.12.2022, Subversion Revision 8153
Testinstanz: PC mit 9 poligen D-Sub Kabel an dSPACE Karte DS1104 angeschlossen
Verwendete Software: OSE_Draufsicht_Spurpolynom_RS232.exe, dSPACE Control Desk Projekt Inbetriebnahme, Simulink online.slx.

Schritt Nr. Beschreibung Ausgangszustand Aktion(en) Ergebnis Bewertung Bemerkung
Precondition 1 Start des PCs, RS232-Kabel einstecken, Update SVN Working-Copy auf Revision 8153 PC ist aus, Kabel nicht eingesteckt, lokale Daten veraltet OSE Draufsicht Spurpolynom_RS232.sln starten, dSPACE Control Desk starten und über Öffnen das Projekt Inbetriebnahme laden Der PC ist hochgefahren und alle benötigten Dateien aus dem SVN Repository sind lokal gespeichert i.O.
Serielle Verbindung zwischen PC und dSpace Karte
Precondition 2 Die Visual Studio Solution und das dSPACE Control Desk Projekt werden gestartet Benötigte Dateien vorhanden, Hardware und Kabel eingerichtet Das Sendeprogramm (Visual Studio) und Empfangs-/Kontrollprogramm (dSPACE Control Desk) werden gestartet Visual Studio mit der OSE_Spurpolynom_Draufsicht_RS232.sln Solution geöffnet i.O.
Visual Studio Projekt
Testschritt 1 Kommunikation wird getestet, indem die Ausgabe in der Konsole der Visual Studio Solution mit den Ergebnissen der dSPACE ControlDesk verglichen werden Die Visual Studio Solution und das dSPACE Control Desk wird ausgeführt Das Sendeprogramm (Visual Studio) und Empfangs-/Kontrollprogramm (dSPACE Control Desk) werden ausgeführt Die Spurpolynom- koeffizienten werden im Konsolenfenster ausgegeben und korrekt in dSPACE Control Desk angezeigt. i.O.
dSPACE Control Desk KOM Testergebnis
Testschritt 2 Kommunikation wird getestet, indem die Ausgabe in der Konsole der Visual Studio Solution mit den Ergebnissen der dSPACE ControlDesk verglichen werden Die Visual Studio Solution und das dSPACE Control Desk wird ausgeführt Das Sendeprogramm (Visual Studio) und Empfangs-/Kontrollprogramm (dSPACE Control Desk) werden ausgeführt Die Linienparameter werden im Konsolenfenster ausgegeben und korrekt in dSPACE Control Desk angezeigt. n.i.O.
dSPACE Control Desk KOM Testergebnis
Testschritt 3 Kommunikation wird getestet, indem die Ausgabe in der Konsole der Visual Studio Solution mit den Ergebnissen der dSPACE ControlDesk verglichen werden Die Visual Studio Solution und das dSPACE Control Desk wird ausgeführt Das Sendeprogramm (Visual Studio) und Empfangs-/Kontrollprogramm (dSPACE Control Desk) werden ausgeführt Die Lidar Objektparameter werden im Konsolenfenster ausgegeben und korrekt in dSPACE Control Desk angezeigt. n.i.O.
dSPACE Control Desk KOM Testergebnis
Postcondition ControlDesk stoppen, Visual Studio schließen Messung in ControlDesk läuft, Datenübertragung wird ausgeführt Das Sendeprogramm (Visual Studio) und Empfangs-/Kontrollprogramm (dSPACE Control Desk) werden geschlossen PC kann heruntergefahren werden i.O. -----


Testfall 2 (Sprint3)

Bezeichnung: Übertragen aller Variablen der OSE - Objekt - und Spurerkennung
Tester: Tim Schonlau, Changlai Bao
Datum: 04.01.2023, Subversion Revision 8352 (noch nicht im trunk!!!)
Testinstanz: PC mit 9 poligen D-Sub Kabel an dSPACE Karte DS1104 angeschlossen
Verwendete Software: OSE_Draufsicht_Spurpolynom_RS232.exe, dSPACE Control Desk Projekt Inbetriebnahme, Simulink online.slx.

Schritt Nr. Beschreibung Ausgangszustand Aktion(en) Ergebnis Bewertung Bemerkung
Precondition 1 Start des PCs, RS232-Kabel einstecken, Update SVN Working-Copy auf Revision ??? PC ist aus, Kabel nicht eingesteckt, lokale Daten veraltet OSE Draufsicht Spurpolynom_RS232.sln starten, dSPACE Control Desk starten und über Öffnen das Projekt Inbetriebnahme laden Der PC ist hochgefahren und alle benötigten Dateien aus dem SVN Repository sind lokal gespeichert i.O.
Serielle Verbindung zwischen PC und dSpace Karte
Precondition 2 Die Visual Studio Solution mit Lidar Implementierung und das dSPACE Control Desk Projekt werden gestartet Benötigte Dateien vorhanden, Hardware und Kabel eingerichtet Das Sendeprogramm (Visual Studio) und Empfangs-/Kontrollprogramm (dSPACE Control Desk) werden gestartet Visual Studio mit der OSE_Spurpolynom_Draufsicht_RS232.sln Solution geöffnet i.O.
Testschritt 1 Spurpolynom- koeffizienten a, b und c und Spurzuordnung, Stopp-Linie sowie Stopp-Linienabstand werden in Ausgabe in der Konsole der Visual Studio Solution mit den Ergebnissen der dSPACE ControlDesk verglichen. Die Visual Studio Solution und das dSPACE Control Desk wird ausgeführt Das Sendeprogramm (Visual Studio) und Empfangs-/Kontrollprogramm (dSPACE Control Desk) werden ausgeführt Alle Parameter der Spurführung werden im Konsolenfenster ausgegeben und korrekt in dSPACE Control Desk angezeigt. i.O.
Testschritt 2 Übertragung der Lidar-Daten wird getestet, indem die simulierten Daten in der Visual Studio Solution mit den Ergebnissen der dSPACE ControlDesk verglichen werden Die Visual Studio Solution und das dSPACE Control Desk wird ausgeführt Das Sendeprogramm (Visual Studio) und Empfangs-/Kontrollprogramm (dSPACE Control Desk) werden ausgeführt Die Lidar-Daten werden korrekt in dSPACE Control Desk korrekt angezeigt. i.O.
Testschritt 3 Geschwindigkeit der Kommunikation wird getestet, indem die Ausgabe der Zeit pro Übertragung in der Konsole der Visual Studio Solution ausgewertet wird Die Visual Studio Solution und das dSPACE Control Desk wird ausgeführt Das Sendeprogramm (Visual Studio) und Empfangs-/Kontrollprogramm (dSPACE Control Desk) werden ausgeführt Die Kommunikation überträgt die Daten vom PC zur dSPACE-Karte mit einer angemessenen Geschwindigkeit über 100mal pro Sekunde n.i.O.
Postcondition ControlDesk stoppen, Visual Studio schließen Messung in ControlDesk läuft, Datenübertragung wird ausgeführt Das Sendeprogramm (Visual Studio) und Empfangs-/Kontrollprogramm (dSPACE Control Desk) werden geschlossen PC kann heruntergefahren werden i.O. -----

Testbericht

Die Ergebnisse der Tests in Bezug auf die Anforderungen sind in Tabelle 3 und Tabelle 4 dargestellt.

Tabelle 3: Testsquenz DS1104 zu PC
Testfall-ID Testfall-Bezeichnung Datum Ergebnis Prüfer Datum Bemerkung
1 Übertragen von Ego-Längsgeschwindigkeit - Ego-Längsgeschwindigkeit noch nicht testen Tim Schonlau und Changlai Bao - ----
2 Übertragen von Lenkwinkel - Lenkwinkel noch nicht testen Tim Schonlau und Changlai Bao - ----


Tabelle 4: Testsquenz PC zu DS1104
Testfall-ID Testfall-Bezeichnung Datum Ergebnis Prüfer Datum Bemerkung
1 Übertragen von Parameter A 04.01.2023 Parameter A wird korrekt übertragen Tim Schonlau und Changlai Bao 04.01.2023 ----
2 Übertragen von Parameter B 04.01.2023 Parameter B wird korrekt übertragen Tim Schonlau und Changlai Bao 04.01.2023 ----
3 Übertragen von Parameter C 04.01.2023 Parameter C wird korrekt übertragen Tim Schonlau und Changlai Bao 04.01.2023 ----
4 Übertragen von Parameter Spurzuordnung 04.01.2023 Parameter Spurzuordnung wird korrekt übertragen Tim Schonlau und Changlai Bao 04.01.2023 ----
5 Übertragen von Parameter StopplinieErkannt 04.01.2023 Parameter StopplinieErkannt wird korrekt übertragen Tim Schonlau und Changlai Bao 04.01.2023 ----
6 Übertragen von Parameter StopplinieAbstand 04.01.2023 Parameter StopplinieAbstand wird korrekt übertragen Tim Schonlau und Changlai Bao 04.01.2023 ----
7 Übertragen von Parameter ObjekteAnzahl 04.01.2023 Parameter ObjekteAnzahl wird korrekt übertragen Tim Schonlau und Changlai Bao 04.01.2023 ----
8 Übertragen von Parameter ObjektNummer 04.01.2023 Parameter ObjektNummer wird korrekt übertragen Tim Schonlau und Changlai Bao 04.01.2023 ----
9 Übertragen von Parameter ObjektX 04.01.2023 Parameter ObjektX wird korrekt übertragen Tim Schonlau und Changlai Bao 04.01.2023 ----
10 Übertragen von Parameter ObjektY 04.01.2023 Parameter ObjektY wird korrekt übertragen Tim Schonlau und Changlai Bao 04.01.2023 ----
11 Übertragen von Parameter Objektbreite 04.01.2023 Parameter Objektbreite wird korrekt übertragen Tim Schonlau und Changlai Bao 04.01.2023 ----
12 Übertragen von Parameter Objekttiefe 04.01.2023 Parameter Objekttiefe wird korrekt übertragen Tim Schonlau und Changlai Bao 04.01.2023 ----
13 Übertragen von Parameter Objektausrichtung 04.01.2023 Parameter Objektausrichtung wird korrekt übertragen Tim Schonlau und Changlai Bao 04.01.2023 ----
14 Übertragen von Parameter Objektgeschwindigkeit 04.01.2023 Parameter Objektgeschwindigkeit wird korrekt übertragen Tim Schonlau und Changlai Bao 04.01.2023 ----
15 Übertragen von Parameter Vertraunswert 04.01.2023 Parameter Vertraunswert wird korrekt übertragen Tim Schonlau und Changlai Bao 04.01.2023 ----

Testvideo

Bezeichnung: Kommunikation mit den simulierten Daten (Spurparameter, Stopplinieparameter und Dummy LiDAR Werte) der Bildverarbeitung

Zusammenfassung

Das Spurpolynom wird richtig übertragen. Insofern können die Teams in den anderen Modulen wie BSF - Bahn- und Spurführung und AuF - Antrieb und Fernbedienung das Lenken und die Beschleunigung bereits implementieren.
Die weiteren Daten wie Linienerkennungsparameter und Lidar-Objekte müssen noch repariert werden. Der Test hat gezeigt, dass mit der Implementierung mit berechneten Werten aus der OSE Softwareumgebung kann die Kommunikation über RS232 stattfinden.




→ zurück zum Kommunikationsartikel: Kom - Kommunikation
→ zurück zum Hauptartikel: Praktikum SDE