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!
' schrieb:Zunächst mal: Solche Fragen gehören ins Forum, nicht in eine PM - andere sind mit Sicherheit auch daran interessiert...
Also ich kenne zwar nicht alle Karten von NI, aber die DAQ-Karten, mit denen ich bisher zu tun hatte, hatten alle mindestens zwei Counter. Das soll aber nicht ausschließen, dass es auch welche mit nur einem Counter gibt. Jedenfalls meine ich genau diesen Counter. Wenn du keinen mehr frei hast, kannst du ihn nicht verwenden, dein Programm dürfte dann erheblich komplizierter werden.
Ansatz mit analogen Inputs: Füge beide Kanäle zu EINEM Task zusammen und messe sie somit zur gleichen Zeit. Das ganze lässt du kontinuierlich in eienr Schleife ablaufen. Das entstehende Array kannst du dann auswerten... Aber wie bereits gesagt: Das wird dann erheblich mehr Programmieraufwand und mit Sicherheit nicht mehr Echtzeitähnlich, sondern verzögert.
' schrieb:OFF-Topic: Einige von den Low-Cost-USB-"Karten" verfügen über nur einen Counter!
@Big Z: Das kommt davon, weil du nicht alle Informationen bereitgestellt hast (vor allem Messhardware, in diesem Fall DAQ-Karte / Punkt 6 der Forenregeln).
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 um es für alle klar zu machen.
Ich verwende ein USB-6009 Modul mit analogen und digitalen Ein bzw. Ausgängen.
Ich denke diejenigen die anscheinend nur Fehler bei anderen suchen, sollten mal versuchen Lösungswege vorzuschlagen und sich nicht immer über andere Forenmitglieder beschweren.
' schrieb:Ich verwende ein USB-6009 Modul mit analogen und digitalen Ein bzw. Ausgängen.
Evtl. kannst du die Signale analog erfassen und dann den Kurvenverlauf (inkl. Zeitstempel) untersuchen...da hast du zumindest eine Zeitinformation, wenn auch ein bisschen verzerrt durch die Verzögerung beim Abtasten der Kanäle.
Ich glaube nicht, dass du über die Erfassung der DI eine zuverlässige Richtungserkennung hinkriegst, weil du in einem LV-Programm nur minimal 1ms-Differenzen unterscheiden kannst...und dass auch nur, wenn der Prozessor nichts anderes nebenher macht...also nie! Wenn deine Rechtecksignale nicht grade mit nem "sehr großen"/"sichtbaren" Abstand zueinander auftauchen, wird das m. E. nix!
Ansonsten musst du halt ein bisschen mehr Geld ausgeben und ne Karte mit mehr als einem Counter kaufen...
Noch was:
Du musst Jens G entschuldigen...er ist in letzter Zeit ein bisschen gereizt ("Gereizt? ICH BIN NICHT GEREIZT!"), weil ständig solche unvollständigen Posts wie deiner hier auftauchen...du musst auch verstehen: Wie soll man vernünftig helfen können, wenn man erst nach und nach die Infos aus der Nase ziehen muss?
"Is there some mightier sage, of whom we have yet to learn?"
"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
' schrieb:Du musst Jens G entschuldigen...er ist in letzter Zeit ein bisschen gereizt ("Gereizt? ICH BIN NICHT GEREIZT!"), weil ständig solche unvollständigen Posts wie deiner hier auftauchen...du musst auch verstehen: Wie soll man vernünftig helfen können, wenn man erst nach und nach die Infos aus der Nase ziehen muss?
@Achim: Danke für deine aufmunternden Worte.
@Big Z: Ja, ich neige momentan etwas dazu, dazwischenzuhauen und vermehrt auf die Forenregeln hinzuweisen. Dafür bin ich hier auch Moderator.
Du musst folgendes verstehen: Wir helfen wir alle nach bestem Wissen gerne weiter, ABER, wir machen das freiwillig, kostenlos und nebenbei. Dazu ist es natürlich wichtig, bei einem größerem Problem soviele Detail-Informationen zu haben wie nur möglich, und dazu gehört vor allem auch die DAQ-Karte. Hier waren jetzt einige Antworten völlig umsonst, da sie mit deiner Karte NICHT gehen. Und wenn jetzt ein weiteres Mitglied erst (ich übertreib mal) 20 Beiträge durchlesen muss, um sich alle Details deiner Frage zusammenzuklauben, dann sinkt die Wahrscheinlichkeit enorm, weitere Antwort zu erhalten.
Nimm meine Ermahnungen also nicht also nicht allzu persönlich sondern als Hinweis an alle Mitglieder, wie wir uns gute Fragestellungen wünschen.
MfG, 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!
Jens, ich kann verstehen dass du dich ärgerst wenn du Forenbeiträge von so schlechter Verständlichkeit liest. Dennoch denke ich mir, dass es dir als Moderator in diesem Forum möglich sein sollte deinen Ärger in nettere Worte zu fassen.
Jedenfalls weiß ich nun was ich beim nächsten Mal beachten sollte um dich nicht zu verärgern.
Lg
13.11.2007, 16:37 (Dieser Beitrag wurde zuletzt bearbeitet: 13.11.2007 16:38 von jg.)
OK, zurück zum Ernst des Lebens (sprich deiner Anfrage).
Ich möchte nochmal kurz zusammenfassen:
1. Du hast eine USB-6009 zur Datenerfassung
2. Du hast zwei Ultraschallgeber, dir dir bei Personenannäherung ein TTL-High Signal ausgeben und wenn niemand in der Nähe ist, auf TTL-Low gehen.
3. Über die Reihenfolge, welcher Geber zuerst anspricht, möchtest du zählen, wieviele Personen (z.B.) von links nach rechts bzw. von rechts nach links gegangen sind.
Soweit korrekt?
Jetzt meine konkreten Rückfragen zum besseren Verständnis:
1. Wie darf ich mir den Versuchsaufbau etwas detaillierter vorstellen? Hast du so eine Art Schleuse, bei der nur eine Person durchgehen kann, mit den Sensoren am Anfang und Ende der Schleuse? Oder sind die Sensoren relativ nahe beieinander (wie weit in etwa?), so dass du ein kombiniertes Signal ähnlich dem Quadraturencoder eines Drehgebers erhältst? Was für Zeitintervalle sind interessant bzw. liegen zwischen den Signalen der Sensoren?
2. Zur Datenerfassung und Auswertung: Soll das Ganze online & live oder offline (sprich Auswertung später) erfolgen?
MfG, 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!
' schrieb:OK, zurück zum Ernst des Lebens (sprich deiner Anfrage).
Ich möchte nochmal kurz zusammenfassen:
1. Du hast eine USB-6009 zur Datenerfassung
2. Du hast zwei Ultraschallgeber, dir dir bei Personenannäherung ein TTL-High Signal ausgeben und wenn niemand in der Nähe ist, auf TTL-Low gehen.
3. Über die Reihenfolge, welcher Geber zuerst anspricht, möchtest du zählen, wieviele Personen (z.B.) von links nach rechts bzw. von rechts nach links gegangen sind.
Soweit korrekt?
Jetzt meine konkreten Rückfragen zum besseren Verständnis:
1. Wie darf ich mir den Versuchsaufbau etwas detaillierter vorstellen? Hast du so eine Art Schleuse, bei der nur eine Person durchgehen kann, mit den Sensoren am Anfang und Ende der Schleuse? Oder sind die Sensoren relativ nahe beieinander (wie weit in etwa?), so dass du ein kombiniertes Signal ähnlich dem Quadraturencoder eines Drehgebers erhältst? Was für Zeitintervalle sind interessant bzw. liegen zwischen den Signalen der Sensoren?
2. Zur Datenerfassung und Auswertung: Soll das Ganze online & live oder offline (sprich Auswertung später) erfolgen?
MfG, Jens
Hallo Jens G
Die Zusammenfassung die du verfasst hast stimmt genau.
Das Gerät könnte wenn alles Richtig funktioniert als Personenzähleinrichtung vor die Tür eines Gebäudes gestellt werden und man kann ablesen wieviele Personen im Gebäude sind.
Nun zum Versuchsaufbau.
Wie du bereits richtig erkannt hast handelt es sich dabei um eine Art Schleuse an der zwei Ultraschallsensoren im Abstand von 25 cm anbegracht sind. Bei grafischer Darstellung des Signals mit LabVIEW stellt sich heraus das das Signal teilweise nacheinander kommt, teilweise auch überlagert ist. Das liegt denke ich an der Geschwindigkeit mit der man durch die Schleuse geht.
Zur Datenerfassung ist zu sagen das sie online & live stattfinden soll.
Ich hoffe ich konnte diesmal richtig antworten.
MfG BigZ
13.11.2007, 20:36 (Dieser Beitrag wurde zuletzt bearbeitet: 13.11.2007 20:38 von jg.)
ja, jetzt sind die Infos gut zu verwerten. Interessante Aufgabe. Mit einer anderen Karte als der 6009 wahrscheinlich wesentlich einfacher zu lösen.
Aber, einen Vorschlag hätte ich doch:
1. Keine kontinuierliche Datenerfassung, sondern immer nur für kurze Zeit Daten aufnehmen, ausgelöst durch einen digitalen Trigger. Das Bsp.-VI aus dem NI-Examplefinder dazu wäre ..."ProgrammeNational InstrumentsLabVIEW 8.2examplesDAQmxAnalog InMeasure Voltage.llbAcq&Graph Voltage-Int Clk-Dig Start.vi".
2. Der digitale Trigger wird aus den beiden Sensoren per ODER-Gatter (also Hardware) erzeugt, d.h. sobald einer der beiden Sensoren auslöst, geht der Trigger-Eingang auf High und die Datenerfassung startet.
3. Wenn wir jetzt davon ausgehen, dass keine Person innerhalb der "Schleuse" umdreht und dort auch nicht ewig verweilt, musst du bei den erfassten Signalen eigentlich nur noch nachschauen, welcher Kanal zu Beginn auf HIGH ist, und schon kannst du den entsprechenden Zähler inkrementieren.
MfG, 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!
inzwischen hätte ich auch noch einen 2. Vorschlag:
Vom Versuchsaufbau her müsste es ja eigentlich ausreichen alle paar ms den Wert der Sensoren auszulesen (selbst bei v=20m/s ist da noch ein Zeitabstand von 12,5 ms).
Grobe Idee sieht dann so aus:
1. Sensoren diesmal an den DIO's anschließen, somit hast du als Ergebnis klar JA-NEIN Logik.
2. Datenerfassung mit Software-Takt (z.B. 2-5 ms) in Timed-Loop. In jedem Durchlauf werden beide DI's 1x ausgelesen und mit dem Wert beim vorherigen Durchlauf verglichen (geht hervorragend über die Shift-Register von LV).
3. Sobald ein Low-High-Übergang eintritt, muss eine entsprechende Zählaktion durchgeführt werden.
Ist alles natürlich etwas unausgegoren und muss noch im Detail ausgearbeitet werden, aber vom Prinzip sicherlich machbar.
MfG, 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!