LabVIEW8.6 deutsch Studentenversion:
|
![]() |
[1] 2
-
Beispielprogramm Ultraschallsensor
- Ultraschallsensor an Port 1
-
Messung der Entfernung vom Ultraschallsensor zu einer reflektierenden Ebene.
Der Messwert liegt zwischen 0 und 255cm und kann z.B. im Debug- Modus in LabVIEW als Abstandsmessung verarbeitet werden.
Der Schaltabstand ist über einen Schieberegler einstellbar.
Ist z.B. der Wert 50 eingestellt und die reflektierende Ebene liegt bei 45 dann leuchtet die rote LED "Don’t Walk" im Frontpanel und auf dem nxt Display wird die Grafik "Don’t Walk" angezeigt. Ab einer Entfernung über 50 leuchtet die grüne LED "Walk" im Frontpanel und auf dem nxt Display wird die Grafik "Walk" angezeigt. - Programm Download
![]() |
- LabView starten und leeres VI öffnen
- Blockdiagrammfenster (ggf. Fenster --> Blockdiagramm anzeigen)
(Blockdiagramm / Frontpanel) - Funktionenpalette (ggf. Ansicht --> Funktionenpalette)
- aus Funktionenpalette in Blockdiagramm einfügen
-
Zusatzpakete --> NXT Toolkit --> Structures --> While- Schleife

"While- Schleife" in Blockdiagramm einfügen -
Zusatzpakete --> NXT Toolkit --> Structures --> Case- Struktur

"Case- Struktur" in While- Schleife einfügen - Zusatzpakete --> NXTToolkit --> NXT Library --> Input --> Ultrasonic Sensor (Ultraschall Sensor)
misst Abstand zu einem vor ihm liegenden Gegenstand (Bereich 0 bis 2,5m oder 100 inch)
"Ultrasonic Sensor" in While- Schleife einfügen
- Abstandmessung in cm (Standard)
- Abstandmessung in inch (Konstante an "Covert cm to inches?" erstellen --> True) - Zusatzpakete --> NXTToolkit --> NXT Library --> Display --> Display Picture
zeigt ein Bild auf dem Disply an
2x "Display Picture" in Case- Struktur (1x in TRUE und 1x in FALSE) einfügen - Zusatzpakete --> NXTToolkit --> Boolean --> NICHT

2x "NICHT" in Case- Struktur (1x in TRUE und 1x in FALSE) einfügen - Zusatzpakete --> NXTToolkit --> Comparison --> Größer?
vergleicht zwei Werte und gibt TRUE oder FALSE aus
"Größer?" in in While- Schleife einfügen - ins Frontpanel wechseln (z.B. Fenster --> Frontpanel anzeigen)
- aus Elementepalette (ggf. Ansicht --> Elementepalette) in Frontpanel einfügen
- Zusatzpakete --> NXT Toolkit --> Boolean --> LED (rund)
zeigt Schaltzustand an
2x "LED (rund)" in Frontpanel einfügen - Zusatzpakete --> NXT Toolkit --> Numeric --> Numerisches Anzeigeelement
zeigt eingestellten Schaltabstand und gemessenen Abstand zu einer reflektierenden Ebene an
2x "Numerisches Anzeigeelement" in Frontpanel einfügen - Zusatzpakete --> NXT Toolkit --> NXT Controls --> NXT slider
Schaltabstand einstellen
"NXT slider" in Frontpanel einfügen - Beschriftungen ändern
z.B. auf Slide doppelklick --> "Abstand einstellen" eingeben und Enter - Farbe LED "Don't Walk" ändern: "Don't Walk"
rechte Maustaste --> Eigenschaften --> Darstellung --> Farben

- Skala NXT Slider einstellen: "Abstand einstellen"
rechte Maustaste --> Eigenschaften --> Skala --> Skalenbereich --> Maximum --> 250
--> Schaltabstand über Schieberegler 0-250 einstellbar

- ins Blockdiagramm wechseln
- "Abstand einstellen", "eingestellter Abstand" und "gemessener Abstand" in While- Schleife verschieben
"Walk" in Case- Struktur "TRUE" verschieben
"Don't Walk" in Case- Struktur "FALSE" verschieben - Datentypen ändern
- "eingestellter Abstand" --> rechte Maustaste --> Darstellung --> U16 (Vorzeichenloses Word)
- "gemessener Abstand" --> rechte Maustaste --> Darstellung --> U16 (Vorzeichenloses Word)
- Verbindungen erstellen
- Ultraschallsensor: "Distance" --> Größer?: "x"
"Distance" gibt gemessenen Wert (Entfernung vom Ultraschallsensor zu einer reflektierenden Ebene) aus - "gemessener Abstand" --> Größer?: "x"
für Anzeige von gemessenen Wert (Entfernung vom Ultraschallsensor zu einer reflektierenden Ebene) - "Abstand einstellen" --> Größer?: "y"
über Schieberegler eingestellter Wert - "eingestellter Abstand" --> Größer?: "y"
für Anzeige von über Schieberegler eingestellter Wert - Größer?: "x>y?" --> Case- Struktur: "Case Selektor"
fü x > y (gemessener Abstand > eingestellter Abstand):
--> "x>y?"=TRUE (TRUE von Case- Struktur wird ausgeführt)
fü x < y (gemessener Abstand < eingestellter Abstand):
--> "x>y?"=FALSE (FALSE von Case- Struktur wird ausgeführt) - Case- Struktur TRUE:
- Case- Struktur: "Case Selektor" --> "Walk"
- Case- Struktur: "Case Selektor" --> NICHT: "x"
- Case- Struktur FALSE:
- Case- Struktur: "Case Selektor" --> "Don't Walk"
- Case- Struktur: "Case Selektor" --> NICHT: "x"
- Konstanten erstellen
- äußere While- Schleife: "Schleifenbedingung":
rechte Maustaste --> Erstellen --> Konstante
Konstante auf False (grüner Kasten um F)
Endlosschleife wird so lange wiederholt bis die Stop Taste auf dem nxt gedrückt wird. - Light Sensor: "Input(Port 4)":
rechte Maustaste --> Erstellen --> Konstante
auf Port 1 umstellen - Case- Struktur "TRUE":
- Display Picture: "Filename *.ric"
rechte Maustaste --> Erstellen --> Konstante
Walk 02.ric eingeben und Enter - "Walk"
rechte Maustaste --> Erstellen --> lokale Variable
außerhalb Case- Struktur linke Maustaste
oder:
Zusatzpakete --> NXT Toolkit --> Structures --> Lokale Variable
linke Maustaste (wenn Mauszeiger Hand) --> "Walk"
"Lokale Variable" in Case- Struktur TRUE einfügen
- Display Picture: "Filename *.ric"
- Case- Struktur "FALSE":
- Display Picture: "Filename *.ric"
rechte Maustaste --> Erstellen --> Konstante
Dont Walk 02.ric eingeben und Enter - "Don't Walk"
rechte Maustaste --> Erstellen --> lokale Variable
außerhalb Case- Struktur linke Maustaste
oder:
Zusatzpakete --> NXT Toolkit --> Structures --> Lokale Variable
linke Maustaste (wenn Mauszeiger Hand) --> "Don't Walk"
"Lokale Variable" in Case- Struktur FALSE einfügen - Display Picture: "Filename *.ric"



