www.vorhilfe.de
Vorhilfe

Kostenlose Kommunikationsplattform für gegenseitige Hilfestellungen.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Vorhilfe
  Status Geisteswiss.
    Status Erdkunde
    Status Geschichte
    Status Jura
    Status Musik/Kunst
    Status Pädagogik
    Status Philosophie
    Status Politik/Wirtschaft
    Status Psychologie
    Status Religion
    Status Sozialwissenschaften
  Status Informatik
    Status Schule
    Status Hochschule
    Status Info-Training
    Status Wettbewerbe
    Status Praxis
    Status Internes IR
  Status Ingenieurwiss.
    Status Bauingenieurwesen
    Status Elektrotechnik
    Status Maschinenbau
    Status Materialwissenschaft
    Status Regelungstechnik
    Status Signaltheorie
    Status Sonstiges
    Status Technik
  Status Mathe
    Status Schulmathe
    Status Hochschulmathe
    Status Mathe-Vorkurse
    Status Mathe-Software
  Status Naturwiss.
    Status Astronomie
    Status Biologie
    Status Chemie
    Status Geowissenschaften
    Status Medizin
    Status Physik
    Status Sport
  Status Sonstiges / Diverses
  Status Sprachen
    Status Deutsch
    Status Englisch
    Status Französisch
    Status Griechisch
    Status Latein
    Status Russisch
    Status Spanisch
    Status Vorkurse
    Status Sonstiges (Sprachen)
  Status Neuerdings
  Status Internes VH
    Status Café VH
    Status Verbesserungen
    Status Benutzerbetreuung
    Status Plenum
    Status Datenbank-Forum
    Status Test-Forum
    Status Fragwürdige Inhalte
    Status VH e.V.

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Dt. Schulen im Ausland: Mathe-Seiten:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Regelungstechnik" - LabView:Wert hoch&runterzählen
LabView:Wert hoch&runterzählen < Regelungstechnik < Ingenieurwiss. < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Regelungstechnik"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

LabView:Wert hoch&runterzählen: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 16:34 So 17.04.2016
Autor: Boje

Aufgabe
Erstellen Sie ein Programm, welches einen Wert zwischen zwei, durch Schieberegler festgelegte, Grenzen, hoch- und runterzählt.


Hallo,

das soll mit LabView realisiert werden. Leider habe ich nicht viel Ahnung von LabView und trotz mehrer Stunden arbeit, habe ich diese Aufgabe bis jetzt leider nicht vollständig lösen können.
Der Wert wird nicht zwischen den Grenzen hoch- und runtergezählt, sondern die Grenzen sind der Wert.
Irgendwie stehe ich da gerade total auf dem Schlauch.

Hier mal das Blockdiagramm. Die drei Elemente außerhalb der Schleife können ignoriert werden.
Ich benutze LabView 2015.
Hat vielleicht jemand einen Tipp?
[Dateianhang nicht öffentlich]

Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.

Dateianhänge:
Anhang Nr. 1 (Typ: jpg) [nicht öffentlich]
        
Bezug
LabView:Wert hoch&runterzählen: Antwort
Status: (Antwort) fertig Status 
Datum: 16:19 Mo 18.04.2016
Autor: Event_Horizon

Hallo!

Ehrlich gesagt, das da macht überhaupt gar keinen Sinn.

Du hast offensichtlich zwei Schieberegler, die zu einem Element zusammengefasst sind, daher kommt da ein Array an Werten 'raus. ich würde hier erstmal mit zwei getrennten Schiebereglern anfangen.

Die Werte aus den Schiebereglern werden mit einer Zufallszahl (Würfel) verglichen, und je nach Ergebnis sind die beiden LEDs (grün) dann an oder aus.

Bei jedem While-Schleifendurchlauf (grauer Rahmen) passiert das erneut, so daß die LEDs schön flimmern dürften.

Die variable i (blau) zählt die Schleifendurchläufe hoch,  und wenn diese mit dem Wert des Drehrehlers übereinstimmt, stoppt das ganze Programm. Gleichzeitig legt der Drehregler fest, wie lange ein Schleifendurchlauf mindestens dauert (in Millisekunden)

Der Wert von i wird drei mal aus der Schleife heraus geführt, und dabei automatisch in ein Array umgewandelt. (nach 10 Durchläufen bekommst du also ein Array mit den Werten 0...9)

Alles in allem habe ich nicht den Eindruck, daß du über all zu viel Grundwissen zu LabView verfügst. Es gibt aber viele tutorials bei Youtube & Co, die du dir mal anschauen kannst.




Zum Problem:

Du benötigst zunächst zwei einfache Schieberegler, in deren Eigenschaften du einstellst, daß sie ganzahlige Werte liefern sollen - die Umrandung wird dadurch blau statt orange. Die Schieberegler gehören nicht in die Schleife, denn sie sollen nicht während des Durchlaufs verändert werden.

Innerhalb der Schleife könntest du den Wert aus dem Schieberegler für die untere Grenze  mit dem Wert von i addieren, und würdest so eine aufsteigende Zahlenfolge erhalten. Aus dem Vergleich mit der oberen Grenze kannst du dir dann die Stopp-Bedingung basteln.

Und die Zahlenfolge kannst du wie gehabt aus der Schleife heraus führen, und bekommst dann ein Array, in dem alle Zahlen drin stehen.

Wenn du das machst, hast du nur den Teil mit dem Hochzählen. Je nachdem, ob anschließend noch runter gezählt werden soll, oder ob über einen Knopf gesteuert werden soll, ob hoch oder runter gezählt werden soll, gibt es andere Vorgehensweisen.

In dem Zusammenhang solltest du dir auch die IF-Schleife angucken, die hat einen kreuzartig schraffierten Rand und erlaubt es, unterschiedliche Dinge zu machen, je nachdem, was an ihrem Fragezeichen dran hängt.

Bezug
                
Bezug
LabView:Wert hoch&runterzählen: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 16:04 Di 19.04.2016
Autor: Boje

Hallo,
vielen Dank für deine Antwort.
  

> Alles in allem habe ich nicht den Eindruck, daß du über
> all zu viel Grundwissen zu LabView verfügst. Es gibt >aber viele tutorials bei Youtube & Co, die du dir mal >anschauen kannst.

Da hast du recht. Wir hatten eine kurze Einführung und haben direkt diese Aufgabe erhalten. Das war's.

> Zum Problem:
>  
> Du benötigst zunächst zwei einfache Schieberegler, in
> deren Eigenschaften du einstellst, daß sie ganzahlige
> Werte liefern sollen - die Umrandung wird dadurch blau
> statt orange. Die Schieberegler gehören nicht in die
> Schleife, denn sie sollen nicht während des Durchlaufs
> verändert werden.

Laut Aufgabenstellung soll es ein Schieberegler mit zwei Pfeilen / Cursor sein. Die LEDs sollen anzeigen in welche Richtung (hoch/runter) gerade gezählt wird.
In einer Tabelle (denke mal ein Array) sollen die Werte Gesamtdurchläufe, Zählwert und Digitalpegel angezeigt werden.
Zusätzlich soll die Hysterese eines Rechtecksignals einstellbar sein. Aber damit befasse ich mich erst, wenn das mit dem Zählen funktioniert.

> Innerhalb der Schleife könntest du den Wert aus dem
> Schieberegler für die untere Grenze  mit dem Wert von i
> addieren, und würdest so eine aufsteigende Zahlenfolge
> erhalten. Aus dem Vergleich mit der oberen Grenze kannst > du dir dann die Stopp-Bedingung basteln.

So bald der Wert die obere Grenze erreicht, soll er wieder runtergezählt werden bis zur unteren Grenze, anschließend wieder hoch, usw.
Welchen Diagramm-Typ nimmt dafür eigentlich, Waveform Graph oder Chart?

Werde mich mal ranmachen deine Tipps umzusetzen :)


Bezug
                        
Bezug
LabView:Wert hoch&runterzählen: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 12:04 Do 21.04.2016
Autor: Event_Horizon

Hallo!

> Laut Aufgabenstellung soll es ein Schieberegler mit zwei
> Pfeilen / Cursor sein.

Ah, OK. Dann hast du das richtig gemacht. Du bekommst also ein Array mit zwei Werten zurück, das dann in zwei einzelne Werte aufgesplittet wird. Ich rate dir weiterhin, den Regler so einzustellen, daß er ganze Zahlen liefert, so daß die Drähte nach dem Splitter blau werden.


> Die LEDs sollen anzeigen in welche
> Richtung (hoch/runter) gerade gezählt wird.
> In einer Tabelle (denke mal ein Array) sollen die Werte
> Gesamtdurchläufe, Zählwert und Digitalpegel angezeigt
> werden.

> So bald der Wert die obere Grenze erreicht, soll er wieder
> runtergezählt werden bis zur unteren Grenze, anschließend
> wieder hoch, usw.

Dann würde ich so vorgehen:

Du brauchst in der Schleife einen boolschen Wert (grün), der angibt, ob grade hoch oder runter gezählt werden soll, und ggf. geändert werden muß. Deshalb muß dieser Wert von einem Schleifendurchlauf an den nächsten weiter gegeben werden.

Dazu erzeuge links neben der Schleife eine boolsche Konstante mit dem Wert True, die du in die Schleife rein verdrahtest. Das Problem: Bei jedem Schleifendurchlauf hat man immer den Wert True, und kann ihn nicht ändern. Rechtsklick auf das Rechteck im Rahmen der Schleife, und den Typ auf... Schleifenvariable oder so ähnlich ändern. Dann erscheint auf exakt gleicher Höhe rechts noch ein Rechteck, und beide Rechtecke tragen einen Pfeil hoch und einen runter. wird innerhalb der Schleife ein Wert an das rechte Rechteck gedrahtet, so kommt dieser Wert beim nächsten Durchlauf links wieder raus.
Damit kannst du die Info, ob hoch oder runter gezählt wird, in den nächsten Durchlauf. Beim allerersten Durchlauf ist der Wert True, von der Konstanten.

Das gleiche machst du mit dem Minimal-Wert vom Schieberegler. Denn das ist der erste Wert, die folgenden entstehen durch Addieren oder Subtrahieren von 1.

Du brauchst einen IF-Rahmen in der Schleife, der den Wert entweder um 1 reduziert oder erhöht - abhängig von dem boolschen Wert. Altenativ gibt es ein dreieckiges Symbol, das nach rechts zeigt. Es bekommt zwei Werte (+1 und -1 in dem Fall) und einen boolschen Wert, und gibt je nachdem +1 oder -1 raus, was zu dem Zählwert hinzu addiert wird.

Und dann brauchst du noch IF-Rahmen, um zu prüfen, ob der höchste/kleinste Wert erreicht wurde, und ob die Zählrichtung daher umgekehrt werden muß, oder nicht. (Das Resultat wird entsprechend an die grüne Ausgangs-Box am rechten Rand gedrahtet, s.o.)





>  Zusätzlich soll die Hysterese eines Rechtecksignals
> einstellbar sein. Aber damit befasse ich mich erst, wenn
> das mit dem Zählen funktioniert.

Hmmm, keine Ahnung, was genau da jetzt gemeint ist. Aber ja, mach das ganze Schritt für Schritt.


>  Welchen Diagramm-Typ nimmt dafür eigentlich, Waveform
> Graph oder Chart?

Das eine nimmt xy-Werte entgegen, das andere nur y-Werte sowie ggf Startpunkt und Abstand der x-Werte. Manche von den Dingern nehmen auch einzelne Zahlen an, und pflegen intern eine Liste mit allen Zahlen.
Ich kanns dir aber nicht genau sagen, das ganze ist ein Weilchen her bei mir.

Bezug
                                
Bezug
LabView:Wert hoch&runterzählen: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 20:08 So 24.04.2016
Autor: Boje

Vielen Dank für deine ausführliche Antwort und die Tipps! Hatte die Tage leider nicht allzu viel Zeit, aber nächste Woche will ich es fertig machen, hoffentlich funktioniert es :)

Bezug
                                
Bezug
LabView:Wert hoch&runterzählen: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 20:03 Mo 25.04.2016
Autor: Boje

Habe mich heute mal rangemacht. Allerdings komme ich bis zu dieser Fehlermeldung leider nicht weiter.
Auch habe ich nicht wirlich Konfigurationsmöglichenkeiten für den Tunnel. Eigentlich nur "Use Default If Unwired" und "Create" hilt mir auch nicht weiter.

Programmieren möchte ich, wenn die obere Grenze ist kleiner gleich untere grenze +1, nichts machen (TRUE und als steigenden Graph ausgeben), falls FALSE von oberer Grenze -1 bis gilt = untere Grenze. Dann wieder von vorne.


[Dateianhang nicht öffentlich]

Dateianhänge:
Anhang Nr. 1 (Typ: png) [nicht öffentlich]
Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Regelungstechnik"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.vorhilfe.de