LabVIEWForum.de
Schrittmotor mit Soundkarte (Mikro) ansteuern - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Grafik & Sound (/Forum-Grafik-Sound)
+---- Thema: Schrittmotor mit Soundkarte (Mikro) ansteuern (/Thread-Schrittmotor-mit-Soundkarte-Mikro-ansteuern)

Seiten: 1 2


Schrittmotor mit Soundkarte (Mikro) ansteuern - TenaciousB - 02.12.2010 14:49

Sehr geehrtes LabView-Forum,
ich freue mich sehr hier zu posten und bin schon gespannt auf eure Antworten.

Aus dem Titel geht schon mal hervor was ich in Planung hab:
Ich würde gerne einen Schrittmotor über meine LapTop-Soundkarte ansteuern.
Genauer gesagt, sollte der Motor durch ein Eingangssignal vom Mikrofon stoppen.
Ich möchte nicht, dass die Steuerung Wörter erkennt wie „Start“ oder „Stopp“ sondern „nur“, dass das Programm auf die Amplitudenvergrößerung des Eingangssignals des Mikrofons reagiert.
Signalzustand 0 wäre also wenn das Mikro Stille aufnimmt.
Um den Signalzustand 1 hervorzurufen, muss einfach ins Mikrofon gesprochen werden oder geklatscht werden. Dieser Ton oder Lärm, lässt die Amplitude in die Höhe schnellen, worauf man dann ein Signal erhält welches weiterverarbeitet werden kann, oder soll.
Bild: „Amplitudenveränderung.jpg“
So nun meinen Frage:
Ist meine Idee mit LabVIEW machbar und wie aufwändig wäre eine solche Programmierung mit LabVIEW?
Es ist so. Ich bin gerade auf der Suche nach einer „einfachen“ Programmiersprache, da ich Neuling in diesem Gebiet bin.
Ich hab mich kurz über „C++“ informiert, bin dann zu „Java“ gekommen und nun über „Nanotec“ http://de.nanotec.com/dc_406_technologie_programmierung.html wo ich den Schrittmotor bestellen werde, auf LabVIEW.
Ehrlich gesagt war ich gleich Feuer und Flamme dafür, da bei LabVIEW keine eigene Sprache (Syntax) erlernt werden muss und da auch Messgeräte implementiert werden können.
Aber was denken die Profis über meine Idee? Überhaupt machbar? Zu kompliziert? Gibt es eventuell schon so ein ähnliches Programm?

Vielen Dank für eure Einschätzungen!
Grüße Tenacious B^_^
[attachment=31002]


Schrittmotor mit Soundkarte (Mikro) ansteuern - snuz - 03.12.2010 08:10

Hallo TenaciousB,

einmal Reiz und Soundaufnahme, das VI wartet auf einen Sound und beendet sich dann, ich glaube im Endeffekt die Logik die Du suchst.
Wenn Du den Motor z.B. über USB ansteuerst und einfach ein Signal brauchst um Labview zu sagen wann Schluss ist sollte das ausreichen, ein wenig umprogrammieren und Du kannst ihn an und aus klatschen.

Gruß snuz

P.S. auch lesenswert Mit LabView und einer Soundkarte Mess...


Schrittmotor mit Soundkarte (Mikro) ansteuern - GerdW - 03.12.2010 09:18

Hallo B,

Zitat:Ehrlich gesagt war ich gleich Feuer und Flamme dafür, da bei LabVIEW keine eigene Sprache (Syntax) erlernt werden muss
Wie kommst du denn auf sowas? Eine Programmiersprache anwenden wollen, ohne deren "Syntax" zu erlernen??? Viel Spaß weiterhin bei deinen VersuchenSmile


Schrittmotor mit Soundkarte (Mikro) ansteuern - TenaciousB - 03.12.2010 18:55

Hallo Leute,
danke zuerst mal für die posts.
Das gute an Foren ist ja, dass man seine Gedanken niederschreibt und einem bei der Formulierung des Problems schon so einiges klar wird.

Noch gestern Nachmittag habe ich mir den dreistündigen Einführungskurs „Einführung in LabVIEW“ runtergeladen und ausgedruckt. Habe sogleich mit den Übungen angefangen und heute schon habe ich es geschafft ein Teil meines Programmes fertigzustellen.
Seht Bild und Datei unten.
Bin wirklich beeindruckt von LabVIEW!
Wichtig war mir mal, mit dem Reiz über Mikrofon etwas auslösen zu können. In meinem Programm ist es, das ein Einschalten der Kontrolllampe.
Es funktioniert!! Juhuu!

Im Moment habe ich nur 2 Probleme.
1. Das Programmchen stürzt mir nach einer gewissen Zeit immer ab
2. Wenn man nur kurz klatscht funktioniert es nicht (Das LED leuchtet nicht auf)

Mit Syntax hab ich einfach nur gemeint, dass man nicht lange eine neue Programmiersprache erlernen muss. Natürlich muss man in LabVIEW auch Zusammenhänge erlernen, nur geht das mit Symbolen 100mal einfacher.

Vielen Dank euch
Ich bleib am Ball

[attachment=31033]
[attachment=31034]
Lv85_img


Schrittmotor mit Soundkarte (Mikro) ansteuern - Y-P - 03.12.2010 19:34

1. Mit welcher Meldung stürzt es ab? Ich würde mal statt den Express-VIs richtig programmieren, dann sieht man auch, was da abläuft.
2. Dann wird das Signal evtl. durch Deinen Filter weggefiltert.

.... und noch was: Bitte das nächste Mal die LabVIEW-Version Deines VIs angeben. Rulez

Gruß Markus

' schrieb:1. Das Programmchen stürzt mir nach einer gewissen Zeit immer ab
2. Wenn man nur kurz klatscht funktioniert es nicht (Das LED leuchtet nicht auf)



Schrittmotor mit Soundkarte (Mikro) ansteuern - TenaciousB - 04.12.2010 19:45

Hallo Markus,
danke für deinen Eintrag.

Wie du geschrieben hast, habe ich das Programm nochmal ohne Express IVs zusammengestellt.
Musste erst mal nachschauen was du da eigentlich genau gemeint hast… Stichwort: „Programmieren statt Konfigurieren“
Stimmt so?
Aber leider bleibt das Problem bestehen. Das Programm hängt sich nach einer gewissen Zeit einfach auf und kann nicht mehr bedient werden. Fehlermeldung bekomme ich leider keine… es kommt nur ein kleines Fenster mit:
VI zurücksetzten:Reiz_Amplitude_LED_ohne_Express.vi
Ich muss LabVIEW dann mit dem Task-Manager abwürgen.
Kannst du, bzw. könnt ihr mir vielleicht sagen, was da das Problem ist?

Den Filter habe ich mal raus genommen. Auf das Klatschen reagiert das Programm jetzt besser.

Bezüglich der Version… ok werde ich machen…. Dachte die Angabe der Version am Rand wäre genug. Da war ich wohl zu ungenau.

Thankz
Lv85_img


Schrittmotor mit Soundkarte (Mikro) ansteuern - Y-P - 05.12.2010 09:47

Dann hast Du das falsche VI hochgeladen, oder wie nennst Du die 2 großen hellblauen Kästen? Big GrinWink

Gruß Markus

' schrieb:Wie du geschrieben hast, habe ich das Programm nochmal ohne Express IVs zusammengestellt.



Schrittmotor mit Soundkarte (Mikro) ansteuern - TenaciousB - 05.12.2010 16:08

^_^
Ohh Mann, mir ist schon aufgefallen, dass die Symbole gleich sind, aber ich da ich sie nicht direkt aus der Funktion „Express“ genommen hab, dachte ich das passt nun so.
Na ja aller Anfang ist schwer.
Habs nun geschafft mit Hilfe einer Beispieldatei von LV, über Mikro aufzunehmenAnsage und die Amplitude in einem Grafen darzustellen. Hatte da schon so meine Probleme mit der Konfiguration. Glaub die Device ID war falsch, da ich zuerst gar kein Signal angezeigt bekam.
Nun steck ich aber fest und bräuchte dringend Hilfe. Also ich möchte immer noch durch Amplitudenvergrößerung (Reiz) etwas schalten können. Wie in oberen Beispielen, vorerst mal ein LED und später vielleicht einen Schrittmotor. Das LED sollte also aufleuchten sobald die Amplitude, den im Regler eingestellten Wert übersteigt.
Nun hab ich aber folgende Fehlermeldung: Siehe Bild unten.
Ich kann damit leider nicht viel anfangen.Sad Wisst ihr da weiter? Oder könnt ihr mir eventuell schreiben wenn ihr mein Problem überhaupt ganz anders lösen würdet?
Würd mich freuen!
Was ich aber komisch finde:
Dass sich LV aufhängt, sobald man mit Express-Funktionen arbeitet.Dry Ist dies ein generelles Problem, oder verhält sich das nur bei mir so?

Grüße
und danke für eure Geduld… vor allem an Markus!Wink2

Lv85_img


Schrittmotor mit Soundkarte (Mikro) ansteuern - snuz - 06.12.2010 07:59

Hallo TenaciousB,

die Fehlermeldung sagt, dass Du versuchst einen Array Datentyp durch ein einfaches Binär-Ausgabe- Element ausgeben zulassen - und das geht nicht. Du vergleichst ein Array (also mehrere Werte mit einem Wert), das bedeutet, dass Du auch mehrere Werte bekommst. Dein Anzeigeelement muss also für ein Array Typ Binär ausgestattet sein (s.B.). Um dein Vorhaben durch zusetzen musst Du dann nur noch überprüfen ob das Ausgabe Element eine 1 beinhaltet (eine 1 steht dann im Array, wenn deine Bedingung "es wurde geklatscht" erfüllt ist).

Gruß snuz

P.S. Alternative kann man das Array auch durch eine FOR-Schleife "auflösen" und die Werte einzeln vergleichen (s.B.).


Schrittmotor mit Soundkarte (Mikro) ansteuern - TenaciousB - 09.12.2010 00:26

Hallo Snuz,
sorry, dass ich erst jetzt antworte, aber ich bin vom Experimentieren nicht mehr weg gekommen.
Tausend Dank für deine Antwort… Smile
Hab ne ganze Weile nach dem Symbol: „grün umrandetes Array“ gesucht… bis ich verstanden hab, dass es ein zusammengefügtes Symbol, also Array mit LED ist. Dann hat‘s gleich geklappt.
Das Auflösen mit FOR-Schleife war gar kein Problem. Super!

Nun möchte ich aber das Programmchen noch ein wenig erweitern.
Es wäre toll, wenn der Motor nur durch eine bestimmte Frequenz ein und auszuschalten ginge.
Also die Steuerung nur auf einen Signalton von z.B. 200Hz reagiert.

Um dies zu bewerkstelligen, möchte ich Filter einsetzen, jedoch bekomme ich dies ohne Express-Funktionen nicht hin. Denke ich gehe mit dem Ausgang nach dem Filter nicht richtig um. Kann das „gefilterte X“ überhaupt in einem Grafen dargestellt werden, oder muss dazu vielleicht etwas dazwischen geschaltet werden?

Filter habe wie folgt eingestellt:
Bandbassfilter 2ter Ordnung
Charakteristik: Chebyshev
Grenzfrequenzen: fl=197Hz; fh=203Hz

Beim Programm mit den Express-VIs funktionierst... jedoch denke ich, wär‘s besser wenn ich‘s durch programmieren (nicht konfigurieren) hinkriegen würde. Vor allem nach den Eintrag von Markus.
Unten das Programm mit Express und ohne Express-VIs.

Danke vielmals.

Sobald ich das hab, möchte ich das Motorprogramm einbinden. Wär toll wenn man einen Motor simulieren könnte, da ich noch keinen zum Testen habe… Aber eins nach dem Anderen…

Lv85_img