A figyelmes olvasók észrevették, hogy a szerző WilkoL becenévű cikkeiben egy hangvilláról és az annak használatával ellátott óráról csak egy frekvenciamérőt mutatnak, a cikkben pedig egy üveggel ellátott generátorról egy második került hozzá, és még a KDPV-re is bekerült. Ez a történet róla szól.
Örülök, hogy dolgozhatom Homebrew gally A mester az elméleti rész tanulmányozásával kezdődik, nevezetesen a frekvencia mérési módszerének megválasztásával. Sok frekvenciamérőben ehhez a bemeneti jel egy bizonyos ideig tartó, például egy másodpercre eső periódusait számítják:
Ez a módszer jó a elég magas frekvenciákhoz, de ha a frekvencia alacsony, akkor ez nem teszi lehetővé a kellően nagy számú tizedes pontosságot. Például, ha a mérési ciklus egy másodpercig tart, akkor 50 Hz nagyságrendű frekvencia esetén nulla tizedes pontosságú lesz. Például három jelet szeretne - van kiút, ha a mérési ciklust meghosszabbítjuk 1000 másodpercre. De egy dolog, amikor a számítógép vagy az okostelefon lelassul, amire legalább mindenki hozzászokik, és egészen más dolog - ha egy frekvenciamérő is csatlakozik ehhez a szórakoztató társasághoz, akkor ez teljesen kiüti a felhasználót. Általában egy másik módra van szükség. De mi van, ha ilyen módon mérjük a rezgések periódusát?
Tegye meg. Figyelembe veszik a referenciafrekvencia jelét, amely több nagyságrenddel nagyobb, mint a mért, és megfontolják, hogy a referenciajel hány periódusát fogja átadni a mért fázis egyik szakaszában. Tehát például 10 MHz-es referenciafrekvencián és 50 Hz-en mérve ez 200 000 lesz. Ez azt jelenti, hogy ez az idő 20 000,0 ms, és egy modern (és mellesleg nem túl) mikrovezérlő, ha a programozó "megtanítja", a könnyen kiszámítja az időszakot 50 000 Hz-es frekvenciára. Ha a frekvencia 50,087 Hz-re növekszik, akkor a bemeneti jel egyik periódusában a példakénti 199650 periódusok illeszkednek be, és egy ilyen változás a frekvenciamérő valós időben észreveszi.
Ezzel a mérési módszerrel a tizedesjegyek száma éppen ellenkezőleg csökken a bemenő jel frekvenciájának növekedésével. Például, ha ez 40 kHz, és a referencia még mindig 10 MHz, akkor 40–161 Hz frekvencián 249 referenciafrekvencia-periódust kapunk, 39840 Hz –251 periódust. Legalább két frekvenciamérő van rendben: az egyik a magas frekvenciákhoz, az első módon működik, a másik az alacsony frekvenciákhoz, a másodikhoz. Bár - várj! Nem lehet mindkét módszert kombinálni egy frekvenciamérőben? Tudod, és a mester elmondja, hogyan. Ki kell vennie egy közönséges D-triggert, majd megkapja annak szimbólumát és az igazságtáblát:
A varázsló négy jelet jelenít meg a diagramon, amelyek közül a negyedik triggert hoz létre:
Ezen jelek közül az első a mért frekvencia, amelyet a D-trigger órabemenetére táplálnak. A második referenciafrekvencia, például ismét 10 MHz, amely nagy stabilitást igényel. A harmadik egy 1 Hz-es frekvenciájú jel, amelynek stabilitását egyáltalán nem kell megkövetelni, és ugyanazon triggerre alkalmazzuk a D bemeneten. Nos, a negyediket az első és a harmadik indító generálja az alábbiak szerint. Amikor a harmadik jel nulláról egyre vált, a ravaszt erre nem reagál azonnal, hanem csak akkor, ha ilyen váltás következik be az utóbbi első jelnél. Így a negyedik jel egyik impulzusának elülső része pontosan egybeesik az első impulzusok egyikének elejével. Ezután a harmadik jel, amelyet a negyedik követ, nullára vált, amire a mikrovezérlő semmilyen módon nem reagál, akkor a harmadik jel visszavált egyre, de a trigger nem reagál rá azonnal, hanem csak az első jel ugyanazon kapcsolása után. És ismét az első és a negyedik jel frontja teljesen egybeesik. És a negyedik jel teljes periódusában az első periódusok egész száma illeszkedik. Továbbá - műszaki kérdés: ne felejtsük el, hogy van egy második jelünk is. A mikrokontroller kiszámítja, hogy az első és a második jel hány teljes periódusa esett le a negyedik teljes időszakában.
Tehát két számot kaptunk. Például 32 és 10185892. Szorozzuk meg a 32-et 10 000 000-rel (referencia-frekvencia) és osszuk meg 10185892-vel. 31,416 Hz-t kapunk. Három tizedes jegy. És a mérés pontos marad mind alacsony frekvenciákon, mind magasan, megközelítve a modellt. És ha még magasabb frekvenciákat is meg kell mérnie, felvehet egy osztót.
Most el kell döntenünk, hogy melyik mikrovezérlőt használja a frekvenciamérő. A mester már megpróbálta elkészíteni őket az ATmega328 készüléken, sőt az STM32F407 készüléken is, 168 MHz frekvencián futva. De ezúttal a minimalizmus ragadja meg és úgy dönt, hogy ellenőrizze, vajon képes-e hasonló eredményt elérni az ATtiny2313-on.
Több mint elegendő következtetésre jutott, főleg ha LED-kijelzőt használ beépített illesztőprogram-chipekkel, például MAX7219:
A teljes eszközdiagram így néz ki:
A diszkrét alkatrészek meglehetősen összetett meghajtóját, amely RC áramköreket, diódakorlátozót, erősítő fokozatokat tartalmaz, szinte bármilyen alakú jel téglalap alakú impulzusainak nyerésére használják. A D-trigger kívül helyezkedik el, a mért frekvencia (első) jelét a meghajtó táplálja, a 10 MHz és 1 Hz frekvenciájú jeleket (második, illetve harmadik) a mikrovezérlőről veszi, a (negyedik) kimeneti jel visszajut a mikrovezérlőhöz. A második ilyen trigger jel létrehozására szolgál egy vezérlőpontban. Ugyanez a PDF-séma érhető el a ZIP-archívumban. itt.
A diagram összeállítása után a mester összegyűjti rajta egy frekvenciamérőt, így kiderül:
A képen, az áramkörtől eltérően, az akkumulátor és a töltésvezérlő látható, az impulzus stabilizátort a mester is megemlíti, de ahol van, nem látható. Ezeket az alkatrészeket később adták hozzá, ami a frekvenciamérővel történő munkavégzést kényelmesebbé tette. Az 18650 akkumulátort védelemmel kell ellátni, a huzalok forrasztása elfogadhatatlan. Vagy rekesz vagy ponthegesztés.
Firmware (hazugság itt a ZIP archívumban is) a mester ír, figyelembe véve annak szükségességét, hogy a mikrovezérlőt át kell helyezni az óráról az RC generátorra, hogy működjön a külső kvarcból, valamint a különféle funkciók hozzárendelésének lehetőségét a mikroáramkör minden kimenetére:
A firmware feltöltéséhez a varázsló beépít egy programozót az Olimex-től. Ez egy bolgár cég, amelynek profilja közel áll az Adafruit-hoz.
A fő ürítés a képernyőn a legkevésbé lezárja, majd kivág egy lyukat a ház burkolatában, hogy ez a kisülés zárva legyen, mivel a leolvasott adatok pontatlanok voltak minden megtett intézkedés ellenére.Ezt befolyásolja az algoritmus tulajdonságai és a kristály oszcillátor nem túl magas hőmérsékleti stabilitása. Ennek beállításához a mester egy külső frekvencia-mérőt csatlakoztat a vezérlőponthoz az óragenerátor frekvenciastabilizálásával a GPS-vevőtől, majd a hangoló kondenzátor elforgatásával beállítja a pontos 5 MHz-t (az indító megosztja az órafrekvenciát kettővel). A helyesen beállított frekvenciamérő biztosítja a szükséges pontosságot a mért frekvenciatartományban 0,2 Hz-től 2 MHz-ig. A következő két kép azt mutatja, hogy a mester miként alkalmazta ugyanazt a jelet egyidejűleg a referencia és az ellenőrzött frekvenciamérőkre: