Mundarija:
- 1 -qadam: Bu qanday ishlaydi (kontseptsiya):
- 2 -qadam: Bu qanday ishlaydi (kodda):
- 3 -qadam: Chastotani tahlil qilish uchun koddan foydalanish:
- 4 -qadam: Chiqish:
- 5 -qadam: Har xil oyna va namuna o'lchamlarini tekshirish:
- 6 -qadam: Misol:
Video: Arduino: Chastotani o'zgartirish (DFT): 6 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:23
Bu dastur arduino -dagi chastotali konvertatsiyani hisoblash orqali, parametrlarni nazorat qiladi.
bu FFT emas
FFT - bu DFTni qisqa vaqt ichida hal qilish uchun ishlatiladigan algoritm.
Bu erda FFT kodini topishingiz mumkin.
1 -qadam: Bu qanday ishlaydi (kontseptsiya):
Chastotani aylantirish uchun berilgan dastur sizga kerakli chiqimlarni boshqarishni ta'minlaydi. Bu dastur ma'lumotlar majmui uchun kirishda foydalanuvchi tomonidan berilgan chastota diapazonini baholaydi.
- Rasmda f2 va f5 nomli ikkita chastotadan iborat ma'lumotlar to'plami sinovdan o'tkazilishi kerak. f2 va f5 - ikkita chastotali tasodifiy nomlar, nisbatan yuqori chastotalar uchun yuqori raqamlar. bu erda kichik chastota f2 yuqori amplituda va f5 kichik amplitudaga ega.
- Matematik tarzda ko'rsatish mumkinki, har xil chastotali ikkita harmonik ma'lumotlar to'plamining ko'payishi nolga teng bo'ladi (ma'lumotlar sonining ko'payishi natijaga olib kelishi mumkin). Bizning holatimizda, agar bu ikkita ko'paytirish chastotasi bir xil (yoki juda yaqin) chastotaga ega bo'lsa, ko'paytma yig'indisi nolga teng bo'lmagan raqamdir, bu erda amplitudasi ma'lumotlar amplitudasiga bog'liq.
- ma'lum bir chastotani aniqlash uchun ma'lumotlar to'plamini turli xil sinov chastotalariga ko'paytirish mumkin va natijada ma'lumotlar shu chastotaning tarkibiy qismini berishi mumkin.
2 -qadam: Bu qanday ishlaydi (kodda):
berilgan ma'lumotlar uchun (f2+f5) f1 dan f6 gacha birma -bir ko'paytiriladi va yig'indining qiymati yoziladi. bu yakuniy summa shu chastotaning mazmunini ifodalaydi. dam olish (mos kelmaydigan) chastotasi ideal holda nolga teng bo'lishi kerak, lekin bu mumkin emas. yig'indini nol qilish uchun cheksiz hajmdagi ma'lumotlar to'plamiga ega bo'lish talab qilinadi.
- f1 -f6 -rasmda ko'rsatilgandek, sinov chastotasi va uning har bir nuqtada ma'lumotlar to'plami bilan ko'payishi ko'rsatilgan.
- Ikkinchi rasmda har bir chastotadagi o'sishning yig'indisi tuziladi. 1 va 5 da ikkita cho'qqini aniqlash mumkin.
tasodifiy ma'lumotlar uchun bir xil yondashuvdan foydalanib, biz juda ko'p chastotalarni baholay olamiz va ma'lumotlarning chastotali tarkibini tahlil qila olamiz.
3 -qadam: Chastotani tahlil qilish uchun koddan foydalanish:
Masalan, kvadrat to'lqinning DFTini topish uchun ushbu koddan foydalanishga ruxsat bering.
ko'rsatilgandek, pastadirdan keyin birinchi biriktirilgan kodni (dft funktsiyasi) joylashtiring
Aniqlash kerak bo'lgan 8 ta shart
- dft olinishi kerak bo'lgan qator
- qator hajmi
- milliSECONDS qatorda 2 o'qish orasidagi vaqt oralig'i
- chastotalar diapazonining pastroq qiymati
- Gts chastotalar diapazonining yuqori qiymati
- chastota diapazoni uchun qadamlar o'lchami
- signalning takrorlanishi (minimal 1) yuqori aniqlikdagi aniqlik, lekin hal qilish vaqtining ko'payishi
-
oyna funktsiyasi:
0 oyna uchun1 tekis tepalik uchun 2, deraza oynasi uchun 3-hann oynasi uchun 2
(agar siz oynani tanlash haqida hech qanday tasavvurga ega bo'lmasangiz, sukut saqlang 3)
misol: dft (a, 8, 0.5, 0, 30, 0.5, 10, 3); bu erda a - 8 o'lchovli elementlar massivi 0 Gts dan 30 Gts gacha 0,5 qadamli (0, 0,5, 1, 1,5,…, 29, 29,5, 30) 10 ta takrorlash va hamming oynasi bilan tekshiriladi.
bu erda arduino ishlay oladigan kattaroq massivdan foydalanish mumkin.
4 -qadam: Chiqish:
sharh bersangiz
Serial.print (f); Serial.print ("\ t");
ketma -ket plotter koddan chastota spektrining tabiatini beradi, aks holda Serial monitor uning amplitudasi bilan chastotani beradi.
5 -qadam: Har xil oyna va namuna o'lchamlarini tekshirish:
rasmda sinus to'lqin chastotasi turli xil sozlamalar yordamida o'lchanadi.
6 -qadam: Misol:
SciLab va arduino yordamida ma'lumotlarning konvertatsiyasi rasmda taqqoslanadi.
Tavsiya:
Ishonchli chastotani aniqlash uchun FIR filtrlash: 5 qadam
Ishonchli chastotani aniqlash uchun FIR filtrlash: Men akellyirlning DSP texnikasidan foydalangan holda ishonchli chastotani aniqlash bo'yicha ko'rsatmasining juda katta muxlisiman, lekin agar sizda shovqinli o'lchovlar bo'lsa, u ishlatgan texnika etarli emas. chastota det
Arduino yordamida televizorni masofadan boshqarish pultini avtomatik o'zgartirish: 6 qadam
Arduino yordamida televizorni masofadan boshqarish pultini avtomatik ravishda o'zgartirish: bu loyihaning dastlabki motivatsiyasi bizning mijozimiz qon tomir demensiyasi va qonuniy ko'rligi edi. Bu unga televizor ko'rsatuvlari qachon va qaysi kanallarda ko'rsatilishini eslab qolishda, shuningdek, uni ko'rishda qiyinchiliklarga olib keldi
555 taymerli chastotani o'zgartirish: 4 qadam
555 taymer bilan chastotani o'zgartirish karnay: bu ohangni o'zgartiruvchi karnay. U 555 taymer va o'zgaruvchan qarshilikka tayanadi. Bu sizga juda kulgili ovoz beradi, lekin uni qo'lda boshqarish kerak. chastota
Radioni qanday o'zgartirish yoki o'zgartirish kerak: 8 qadam
Radioingizni qanday yangilash yoki almashtirish kerak: men sizga bu qadamlarni osongina bajarishingizni tushuntiraman, chunki siz radiodan to baland ovozda quloqlaringizni chiqarib yuboradigan radioga o'tishingiz mumkin. 1 -qadam: " radio bosh birligi " Bu muqovalar shunchaki ochiladi
Chastotani yoritish uchun RF chiqishi: 5 qadam (rasmlar bilan)
Chastotani yoritish tugmachasini uzib qo'yish: bu loyiha uzoqdan qo'mondonning rozetkasini masofadan boshqarish pultidagi yorug'lik kalitiga o'zgartirish haqida ma'lumot beradi. Umid qilamanki, siz ushbu loyihani o'qishni yoqtirasiz va quyida sharhlar yoki savollaringizni yozing. Bu loyiha men bu ajoyib loyihani topganimdan keyin boshlandi