Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
Jetzt weiss ich auch langsam nicht mehr weiter, was ich dir noch erzählen soll.
Gepostetet VI funktioniert aus meiner Erfahrung.
Wieso dein Servo regeln sollte, wenn er kein Steuersignal erhält, ist mir ein Rätsel, sollte eigentlich nicht sein. Wenn ich mich recht erinnere, sollte es kein Problem sein, dem Motor erst Spannung zu geben, und dann das VI zu starten.
Das mit Masse ist wichtig, das Counter-Signal braucht schließlich einen Massebezug!
Hast du niemanden zur Hand, der dir mal vor Ort unter die Arme greifen kann? z.B. auch mal mit einem Oszi -> PWM-Signal anschauen, nicht dass du bei Versuchen, dass mit der DAQ-Karte wieder einzulesen, auch Fehler machst? Oder bei deiner Verdrahtung?
Hallo Jens,
wie schon erwähnt, ein richtiges Oszi ist leider nicht vorhanden.
Zur Zeit ist an der Karte angeklemmt: Spannungssignal an AI0, PWM-Ausgang am PFI4
Auf das Auslesen des PWM-Signals via Analog-Eingang hab ich erstmal verzichtet, die Erfahrung mit der Massegeschichte vorhin hatte mir schon gereicht. Bin froh dass das Teil nicht Schrott ist. Normal sollte es doch aber so gehen das ich die Masse des Servo mit einem der Masseanschlüsse an der Karte kopple, oder? Laut manual sind die ja alle intern gekoppelt, von daher sollte es ja egal sein an welches. Berichtige mich bitte falls ich falsch liege.
Das Conrad-Ding werd ich mir mal zulegen, ist mir noch gar nicht aufgefallen. Hab auch nie richtig beim Zubehör geschaut.
Danke für deine Hilfe, ich hoffe mal das Problem löst sich irgendwie.
' schrieb:Hallo Jens,
wie schon erwähnt, ein richtiges Oszi ist leider nicht vorhanden.
Zur Zeit ist an der Karte angeklemmt: Spannungssignal an AI0, PWM-Ausgang am PFI4
Auf das Auslesen des PWM-Signals via Analog-Eingang hab ich erstmal verzichtet, die Erfahrung mit der Massegeschichte vorhin hatte mir schon gereicht. Bin froh dass das Teil nicht Schrott ist. Normal sollte es doch aber so gehen das ich die Masse des Servo mit einem der Masseanschlüsse an der Karte kopple, oder? Laut manual sind die ja alle intern gekoppelt, von daher sollte es ja egal sein an welches. Berichtige mich bitte falls ich falsch liege.
Aus dem Bauch raus ja. Alles was GND heißt, ist im Normalfall intern verbunden.
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
So, da bin ich wieder.
Es funktioniert zum Teil!!!
Allerdings halt nur zum Teil. Der Servo verändert nur die Stellung wenn man im Fenster den Dutycycle ändert und dann startet. Alle anderen Veränderungen (bei deiner Version der Drehregler, bei meiner die gemessene Spannung) lassen den Servo kalt.
Gehen tut es jetzt weil ich halt die Masse angeklemmt habe, zur Sicherheit (oder eher um mich selbst zu belügen) hab ich es an den Masse-Pin der analogen Seite angeklemmt. Warum das gestern so rumgesponnen hat beim Versuch? Keine Ahnung. Heute geht es zumindest.
Ich hab mir jetzt das Programm noch mal angeschaut. Das Einzige was ich vllt. glaube ist, das es bei der Case-Struktur hängt. Da ist ja davor der DAQmx Kanal, wo er bereit für ein neuen Wert ist. Die True-Schleife ist ja nur an wenn sich das Tastverhältnis ändert, oder?
Ich weiß, das sind alles blöde Fragen, ich will halt mal wissen ob das stimmt was ich mir so zurecht denke.
Wenn das so ist, muss ja da der Fehler irgendwo liegen, quasi an der Übergabe von der Case-Struktur an das davorliegende DAQmx. Oder lieg ich da vollkommen daneben?
Hallo,
jetzt habe ich (endlich mal) in meinem alten Projekt nachgeschaut, wie ich es wirklich mal gelöst habe. War bisher der festen Überzeugung, es langt, den DutyCycle neu zu schreiben. Mglw. ist dem nicht so, ich habe früher nämlich immer gleichzeitig auch die Frequenz neu gesetzt. Ändere mal das letzte VI auf folgenden Stand:
Genauso hat es bei mir funktioniert!
Das mit der Abfrage "Counter Ready" wird dann wichtig, wenn du mal eine Steuer-Schleife mit höheren Update-Raten hast. Es muss nämlich mindesten 1 DutyCycle mit aktuellen Werten erzeugt werden, bevor neue Werte gesetzt werden dürfen. Bei 50 Hz bedeutet das umgekehrt, dass du max. 50mal pro Sekunde einen neuen Werte setzen darfst. Momentan ist in der Schleife noch ein Wait mit 100ms drin, deshalb ist die Abfrage eigentlich überflüssig.
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
Juchhu, es geht! Ich danke dir!!!!
Jetzt kann ich mich mal an das Weitere machen. Ich denke mir, das wird sicherlich nicht ohne Fragen gehen. Aber hier fühle ich mich gut aufgehoben.
Danke an Jens und alle anderen die sich das mit angeschaut haben.
So, eine Frage hab ich doch noch bezüglich der PWM. Dank der Highlight-Funktion (die ich komischerweise bis jetzt nie beachtet hab) ist mir aufgefallen dass bei der Dutycycle-Berechnung ein paar Kommastellen abhanden kommen. Irgendwie kommen nur Werte mit zwei Stellen nach dem Komma an, was vllt. etwas ungenau sein könnte. Schliesslich bedeuten 0,01 beim Dutycycle einen Schritt von 0,2ms beim Highpegel. Angenommen 1,5ms entsprechen 180° Winkeländerung, dann sind die 0,2ms schon 24° zwischen den einzelnen Schritten. Bekommt man das irgendwie wenigstens ein bisschen genauer? Wo kommen denn die Nachkommastellen abhanden?
Unten nochmal mein derzeitiges VI, mit noch nicht funktionierender Spannungsmessung. Dazu aber mehr im nächsten Thread.
Hallo Jens,
du hast natürlich recht. Hab mir die Werte mal in ner Tabelle speichern/anzeigen lassen, sind mehr als nur zwei Nachkommastellen. Somit ist das Thema jetzt schonmal soweit erledigt, evtl. muss man halt nur an der Performance arbeiten.