INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Global Variable in Ereignis Struktur hinzufügen



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

21.10.2022, 19:01
Beitrag #26

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.687
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
RE: Global Variable in Ereignis Struktur hinzufügen
Wenn ich das, was auf der Yamutec-Seite steht, richtig interpretiere, ist offensichtlich folgendes norwendig:

Von der Yamutec-Seite:
Code:
// ... das automatische Erkennen der Hardware durch das System und das Ein- und Ausschalten der Relais.

Private Sub TestForm_Load(sender As Object, e As EventArgs) Handles MyBase.Load

YMcom = New DeviceServer With
  {
.DeviceConnectedCallback = AddressOf DeviceConnectedCallback,
.DevicesChangedCallback = AddressOf DevicesChangedCallback,
.DeviceDisconnectedCallback = AddressOf DeviceDisconnectedCallback,
.ReadAllDevicesContinuously = True,
.ReadAllDevicesInterval = 1,
.ReadCallback = AddressOf ReadCallback
}

End Sub

// SendByte1 = 1 = Relais einschalten / SendByte1 = 0 = Relais ausschalten

Private Async Sub SchaltZustandSenden()
Try
  Await YMcom.SEND_OUTPUT_STATUS_8(ComboBox1.Text, SendeByte1)
Catch ex As Exception
  WriteOutput.Text = „error or no device found by adresse“ & „/“ & ex.Message
End Sub

Das heißt dann wohl offensichtlich:
  • Über den Callback DeviceConnectedCallback wird dem Programm mitgeteilt, dass ein Device connected wurde - und welche Adresse das Device hat. Steht gemäß eines anderen Eintrags dann in ComboBox1.Text.
  • Mittels der gemeldeten Adresse kann SEND_OUTPUT_STATUS_8 nun Relais schalten - selbstverständlich ohne Callback.
  • Ein weiterer Callback (DeviceDisconnectedCallback ?) teilt dem Programm mit, dass das Device disconnected wurde. Das Programm sollte nun nicht mehr auf die bisher bekannte Adresse schreiben.

Ich vermute nun, dass folgendermaßen vorgegangen werden muss:
  • VI schreiben für Callback DeviceConnectedCallback. Tritt der Callback dann ein, hat jemand die Relais-Karte eingesteckt. Ab jetzt ist die Adresse gültig.
  • VI schreiben zum Schalten von Relais: verwendet wird die im Callback übergebene Adresse.
  • VI schreiben für Callback DeviceDisconnectedCallback. Ab jetzt ist die Adresse aus DeviceConnectedCallback ungültig.

Wer schreibt jetzt das Callback-VI?

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Nachrichten in diesem Thema
RE: Global Variable in Ereignis Struktur hinzufügen - IchSelbst - 21.10.2022 19:01

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
Wink Benutzerdefinirtes Ereignis mit Arduino jennylena 1 3.078 15.02.2018 09:53
Letzter Beitrag: IchSelbst
  Ereignis Struktur 911tom 9 6.379 20.12.2017 20:57
Letzter Beitrag: GerdW
  Wie Toolkits hinzufügen Heber 1 2.767 28.06.2017 09:09
Letzter Beitrag: GerdW
  Ereignis "Wertänderung" verzögern aw 3 4.540 11.08.2016 16:08
Letzter Beitrag: Trinitatis
  Vorhandenem Cluster Elemente hinzufügen PeteFlosse 5 7.201 26.07.2016 15:23
Letzter Beitrag: jg
  case in state machine hinzufügen Shieva 6 6.594 14.09.2015 13:33
Letzter Beitrag: NoWay

Gehe zu: