16.10.2013, 13:37
|
GerdW
______________
Beiträge: 17.469
Registriert seit: May 2009
LV2021
1995
DE_EN
10×××
Deutschland
|
RE: Schaltung mit DAQ realisieren
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:
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!
|
|
|
17.10.2013, 06:53
|
Lifter
LVF-Grünschnabel
Beiträge: 37
Registriert seit: Oct 2013
2013
-
kA
|
RE: Schaltung mit DAQ realisieren
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.
|
|
|
17.10.2013, 07:53
|
GerdW
______________
Beiträge: 17.469
Registriert seit: May 2009
LV2021
1995
DE_EN
10×××
Deutschland
|
RE: Schaltung mit DAQ realisieren
Hallo Lifter,
Zitat:Brauche ich zusätzlich dazu nicht noch eine sequenz struktur
Nein. THINK DATAFLOW!
|
|
|
17.10.2013, 10:31
|
Lifter
LVF-Grünschnabel
Beiträge: 37
Registriert seit: Oct 2013
2013
-
kA
|
RE: Schaltung mit DAQ realisieren
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.
|
|
|
17.10.2013, 10:38
|
GerdW
______________
Beiträge: 17.469
Registriert seit: May 2009
LV2021
1995
DE_EN
10×××
Deutschland
|
RE: Schaltung mit DAQ realisieren
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...
|
|
|
17.10.2013, 11:54
|
Y-P
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
Beiträge: 12.612
Registriert seit: Feb 2006
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
|
RE: Schaltung mit DAQ realisieren
Nee. Du schreibst immer vorbildlich.
Gruß Markus
(16.10.2013 12:59 )GerdW schrieb: Hallo Markus,
meinst du mich?
--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
|
|
|
17.10.2013, 13:53
(Dieser Beitrag wurde zuletzt bearbeitet: 17.10.2013 13:54 von GerdW.)
|
GerdW
______________
Beiträge: 17.469
Registriert seit: May 2009
LV2021
1995
DE_EN
10×××
Deutschland
|
RE: Schaltung mit DAQ realisieren
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?
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?
Du willst deine Netzteile anhand des Stromes auswählen (so hatte ich das verstanden), also gilt:
Code:
IF Strom < 2 THEN
Netzteil(1, Strom, Spannung)
IF Strom >= 2 AND <10 THEN
Netzteil(2, Strom, Spannung)
IF Strom >=10 THEN
Netzteil(3, Strom, Spannung)
Du hast also eine Case-Struktur mit 3 Fällen (weil 3 Netzteile). Jeder Fall ruft aber die gleiche Funktion "Netzteil" auf, es werden nur angepasste Parameter übergeben (hier: Nummer des Netzteils, Strom- und Spannungswert). Die Funktion "Netzteil" rechnet anhand des Parameter "Nummer" den Strom in die gewünschte Spannung um und gibt beide Werte als AO aus.
Fertig.
Nichts für ungut, aber hast du überhaupt schon einmal programmiert? Irgendeine Vorstellung von Abläufen und Vorgehensweise?
|
|
|
| |