Hallo,
ich möchte Messwerte des CAN-Frames in CANoe analysieren. Dierzu
benötige ich lediglich die Signalwerte der Botschaften. Das Problem ist
konkret die Extrahierung der einzelnen Signale.
Gern würde ich so etwas machen :
1 | for i=0:1:length(Signal)-1{
|
2 | if (Signal[i] <= U_ref){
|
3 | ...}}
|
Hier ist mein bisheriger Code (CAPL-Programmiersprache)
1 | variables
|
2 | {
|
3 | message SPG1 msgSPG1;
|
4 | }
|
5 | on message *
|
6 | {
|
7 | output(this);
|
8 | }
|
9 | //Ich lasse also zunächst alle Botschaften durch, da ich nicht filtern //sondern nur analysieren möchte.
|
10 |
|
11 | on message SPG1
|
12 | {
|
13 | if (msgSPG1.Spg01.phys >= 5)
|
14 | {
|
15 | ...
|
16 | }
|
17 | if (msgSPG1.Spg01.phys <= -5)
|
18 | {
|
19 | ...
|
20 | }
|
21 | }
|
Leider funktioniert es so mit this nicht. Man bräuchte sowas wie on
message * nur mit Signalen.
Das Programm soll Abweichungen der Spannungssignale (Überschreiten eines
maximalen oder Unterschreiten eines minimalen Wertes) von den erwarteten
Werten anzeigen. ZB in dem der Identifier der Botschaft, dessen
Spannungssignal die Abweichung beinhaltet, ausgegeben wird...
Hat jemand eine Idee wie man mein Problem lösen könnte? Das ganze kann
online passieren oder auch mit geloggten Daten, die offline analysiert
werden. Vielen Dank für Tipps!
Viele Grüße,
Andre Maaßen