Botschaft Dauerhaft Senden Capl

Gast #4656959
Lesenswert?
• ▲
▼
Hallo Zusammen,

ich wollte die Signale einer Botschaft auf die Init-Werte zurücksetzen.
Das geht Normalerweise mit dem Befehl setSignalStartValues(message msg).
Das Problem ist, die Botschaft msg wird mit dem Befehl Output(msg) nur 
einmal gesendet und dadurch werden Signal nicht richtig zurückgesetzt.

Die Frage ist: wie kann ich eine Botschaft dauerhaft auf dem Bus senden? 
gibt es einen anderen Befehl außer "Output", wodurch die Botschaft 
permanent aufm Bus bleibt?

Danke und Gruß
Gast #4656988
Lesenswert?
• ▲
▼
Guest schrieb:
> Welches Gerät? Welcher Bus? Wovon redest Du?
>
> Sonst schick mal '42' auf den Bus und wart ab was passiert.

Gerät: Steuergerät "X"
Bus: CAN

Wie wovon rede ich :-). Ich möchte nur wissen von den Leute die von capl 
Ahnung haben, mit welchem Capl-Befehl eine Botschaft dauerhaft auf dem 
CAN-Bus gesendet werden kann.
Gast #4656993
Lesenswert?
• ▲
▼
Thomas E. schrieb:
> Guest schrieb:
>> Welches Gerät? Welcher Bus? Wovon redest Du?
>
> CAPL - Du musst auch die Überschrift lesen!
> (CAPL kenne ich zwar auch nicht, aber Google hätte Deine Frage in 2
> Sekunden beantwortet!)

Hast du echt die Lösung gefunden? wenn du Output meinst dann ist es 
falsch! Ansonsten bitte sag es :-)
#4657137
Lesenswert?
• ▲
▼
Stefan schrieb:
> Die Frage ist: wie kann ich eine Botschaft dauerhaft auf dem Bus senden?
> gibt es einen anderen Befehl außer "Output", wodurch die Botschaft
> permanent aufm Bus bleibt?

Die Frage ergibt keinen Sinn. Ein Bus ist ein Transportmedium für Daten, 
z.B. in Form von Botschaften. Eine solche Botschaft belegt den Bus, 
während sie übertragen wird. Aber sie verbleibt nicht auf dem Bus, was 
auch genau so gewünscht ist. Sonst wäre der Bus ja nicht mehr für 
weitere Kommunikation nutzbar.

Man kann natürlich die gleiche Botschaft immer und immer wieder senden. 
Das ergibt zwar i.d.R. keinen Sinn und hat den unangenehmen Nebeneffekt, 
den Bus zu verstopfen. Aber wenn man das unbedingt will ...

Und wie man eine Botschaft sendet, weißt du ja anscheinend. Was soll die 
Frage dann? Brauchst du Hilfe dabei, eine Endlosschleife zu schreiben?
Gast #4657159
Lesenswert?
• ▲
▼
Axel S. schrieb:
> Das ergibt zwar i.d.R. keinen Sinn und hat den unangenehmen Nebeneffekt,
> den Bus zu verstopfen.

Das ist bei Automatisierungs-und Fahrzeugbussen wie CAN absolut üblich 
und sinnvoll, denn der Zustand der Anlage ändert sich ja ständig und 
muss daher immer wieder aufs neue übertragen werden.

Die richtige Antwort wurde schon gegeben, also keine weitere Diskussion 
nötig:

Peter schrieb:
> Lege dir einen Timer an
Gast #4657207
Lesenswert?
• ▲
▼
Axel S. schrieb:

> Man kann natürlich die gleiche Botschaft immer und immer wieder senden.
> Das ergibt zwar i.d.R. keinen Sinn und hat den unangenehmen Nebeneffekt,
> den Bus zu verstopfen. Aber wenn man das unbedingt will ...

Der Fachbegriff dafür ist "zyklisch", engl. "cyclic.".

Wie bereits oben geschrieben macht man das beim CAN indirekt über einen 
Timer und beim LIN direkt über die Scheduling-Tabelle.
#4657319
Lesenswert?
• ▲
▼
Dr. Sommer schrieb:
> Axel S. schrieb:
>> Das ergibt zwar i.d.R. keinen Sinn und hat den unangenehmen Nebeneffekt,
>> den Bus zu verstopfen.
>
> Das ist bei Automatisierungs-und Fahrzeugbussen wie CAN absolut üblich
> und sinnvoll, denn der Zustand der Anlage ändert sich ja ständig und
> muss daher immer wieder aufs neue übertragen werden.

Klar. Ein neuer Zustand muß übertragen werden.
Aber doch nicht immer der gleiche.
Gast #4660917
Lesenswert?
• ▲
▼
Axel S. schrieb:
> Klar. Ein neuer Zustand muß übertragen werden.
> Aber doch nicht immer der gleiche.

Je nach Anwendung, durchaus auch das - z.B. "der Controller lebt noch 
und der Akku ist noch nicht in Übertemperatur und der Motor darf weiter 
laufen". Kommt die Nachricht nicht mehr an, ist der Controller 
abgestürzt und man sollte die Anlage abschalten weil so die Akku 
Temperatur Überwachung nicht mehr funktioniert!

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren