Seite 1 von 1

Zeitmessung mit LabJack U12

Verfasst: Montag 17. Oktober 2011, 14:28
von km-schule
Hallo zusammen,

ich bin absoluter Anfänger und habe folgendes Problem:
Ich versuche, mit dem LabJack U12 (von Meilhaus) eine Zeitmessung zu machen für einen Zylinder, der eine schiefe Ebene herunterrollt.
Dazu habe ich zwei Lichtschranken und einen Taster.
Der Taster wird ausgelöst, wenn der Zylinder losrollt, und es werden Uhren gestartet (siehe Datei im Anhang).
Die Lichtschranken-Signale sollen dann die Uhren stoppen.
Das Problem ist nun, dass bei wiederholten Versuchen die zweite Uhr manchmal gestoppt wird, manchmal nicht.
Das muss irgendwie mit der Verarbeitung ("Auslesegeschwindigkeit") innerhalb von ProfiLab Expert zu tun haben.
Denn die Lichtschranke selbst reagiert immer (geprüft durch Diode) und LabJack selbst ist schnell genug, es wird mit 8000 Hz ausgelesen.
Seltsam ist, dass es manchmal geht (Mehrfach-Versuch unter gleichen Bedingungen).
Der Modus in ProfilLab ist oben rechts auf "Fast" gestellt.
Gibt es sonst noch Einstellmöglichkeiten?
Kann es damit zusammenhängen, dass immer alle Kanäle abgefragt werden, obwohl nur wenige verwendet werden?

Wäre toll, wenn mir jemand einen Tipp geben könnte.

Gruß
Kai

Re: Eingangssignal nicht immer erkannt

Verfasst: Montag 17. Oktober 2011, 16:38
von irrerpolterer
Hallo und willkommen!

Ich habe auch einen U12, doch die Geschwindigkeit ist nicht immer bei allen Kanälen die gleiche.

Ich überwache Druckschalter mit den Digitaleingängen, von 8 solchen wird oft einer übersehen. Deshalb muß ich den Vorgang oft genug wiederholen. Schuld ist villeicht der USB-Port und Windows.

Windows kannst Du etwas beschleunigen, wenn Du in den Services (Systemdiensten) alle ungenutzten Dienste vor PLE-Programmstart ausschaltest (Netzwerk, secondary logon, ..). Probier es aus, es kommen weniger Aussetzer dann durchs Windows.

In PLE kannst Du versuchen alle Funktionsblöcke Deines Programms zu überprüfen, ob einer das Programm bremst (Simulationsfrequenz mit und ohne) und ob Du es durch ein anderes tauschen kannst. ZB. Formel universell gegen mehrere Blöcke + und *.

Grüße

Re: Eingangssignal nicht immer erkannt

Verfasst: Montag 17. Oktober 2011, 19:53
von KAKTUS
@km-schule

Eine kleine Skizze oder Foto wäre interessant.

Mir ist nicht bekannt wie schnell der der Zylinder vorbei rutscht. Aber nachdem es immer die zweite Lichtschranke ist, die manchmal nicht funktioniert ( ist auch die wo der Zylinder schneller dran vorbei rutscht!!!?), wird der Grund wohl sein, das der Impuls der zweiten Lichtschranke zu kurz ist für den Labjack.

Ich würde mal versuchen parallel zum U12 Eingang von der zweiten Lichtschranke einen Kondensator schalten. 1-100 µF , einfach ausprobieren, der wird den Kurzen Impuls etwas in die Länge ziehen.

Re: Eingangssignal nicht immer erkannt

Verfasst: Dienstag 18. Oktober 2011, 11:50
von tmm
Hallo,

ich würde mal die Eingänge der Lichtschranken auf der Hardwareseite vertauschen, dann siehst du ob der Fehler mitwandert. Weiterhin könntest du den Signalpegel der von der LS kommt nachmessen (ich denke der erzeugt das Problem - entweder ist der nicht hoch oder niedrig genug; das kannst du mit einem Pull Up oder Pull Down Widerstand aber einstellen).

Wenns dann geht, sag uns mal bescheid, was die Ursache war.

Gruß MM

Re: Eingangssignal nicht immer erkannt

Verfasst: Mittwoch 19. Oktober 2011, 16:18
von km-schule
Hallo zusammen!

Freut mich, dass Ihr geanwortet habt.
irrerpolterer hat geschrieben: In PLE kannst Du versuchen alle Funktionsblöcke Deines Programms zu überprüfen, ob einer das Programm bremst (Simulationsfrequenz mit und ohne) und ob Du es durch ein anderes tauschen kannst. ZB. Formel universell gegen mehrere Blöcke + und *.
Geht vermutlich bei meinem Programm nicht, wenn ich das richtig sehe, da ich ja nur Stoppuhren verwende.
Wie meinst Du das mit dem Überprüfen? Die Simulationsfrequenz auf "Slow" stellen?

@ KAKTUS
Ich hänge zwei Fotos an. Die von mir als "erste" Lichtschranke bezeichnete ist die ganz rechts im zweiten Foto, die dritte von rechts habe ich als "zweite LS" verwendet.
Wenn der Zylinder dort ankommt dürfte seine Geschwindigkeit maximal 1 m/s sein.
Die Verdunkelungszeit müsste eigentlich dicke reichen, wenn mit 8000 Hz abgetastet wird.
Die Idee mit dem Kondensator werde ich mal ausprobieren.

@ tmm
Habe ich nicht verstanden. Dann sollte es eigentlich generell nicht gehen, aber manchmal bekommt er das Signal ja mit.

Viele Grüße
Kai

Re: Eingangssignal nicht immer erkannt

Verfasst: Mittwoch 19. Oktober 2011, 17:54
von KAKTUS
@km-schule

Toller Aufbau ! Danke für die Bilder !

Re: Eingangssignal nicht immer erkannt

Verfasst: Donnerstag 20. Oktober 2011, 06:00
von tmm
Hallo,

was hast du nicht verstanden (ich denke das mit dem Signalpegel).

Beispiel:
Wenn der Spannungswert am Eingang zwischen 0 und 2,5 Volt liegt, dann wird das Signal als LOW erkannt; bei einem Signal von 2,5 (oder 2,6) und 5 Volt wird es als HIGH erkannt. Wenn deine Lichtschranke den Signalpegel von 0 Volt nur auf 2,55 Volt hoch bringt, dann würde deine Schaltung funktionieren, Weil aber alle Signale immer mehr oder weniger stark verrauscht sind wird auch manchmal nur ein Pegel von 2,50 Volt dabei sein - dann wird das LS-Signal nicht "richtig" erkannt. Mit einem Widerstand am Eingang deiner Karte kannst du jetzt den Signalpegel in eine Richtung ziehen (so, dass die Schwelle LOW / HIGH sicher überschritten wird).

Wenn deine Karte analoge Eingänge hat, dann benutze doch diese, da kannst du Signalpegel sehen und mit einem Trigger Baustein (Bauteilliste - Analoges - Vergleicher) die Schaltschwelle selbst festlegen.

Hast du die Lichtschranken und die Eingänge mal vertauscht ??


Gruß MM

PS: wenn noch was unklar ist - einfach nochmal nachfragen :-))

Re: Eingangssignal nicht immer erkannt

Verfasst: Donnerstag 20. Oktober 2011, 10:16
von Mike D
Moin,
laut Hardwareliste wird der LabJack U12 unter PL nicht mit 8000 Hz sondern nur mit 8 Hz ausgelesen.

Mike

Re: Eingangssignal nicht immer erkannt

Verfasst: Donnerstag 20. Oktober 2011, 15:30
von KAKTUS
Was dafür spricht, dass der Impuls der Lichtschranke viel zu kurz ist.

Re: Eingangssignal nicht immer erkannt

Verfasst: Freitag 21. Oktober 2011, 07:45
von tmm
Hallo zusammen :-)

bei einer Geschwindigkeit von 1 m/s und einem Durchmesser (geschätzt) von 5 cm der Walze ergibt sich eine Dunkelphase der LS von 1/20 Sekunde (= 20 Hz).
Bei einer Abtastrate von 8 Hz könnten schon Dunkelphasen nicht erkannt werden (wobei man ja nicht weiß, ob die Karte in einer Tastphase die erkannten Signale integriert und diese Werte alle 125 ms abgeholt (oder zu PL weitergeschickt werden)).

Du kannst das LS-Signal (irgendwie) verlängern, das wird dann aber alles ungenau und du wirst damit reproduzierbare Zeiten kaum messen können.

Entweder nimmst du eine Kart mit besserer (höherer) Abtastrate, oder du lässt deine Rolle langsamer (so dass der Fehler durch die Abtastrate deutlich geringer ist) an der LS vorbei rollen.

Gruß MM

Re: Eingangssignal nicht immer erkannt

Verfasst: Freitag 21. Oktober 2011, 10:08
von HCS
Hallo zusammen,
als erstes sollte mal geklärt werden, wie genau diese Messung sein sollte?

Grundsätzlich wirst du das Problem mit der Lichtschranke schon in den Griff bekomme, aber ich fürchte, daß dies nie genau wird, weil ja Windows dir die Daten auch nicht in Echtzeit übermittelt.
Normalerweise nimmt man für sowas einen externen Prozessor (zB einen Atmel, C-Control ginge auch).
Dieser nimmt die Eingangssignale deiner Lichtschranken auf und übermittelt dann die genau gestoppte Zeit an dein PL-Programm über eine Schnittstelle (RS232 oä). Ist Grundsätzlich sehr einfach.

Grüße
Bernd

Re: Eingangssignal nicht immer erkannt

Verfasst: Freitag 21. Oktober 2011, 19:11
von TSD
Zum Messen von z.B. Geschwindigkeiten sind allgemein solche Karten nicht zu empfehlen.
Zum einen die Trägheit (Abtastrate der Karte) - desweiteren der Zyklus (Programmdurchlauf) des Betriebssystems des Rechners - ebenso die Laufzeiten innerhalb der Schnittstellen Karte-> PC.
Um brauchbare Messungen bzw. Echtzeitmessungen (V-Messung) oder Zeitmessung durchzuführen, wirst Du nicht darum kommen, einen Controller zu verwenden.

Änliche Versuche bzgl. V-Messung mit E-Mobilen in Echtzeit hatte ich vor Jahren bereits durchgeführt und nur mit einem Controller vernünftig umsetzen können.

Messung mit Controller durchführen -> Daten zwischenspeichern -> auf PC in PLE geben.

Durchaus kann Deine Karte als Schnittstellenmedium zwischen Controller und PC arbeiten - somit muss man den Controller nicht direkt an den PC andocken.

Gruß,
tsd

Re: Eingangssignal nicht immer erkannt

Verfasst: Freitag 21. Oktober 2011, 20:57
von tom_g
Hi,

oder Du versuchst statt LabJack einen der HW-Inputs (LPT oder COM Signale) aus der PL Bibliothek anzuwenden, das braucht womöglich etwas zusätzliche Signalanpassung, aber Du kannst schneller einlesen als die 8Hz Abtastrate vom LabJack. Ich gehe mit den anderen Forumskollegen überein, dass die Abtastrate vs. die kurzen Lichtschrankenschaltsignale das Problem ist.

Gruss Thomas

Re: Eingangssignal nicht immer erkannt

Verfasst: Montag 24. Oktober 2011, 08:23
von abacom
Das "Pollen" von Eingängen mit (USB-)IO-Karten per Software ist einfach viel zu ungenau
für eine brauchbare Zeitmessung und in diesem Fall sind die Pulse auch noch zu kurz,
um überhaupt sicher erfasst zu werden.

Für eine vernüftige Zeitmessung, sollte man besser geeignete Karten verwenden.
Man möge uns die Eigenwerbung verzeihen, aber genau für Fälle wie diesen haben wir die
µPIO/FREQ entwickelt...
http://www.electronic-software-shop.com ... -freq.html
Hier erledigt der Controller auf dem Bord die zeitkritischen Dinge und liefert das Ergebnis zum
Rechner.