Съдържание:

Честота на дискретизация/псевдоним Инструктиране: 8 стъпки (със снимки)
Честота на дискретизация/псевдоним Инструктиране: 8 стъпки (със снимки)

Видео: Честота на дискретизация/псевдоним Инструктиране: 8 стъпки (със снимки)

Видео: Честота на дискретизация/псевдоним Инструктиране: 8 стъпки (със снимки)
Видео: Основы ЦОС: 10. Теорема Котельникова (ссылка на скачивание скрипта в описании) 2024, Декември
Anonim
Честота на дискретизация/псевдоним Инструктируем
Честота на дискретизация/псевдоним Инструктируем

Искам да създам образователен проект, който демонстрира псевдоними (и честотата на извадката) и е предназначен да бъде поставен на уебсайт като ресурс за студенти, които се обучават за псевдоними.

Стъпка 1: Оформление на плодове

Оформление на плодове
Оформление на плодове
Оформление на плодове
Оформление на плодове

Arduino

Arduino е основата на веригата; поддържащ серво мотора (с монтирано колело на енкодер) и позиционирания сензор за ефекта на Хол.

-Колело на енкодер: Целта на колелото на енкодера е да окачи магнит, който се върти по кръгова пътека, надвиснал над позициониран сензор за ефект на Хол.

-Настройка на сензора: Сензорът за ефекта на Хол е поставен под пътя на въртене на магнита, неговата цел е да проследява преминаването на магнита с различни скорости на въртене и скорости на събиране на данни.

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

Под-стъпки:

  1. Вземете материали:

    Arduino (+ дъска за хляб), проводници, енкодерно колело, магнит, сензор за холов ефект, серво мотор, приложение Matlab, приложение Arduino

  2. Изрежете колелото на енкодера, монтирайте на серво, натиснете магнита в слота.
  3. Прикрепете сензора за ефекта на Хол под пътя на магнита (може да се наложи удължаване на проводника на сензора).
  4. Изграждане на верига.

Стъпка 2: Arduino код

Кодът на Arduino
Кодът на Arduino

Метод за събиране на данни

Кодът на Arduino използва [ред 41] за събиране на информация чрез сензора за ефекта на Хола чрез порта „Analog In“A0

Начин на предаване на серийни данни

  • [Ред 43] Показва в серийния монитор променлива „таймер“, която изпълнява функцията „millis ()“, за да поддържа работещ таймер в милисекунди за продължителността на програмата.
  • [Ред 45] Показва в серийния монитор променлива „Hallsensor“, която реализира „analogRead“за получаване на информация от сензора за ефекта на Хол, докато програмата се изпълнява.

Предназначение на параметъра delay ()

Целта на параметъра delay () е да променя времето за реакция на събиране на данни, което се получава от сензора за ефекта на Хол

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

Под-стъпки:

Въведете Arduino код в приложението Arduino

Стъпка 3: Matlab код (HallRT файл)

Matlab код (HallRT файл)
Matlab код (HallRT файл)
Matlab код (HallRT файл)
Matlab код (HallRT файл)
Matlab код (HallRT файл)
Matlab код (HallRT файл)
Matlab код (HallRT файл)
Matlab код (HallRT файл)

-Метод за получаване на данни - [Фигура 3: Ред 77]

Получаване на данни от ArduinoStep

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

Под-стъпки:

Входният код на Matlab е над цифрите, запишете във файла HallRT

Стъпка 4: Matlab код (thresh_analyze)

Код на Matlab (thresh_analyze)
Код на Matlab (thresh_analyze)
Код на Matlab (thresh_analyze)
Код на Matlab (thresh_analyze)

Метод за преброяване на пиковете [Фигура 2: Редове 45-53]

  • Използването на флага в този код на Matlab е така, че след като цикълът for се натъкне на „aRval“, който е по-голям от предварително зададения брой „thresh“, броят на стойностите ще се увеличи с едно, пикът ще бъде маркиран със звездички и операторът if [ред 45-50] ще се счупи, защото флаг = 1. Вторият оператор if с флаг [ред 51-53] показва, че след като пикът е изпълнен и стойностите започват да намаляват около пика, тогава флагът = 0 и цикълът for продължава да търси още пикове.
  • Параметри/Необходими стойности:

    • 'aRval': Събраните данни от пробно стартиране.
    • „thresh“: Избрана стойност за обозначаване на нещо над него в aRval като пик.

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

Под-стъпки:

Създайте втори файл на Matlab „thresh_analyze“

Стъпка 5: Изпитване 1: Без псевдоним

Проба 1: Без псевдоним
Проба 1: Без псевдоним
Проба 1: Без псевдоним
Проба 1: Без псевдоним

Фигура 1: Изпитване на данни при забавяне 200 Фигура 2: Изпразване на анализирани данни

-Забавен параметър: 200

Върхове:

Брой = 45

-Брой обороти в минута:

45 оборота/минута

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

Под-стъпки:

  1. Свържете Arduino към вашия лаптоп.

    Задайте забавянето в кода на Arduino на "200". Натиснете Качване (в горния ляв ъгъл на приложението)

  2. Отидете във вашия Matlab файл HallRT [ред 37] и променете променливата 'delayTime' на 200.
  3. Стартирайте програмата HallRT.
  4. Запазете файла Matlab под „delay_200“. (Запазване на фигурата)
  5. Заредете файла delay_200.mat.
  6. Стартирайте програмата thresh_analyze. (Запазване на фигурата)

Стъпка 6: Опит 2: Псевдоним на сензора (i)

Проба 2: Псевдоним на сензора (i)
Проба 2: Псевдоним на сензора (i)
Проба 2: Псевдоним на сензора (i)
Проба 2: Псевдоним на сензора (i)

Фигура 1: Изпитване на данни @ забавяне 50

Фигура 2: Thresh Анализирани данни

Забавен параметър: 50-пикове:

Брой = 52

Брой обороти в минута:

52 оборота/минута

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

Под-стъпки:

  1. Свържете Arduino към вашия лаптоп.

    Задайте забавянето в кода на Arduino на "50". Натиснете Качване (в горния ляв ъгъл на приложението)

  2. Отидете във вашия Matlab файл HallRT [ред 37] и променете променливата 'delayTime' на 50.
  3. Стартирайте програмата HallRT.
  4. Запазете файла Matlab под „delay_50“. (Запазване на фигурата)
  5. Заредете файла delay_50.mat.
  6. Стартирайте програмата thresh_analyze. (Запазване на фигурата)

Стъпка 7: Опит 3: Псевдоним на сензора (ii)

Проба 3: Псевдоним на сензора (ii)
Проба 3: Псевдоним на сензора (ii)
Проба 3: Псевдоним на сензора (ii)
Проба 3: Псевдоним на сензора (ii)

Фигура 1: Изпитване на данни @ забавяне 100 Фигура 2: Изпразване на анализирани данни

Забавен параметър: 100-пикове:

Брой = 54

Брой обороти в минута:

54 оборота/минута

------------------------------------------------ -------------------------------------------------- ------- Под-стъпки:

  1. Свържете Arduino към вашия лаптоп.

    Задайте забавянето в кода на Arduino на "100". Натиснете Качване (в горния ляв ъгъл на приложението). '

  2. Отидете във вашия Matlab файл HallRT [ред 37] и променете променливата 'delayTime' на 100.
  3. Стартирайте програмата HallRT.
  4. Запазете файла Matlab под „delay_100“. (Запазване на фигурата)
  5. Заредете файла delay_100.mat.
  6. Стартирайте програмата thresh_analyze. (Запазване на фигурата)

Стъпка 8: Опит 4: Псевдоним на сензора (iii)

Проба 4: Псевдоним на сензора (iii)
Проба 4: Псевдоним на сензора (iii)
Проба 4: Псевдоним на сензора (iii)
Проба 4: Псевдоним на сензора (iii)

Фигура 1: Изпитване на данни при забавяне 300 Фигура 2: Изпразване на анализирани данни

-Параметър на забавяне: 300

Върхове:

Брой = 32

Брой обороти в минута:

32 оборота/минута

-------------------------------------------------- -------------------------------------------------- ------- Под-стъпки:

  1. Свържете Arduino към вашия лаптоп.

    Задайте забавянето в кода на Arduino на "300". Натиснете Качване (в горния ляв ъгъл на приложението)

  2. Отидете във вашия Matlab файл HallRT [ред 37] и променете променливата 'delayTime' на 300.
  3. Стартирайте програмата HallRT.
  4. Запазете файла Matlab под „delay_300“. (Запазване на фигурата)
  5. Заредете файла delay_300.mat.
  6. Стартирайте програмата thresh_analyze. (Запазване на фигурата)

Препоръчано: