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 

Bedingung mit Timer verknüpfen



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!

25.05.2015, 15:01
Beitrag #1

ETechnik Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: May 2015

2014
2015
DE


Deutschland
Bedingung mit Timer verknüpfen
Hallo,

da ich hier im Forum neu bin, möchte ich mich kurz vorstellen.
Ich bin gelernter Elektriker (ist schon eine Ewigkeit her) und habe auf der Technikerschule meine ersten Erfahrungen mit LabView gemacht.
Da aber LabView an der Schule gerade so im "Aufbau" war, gab es noch keine richtige Ausbildung. Einlesen/Erfassen von versch. Werten
über einen DAQ-Assistenten, dazu ein paar Formeln, das war es dann auch.
Mittlerweile habe ich diverse Bücher gelesen, aber da ich bisher in der Arbeit keine Möglichkeit hatte LabView anzuwenden ist mein Wissenstand begrenzt.
Strukturen sind geläufig und mit Arrays komme ich nach einigen Probieren klar. Wenn ich ein Problem habe, probiere ich halt viel herum.
Sehr viel Selbststudium. Ich hoffe ihr akzeptiert meine "nervigen" Fragen. Einige davon sind sicherlich totale Anfängerfragen, aber schließlich fängt
jeder mal klein an.Big Grin

Nun zu meinem Problem:
Ich möchte einen Gleichstrommotor über digitale Ausgänge schalten. Der Betrieb soll über einstellbare Zeiten geregelt werden und wiederholt sich.
Eine Sequenz ist für mich bis jetzt die einfachste Lösung.
Der Motor hat im Nennbetrieb ca. 5A Stromaufnahme. Steigt der Strom über einen einstellbaren Wert, soll der Motor anhalten.
Allerdings erst, wenn der Strom eine festgelegte Zeit den Nennstrom überschreitet. Der Motor soll also weiterlaufen, wenn der Nennstrom max. 2 sec überschritten wird. Erst dann soll der Motor abschalten.
Die Strombegrenzung habe ich über eine einfache "Größer als" Funktion realisiert, aber wie bekomme ich es hin, dass der "Überstrom" 2 sec anliegen darf
und dann erst abgeschaltet wird. Mittlerweile verstricke ich mich in Schleifen und Case-Strukturen. Dazu kommt noch, wenn der Motor innerhalb der
2 sec seinen Nennstrom wieder erreicht hat, der Motor normal weiterlaufen soll.
Ich denke bestimmt viel zu kompliziert und es ist ganz einfach!

Grüße
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
25.05.2015, 16:32
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Bedingung mit Timer verknüpfen
Hallo ETechnik,

Zitat:Ich möchte einen Gleichstrommotor über digitale Ausgänge schalten. Der Betrieb soll über einstellbare Zeiten geregelt werden und wiederholt sich.
Wenn du fest definierte Zustände und klare Bedingungen hast, solltest du immer eine Statemachine verwenden!

Zitat:Allerdings erst, wenn der Strom eine festgelegte Zeit den Nennstrom überschreitet. Der Motor soll also weiterlaufen, wenn der Nennstrom max. 2 sec überschritten wird. Erst dann soll der Motor abschalten.
Es gibt eine Funktion names PtByPt-BooleanCrossing, die dir sagt, wenn sich eine boolsche Bedingung ändert. Wenn also sich die Bedingung ändert, merkst du dir die aktuelle Zeit (Stichwort: Schieberegister!). Dann nur noch prüfen, ob (aktuelle Zeit) - (gemerkte Zeit) > Limit AND Strom > Limit…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
25.05.2015, 18:40
Beitrag #3

ETechnik Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: May 2015

2014
2015
DE


Deutschland
RE: Bedingung mit Timer verknüpfen
Danke für die Hilfe,

ich habe eine Lösung gefunden.
Wahrscheinlich eine Lösung für Anfänger, aber es funktioniert.
Nach dem Start läuft der Motor. Über den Schieberegler kann ich einen Überstrom einstellen.
Wird dieser erreicht, startet die Zeitmessung. Nach 2 sec Überstrom stoppt der Motor. Wird der Überstrom
innerhalb der 2 sec wieder unterschritten läuft der Motor weiter.
Ich wäre aber trotzdem dankbar, wenn Du mir Deine Lösung zeigen könntest. Die ist sicherlich etwas professioneller.

Grüße


Angehängte Datei(en)
14.0 .vi  Motorabschaltung_Zeit_Strom.vi (Größe: 9,79 KB / Downloads: 300)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.05.2015, 08:06
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 17.480
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Bedingung mit Timer verknüpfen
Hallo ETechnik,

sieht doch schon sehr gut aus!

Ich würde noch:
- eine kleine Wartezeit in die Schleife tun, man muss nicht im Microsekundentakt die Uhrzeit abfragen
- die "2s"-Wartezeit variabel machen, d.h. ein Control nutzen
- die boolschen Verknüpfungen aufräumen, die NOT-Funktionen lassen sich sehr schön durch die CoumpoundArithmetik entfernen…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.05.2015, 12:02 (Dieser Beitrag wurde zuletzt bearbeitet: 26.05.2015 13:50 von Nordvestlys.)
Beitrag #5

Nordvestlys Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 108
Registriert seit: Sep 2014

2015 (und testweise 2016)
2005
EN

07743
Deutschland
RE: Bedingung mit Timer verknüpfen
Hier mal Quick'n-Dirty Dein VI in einer etwas optimierten Fassung und das ganze nochmal als Statemachine. Letztere lässt sich natürlich nicht nur mit Motor-Start/Stop erweitern, sondern auch mit weiteren States.

(Dann sollte man aber vom Enum eine Typedef machen, damit man bei Änderungen nicht alle Stellen einzeln ändern muss.)

Hth


(Edit: vergessene Verzögerung in oberer VI-Schleife ergänzt.)


Angehängte Datei(en)
14.0 .vi  Motorabschaltung_Zeit_Strom.vi (Größe: 26,47 KB / Downloads: 291)

bis denne,
* mario *
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
27.05.2015, 18:21
Beitrag #6

ETechnik Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: May 2015

2014
2015
DE


Deutschland
RE: Bedingung mit Timer verknüpfen
Hallo Nordvestlys,

danke für Deine Beispiele.
Als Einsteiger kommt man da aber nicht drauf. Ich habe es halt etwas "umständlich" gelöst.
Dein oberes Beispiel ist verständlich. Warum hast Du eigentlich Eigenschaftsknoten und nicht lokale Variablen verwendet?
Ich habe für I-dummy und I-max je eine lokale Variable angelegt und konnte beim Ausführen keine Änderung feststellen.

Beim unteren Beispiel hast Du zusätzlich noch eine Ereignisstruktur eingefügt. Das leuchtet mir noch nicht so recht ein.
Aber da komme ich schon noch dahinter.

Grüße!!!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
28.05.2015, 08:26
Beitrag #7

Nordvestlys Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 108
Registriert seit: Sep 2014

2015 (und testweise 2016)
2005
EN

07743
Deutschland
RE: Bedingung mit Timer verknüpfen
(27.05.2015 18:21 )ETechnik schrieb:  Als Einsteiger kommt man da aber nicht drauf. Ich habe es halt etwas "umständlich" gelöst.
Gutes Buch und ein klein wenig Erfahrung helfen.
Meistens findet man ordentliche Strukturen am Anfang zu kompliziert und zu aufwändig. Dann verzweifelt man immer wieder an fehlenden Möglichkeiten und Fehlersuche bei mal-eben-schnell-Sachen und gewöhnt sich dadurch ein paar Entwurfsprinzipien an....
Zitat:Dein oberes Beispiel ist verständlich. Warum hast Du eigentlich Eigenschaftsknoten und nicht lokale Variablen verwendet?
Hmmm, vermutlich erstens Geschmackssache und zweitens Universalität. (leichte Erweiterung auf zusätzliche Eigenschaften, mögliche Nutzung von Referenzen oder die Möglichkeit z.B. eine zeitliche Abhängigkeit durch Zweckentfremdung des Fehlereingangs zu schaffen.)
Zitat:Beim unteren Beispiel hast Du zusätzlich noch eine Ereignisstruktur eingefügt. Das leuchtet mir noch nicht so recht ein.
Aber da komme ich schon noch dahinter.
Bestimmt :-)

bis denne,
* mario *
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.05.2015, 19:31
Beitrag #8

ETechnik Offline
LVF-Neueinsteiger


Beiträge: 4
Registriert seit: May 2015

2014
2015
DE


Deutschland
RE: Bedingung mit Timer verknüpfen
Gute Bücher sind bei mir "Einführung in LabView" aus dem Hanser-Verlag, "LabView-Kurs" von Kurt Reim (enthält viele Beispiele auf Einsteigerniveau) und
"Praxiseinstieg LabView" von Franzis (da habe ich mir mehr erhofft).

Grüße
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
  String Verknüpfen leerstellen virtualmake 4 4.613 13.06.2021 17:09
Letzter Beitrag: GerdW
  2 Parallele While-Schleifen mit unterschiedlichen Timer beenden Tomate27 3 2.976 18.08.2020 13:29
Letzter Beitrag: GerdW
  Bestimmte Zeilen im Array löschen wenn Bedingung nicht erfüllt ist bachatero18 4 5.372 31.03.2020 14:49
Letzter Beitrag: bachatero18
  Timer macht was er will :-) Natalie1984 6 4.125 04.07.2019 12:49
Letzter Beitrag: IchSelbst
  While-Schleife anhalten ohne Timer valerian 2 4.193 04.10.2017 09:28
Letzter Beitrag: valerian
  2. LV Projekte miteinander verknüpfen thz89 1 3.688 13.07.2017 11:43
Letzter Beitrag: GerdW

Gehe zu: