Table des matières:

Taux d'échantillonnage/Aliasing Instructable : 8 étapes (avec photos)
Taux d'échantillonnage/Aliasing Instructable : 8 étapes (avec photos)

Vidéo: Taux d'échantillonnage/Aliasing Instructable : 8 étapes (avec photos)

Vidéo: Taux d'échantillonnage/Aliasing Instructable : 8 étapes (avec photos)
Vidéo: Canon C500 mark II vs Sony FX9, test comparatif - Causerie du Repaire 2024, Décembre
Anonim
Taux d'échantillonnage/Aliasing Instructable
Taux d'échantillonnage/Aliasing Instructable

Je souhaite créer un projet éducatif qui démontre l'aliasing (et les taux d'échantillonnage) et qui est destiné à être placé sur un site Web en tant que ressource pour les étudiants qui apprennent l'aliasing.

Étape 1: Disposition du circuit

Disposition des circuits
Disposition des circuits
Disposition des circuits
Disposition des circuits

Arduino

L'Arduino est la base du circuit; supportant le servomoteur (avec roue codeuse montée) et le capteur à effet Hall positionné.

-Roue d'encodeur: le but de la roue d'encodeur est de suspendre un aimant qui tourne dans une trajectoire circulaire, planant au-dessus d'un capteur à effet Hall positionné.

-Configuration du capteur: le capteur à effet Hall est placé sous la trajectoire de rotation de l'aimant, son but est de suivre le passage de l'aimant avec différentes vitesses de rotation et taux de collecte de données.

---------------------------------------------------------------------------------------------------------

Sous-étapes:

  1. Obtenir des matériaux:

    Arduino (+ planche à pain), fils, roue codeuse, aimant, capteur à effet Hall, servomoteur, application Matlab, application Arduino

  2. Découpez la roue codeuse, montez sur le servo, poussez l'aimant dans la fente.
  3. Fixez le capteur à effet Hall sous le chemin de l'aimant (des rallonges de fil du capteur peuvent être nécessaires).
  4. Construire un circuit.

Étape 2: Code Arduino

Code Arduino
Code Arduino

Méthode de collecte de données

Le code Arduino utilise [Ligne 41] pour collecter des informations, via le port 'Analog In' A0, à partir du capteur à effet Hall

Méthode de transmission de données en série

  • [Ligne 43] Affiche dans le moniteur série une variable 'timer' qui implémente la fonction 'millis()' pour maintenir un timer en millisecondes pendant toute la durée du programme.
  • [Ligne 45] Affiche dans le moniteur série une variable 'hallsensor' qui implémente 'analogRead' pour obtenir des informations du capteur à effet Hall pendant l'exécution du programme.

Objectif du paramètre delay()

L'objectif du paramètre delay() est de faire varier le temps de réponse de la collecte de données reçue du capteur à effet Hall

---------------------------------------------------------------------------------------------------------

Sous-étapes:

Saisissez le code Arduino dans l'application Arduino

Étape 3: Code Matlab (Fichier HallRT)

Code Matlab (fichier HallRT)
Code Matlab (fichier HallRT)
Code Matlab (fichier HallRT)
Code Matlab (fichier HallRT)
Code Matlab (fichier HallRT)
Code Matlab (fichier HallRT)
Code Matlab (fichier HallRT)
Code Matlab (fichier HallRT)

-Méthode de réception des données - [Figure 3: Ligne 77]

Obtention des données de l'ArduinoStep

---------------------------------------------------------------------------------------------------------

Sous-étapes:

Le code Matlab d'entrée est au-dessus des chiffres, enregistrez-le dans le fichier HallRT

Étape 4: Code Matlab (thresh_analyze)

Code Matlab (thresh_analyze)
Code Matlab (thresh_analyze)
Code Matlab (thresh_analyze)
Code Matlab (thresh_analyze)

Méthode de comptage des pics [Figure 2: Lignes 45-53]

  • L'utilisation de l'indicateur dans ce code Matlab est telle qu'une fois que la boucle for tombe sur un « aRval » qui est plus grand que le nombre de valeurs « seuil » prédéfini augmentera d'un, le pic sera marqué par un astérisque, et l'instruction if [ligne 45-50] s'arrêtera parce que flag = 1. La deuxième instruction if avec un indicateur [ligne 51-53] indique qu'une fois que le pic est atteint et que les valeurs commencent à décliner autour du pic, alors flag = 0 et la boucle for continue de rechercher d'autres pics.
  • Paramètres/Valeurs nécessaires:

    • « aRval »: les données collectées lors d'un essai.
    • 'thresh': une valeur choisie pour indiquer tout ce qui se trouve au-dessus dans aRval en tant que pic.

---------------------------------------------------------------------------------------------------------

Sous-étapes:

Créez un deuxième fichier Matlab "thresh_analyze"

Étape 5: Essai 1: Pas d'alias

Essai 1: Pas d'alias
Essai 1: Pas d'alias
Essai 1: Pas d'alias
Essai 1: Pas d'alias

Figure 1: Data Trial @ Delay 200Figure 2: Thresh Analyse des données

-Paramètre de délai: 200

Pics:

Compte = 45

-Nombre de tours par minute:

45 tours/minute

---------------------------------------------------------------------------------------------------------

Sous-étapes:

  1. Connectez l'Arduino à votre ordinateur portable.

    Réglez le délai dans le code Arduino sur "200". Appuyez sur Télécharger (dans le coin supérieur gauche de l'application)

  2. Accédez à votre fichier Matlab HallRT [Ligne 37] et modifiez la variable 'delayTime' à 200.
  3. Exécutez le programme HallRT.
  4. Enregistrez le fichier Matlab sous "delay_200". (Enregistrer la figure)
  5. Chargez le fichier delay_200.mat.
  6. Exécutez le programme thresh_analyze. (Enregistrer la figure)

Étape 6: Essai 2: Aliasing du capteur (i)

Essai 2: Aliasing du capteur (i)
Essai 2: Aliasing du capteur (i)
Essai 2: Aliasing du capteur (i)
Essai 2: Aliasing du capteur (i)

Figure 1: Essai de données @ Délai 50

Figure 2: Données analysées par seuil

Paramètre de délai: 50 crêtes:

Compte = 52

Nombre de tours par minute:

52 tours/minute

---------------------------------------------------------------------------------------------------------

Sous-étapes:

  1. Connectez l'Arduino à votre ordinateur portable.

    Réglez le délai dans le code Arduino sur "50". Appuyez sur Télécharger (dans le coin supérieur gauche de l'application)

  2. Accédez à votre fichier Matlab HallRT [Ligne 37] et modifiez la variable 'delayTime' à 50.
  3. Exécutez le programme HallRT.
  4. Enregistrez le fichier Matlab sous "delay_50". (Enregistrer la figure)
  5. Chargez le fichier delay_50.mat.
  6. Exécutez le programme thresh_analyze. (Enregistrer la figure)

Étape 7: Essai 3: Aliasing du capteur (ii)

Essai 3: Aliasing du capteur (ii)
Essai 3: Aliasing du capteur (ii)
Essai 3: Aliasing du capteur (ii)
Essai 3: Aliasing du capteur (ii)

Figure 1: Data Trial @ Delay 100Figure 2: Thresh Analyse des données

Paramètre de délai: 100 crêtes:

Compte = 54

Nombre de tours par minute:

54 tours/minute

------------------------------------------------ -------------------------------------------------- -------Sous-étapes:

  1. Connectez l'Arduino à votre ordinateur portable.

    Réglez le délai dans le code Arduino sur "100". Appuyez sur Télécharger (dans le coin supérieur gauche de l'application).'

  2. Accédez à votre fichier Matlab HallRT [Ligne 37] et modifiez la variable 'delayTime' à 100.
  3. Exécutez le programme HallRT.
  4. Enregistrez le fichier Matlab sous "delay_100". (Enregistrer la figure)
  5. Chargez le fichier delay_100.mat.
  6. Exécutez le programme thresh_analyze. (Enregistrer la figure)

Étape 8: Essai 4: Aliasing du capteur (iii)

Essai 4: Aliasing du capteur (iii)
Essai 4: Aliasing du capteur (iii)
Essai 4: Aliasing du capteur (iii)
Essai 4: Aliasing du capteur (iii)

Figure 1: Essai de données @ Delay 300Figure 2: Données analysées par seuil

-Paramètre de délai: 300

Pics:

Compte = 32

Nombre de tours par minute:

32 tours/minute

-------------------------------------------------- -------------------------------------------------- -------Sous-étapes:

  1. Connectez l'Arduino à votre ordinateur portable.

    Réglez le délai dans le code Arduino sur "300". Appuyez sur Télécharger (dans le coin supérieur gauche de l'application)

  2. Accédez à votre fichier Matlab HallRT [Ligne 37] et modifiez la variable 'delayTime' à 300.
  3. Exécutez le programme HallRT.
  4. Enregistrez le fichier Matlab sous "delay_300". (Enregistrer la figure)
  5. Chargez le fichier delay_300.mat.
  6. Exécutez le programme thresh_analyze. (Enregistrer la figure)

Conseillé: