Hallo,
als erstes bitte ich Sie hier im Forum keine doppelten Themen zu öffnen, die im Grunde das gleiche Thema behandeln.
Nun zum Problem.
Das beschriebene Problem konnte so nicht nachvollzogen werden.
1. Ist das Script wirklich beendet, während des Versuchs die Schaltregler zu verändern, oder läuft das Script noch im Hintergrund? Dadurch könnten die Schaltregler beeinflusst werden.
2. Wie wird das Script genau aufgerufen?
3. Welche Panel-Objekte werden benutzt und sind davon betroffen (z.B. RockerSwitch, usw.)?
4. Wie ist das betroffene Symbol
abc definiert (Datenlänge, Richtung, Zykluszeit, usw.)?
5. Wie ist die betroffene Variable
xyz im Symbol
abc definiert (Datentyp, Bitstart, Bitlänge)?
Ein paar Hinweise zum Versenden von Botschaften im PCAN-Explorer über VB-Script:
Normalerweise sollte es genügen, den Variablenwert zu setzen, um das Senden der Botschaft auszulösen, die der Variablen zugrunde liegt. Das hat den Vorteil, das eine bereits vorhandene Botschaft in der Sendeliste wiederbenutzt wird und nur deren Signalwert aktualisiert wird.
So wie es im angegebenen Script definiert ist, wird bei jeder Ausführung des Scripts eine neue Botschaft in der Sendeliste angelegt.
Code: Select all
Set myMsg = objSymbol.Multiplexers(mux).Send(1, peSendWait)
myMsg.IsPaused = false
Alternative kann auch folgendes ausgeführt werden.
Code: Select all
If objVar.Value <> mystruct.xyz Then
objVar.Value = mystruct.xyz
Else
objSymbol.Multiplexers(mux).Send 1, peSendOnce
End If
Für eine bessere Bearbeitung bzw. Lösung des Problems sende Sie uns das komplette PCAN-Explorer 5 Projekt inklusive Symboldatei, Instruments Panel-Datei, VBS-Makrodatei usw. an unsere Support E-Mail-Adresse unter Angabe Ihrer Seriennummer der PCAN-Explorer 5 Lizenz zu.
Mit freundlichem Gruß
M. Riedl