Skip to content

Commit 3ff4dde

Browse files
committed
Minimal-Beispiel für den External Mode (ohne EtherLab)
1 parent fd5355c commit 3ff4dde

File tree

5 files changed

+1468
-0
lines changed

5 files changed

+1468
-0
lines changed

README.MD

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
# Beispiele für EtherLab mit External Mode
2+
3+
Dieses Repo enthält Simulink-Modelle und Matlab-Code die die Benutzung von EtherLab mit External Mode Patch (IRT-Version) zeigen.
4+
Die Beispiele sind prinzipiell auch für die offizielle EtherLab-Version mit PDServ geeignet, allerdings funktioniert die Datenaufnahme im External Mode dabei nicht.
5+
6+
Voraussetzungen:
7+
* Matlab R2018b (damit getestet, letzte bekannte lauffähige Version)
8+
* [IMES Matlab Toolbox (interner Link)](https://gitlab.projekt.uni-hannover.de/imes-material/matlab-toolbox) bzw. [externer Link](https://github.com/SchapplM/matlab_toolbox)
9+
* Echtzeitrechner mit EtherLab (siehe Anleitungen rt.md und ethercat.md aus Repo [Linux-Tools](https://gitlab.projekt.uni-hannover.de/imes-material/linux-tools))
10+
* Installation von EtherLab auf Entwicklungsrechner (siehe ethercat.md). Das sollte der Rechner sein, auf dem die Beispiele ausprobiert werden. Unter Windows werden sie so nicht ohne weiteres funktionieren (ist aber prinzipiell möglich, mit einiger Nacharbeit).
11+
* Der Echtzeitrechner ist in der SSH-Konfiguration eingestellt: `ssh irtpc077_ec` entspricht `ssh ec@130.75.135.77`. Die IP muss natürlich an den verwendeten Echtzeitrechner angepasst werden.
12+
* Es sollte ein Ordner für die Echtzeit-Modelle erstellt werden:
13+
`ssh irtpc077_ec` (auf Entwicklungsrechner)
14+
`mkdir ~/rtmdl` (auf Prozessrechner, über SSH-Fenster)
15+
16+
Moritz Schappler, moritz.schappler@imes.uni-hannover.de, 2020-03
17+
(C) Institut für Mechatronische Systeme, Leibniz Universität Hannover
18+
19+
## Minimal-Beispiel für External Mode
20+
21+
Dieses Beispiel testet nur den External Mode. Es wird das etherlab-Target verwendet, aber ohne EtherCAT-Blöcke. Damit wird geprüft, ob alles korrekt installiert und konfiguriert ist.
22+
23+
Ordner: `extmode_minexample`
24+
Vorgehensweise:
25+
* In Matlab in den Ordner wechseln
26+
* Modell `extmode_minimal.mdl` mit Matlab/Simulink öffnen und Kompilieren
27+
* Bei Erfolg ist eine neue Datei `extmode_minimal` (ohne Endung) im Modellordner entstanden
28+
* Modell auf Echtzeitrechner kopieren:
29+
* Konsole im Ordner öffnen
30+
* `scp extmode_minimal irtpc077_ec:~/rtmdl`
31+
* Modell auf Echtzeitrechner ausführen
32+
* `ssh irtpc077_ec` (auf Entwicklungsrechner)
33+
* `cd ~/rtmdl`
34+
* `./extmode_minimal`
35+
Ausgabe, wenn es funktioniert:
36+
```
37+
Sample-Time: 0.100000
38+
Set task prio to 98
39+
```
40+
Das Modell läuft dann ohne, dass man etwas machen muss.
41+
* Ziel-Pfad für die Datenspeicherung in Modell eintragen:
42+
* Code -> External Mode Control Panel -> Data Archiving -> Directory
43+
(es sollte weiterhin der Ordner "results" sein. Der absolute Pfad ist aber auf dem Rechner anders)
44+
* In Simulink-Modell über external Mode verbinden (Schaltfläche "Connect to Target")
45+
* Scope-Block öffnen. Wenn es funktioniert, sieht man Rechteck-Signale durchlaufen
46+
* External Mode Verbindung trennen
47+
* Wenn es funktioniert hat, sind jetzt im Ordner results mat-Dateien (measurement_data_0.mat, ...) gespeichert worden
48+
* Skript extmode_minimal_postprocess.m ausführen
49+
* Darin ist ein Beispiel-Code um die Messdaten nachzuverarbeiten

extmode_minexample/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
extmode_minimal

0 commit comments

Comments
 (0)