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 

Event struktur: event triggern mit digital input



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!

26.03.2015, 15:08
Beitrag #1

Brainbug Offline
LVF-Grünschnabel
*


Beiträge: 30
Registriert seit: May 2014

LV 2014 Professional Development
2014
DE


Deutschland
Event struktur: event triggern mit digital input
Moin,

ich stehe gerade vor der Aufgabe einen digitalen input mit einem Event zu koppeln. (siehe VI)
Vom Frontpanel aus kann man Buttons betätigen die events auslösen. Diese Events sollen nun auch über einen digitalen Input getriggert werden.
Der digitale input ist in diesem VI ebenfalls durch Buttons auf dem Frontpanel dargestellt. Diese Buttons sind im Schaltverhalten "Bis zum loslassen schalten".
Da die "echten" Frontpanel buttons im Schaltverhalten "Latch beim loslassen" sind, können keine lokale Variabeln und Eigenschaftsknoten benutzten werden. Stelle ich diese Buttons auf "Bis zum loslassen schalten" wird das Event 2 mal ausgelöst.
Ich komme leider nicht weiter und hoffe auf Hilfe!

Ein 2tes Problem besteht darin zu erfassen, ob ein kopf gedrückt ist.
Kurzes Beispiel: Um den Motor vorwärts zu bewegen muss ein Befehl gesendet werden. dies erfolgt durch drücken des Buttons auf dem FP. Um den Motor dann wieder anzuhalten muss der Stop-Button gedrückt werden.
Ich möchte es gerne so umsetzen, dass der Motor vorwärts fährt SOLANGE der entsprechende Button gedrückt wird. Wie kann ich dies mit der Event struktur umsetzten? Ich stoße hier auf die gleiche Problematik wie oben. Wall


Cheer sagt der LV-Grünschnabel
Brainbug


Angehängte Datei(en)
14.0 .vi  Test Ereignis vs. Fernbedienung.vi (Größe: 24,03 KB / Downloads: 213)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.03.2015, 15:20 (Dieser Beitrag wurde zuletzt bearbeitet: 26.03.2015 15:21 von GerdW.)
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Event struktur: event triggern mit digital input
Hallo Brainbug,

Zitat:Diese Events sollen nun auch über einen digitalen Input getriggert werden.
Und dazu schreibst du den Wert deinen "digitalen Inputs" in einen boolschen Indicator und verknüpfst diesen mit einem Eventcase.
Dummerweise löst aber das programmatische Schreiben eines Wertes in einen Indicator kein Event aus!

Events werden ausgelöst durch:
- Benutzeraktionen
- die "Value (signalling)"-Propertynode
- User-defined events
Such dir eine dieser Möglichkeiten aus!

Zitat:Ich möchte es gerne so umsetzen, dass der Motor vorwärts fährt SOLANGE der entsprechende Button gedrückt wird. Wie kann ich dies mit der Event struktur umsetzten?
Ein Button im "Bis zum Loslassen schalten"-Modus erzeugt ein ValueChange-Event, wenn er gedrückt wird und ein zweites, wenn er losgelassen wird…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.03.2015, 15:43
Beitrag #3

Brainbug Offline
LVF-Grünschnabel
*


Beiträge: 30
Registriert seit: May 2014

LV 2014 Professional Development
2014
DE


Deutschland
RE: Event struktur: event triggern mit digital input
Moin Gerd!

Mit dem Eigenschaftsknoten Wert signalisierend habe ich es auch Versucht.
Mein Vorgehen: Indikator auf FP. Wert von Digital input in Eigenschaftsknoten Wert signalisierend. Eventcase Ereignisquelle hinzufügen (den Indikatorr) auf Value change.
Ergebnis: da meine abtastung des Digitalen Input alle 100 ms erfolgt, wird alle 100 ms das event getriggert...auch wenn es false ist.
Was habe ich denn da übersehen? Darf ich nur einen Wert in den Eigenschaftsknoten geben, wenn getriggert werden soll? Und davon ist es richtig so, dass bei false und true des Indikators getriggert wird?

Lieben Dank,
Brainbug
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.03.2015, 15:52 (Dieser Beitrag wurde zuletzt bearbeitet: 26.03.2015 16:05 von GerdW.)
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Event struktur: event triggern mit digital input
Hallo Brainbug,

Zitat:Ergebnis: da meine abtastung des Digitalen Input alle 100 ms erfolgt, wird alle 100 ms das event getriggert...auch wenn es false ist.
Dein Gedankengang ist geringfügig verkehrt… Smile

Die Verwendung der PropertyNode triggert bei JEDEM Schreibzugriff ein ValueChange-Event - die Property heißt nicht umsonst "Value (signalling)". Und da ist der eigentliche Wert vollkommen egal…
(Nachtrag: Die Property heißt "Value…" und nicht "ValueChange"…)

Zitat:Darf ich nur einen Wert in den Eigenschaftsknoten geben, wenn getriggert werden soll?
Ja.

Zitat:Und davon ist es richtig so, dass bei false und true des Indikators getriggert wird?
Ja.

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.03.2015, 16:03
Beitrag #5

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: Event struktur: event triggern mit digital input
(26.03.2015 15:08 )Brainbug schrieb:  Vom Frontpanel aus kann man Buttons betätigen die events auslösen. Diese Events sollen nun auch über einen digitalen Input getriggert werden.
Was ist denn der hardwaremäßige Background Deiner "digitalen Inputs". Z.B hat man eine Motorsteuerung mit USB oder serieller Schnittstelle für die Kommandos. Aber außerdem hat so eine Motorsteuerung fast immer noch digitale Ein-/Ausgänge, die man (eingeschränkt) frei programmieren kann. An die Eingänge lassen sich z.B die Schalter für die Endstellungen, für die Home-Position oder zur Fernbedienung anschließen. Und man kann über die Schnittstelle programmieren, z.B. dass der Motor bei Erreichen der Endposition sofort stoppt, und dann nur noch zurück, aber nicht weiter vorwärts bewegt werden kann. Das macht aber direkt die Firmware in der Motorsteuerung, das geht nicht erst über eine langsame Schnittstellen hin und her, und dazu noch über ein Windows-Programm.

Wenn aber solche digitalen Inputs fehlen, dann bleibt nichts übrig, als den Status das Motors, also z.B die momentane Position, mit möglichst hoher Rate zu pollen. Das wäre aber dann nicht so toll. Und irgendwie sollte man schon die Endschalter lesen können
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.03.2015, 16:11 (Dieser Beitrag wurde zuletzt bearbeitet: 26.03.2015 16:13 von Brainbug.)
Beitrag #6

Brainbug Offline
LVF-Grünschnabel
*


Beiträge: 30
Registriert seit: May 2014

LV 2014 Professional Development
2014
DE


Deutschland
RE: Event struktur: event triggern mit digital input
Moin Lucki,

der Hintergrund ist eine ganz banale Fernbedienung, über die ich die Vorwärts, Rückwärts, Start, Stop machen möchte. Die Problematik ist: Fernbedienung- bei dauergedrücktem Taster --> dauersignal,
Frontpane- bei dauergedrücktem Taster --> Latch
Ich kriege die weder mit Eigenschaftsknoten noch Userevent über die Ereignisstruktur vereint.

Zudem ist weiter das Problem, dass der Motor sich nur bewegen soll, solange der FP-Button gedrückt ist...finde auch dafür keine Lösung. Sad
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
26.03.2015, 16:14 (Dieser Beitrag wurde zuletzt bearbeitet: 26.03.2015 16:15 von GerdW.)
Beitrag #7

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Event struktur: event triggern mit digital input
Hallo Brainbug,

siehe Anhang: jedes Schalten (Drücken & Loslassen) des Buttons erzeugt ein Event…

Zitat:Zudem ist weiter das Problem, dass der Motor sich nur bewegen soll, solange der FP-Button gedrückt ist...finde auch dafür keine Lösung.
Beim ersten Event (Drücken) den Motor starten, beim zweiten Event (Loslassen) den Motor stoppen. Wo ist das Problem?


Angehängte Datei(en)
11.0 .vi  Switch.vi (Größe: 7,76 KB / Downloads: 206)

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.03.2015, 16:27 (Dieser Beitrag wurde zuletzt bearbeitet: 26.03.2015 16:32 von Brainbug.)
Beitrag #8

Brainbug Offline
LVF-Grünschnabel
*


Beiträge: 30
Registriert seit: May 2014

LV 2014 Professional Development
2014
DE


Deutschland
RE: Event struktur: event triggern mit digital input
Moin Gerd,
ich glaube wir reden aneinander vorbei...oder ich verstehe es einfach nicht.



Zitat:siehe Anhang: jedes Schalten (Drücken & Loslassen) des Buttons erzeugt ein Event…

Richtig! Dies basiert aber nicht auf das von mir gegebene VI mit Queue....mit diesem Aufbau sende ich per Queue den Befehl mehrfach, wie ich weiter oben schon erwähnt hatte. Oder ich mache da einfach noch was falsch...

Zitat:Beim ersten Event (Drücken) den Motor starten, beim zweiten Event (Loslassen) den Motor stoppen. Wo ist das Problem?

Ist die gleiche Problematik wie oben...soweit ich das sehe. Ich muss zum bewegen des Motors EINMALIG einen Befehl über die RS-485 senden...dies soll beim drücken des Buttons geschehen...und wenn der Button losgelassen wird muss ich den Stop_Befehl senden...
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.03.2015, 16:32 (Dieser Beitrag wurde zuletzt bearbeitet: 26.03.2015 16:33 von GerdW.)
Beitrag #9

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Event struktur: event triggern mit digital input
Hallo Brainbug,

Zitat:Ich muss zum bewegen des Motors EINMALIG einen Befehl über die RS-485 senden...dies soll beim drücken des Buttons geschehen...und wenn der Button losgelassen wird muss ich den Stop_Befehl senden...
wenn der Schalter gedrückt wird, sendest du ein TRUE (aka MotorEnable aka "Motor darf drehen"). Wenn der Schalter losgelassen wird, sendest du ein FALSE (aka MotorDisable aka "Motor bleibt stehen"). Und dank Event-Struktur passiert das alles jeweils nur EINMALIG.

Ich verstehe nicht, wo du da ein Problem siehst!?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.03.2015, 16:38 (Dieser Beitrag wurde zuletzt bearbeitet: 26.03.2015 16:44 von Brainbug.)
Beitrag #10

Brainbug Offline
LVF-Grünschnabel
*


Beiträge: 30
Registriert seit: May 2014

LV 2014 Professional Development
2014
DE


Deutschland
RE: Event struktur: event triggern mit digital input
Moin Gerd,

Mein Programm basiert auf Queue. Wird ein Button gedrückt wird ein String in die Queue geschoben, der in einer weiteren Schleifen in einem Case erfasst wird und somit z.B. den Befehl "vorwärts fahren" sendet.
Habe ich einen Button auf dem FP der mit "Schalten bis zum loslassen" versehen ist, wird der String einmal beim drücken in die Queue geschoben und einweiteres mal beim loslassen! und genau das ist das Problem dabei.

Edit:

Ich glaube ich habe da gerade eine Idee....ev ist es die Lösung mit "Schalten bis zum loslassen" konifguration in dem Event eine case zu setzten...bei true schiebe diesen String in die Queue (befehl vorwärts) ...bei False einen anderen String (befehl stop)
..werd das mal testen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Asynchrone VIs mit Event Struktur sofort beenden Kiesch 4 9.637 26.04.2024 10:29
Letzter Beitrag: Kiesch
  LV crasht beim Editieren von Event-Loops Lime 1 1.791 22.03.2024 18:02
Letzter Beitrag: Martin.Henz
  Event Triggern über boolean Anzeige simcum 6 3.568 25.02.2023 14:57
Letzter Beitrag: simcum
  Event Struktur Problem ache 9 5.112 17.09.2020 14:10
Letzter Beitrag: jg
  Enum gesteuertes Event ares2013 3 4.505 29.11.2019 19:03
Letzter Beitrag: Lucki
  Event Taste lange gedrückt hansi9990 1 2.799 17.02.2019 12:55
Letzter Beitrag: hansi9990

Gehe zu: