2009-03-26 10 views
0

J'écris un programme qui détecte la vitesse d'un objet par des capteurs à effet Hall qui se jettent dans Matlab par un DAQ (USB-1408FS MCC)Déclencheurs DAQ dans Matlab

Le problème qui se pose est que je J'utilise une technique de balayage non-stop pour détecter l'état de l'un des trois capteurs. Malheureusement, cela signifie que si l'objet tourne, tous les capteurs au taux exact du programme court, je verrai une vitesse instantanée (fait en comparant le temps entre deux capteurs) de zéro.

J'ai besoin des capteurs pour signaler le programme de compter quand ils sont frappés, au lieu de balayer en permanence le signal. Comment cela peut-il être fait?

Répondre

0

Êtes-vous en cours d'exécution dans les 1408FS mode de balayage continu par opposition au mode rythme logiciel (1408FS user manual - page 3-1)? De toute façon, il semble que que votre taux d'échantillonnage est trop lent pour attraper le signal de votre capteur. Aussi utilisez-vous la boîte à outils DAQ de MATLAB? Un autre point qui me vient à l'esprit est que, d'après votre description, il semble que MATLAB enregistre la différence de temps entre les signaux de chacun de vos trois capteurs (qui se trouvent à des positions connues). Encore une fois, si votre taux d'échantillonnage est trop lent, il apparaîtra comme si votre objet a été déplacé instantanément à partir d'un capteur à l'autre. Peut-être, vous pourriez utiliser le déclencheur externe sur votre DAQ avec un de vos capteurs.

J'ai quelques difficultés à visualiser le type de signal que vous recevez de vos capteurs. Je l'image c'est une sorte de fonction d'étape. C'est le capteur est zéro et va lire l'impulsion pour un court laps de temps que l'objet transmet. Quelque chose comme

    capteur de données
  • 1 ... 0, .25, 0,5, .75, 1, 1, 1, .75, 0,5, .25, 0, 0, 0, 0 , 0 ...
  • capteur de données 2: ... 0, 0, 0, .25, .5, .75, 1, 1, 1, .75, .5, .25, 0, 0, 0 ...

que l'objet passe devant le capteur le signal augmente, puis diminue à zéro. Dans ce cas, les capteurs peuvent être trop rapprochés pour la vitesse de votre objet. Depuis le signal des deux capteurs se chevauchent.

juste mon 2c.