Schaltung mit DAQ realisieren - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +---- Forum: Datenerfassung (DAQ) (/Forum-Datenerfassung-DAQ) +---- Thema: Schaltung mit DAQ realisieren (/Thread-Schaltung-mit-DAQ-realisieren) |
RE: Schaltung mit DAQ realisieren - GerdW - 16.10.2013 13:37 Hallo Lifter, Zitat:Muss ich die Programmierung generell an dem Prüfstand machen an dem die Baugruppen auch angeschlossen sind? Sonst kann ich nicht auf die einzelnen Kanäle zugreifen, bsw. die mit dem Programm direkt verbinden.Du musst nicht am Prüfstand programmieren, du kannst dir in MAX (auf dem Entwicklungsrechner) auch Hardware simulieren... Zitat:Im Grunde geht es im ersten Zustand ja darum die beiden vom Anwender vorgegebenen Spannungs- und Stromwerte mit den gegebenheiten (netzteile) zu vergleichen und das ganze dann in eine analoge Spannung umzurechnen, die von Netzteil zu Netzteil verschieden ist. Also werden die beiden Eingabe Bedienelemente durch einen Tunnel in die Case struktur weitergegeben?Mal eine Idee/Vorschlag dazu: [attachment=46772] Das subVI rechts übernimmt die Ausgabe der Werte per AO (umgerechneter Strom- und Spannungswert). Über den dritten Parameter (ein Enum) könntest du auch gleich die DO passend schalten... Beachte, was an den Selektor der Case-Struktur angeschlossen ist. In der Kontexthilfe steht, was man so alles in der Case-Auswahl eintragen kann! RE: Schaltung mit DAQ realisieren - Lifter - 17.10.2013 06:53 ich komme nicht so ganz klar mit dem enums. an sich bräuchte ich ja 3 enums (netzteil 1,2 und 3), bei denen ich jeweils ne andere Schalttopologie habe. Wie lege ich denn fest dass enum 1 von 0-2 A, enum 2 von 2-30 A usw. benutzt wird. Brauche ich zusätzlich dazu nicht noch eine sequenz struktur, weil die reihenfolge Werte nehmen -> Netzteil ansteuern (bis Prüfung beendet) -> Brücke schalten / Prüfung durchführen -> (Prüfung beendet) vorgegeben ist. RE: Schaltung mit DAQ realisieren - Achim - 17.10.2013 07:18 Du brauchst nicht 3 Enums, sondern ein Enum (-Control) mit 3 Werten...und die musst du an eine Case-Struktur anschließen, und die Cases eben entsprechend füllen. Ich glaube, du musst dein Problem mal konkreter beschreiben... A. RE: Schaltung mit DAQ realisieren - GerdW - 17.10.2013 07:53 Hallo Lifter, Zitat:Brauche ich zusätzlich dazu nicht noch eine sequenz strukturNein. THINK DATAFLOW! RE: Schaltung mit DAQ realisieren - Lifter - 17.10.2013 10:31 ok. Also ich habe mich jetzt noch ein bisschen mit dem MA Explorer auseinandergesetzt und die Hardware die ich in dem Stand verbaut hab simuliert. Zusätzlich noch die Tasks erstellt (DO ; AI-Spannung; AO-Spannung) und die einzelnen Wertebereche gesetzt und von RSE auf differenziel umgestellt. Wenn ich jetzt die Tasks in das VI ziehe kriege ich nur diese 3 I/O Felder, wie genau spreche ich jetzt zum beispiel DO 0 an? Ok ich erläutere das jetzt mal ein wenig und stell mal ein paar Fragen zu den thematiken. Im Grunde genommen solls einfach darum in den Programm gehen, das der Benutzer Strom- und Spannungswerte vorgibt und dadurch dann ein passendes Netzteil ausgewählt wird: Bsp: netzteil 1 : I von 0 bis 2 A, U bis maximal 150 V; netzteil 2 : I von 2 bis 15 A, U bis maximal 10 V; netzteil 3 : I von 15 bis 100 A, U bis maximal 30 V (einstellbar). Je nach Stromwert werden auch Shunts (über Halbleiterrelais) in den Kreis geschaltet, also muss ich noch eine Art Abfrage in der Case Struktur einbauen, die dann je nach Stromwert den richtigen Shunt in den Kreis schaltet. Nachdem der Anwender U und I vorgegeben hat wird das passende Netzteil ausgewählt und mit einer AO Karte angesteuert, U und I folgen der angelegten Programmierspannung. Gleichzeitig werden auch schon einige Halbleiterrelais zugeschaltet um das Strom einstellen beim Netzteil zu ermöglichen (Kurzschlussbrücke). Nach einer kurzen Verweilzeit wird ein weiteres Halbleiterrelais zugeschaltet, das den Prüfkreis zuschalten soll. Nach etwa 200 ms soll dann die Kurzschlussbrücke rausgeschaltet werden. Danach startet die Prüfung: Diese kann durch Drücken des Stopp-Buttons, Öffnen einer Tür (diese ist mit einem Sicherheitsschalter versehen -> keine Spannung mehr über einem AI anstehend) unterbrochen werden und endet spätestens nach 30 s. (An den roten Anschluss der While Schleife einfach diese 3 Bedingungen mit oder verknüpft?) Gleichzeitig werden Strom und Spannung gemessen und der Verlauf in einem Graph dargestellt. So angenommen man löst dieses Problem jetzt mit einem Zustandsautomaten: 1. Eingabe der Paramter [hierbei werden die Eingabefelder abgefragt, je nach Eingabe dann entweder ein Fehler ausgegeben] 2. Zuschalten der Brücke (Einstellkreis) [je nach Netzteil Setzen anderer DO`s erforderlich] 3. Passendes netzteil ansteuern [je nach Netzteil andere Spannung über AO anzulegen] 4. Zuschalten des Prüfkreises nach Wartezeit Dann treten bei mir erstmal folgende wesentliche Fragestellungen auf: Große While Schleife, darin eine 4 Case Struktur. An den Selektoranschluss von der Case Struktur muss dann ja sowohl Strom als auch Spannung, wie soll das gehen wenn nur ein Anschluss vorhanden ist? generell startet der Programmablauf ja IMMER mit Case 1. Sind die Werte die über den Selektoranschluss hineingeführt werden auch in jedem Case zwecks Umrechnung etc. vorhanden? In Case 2 muss dann ja eine Art abfrage zunächst laufen, wofür ich Strom und Spannungswert brauch und dann über beispielweise und oder verknüfungen dann einzelne Digitale Kanäle setze. In Case 3 muss dann eine ähnliche Abfrage laufen, die dann in einem Sub VI die Strom-Spannungswerte in eine Spannung umsetzt und über AO`s dann die Netzteile "füttert" In Case 4 muss dann auch eine ähnliche ABfrage laufen, die mir dann die endgültige Schalttoplogie setzt (über DO). Die Messungen habe ich jetzt mal außen vor gelassen, aber müssten ja meiner Meinunng nach auch nur in Case 4 und dann in den Signalverlaufsgraphen rein. Die Integralberechnung etc. ist jetzt auch mal außen vor gelassen. Ich hoffe ich habe das mal ein wenig besser dargestellt und würde mich über jeden Ratschlag sehr freuen. Kann man diese paar Vorschläge die ich da gegeben habe so verwirklichen? Danke. RE: Schaltung mit DAQ realisieren - GerdW - 17.10.2013 10:38 Hallo Lifter, Zitat:Wenn ich jetzt die Tasks in das VI ziehe kriege ich nur diese 3 I/O Felder, wie genau spreche ich jetzt zum beispiel DO 0 an?Über DAQmx-Funktionen, z.B. DAQmxWrite... Zitat:Ok ich erläutere das jetzt mal ein wenig...Viel Text, kein Bild, kein VI! Bitte für LV2011... Zitat:An den Selektoranschluss von der Case Struktur muss dann ja sowohl Strom als auch Spannung,Nein. Da muss die Größe ran, über die du das Netzteil auswählst. Notfalls musst du dir selbst eine Vergleichsfunktion schreiben, die beide Größen betrachtet... Zitat:Die Messungen habe ich jetzt mal außen vor gelassen, aber müssten ja meiner Meinunng nach auch nur in Case 4 und dann in den Signalverlaufsgraphen rein.Die Messung kann parallel zur Statemachine in ihrer eigenen Schleife laufen... RE: Schaltung mit DAQ realisieren - Y-P - 17.10.2013 11:54 Nee. Du schreibst immer vorbildlich. Gruß Markus (16.10.2013 12:59 )GerdW schrieb: Hallo Markus, RE: Schaltung mit DAQ realisieren - Lifter - 17.10.2013 13:45 ok, ich komme immernoch nicht ganz klar mit den Messungen zum beispiel. Eine Frage zu der case struktur: Der obere Anschluss muss ja je nach Netzteil anders belegt sein? In dieser Case Struktur sollen doch alle 3 Netzteile angesprochen werden können, das entspräche dann 3 Anschlüssen? Nur der erste Case ist ja vom Strom abhängig, nachher spielt das keine Rolle mehr. Doch als Bedingung für die andereren Cases muss ich dann ja auch einen Stromwert angeben? Das ist für mich nicht ganz ersichlich. Wann nach Case 1 startet denn Case 2? ja w enn die bedingung von 2 erfüllt ist, aber die Bedingung entspricht doch Case 1? Wie binde ich den Start Button mit ein? Derzeit ist dieser ja ohne Funktion, die schleife läuft direkt los. Im Programm später soll der Anwender ja erst durch betätigen von Start den Programmablauf starten können. DIe Zeit in der Schleife stellt er mir auch nicht gut da, da scheint was nicht ganz richtig zu sein. Ich habe einfach mal n bild drnagehängt und bin für jede Hilfe danbar. RE: Schaltung mit DAQ realisieren - GerdW - 17.10.2013 13:53 Hallo Lifter, Zitat:Eine Frage zu der case struktur: Der obere Anschluss muss ja je nach Netzteil anders belegt sein? In dieser Case Struktur sollen doch alle 3 Netzteile angesprochen werden können, das entspräche dann 3 Anschlüssen? Du willst deine Netzteile anhand des Stromes auswählen (so hatte ich das verstanden), also gilt: Code: IF Strom < 2 THEN Fertig. Nichts für ungut, aber hast du überhaupt schon einmal programmiert? Irgendeine Vorstellung von Abläufen und Vorgehensweise? RE: Schaltung mit DAQ realisieren - Lifter - 21.10.2013 13:55 programmiert? naja, in der hochschule ein wenig und mit s7, aber keine wirklichen großen projekte... so ich habe jetzt eine case struktur erstellt mit den 3 bedingungen für den strom und einer meldung wenn die gewählte spannung nicht zu dem strom passt. Wenn ich jetzt ein sub VI zur ansteuerung der netzteile erstellen möchte muss ich ja im anschlussfeld zunächst strom und spannung nach links zu den eingängen legen, rechts aber einen ausgang setzen, der mit dem frontpanel verknüpft ist. Aber der Ausgang des Sub VI`S soll doch direkt an die Netzteile gegeben werden. Danach hab ich den ersten teil des zustandsautomaten fertig, jetzt wird je nach netzteil und stromwert (maßgeblich für das zuschalten der jeweiligen shunts in den kreis) eine bestimmte schalttopologie zugeschaltet, also über DO`s ein paar Relais angesteuert. Hierfür bräuchte ich doch schon wieder eine Case Struktur? Geht Case Struktur in Case Struktur? Mir fällt das ein wenig schwer, das in LV umzusetzen. Ich weiss ziemlich genau was ich machen möchte. Anbei ein Bild vom Blockdiagramm, in dem Case sind 4 Zustände je nach Stromwert und einen weiteren Zustand wenn Stromwert ausserhalb des bereichs liegt. |