Bir mikro denetleyici üzerinde yedi örnekli ses spektrumu analizörü. Bir mikrokontrolör üzerinde yedi dumanlı ses spektrumu analizörü İşletim yardımcılarında 10 dumanlı duman spektrumu analizörü

Golovna / Google Oyun

Makale, basit bir spektrum analizörünün (0 – 10 kHz) tasarımını göstermektedir. AVR mikrodenetleyicileri. Bir görüntüleme cihazı olarak sembolik RK göstergesi kullanılır. p align = "justify"> Bu projenin uygulanmasındaki ana nokta donanım kısmı değil, yazılım kısmıdır, daha doğrusu ayrık Fourier dönüşümünün (DFT) 8 bitlik bir mikro denetleyici üzerinde uygulanmasıdır. Yazarın bu teoride uzman olmadığını ve bu nedenle temellerden - Fourie'nin basit ayrık dönüşümüyle - başladığını belirtmek önemlidir. Fur'un hızlı bir şekilde yeniden yaratılmasının algoritması daha az basit değil, aynı zamanda katlanabilir.

Ayrık Fourier Dönüşümü (İngilizce literatürde DFT, Ayrık Fourier Dönüşümü), dijital sinyal işleme algoritmalarında yaygın olarak kullanılan Fourier dönüşümlerinden biridir (modifikasyonları MP3'teki kısıtlı ses, J PEG'deki kısıtlı görüntü ve diğerleriyle sınırlıdır) , diğer alanlarda olduğu gibi, ayrı bir (örneğin, dijitalleştirilmiş analog) sinyaldeki frekansların analizi ile. Fur'un ayrık dönüşümü, ayrık bir fonksiyona girdi görevi görür. Bu tür işlevler genellikle örnekleme yoluyla (kesintisiz işlevlerin değerlerinin seçilmesi) oluşturulur.

Bir ses sinyali spektrum analizörünün prensip şeması çok basittir ve zihinsel olarak dijital ve analog parçalara ayrılabilir.

Dijital kısım bir mikrodenetleyici tarafından oluşturulur ve yeni bir PK göstergesine bağlanır. Mikrokontrolörün ADC'sinin referans voltajı +5 V besleme voltajıyla çalıştırıldığından, mikrokontrolör 16 MHz'lik bir kuvars rezonatör tarafından saatlenir.
PK göstergesinin veri yolu, mikro denetleyicinin C bağlantı noktasına (giriş/çıkış hatları PC0-PC3) bağlanır, kontrol veri yolu ise mikro denetleyicinin D bağlantı noktasına (PD5, PD6) bağlanır. Gösterge 4 bit modunda çalışır. Kontrastı ayarlamak için nominal değeri 4,7 kΩ olan bir yedek direnç kullanılır. Göstergeyle çalışmak için, analizörün 8 yatay istifleyicisini görüntüleyecek semboller oluşturuldu ve bu semboller, LCD göstergesinin 64 Bayt RAM'inin tamamını kaplar.

Mikrodenetleyici harici bir 16 MHz kuvars rezonatöründen çalışır.

Cihazın analog kısmı en önemli kısmıdır ve ön destekçıkışı ADC mikro denetleyicisinin ADC0 kanalına bağlı olan bir elektret mikrofonunun sinyali. Bu durumda ADC girişindeki sıfır seviyesi referans voltajının tam yarısına eşit olarak ayarlanmalıdır. 2.5 Her durumda, sinyal üzerindeki olumlu ve olumsuz etkileri birleştirmek mümkündür ve genliği, sınır ayarlarını aşabilir. Aşırı şişmeyi önlemek için güçlendirme katsayısı hassas bir şekilde ayarlanabilir. Düşük ömürlü cerrahi güçlendiricinin genişletilmiş mikro devresi, tüm bilgili beyinler tarafından doğrulanmaktadır.

DFT algoritması Fourier'in modifikasyonlarından çok daha üstündür. Ne yazık ki spektrum analizörümüz algılamıyor yüksek hız ve saniyede yaklaşık 30 karelik bir yenileme hızının sağlanması önemlidir; bu, ses sinyalinin spektrumunun görselleştirilmesi için daha az yeterli olacaktır. Her durumda seçeneğimizle saniyede 100 kare hıza ulaşabilirsiniz ancak yüksek kaliteli sembolik PK göstergesinin parametre değeri çok yüksektir ve önerilmez. 32 noktalı ayrık Fourier dönüşümü için örnekleme frekansı hala 20 kHz'dir ve dönüşümün sonucu simetrik olduğundan yarısından fazlasını dönüştürmek gerekir. ilk 16 sonuç. Peki taklit edebiliriz Frekans spektrumu 10 kHz'e kadar olan aralıkta ve analizörün ayrı kısmı 10 kHz/16 = 625 Hz'ye ayarlanmıştır.

Tasarımın yazarı DFT'nin hesaplama hızını artırmaya çalıştı. Bu dönüşüm N noktasını içerdiğinden, sinüs ve kosinüsün değerini N2/2 bilmemiz gerekir. 32 nokta dönüşümümüz için sinüs ve kosinüsün 512 değerini bilmek gerekiyor. Öncelikle tam bir işlemci saati sürecek olan kut (derece) hesaplamamız gerektiğinden hesaplama tablosu değerlerinin vikorize edilmesine karar verildi. Mikrodenetleyici programı yapılandırıldığında kayan nokta hesaplamaları ve çift duyarlıklı sayılar hesaplanmadığından 8 bitlik bir mikrodenetleyici üzerinde işlem yapılması bir saatten fazla zaman alır. Tablolarda bu değer yerine 10000 ile çarpılmış tamsayı tipindeki (integer) 16 bitlik veriyi arayın. Daha sonra son dönüşümden sonra sonuçlar 10000'e bölünür. Bu yaklaşımla şu sonucu elde etmek mümkündür: saniyede 120 32 noktalı dönüşümde, bu da ekimiz için fazlasıyla yeterli.

Uzun zaman önce bir grafik spektrum analizörü oluşturmaya karar verdikten sonra devrenin tüm bileşenlerini ve filtre elemanlarını seçmek gerekliydi. Daha sonra, kalbi mikrodenetleyici olan bir dijital analizörün tanımını içeren bir Polonya dergisine rastladım. Devre çok basit; seçmek, bileşenleri seçmek ve ayarlamak istemediğim her türlü filtreye sahip. Her şey bir mikrodenetleyiciye ayarlanmıştır. Üstelik bu analizörün bir dizi çalışma modu vardır! Bu, ayrı elemanlara dayanan devreyi daha da karmaşık hale getirdi.

Analizörün 4 gösterge modu vardır: Tepe göstergeli ve tepe göstergesiz çizgi ve "nokta" ve tepe göstergeli veya tepe göstergesiz.

Teknik özellikler:

  • Frekans göstergesi: 31Hz, 62Hz, 125Hz, 250Hz, 500Hz, 1kHz, 2kHz, 4kHz, 8kHz, 16kHz;
  • Matris boyutu: 10x10;
  • Modlar: nokta, çizgi, tepe noktaları;
  • Canlı voltaj: 12V;
  • Ağrı azaldı: Matrisin yakınındaki vikorize LED'lerin altına uzanın, ana kart 20mA'ya yaklaşıyor

Gösterge iki parçadan oluşur; ana blok ve diyot matrisi.


Mikrodenetleyici çağrılarının ana bloğu ATmega8, şifre çözücüler K176ID1(Yurtdışı analogu CD4028) ve işletme destekçisine atanan giriş destekçisi-aracı TL071. Kuvars rezonatörü 16-20 MHz frekansına ayarlanabilir.

Deneme sürümünü birkaç yıl boyunca bir devre tahtasına lehimledim:









Fuzi Algoritma Oluşturucu:

Fuzi PonyProg:


Mikrodenetleyiciyi yanıp sönerken, kuş yanlış takıldığı için sigortaları takarken son derece dikkatli olmak gerekir. Bu analizörden çok daha karmaşık bir programlayıcı kullanarak mikrodenetleyiciyi ve yanıp sönmesini engelleyebilirsiniz.

Devreyi topladıktan sonra mikro denetleyiciyi yaktım, yaşam hattını bağladım ve girişe uyguladım bip sesi. Cihaz ayar ve kuruluma gerek kalmadan hemen talep edildi. Bu tasarım beni çok mutlu etti.

Bu makale şunları içerir: prensip diyagramı Lambaları, basit LED'leri veya işaretçi göstergelerini çalıştırmayan herhangi bir güçlendiriciyi tasarlarken kullanılabilen 10 ayarlı bir spektrum analizörü (gösterge). Bu arada, benzer öneme sahip birçok şema bulabilirsiniz, ancak biz daha esnek bir seçenek arıyoruz. bir diyagram verilmiştir Atmega8 mikrodenetleyiciden ilham alınmıştır. Diyagrama bir göz atalım:

Mikrodenetleyici ayrıca birkaç mikro devre içerir, bir hat sinyali alan operasyonel güçlendirici TL071 ve geri kalanın analogu olan CD4028 kod çözücü K176ID1 mikro devresidir. Cihaz, entegre bir stabilizatör 7805 üzerine uygulanan bir yaşam bloğu tarafından çalıştırılır. Quartz, 18 MHz frekansında çalışır. Ayrıca devrede LED matrisini kontrol etmek için birkaç transistör anahtarı vardır. Matris diyagramı aşağıda gösterilmiştir:

100 LED, 10x10'luk bir matris oluşturur. Cilt matrisinin tepki verdiği frekanslar:

31Hz, 62Hz, 125Hz, 250Hz, 500Hz, 1kHz, 2kHz, 4kHz, 8kHz, 16kHz

Ek J4 ve J5'i kullanarak robot gösterge modunu, robotun doğrusal modda, tepe göstergeli doğrusal modda, nokta modunda ve tepe göstergeli nokta modunda çalışacak şekilde ayarlayabilirsiniz. Modları hızlı bir şekilde değiştirmek için bu atlama telleri yerine herhangi bir minyatür atlama teli takılabilir.

Drukovani cihazı öder.

Z ahşap bir tahta ile LAY formatının biraz düzeltilmesi gerekiyordu, üzerinde imzalanmamış bir öğe vardı, tahta çok küçüktü, parçalarla birbirine bağlanan bir grup temas yüzeyi, parçalardan oluşan vikoryst şablonlarını (makrolar) yeniden düzenlemek zorunda kaldılar ve dikiş topunun yüzeyini ї elemanların belirlenen nominal değerlerinden boyayın.

Yenilenmiş görünüm şöyle görünecek:

CD4028 mikro devrelerinin kurulumu için gaz kelebeği doğru iş kod çözücü, prensip olarak onu bir atlama kablosuyla değiştirebilirsiniz (tahtanın sol alt köşesine bakın).

Stabilizatör 7805 küçük bir radyatöre monte edilmiştir:

Tahsilat ücreti şuna benzer:

Mikrodenetleyici ürün yazılımı ve Algorithm Builder programı için sigortaların kurulumuna ilişkin bilgi dosyası da dahil olmak üzere göstergenin tekrarlanması için gerekli tüm malzemeler arşivde bulunabilir. Ayrıca yabancı bir dergiden bu spektrum analizörünü ve LAY6 formatındaki bloklar için nasıl ödeme yapılacağını inceleyen orijinal bir makale de var. Dosya boyutu – 6 MB.

Kızların bir araya geldiklerinde neden korktukları umurunda mı? Alışverişe mi çıkıyorsunuz, fotoğraf mı çekiyorsunuz, güzellik salonlarına mı gidiyorsunuz? Evet, evet, evet ama her şey için endişelenmek yeterli değil. Bu makale, iki kızın kendi elleriyle radyo-elektronik cihaz yapmaya nasıl karar verdikleriyle ilgili.

Neden bir spektrum analizörü-görselleştirici?

Ayrıca çok sayıda yazılım çözümü ve donanım uygulama seçeneği de vardır. Öncelikle bunun üzerinde çalışmayı gerçekten istedim. büyük miktar LED'ler (zaten kendimiz için ancak küçük boyutlarda bir LED küp seçtiğimiz için), başka bir şekilde, bilgiyi dijital sinyal işlemeden pratik olarak çıkarmak ve üçüncüsü, havya ile bir robotta pratik yapmak gerekir.

Bir rozrobka ekleyeceğim

Çünkü Kardeşler bir karar vermeye ve talimatlara göre sıkı bir şekilde çalışmaya hazırlar - bu sıkıcı ve zahmetlidir, bu yüzden önceden oluşturulmuş cihaza çok az zaman harcayarak devreyi kendimiz geliştirmeye karar verdik.

Ekran için tek bir 8x32 LED matrisi seçtik. Hazır 8x8 LED matrisleri seçip aralarından seçim yapmak mümkündü ama biz akşamları havya ile memnun kalmamaya karar verdik ve bu nedenle ekranı LED'lerden kendileri topladık.

Ekranı kontrol etmek için bisikleti kullanmadık ve dinamik ekranlı bir kontrol devresi kullandık. Tobto. bir lider seçtiler, onu yaktılar, diğerlerini söndürdüler, sonra bir sonrakini seçtiler, onu yaktılar, diğerlerini söndürdüler vb. İnsan gözünün mükemmel olmadığını düşünürsek ekranda statik bir görüntünün oluşmasını önleyebiliriz.
En küçük desteğin yolu takip edilerek hesaplamaların Arduino kontrolcüye aktarılmasının mantıklı olacağı belirlendi.

İstasyondaki bir veya diğer satırın genişletilmesi, özel anahtarın ek onayını gerektirir. Kontrolörün çıkış pin sayısını değiştirmek için dekoderler üzerinden seçim yapılır (satır sayısını 5'e de kısaltabiliriz).

Bir bilgisayara (veya ses sinyali ileten başka bir cihaza) bağlanmak için bir arayüz olarak bir TRS konektörü (3,5 mm mini jak) vardır.

Katlanır bir oda ekleyeceğim

Cihazın katlanması, cihazın ön panelinin dikkatli bir şekilde yerleştirilmesiyle başlar.

Ön panelin malzemesi 5 mm kalınlığında siyah plastiktir (diyot merceğinin çapı da 5 mm olduğundan). Düzeni böldükten sonra ön paneli işaretleyip istenilen boyuta kesiyoruz ve LED'in altındaki plastiği delerek açıyoruz.

Bu şekilde bitmiş ön panel çıkarılır ve daha sonra ekranı monte edebilirsiniz.

Matris için ışık yayan bir diyot olarak, galvanik katot GNL-5019UEUGC'den bir vikoristan iki renkli (kırmızı-yeşil) vardı. Koçanın önünde “kişisel kontrole zarar vermeyin” kuralına uygun olarak katlanmış matrisler, tüm LED'ler ve 270 adet bulunmaktadır. (herhangi bir arıza durumunda yedek olarak alınır), pratiklik açısından kontrol edildiler (bunun için bir konektör, 200 Ohm direnç ve 5V kullanım ömrü içeren bir test cihazı seçildi).

Daha sonra LED'i bu şekilde açıyoruz. Kırmızı ve yeşil diyotların anodu bir bankaya (sağda), katot diğer bankaya yerleştirilir ve katodun anottan daha aşağıda olduğundan emin olunur. Ve sonra 90°'de katodu aşağı doğru büküyoruz.

Matrisin katlanması sağ alt köşeden başlar, katlama sütunlar boyunca gerçekleştirilir.

“Kontrolünü bozamazsın” kuralını bilerek bir iki noktayı lehimledikten sonra yapılabilirliğini kontrol ediyoruz.

Bitmiş matris şuna benziyor.

Dikiz:

Bölünmüş devrenin arkasında, sıralar ve bileşenler için bir kontrol devresini lehimliyoruz ve kabloları ve konektörleri Arduino'ya lehimliyoruz.

Ayrıca sadece genlik-frekans spektrumunun değil, faz-frekans spektrumunun da görüntülenmesi ve görüntüleme için çok sayıda görüntünün seçilmesi mümkün olmuştur (32,16,8,4). Bu amaçla 4 atlama kablosu ekleyin: biri spektrum türünü seçmek için, ikisi çıkış sayısını seçmek için ve biri de cihazı açıp kapatmak için.

Yazılı programlar

Burada kuralımızı takip ediyoruz ve ekranımızı tezgah üzerine yerleştirecek şekilde yeniden yapılandırıyoruz. Kimin için yazıyoruz? sadece bir program ekrandaki tüm LED'leri tamamen aydınlatır. Doğal olarak Murphy kanunu nedeniyle bazı LED'ler dayanamadı ve değiştirilmeleri gerekiyordu.

Her şeyin çalıştığını kontrol ettikten sonra ana program kodunu yazmaya başladık. Üç bölümden oluşur: gerekli değişikliğin başlatılması ve verilerin okunması, hızlı Fourier dönüşümü kullanılarak sinyal spektrumunun soyutlanması, çıkarılan spektrumun ekranda gerekli formatla görüntülenmesi.

Son ekin katlanması

Örneğin, bir ön panelimiz var ve altında kapatılması gereken bir sürü dart var ve atlama tellerinin bir şeye sabitlenmesi gerekiyor. Fazla plastikten bir gövde yapmayı düşünmeden önce, onun nasıl görüneceğini ve nasıl yapılacağını gerçekten bilmiyorduk. Büyüyen sorun doruğa ulaştı. Markette dolaşırken boyutuna çok uygun plastik bir saksı gördük.

Sağda güllerin, kabloların ve jumperların altında küçük açıklıklar açmanız ve ayrıca plastikten iki yan paneli kesmeniz gerekiyor.

Sonuç olarak, tüm ek satın alımları toplayıp cihazı bilgisayara bağladıktan sonra aşağıdaki adımlarla kaldık:

Genlik-frekans spektrumu (32 parça):

Genlik-frekans spektrumu (16 önemli nokta):

Genlik-frekans spektrumu (8 önemli nokta):

Genlik-frekans spektrumu (4 parça):

Faz spektrumu:

Arka panel görünümü:

Ekleyeceğim video robotlar

Daha fazla netlik sağlamak için video karanlıkta çekildi. Genlik-frekans spektrumunu video cihazında görüntüleyin ve ardından 7 saniye boyunca faz-frekans spektrumu moduna geçin.

Gerekli öğelerin listesi

  1. LED'ler GNL-5019UEUGC - 256 adet. (Sergilemek için)
  2. Transistörler n-p-n KT863A – 8 adet. (Satır yönetimi için)
  3. Transistörler pnp C32740 - 32 adet. (İstasyon yönetimi için)
  4. Dirençler 1kOhm - 32 adet. (Değişim struma için taban p-n-p transistörler)
  5. Dekoder 3/8 IN74AC138 - 4 adet. (Seçim için)
  6. Dekoder 2/4 IN74AC139 - 1 adet. (Basamaklı şifre çözücüler için)
  7. Montaj plakası 5x10cm – 2 adet.
  8. Şleyfi
  9. Arduino Pro mikro – 1 adet.
  10. Mini jak 3,5 mm soket – 1 adet.
  11. Peremikach – 4 adet.
  12. Siyah plastik 720*490*5 mm – 1 kemer. (Ön panel için)
  13. Kvitkov siyah çömlekçi 550 * 200 * 150 mm - 1 adet. (Gövde için)

Bu proje “TDA8425'te mikro denetleyicili ton bloğu” projesinin mantıksal bir devamıdır. İşlevselliği genişletmek için size basit bir ses spektrumu analizörü vereceğim. Spektrum analizörü sinyali işler ve şarkılardaki yoğunluğunu ışıklı LED ölçeklerde gösterir. frekans aralıkları. Peki, devreyi aşağıya ekleyeceğim.

Cihazın kalbi MICROCHIP'in mikro denetleyicisidir. Price, 8 videolu Flash mikrodenetleyici ailesinin yeni bir temsilcisidir. MICROCHIP, mükemmel işlevsellik ve güvenilirliğe sahip ürünler sağlayan son teknoloji ürünleri geliştirmeye ve üretmeye devam ediyor. PIC12F675 denetleyici, PICmicro mikro denetleyici mimarisinin tüm avantajlarını ve Flash program belleğinin esnekliğini birleştirir. Düşük fiyatı ve küçük boyutuyla bu denetleyici, daha önce bulunmayan işlevsellik ve kullanışlılık sağlar.

Ses sinyali, Japon şirketi ROHM'den gelen senkromik bir filtre olan mikro devrenin girişine beslenir. BA3834F'de yedi siyah filtre bulunur: 68 Hz, 170 Hz, 420 Hz, 1000 Hz, 2400 Hz, 5900 Hz, 14400 Hz. Hat filtresinin seçimi PIC12F675 mikrodenetleyici tarafından kullanılır.

Cilt filtresinden gelen çıkış sinyali bir mikro denetleyici tarafından sayısallaştırılır ve sürücü mikro devrelerine (çıkış engellemeli son kayıt kaydı) iletilir. 74HC595 üzerindeki sinyal kombinasyonu çıkış LED'lerini içerir. LED'ler, karbon anotlu 7 "X" sıralı ve 16 "Y" sıralı bir matris halinde gruplandırılmıştır. Ushogo 112 LED'ler.

Spektrum analizörü, kontrol ve gösterge olmak üzere iki kartta toplanacak şekilde tasarlanmıştır. Küçüklerin ve fotoğraflı ödeme yönetiminin altında.


Diğer kurulların minikleri; hazırlanıyorum ne olur erişilebilir bir şekildeörneğin LUT. Başa dön – SOP18 paketinde BA3834F mikro devresi. Yüzeye montaj yöntemi kullanılarak rayların kenarından monte edilir. Aşağıda minikler ve ödeme göstergesinin fotoğrafı bulunmaktadır.

LED anotlar, kart yüzeyinin üzerinde birbirine bağlanır ve kontak pedlerine lehimlenir. Boule'un manuel bağlantısı için, PLS tipi vikoristan pin soketleri (2,54 mm genişliğinde tek sıra); Açıkçası, kablo, soketleri kabloya takmak için BLS tipi kontaklara (2,54 mm kenarlı tek sıra) ve 6PK-301U kıvırıcıya (presleme pensesi) sahip soketler gerektirir.

© 2022 androidas.ru - Android hakkında her şey