nico_2010 Postat Iulie 27, 2021 Partajează Postat Iulie 27, 2021 Salut, In sfarsit am terminat noul meu proiect de frecventmetru cu microcontroller ARM si as vrea sa vi-l prezint. Metoda de masurare este diferita de masurarea directa a frecventei sau masurarea directa a perioadei si confera precizie egala, indiferent de frecventa masurata. De altfel, metoda de masurare se mai numeste si "multi-cycle synchronous frequency measurement", iar facilitatea sa esentiala este aceea ca semnalul de poarta nu trebuie sa fie de valoare exacta ci o valoare aflata in relatie cu semnalul de masurat, mai precis, cu un numar intreg, multiplu al frecventei de masurat. Principial, acest frecventmetru presupune ca semnalul de referinta si semnalul de masurat sa fie contorizate sincron si in acelasi timp, frecventa urmand a fi calculata pe baza formulei matematice: Fx = (Nx/Nref) x Fref. Potrivit aceluiasi principiu de masurare este eliminata eroarea de +/- 1 perioada a semnalului de masurat, insa va avea o eroare de +/- 1 perioada a semnalului de referinta. Pentru materializarea acestui deziderat am folosit un microcontroller STM32F411RCT6 care are doua timere de 32 de biti, din care unul, TIM2, contorizeaza impulsurile provenite de la semnalul de masurat, iar celalalt, TIM5, contorizeaza impulsurile semnalului de referinta. Ambele timere sunt activate sincron de semnalul de sincronizare provenit de la formatorul de semnal sincron format din circuitele 74LVC1G04 (poarta NOT), 74LVC1G175 (bistabil de tip D) si 74LVC1G08 (poarta AND). Ceasul STM32F411RCT6 este asigurat de un oscilator VCTCXO de la Abracon, frecventa acestuia find de 20MHz si precizie de 200ppb (nu este corect, valoarea reala este de 0.5ppm sau 500ppb), iar prin intermediul multiplicarii prin PLL intern microcontroller-ului ajunge la 100MHz si se formeaza astfel si semnalul de referinta. Vorbeam mai sus de semnalul de poarta, acesta nu este de o valoare fixa, si se poate selecta dintre 4 valori aproximative 100ms, 1s, 2s si 5s prin actionarea encoderului aflat pe panoul frontal si apasarea butonului situat pe axul central. Selectia intervalului de frecvente masurabile (1Hz - 45MHz si 20 - 2500MHz) se face tot prin apasarea axului central al encoderului si este semnalizata prin aprinderea ledului de pe panoul frontal. Etajul de intrare si formatorul de semnal pentru gama 1Hz - 45MHz este o adaptare a celui folosit in frecventmetrul HP 5381 si accepta semnale de la 50mVpp la 1.9Vpp si nu este prevazut cu atenuator (cel putin pentru scopul pe care il am in vedere). Etajul de intrare si formatorul de semnal pentru gama 20 - 2500MHz are in componenta un amplificator MMIC ERA-1SM, un prescaler cu factor de divizare 64 si un 74LVC1G04 ca formator de semnal dreptunghiular si accepta semnale cuprinse intre -10dBm si 10dBm. Modulul de afisare este din cele ce se gasesc pe ebay cu MAX7219 si este amplasat pe un cablaj separat, impreuna cu encoderul, ledul si conectoarele aferente. Imagine de asamblu: Placa de baza a frecventmetrului: Etajul de intrare 20MHz - 2500MHz: Gama 1Hz - 45MHz: Gama 20 - 2500MHz Semnal cu frecventa de 2GHz: Semnal cu frecventa de 35MHz intrare VHF: Acelasi semnal aplicat pe intrarea UHF: Mai ramane sa ii aplic masca pe panoul frontal si cu asta am cam terminat cu el. Fisierul hex: Rec_FCV_F411RCT6.rar Si desenele proiectului realizat in KiCad (doar placa de baza si placa cu afisorul): Etaje intrare.pdf Placa baza FCV_STM32F411RCT6.pdf panou_display_FCV.pdf Link spre comentariu
nico_2010 Postat Iulie 27, 2021 Autor Partajează Postat Iulie 27, 2021 Multumesc. Fac mentiunea ca sursa de semnal folosita este un modul cu ADF4351 necalibrat, dar frecventmetrul a fost calibrat cu o sursa de semnal cu Arduino si GPS (GPSDO). Link spre comentariu
sesebe Postat Iulie 27, 2021 Partajează Postat Iulie 27, 2021 (editat) Cit estimezi ca are stabilitatea? Ce referinta de frecventa utilizezi? Ai spus cite ceva in primul post dar n-am inteles prea bine si n-am chef sa reiau si sa incerc sa inteleg de acolo. Ai 8 cifre afisate. Virgula este fixa sau mobila? Adica de fapt vreau sa intreb daca afiseaza permanent cu numarul maxim de cifre posibile (autoscalare pe ecran). Editat Iulie 27, 2021 de sesebe Link spre comentariu
nico_2010 Postat Iulie 27, 2021 Autor Partajează Postat Iulie 27, 2021 Si cateva fotografii cu masurarea semnalului dat de generatorul aflat la vanzare cu diferite valori ale frecventei la acelasi nivel de 50mVpp. Link spre comentariu
nico_2010 Postat Iulie 27, 2021 Autor Partajează Postat Iulie 27, 2021 Stabilitatea este data de stabilitatea oscilatorului cu quartz si din ce vad pe foaia de catalog a oscilatorului ar fi de +/-0.5ppm, nu cum gresit am scris 200ppb. Virgula este mobila doar in gama VHF, asa cum se poate vedea in fotografiile de mai sus. In gama UHF nu este prevazut cu virgula mobila, rezolutia find de 100Hz. Link spre comentariu
nico_2010 Postat Iulie 27, 2021 Autor Partajează Postat Iulie 27, 2021 Multumesc. Link spre comentariu
Liviu M Postat Iulie 27, 2021 Partajează Postat Iulie 27, 2021 Si din partea mea felicitari! Inca nu m-am prins cum poti masura 2.5 GHz cu 100 MHz, da' asta e problema mea, mai am de studiat. Link spre comentariu
sesebe Postat Iulie 27, 2021 Partajează Postat Iulie 27, 2021 In poza de aici pare sa fie un prescaler (8 pini) precedat de un amplificator. Link spre comentariu
Liviu M Postat Iulie 27, 2021 Partajează Postat Iulie 27, 2021 Mulțumesc! Ce înseamnă să te uiți cu ochelarii puși... Link spre comentariu
Vizitator Postat Iulie 27, 2021 Partajează Postat Iulie 27, 2021 7 hours ago, nico_2010 said: semnalul de poarta nu trebuie sa fie de valoare exacta ci o valoare aflata in relatie cu semnalul de masurat, mai precis, cu un numar intreg, multiplu al frecventei de masurat. Poti detalia te rog ? Link spre comentariu
merck Postat Iulie 28, 2021 Partajează Postat Iulie 28, 2021 12 hours ago, Liviu M said: Inca nu m-am prins cum poti masura 2.5 GHz cu 100 MHz, da' asta e problema mea, mai am de studiat. Nu am citit nici eu bine din prima , dar a scris clar omul: 19 hours ago, nico_2010 said: Etajul de intrare si formatorul de semnal pentru gama 20 - 2500MHz are in componenta un amplificator MMIC ERA-1SM, un prescaler cu factor de divizare 64 si un 74LVC1G04 ca formator de semnal dreptunghiular si accepta semnale cuprinse intre -10dBm si 10dBm. Modulul de afisare este din cele ce se gasesc pe ebay cu MAX7219 si este amplasat pe un cablaj separat, impreuna cu encoderul, ledul si conectoarele aferente. Etajul de intrare 20MHz - 2500MHz: @nico_2010 sa te felicit moldoveneste: ii piz.a montajul!!! Link spre comentariu
cimitavita Postat Iulie 28, 2021 Partajează Postat Iulie 28, 2021 (editat) intrarile la STM32F411RCT6 merg la 100Hz iar CLK intern e de 100MHz. Deci asta inseamna ca microcontrolerul poate masura direct semnale pana la 100MHz. Tot din cauza ca intrarile merg la 100MHz, mai poate masura un semnal de 1Hz cu o precizie de 8 zecimale si o eroare de 0.00000001Hz, iar o frecventa de 1000Hz o poate masura cu o precizie de 5 zecimale. Si nu e nevoie de nici un calcul sau artificiu de calcul. Doar o simpla conversie a unui numar din binar in zecimal pentru a fi afisat. Foarte avantajoase sunt timerele pe 32 biti care merg si ele la 100MHz si care te scutesc de dezavantajele timerelor pe 16 biti. Practic, microcontrolerul asta e un frecventmetru complet care merge la 100MHz la doar 3$ Enervant e numarul mare de pini (versiunea cu 48 pini parea a fi cea mai buna, pana am vazut tipul carcasei). Am niste convertoare AD pe 16 biti care merg la 250MHz si pe care nu le folosesc tot din cauza numarului mare de pini Au doar 100 pini. La frecvente mici de sub 100Hz uneori zecimalele sunt folositoare. Dar la frecvente mari de peste 10Mhz sunt mai putin folositoare. Iar daca oscilatorul nu e termostatat, orice variatie de temperatura face ca frecventa sa se modifice. Partea cea mai dificila atunci cand inveti un microcontroler nou, e ca trebuie sa te apuci sa inveti paginile cu organizarea memoriei SFR sau a registrilor, cum mai spune in unele datasheet-uri, altfel nu stii cum sa il folosesti. Si ca bonus, astia de la ST sunt foarte imprastiati. Ai nevoie de zeci de pdf-uri ca sa ai functionarea completa si in detaliu a unui microcontroler. Editat Iulie 28, 2021 de cimitavita Link spre comentariu
Postări Recomandate
Creează un cont sau autentifică-te pentru a adăuga comentariu
Trebuie să fi un membru pentru a putea lăsa un comentariu.
Creează un cont
Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!
Înregistrează un nou contAutentificare
Ai deja un cont? Autentifică-te aici.
Autentifică-te acum