Перейти до вмісту

Мікроконтролери


Повідомлень в темі: 118

#1 Роланд

    Purple haze all around

  • Користувачі
  • PipPipPipPipPipPipPipPipPipPip
  • 1007 повідомлень
  • Стать:Чоловік
  • Місто:Житомир

Відправлено 01.05.2009 – 11:09

  • 118
Відписуйтесь сюди всі, хто мав справу із цими корисними компонентами.

Я зараз потихеньку "прохожу базовий практикум" по AVR'ам(в лапках - тому що вдома і віртуально в Проетусі=) - тут проблем ніяких, а от де вони є - це в процесі ознайомлення з алгоритмом частотоміра. Точніше збирання його із цеглинок, викопаних в мережі.

Що ж..
1. Найпопулярніший метод виконання цифрового частотоміра - метод "часових воріт" або більш загальний(і для МК) - метод "захоплення" чи "забору". Зараз важлива не суть цього методу, а наступний пункт)

2. Для реалізації цього методу на певний, поки що гіпотетичний, "вхід" необхідно подавати послідовність прямокутних імпульсів. А якщо необхідно виміряти частоту, наприклад, синусоїди? Отож поточна проблема - апаратними засобами МК перетворити синусоїду в послідовність прямокутних імпульсів з таким же періодом. І цей меандр має подаватися на таймер-лічильник №1 для підрахунку кількості імпульсів(невідомої частоти), а також на таймер-лічильник №2 для реалізації самого "захоплення" і підрахунку певного інтервалу часу. Що маємо для цього в типічному МК від Atmel(ATMega8) - аналоговий компаратор(вихід якого можна зразу з"єднати з входом "захоплення" лічильника №2, але з №1 нічого не вийде, як я розумію), а також АЦП(про нього нічого не знаю). Може є і ще щось, але моє розуміння дає тільки ці 2 блоки.

Отож, які будуть варіанти реалізації такого перетворення?

#2 FT232BM

    私は人々嫌い

  • Користувачі
  • PipPipPipPipPipPipPipPipPipPip
  • 3435 повідомлень
  • Стать:Чоловік
  • Місто:Київ->НТУУ "КПІ"

Відправлено 01.05.2009 – 13:53

Як зробити прямокутні імпульси з синусоїди? Тригер Шмідта тобі в руки)), з любого сигнала буде прямокутні імпульси робити. В такому випадку АЦП для вимірювання частоти не потрібний, головне імпульси привести до рівнів 0 та 1. Proteus, доречі, далеко не повноцінну симуляцію має, будь готовий що твій пристрій не запрацює)) На ньому тільки логіку роботи програми можна відслідкувати. Я свою РГР відлажував всю ніч. Це вдалось тільки за допомогою лабораторного стенду:
Зображення
(він тестує MCS51 та AVR)
Скажу тобі що програмування мало, треба ще схемотехніку знати)
Узагальню те що ти написав. Є два варіанти підрахунку частоти:
-Один таймер рахує імпульси, а інший проміжок часу. Це для високих частот
-Таймер рахує проміжок часу за який пройде імпульс. Для низьких частот
Що таке низькі а що таке високі частоти?
При 12 Мегагерцевому кварцевому резонаторі можна підраховувати частоти від 15 Гц до 1 МГц. за моїми підрахунками.
Отож пісня про АЦП та компаратор трішки інша.
  • 0

#3 Хтось_дивний

    Я пытался быть спpаведливым и добpым...

  • Користувачі
  • PipPipPipPipPipPipPipPipPipPip
  • 1037 повідомлень
  • Стать:Чоловік
  • Місто:Україна, Тернопіль

Відправлено 01.05.2009 – 14:42

 FT232BM (1.05.2009 14:53) писав:

Як зробити прямокутні імпульси з синусоїди? Тригер Шмідта тобі в руки)), з любого сигнала буде прямокутні імпульси робити. В такому випадку АЦП для вимірювання частоти не потрібний, головне імпульси привести до рівнів 0 та 1. Proteus, доречі, далеко не повноцінну симуляцію має, будь готовий що твій пристрій не запрацює)) На ньому тільки логіку роботи програми можна відслідкувати. Я свою РГР відлажував всю ніч. Це вдалось тільки за допомогою лабораторного стенду:
Зображення
(він тестує MCS51 та AVR)
Скажу тобі що програмування мало, треба ще схемотехніку знати)
Узагальню те що ти написав. Є два варіанти підрахунку частоти:
-Один таймер рахує імпульси, а інший проміжок часу. Це для високих частот
-Таймер рахує проміжок часу за який пройде імпульс. Для низьких частот
Що таке низькі а що таке високі частоти?
При 12 Мегагерцевому кварцевому резонаторі можна підраховувати частоти від 15 Гц до 1 МГц. за моїми підрахунками.
Отож пісня про АЦП та компаратор трішки інша.

Так стенд це добре, але для початківця його рекомендувати трохи задорого. колись наскільки я пам"ятаю він коштував від 1500 грн. А основи можна вчити і в протеусі))
  • 0

#4 FT232BM

    私は人々嫌い

  • Користувачі
  • PipPipPipPipPipPipPipPipPipPip
  • 3435 повідомлень
  • Стать:Чоловік
  • Місто:Київ->НТУУ "КПІ"

Відправлено 01.05.2009 – 15:14

Так дорогувато буде, саме тому я його потягнув з лабораторії на травневі свята)) Справа тут в іншому: треба приділяти велику увагу схемотехніці. Невеликі огріхи, що невидимі в Протеусі насправді роблять схему зовсім не придатною для існування. Треба враховувати такі поняття як "дрєбєзг контактов" чи час засвічення сегмента індикатора, щоб отримати достатню яскравість. Саме ці дрібнички роблять погоду.
  • 0

#5 Хтось_дивний

    Я пытался быть спpаведливым и добpым...

  • Користувачі
  • PipPipPipPipPipPipPipPipPipPip
  • 1037 повідомлень
  • Стать:Чоловік
  • Місто:Україна, Тернопіль

Відправлено 01.05.2009 – 16:33

 FT232BM (1.05.2009 15:14) писав:

Так дорогувато буде, саме тому я його потягнув з лабораторії на травневі свята)) Справа тут в іншому: треба приділяти велику увагу схемотехніці. Невеликі огріхи, що невидимі в Протеусі насправді роблять схему зовсім не придатною для існування. Треба враховувати такі поняття як "дрєбєзг контактов" чи час засвічення сегмента індикатора, щоб отримати достатню яскравість. Саме ці дрібнички роблять погоду.

Так, але я прошивку пишу в протеусі, а вже доводжу її до розуму в залізі.

Повідомлення відредагував †Fallen Angel†: 01.05.2009 – 16:39

  • 0

#6 Роланд

    Purple haze all around

  • Користувачі
  • PipPipPipPipPipPipPipPipPipPip
  • 1007 повідомлень
  • Стать:Чоловік
  • Місто:Житомир

Відправлено 01.05.2009 – 19:00

FT232BM
1. Дійсно, чомусь не подумав про спосіб підрахунку всього лиш часу, за який проходить імпульс(да, треба для низьких частот). Тоді значить можна обійтися одним таймером із capture unit...
2. Поясни, чому при резонаторі 12МГц не вийде міряти частоти нижче 15 Гц?
3. Про тригер Шмідта... Тоді яким чином привести віхдну напругу до відповідних рівнів? Це знову ж таки вимагатиме додаткових елементів. А те, що я думав - використовуючи внутрішній АЦП фіксувати однакові рівні напруг ну і брати їх через один..
  • 0

#7 FT232BM

    私は人々嫌い

  • Користувачі
  • PipPipPipPipPipPipPipPipPipPip
  • 3435 повідомлень
  • Стать:Чоловік
  • Місто:Київ->НТУУ "КПІ"

Відправлено 01.05.2009 – 19:11

Це мій баг (про 15 Гц), думаю якщо рахувати переповнення таймерів, то частота буде щось на зразок 1/(256*0,065536)=0,0596 Гц
Смішно використовувати АЦП для таких речей. Достатньо поставити резисторний дільник.
  • 0

#8 Роланд

    Purple haze all around

  • Користувачі
  • PipPipPipPipPipPipPipPipPipPip
  • 1007 повідомлень
  • Стать:Чоловік
  • Місто:Житомир

Відправлено 01.05.2009 – 19:23

 FT232BM (1.05.2009 19:11) писав:

Смішно використовувати АЦП для таких речей.
ну да, зате він іде нахаляву і плюс це ознайомлення з його роботою)

 FT232BM (1.05.2009 19:11) писав:

Достатньо поставити резисторний дільник.
шось я геть не доганяю.. вхідна напруга у нас-то невідома
  • 0

#9 FT232BM

    私は人々嫌い

  • Користувачі
  • PipPipPipPipPipPipPipPipPipPip
  • 3435 повідомлень
  • Стать:Чоловік
  • Місто:Київ->НТУУ "КПІ"

Відправлено 01.05.2009 – 19:28

Ну не знаю, таке практикується. Доречі всетаки має бути відомим діапазон напруг, навіть на АЦП має подаватись опорна напруга певної величини, що є максимальною амплітудою сигнала. А якщо резисторний дільник не влаштовує, то є різні стабілізатори напруги, стабілітрони які здатні нормалізувати напругу. А для слабких сигналів є операційні підсилювачі.
  • 0

#10 Роланд

    Purple haze all around

  • Користувачі
  • PipPipPipPipPipPipPipPipPipPip
  • 1007 повідомлень
  • Стать:Чоловік
  • Місто:Житомир

Відправлено 01.05.2009 – 19:41

FT232BM
так, для АЦП АТмеги8 опорна напруга +/- 0,3В від напруги живлення - отож максимально до ~5В. І це при 10 бітах глибини дискретизації..(не зважай, це я зараз розбираюсь)

отже, я продовжую шукати варіанти))
і власне з цим способом(на АЦП) я не дуже розібрався :rolleyes:

і ще одне нубське питання - нє питання відпало
  • 0

#11 FT232BM

    私は人々嫌い

  • Користувачі
  • PipPipPipPipPipPipPipPipPipPip
  • 3435 повідомлень
  • Стать:Чоловік
  • Місто:Київ->НТУУ "КПІ"

Відправлено 01.05.2009 – 22:11

Ось непоганий посібник по цифровій схемотехніці, по ньому нам лекції читали, але здається треба зареєструватись
  • 0

#12 Роланд

    Purple haze all around

  • Користувачі
  • PipPipPipPipPipPipPipPipPipPip
  • 1007 повідомлень
  • Стать:Чоловік
  • Місто:Житомир

Відправлено 02.05.2009 – 16:37

дякую, непогано там все розкладено по поличках..
але сумнівно, що я знайду там відповіді, максимум підказки)
  • 0

#13 Хтось_дивний

    Я пытался быть спpаведливым и добpым...

  • Користувачі
  • PipPipPipPipPipPipPipPipPipPip
  • 1037 повідомлень
  • Стать:Чоловік
  • Місто:Україна, Тернопіль

Відправлено 03.05.2009 – 12:44

 Роланд (2.05.2009 16:37) писав:

дякую, непогано там все розкладено по поличках..
але сумнівно, що я знайду там відповіді, максимум підказки)

А відповідей немає ніде) береш підказки і починаєш їх використовувати)
  • 0

#14 Роланд

    Purple haze all around

  • Користувачі
  • PipPipPipPipPipPipPipPipPipPip
  • 1007 повідомлень
  • Стать:Чоловік
  • Місто:Житомир

Відправлено 03.05.2009 – 19:38

†Fallen Angel†
з однієї сторони - так, а з іншої - якби кожен другий студент-інженер зараз ліпить цифровий частотомір, так що має бути куча ідей щодо блоку формування імпульсів)
  • 0

#15 Хтось_дивний

    Я пытался быть спpаведливым и добpым...

  • Користувачі
  • PipPipPipPipPipPipPipPipPipPip
  • 1037 повідомлень
  • Стать:Чоловік
  • Місто:Україна, Тернопіль

Відправлено 03.05.2009 – 20:34

 Роланд (3.05.2009 20:38) писав:

†Fallen Angel†
з однієї сторони - так, а з іншої - якби кожен другий студент-інженер зараз ліпить цифровий частотомір, так що має бути куча ідей щодо блоку формування імпульсів)

Тоді пошукай радіофоруми, можливо хтось і допоможе.
  • 0

#16 FT232BM

    私は人々嫌い

  • Користувачі
  • PipPipPipPipPipPipPipPipPipPip
  • 3435 повідомлень
  • Стать:Чоловік
  • Місто:Київ->НТУУ "КПІ"

Відправлено 03.05.2009 – 20:43

Ось одна схемка частотоміра. Собі хотів на курсач брати:
http://www.linuxfocus.org/English/Septembe...rticle253.shtml
  • 0

#17 Роланд

    Purple haze all around

  • Користувачі
  • PipPipPipPipPipPipPipPipPipPip
  • 1007 повідомлень
  • Стать:Чоловік
  • Місто:Житомир

Відправлено 03.05.2009 – 21:08

FT232BM
о, тепер я нарешті зрозумів принцип формування меандру з лише одним компаратором)) все ж елемнтарно.. дякую за схему

-----------
Тільки що розбирався з блоком формування імпульсів з тієї схеми(на IC5A) і от, що виявилось протягом симуляції... Правильно я розумію, що мінімальна вхідна напруга визначається не стільки типом компаратора(там різниця може бути хоч мілівольти), а параметрами петлі гістерезису(R2)?, яка, являючи собою петлю ОЗ, трохи зміщує рівень напруги на не інвертуючому вході компаратора.. і тим самим, "заважає" нормальній його роботі. хочеш меншу вхідну напругу - збільши опір R2. так?
І ще один момент.. capture unit в таймері МК(T1) має бути настроєний на від"ємний фронт вхідного імпульса, адже вхідна синусоїда подається на інвертуючий вхід. я маю рацію?

п.с. щодо останнього - фігню написав, чомусь мені ввижається, що фаза завжди буде 0 спочатку)) виходить - якось без різниці, як налаштовувати цю схему "захоплення"

п.п.с. і ще одне, яка роль вхідного RC-фільтра ВЧ(R8, R9, C10)?
  • 0

#18 FT232BM

    私は人々嫌い

  • Користувачі
  • PipPipPipPipPipPipPipPipPipPip
  • 3435 повідомлень
  • Стать:Чоловік
  • Місто:Київ->НТУУ "КПІ"

Відправлено 04.05.2009 – 20:28

Є книженція на ifolder поцій темі(ОЗ): http://natahaus.ifolder.ru/1602487
Готувався по ній до здачі лаб)). Щас по ходу діла буду додавати в допис інфу. Пока що її глянь.
Про петлю гістерезису R2 ти шось нереальне загнув. Максимальна вхідна напруга визначається параметрами операційника та його напругою живлення ну і звичайно типом ОЗ. В даному випадку використовується не інвертуючий послідований негативний ОЗ по напрузі. Такий зв'язок використовують для вирівнювання АЧХ підсилювача вона стає більш прямою. Будеш чіпати R2 ризикуєш змінити АЧХ а як наслідок рівні напруги на різних частотах. А хоча покрути його трішки може не сильно зіпсуєш. Про фронт імпульса, що буде зніматись: як на мене це фіолетово. передній же фронт теж нікуди від цього не зникне. Не думаю, що фаза те, про що варто хвилюватись. Про фільтра)) : це ж фільтр, назва сама за себе говорить. Часто в таких електричних колах можуть виникати високочастотні завади, хоч цифрова апаратура відносно завадостійка але все може бути... І взагалі коли дивишся на деякі схеми дивуєшся звідки стільки фільтруючих конденсаторів.
Прикріплений файл  OOS.jpg   67.62К   2 Кількість завантажень:
  • 0

#19 Роланд

    Purple haze all around

  • Користувачі
  • PipPipPipPipPipPipPipPipPipPip
  • 1007 повідомлень
  • Стать:Чоловік
  • Місто:Житомир

Відправлено 04.05.2009 – 20:58

FT232BM
По-перше, з приводу фази, я хвилювався через те, що якщо буде мірятись сигнал з великим періодом, таке положення речей буде викликати зайву затримку у вимірюванні.
Далі... Про петлю гістерезису - я мав на увазі мінімальну напругу. Так, щодо ОЗ я маю деякі знання(але за книжку все одно дякую - буде чим заповнювати пробіли:prapor3:, а щодо цього випадку - ось, що я мав на увазі - пункт #3. Це необхідно, щоб виключити ситуацію з хаотичним перемиканням 0-1 у випадку відсутності на входах корисних сигналів. Ну і фактично, щоб "пересилити") цю "петлю" напрузі на "сигнальному" вході компаратора треба бути більшою ніж на мінімальну різницю, на яку розрахований компаратор + величину, яку вводить ОЗ. Принаймні, експерименти у Протеусі підтвердили цю гіпотезу.

Тепер мене бентежить оцей RC-фільтр на вході - хочеться його викинути і поставити ФНЧ))

апдейт: да, високочастотні завади - саме воно, але я відкопав у себе книжку по ОТК і виявилося, що це ж ФВЧ)) емпірично(побудувавши графік коеф. затухання) це теж було підтверджено=)
  • 0

#20 FT232BM

    私は人々嫌い

  • Користувачі
  • PipPipPipPipPipPipPipPipPipPip
  • 3435 повідомлень
  • Стать:Чоловік
  • Місто:Київ->НТУУ "КПІ"

Відправлено 04.05.2009 – 21:12

Почитав. Матеріал безперечно цікавий)) Я просто з цієї сторони не підходив до застосування підсилювача)
П.С. Якщо дуже хочеться, то став смуговий фільтр))
  • 0



Кількість користувачів, що читають цю тему: 1

0 користувачів, 1 гостей, 0 анонімних