Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

[Solved] Atmega jako miernik częstotliwości generatora

23 Apr 2019 22:31 1137 16
  • #1
    Anonymous
    Level 1  
  • #2
    Steryd3
    Level 33  
    Wydaje mi się, iż słusznie podejrzewasz...sygnał wymaga pewnych zabiegów.
    Programu nie przeglądałem ale strategia z przerwaniem zewnętrznym powinna dać rezultaty gdyby mikrokontroler "widział" sygnał.
    Trzeba by zerknąć dokładnie do noty katalogowej ale tak z pamięci...zakładając, że Twoja ATmega8 zasilana jest napięciem 5V to próg przełączania powinien znajdować się gdzieś w połowie tej wartości tj. 2,5V. Pomijając całą naukę o tym w jakim przedziale powinno być napięcie by było ono interpretowane jako stan niski czy wysoki na wejściu to na szybko można przyjąć, że poniżej 2,5V mikrokontroler odczyta stan niski a powyżej wysoki.

    Tak więc najlepiej by było, by na wejście które ma mierzyć częstotliwość podany był sygnał prostokątny: stan niski okolice 0V i stan wysoki okolice 5V lub choć taki który będzie oscylował przecinając poziom 2,5V(wtedy nie będzie super poprawnie ale to już może działać).

    Twój generator w sygnale wyjściowym z pewnością ma jakąś składową stałą(stały poziom napięcia wokół którego oscyluje) ...można to liczyć ale...lepiej zastosować oscyloskop i podglądnąć jak sygnał wygląda. Później dobrze by było zastosować jakieś buforowanie by nie obciążać zbytnio generatora oraz komparator w którym próg przełączania można ustawić na taki który będzie odpowiedni do wartości średniej napięcia jakie generuje Twój generator.

    Można spróbować też skorzystać z komparatora który jest na pokładzie ATmegi bo chyba dało się go wykorzystać jako źródło przerwań.
  • #3
    kaczakat
    Level 34  
    Zapewne nie masz oscyloskopu bo nie byłoby pytania. Taką częstotliwość ciężko będzie zmierzyć ADC, ale przynajmniej spróbuj, zapisz sobie wartość minimalną i maksymalną. Możesz też skorzystać z symulatora online: Link , niestety z Twojego schematu nie jestem w stanie dojść co do czego. W symulatorze obejrzyj przykładowy obwód w Circuits -> Transistors->Oscillators-> Colpitts Oscillator. Możesz dobrać odpowiednio pojemności i cewkę by uzyskać pożądaną częstotliwość w wymaganej dla AVR logice.
  • #4
    tplewa
    Level 39  
    Musisz wykonać odpowiednie wejście po pierwsze aby dopasować sygnały, po drugie aby dołączenie miernika minimalnie wpływało na odstrojenie się generatora.

    Tutaj masz jakiś wątek w którym jest to poruszone.

    https://www.elektroda.pl/rtvforum/topic1884284.html

    Natomiast co do kodu to masz w załączniku jakiś stary kod na ATiny2313 na którym robiłem jakiś prosty miernik częstotliwości. Sporo można uprościć w tym wywalić sterowanie wyświetlaniem na 7 segment realizowane przez rejestr przesuwny itp. Projekt w AtmelStudio...

    Wszelkie pomysły odnośnie pomiaru za pomocą kompratora czy ADC sobie odpuść. W najprostszej formie wejście można zrealizować na jednym tranzystorze (ale tego raczej nie polecam). Zresztą w internecie znajdziesz sporo schematów mierników częstotliwości aby coś podglądnąć...
  • #5
    Anonymous
    Level 1  
  • #6
    tplewa
    Level 39  
    Przecież dałem ci wskazówki tzn. link do tego jak wykonać obwód wejściowy do pomiaru... Tam jest za mała amplituda aby to podać na port procesora czy na miernik w multimetrze. Wszystko masz w podanym linku lub jak wspomniałem śmiało znajdziesz inne rozwiązania w google (patrząc na to jak realizowane są wejścia w miernikach częstotliwości - tylko nie chodzi o wejścia TTL).

    Natomiast program dałem abyś miał przykład jak zrobić pomiar częstotliwości - tak w razie czego...

    Inna sprawa że faktycznie może generator się nie wzbudzać... To sobie możesz sprawdzić jakimś radiem z zakresem fal długich...

    Kolejne rozwiązanie generatora itd. masz np. w tym wykrywaczu metali - on co prawda pracuje na 32kHz ale to sobie już poradzisz z przerobieniem jak potrafisz symulować układy ;)

    https://serwis.avt.pl/manuals/AVT5025.pdf
  • #7
    Anonymous
    Level 1  
  • #8
    tplewa
    Level 39  
    Po pierwsze to ja bym tego nie robił na płytce stykowej. To nie są jakieś hiper wysokie częstotliwości ale płytka może wprowadzać pełno dodatkowych pojemności itd. Generalnie przy takich generatorach prosta zasada im krótsze połączenia tym lepiej. Śmiało można wykonać na jakimś laminacie na zasadzie wydrapania pół do których lutujemy elementy.
  • Helpful post
    #9
    kaczakat
    Level 34  
    Strasznie się nakombinowałeś, jednak bez choćby analizatora logicznego Saleae to jest błądzenie po omacku. Zrobiłem ten układ na tranzystorze i 2 kondensatorach, w przykładzie Colpitts Oscillator zmieniłem cewkę na 410nH ( miałem niby 470nH, ale zmierzona chińskim testerem), kondensatory 100n, rezystory bez zmian R100 i 1k, tranzystor pierwszy leżący na biurku BC639, wynikowa częstotliwość 36.2kHz przy amblitudzie 4.5V, wypełnienie 45%, po zamianie kondensatorów na 2.2nF częstotliwość 192kHz, a wypełnienie spadło do 25%, przy 220nF około 24kHz. Faktycznie symulator nie podaje częstotliwości, nie wiem jak to ominąć, całość zmontowana oczywiście na stykówce.
  • #10
    tplewa
    Level 39  
    Nie widzę tutaj potrzeby posiadania analizatora stanów logicznych, to nie jakaś magistrala cyfrowa. Aby sprawdzić czy są impulsy wystarczy prosty układ na 74xx wykrywający zbocze (taka prosta sonda logiczna).

    Co do całości nie obiecuję, jak znajdę czas policzę te wartości na kartce...
  • #11
    kaczakat
    Level 34  
    Saleae oczywiście jest prymitywnym zamiennikiem oscyloskopu w tym zastosowaniu, ale przynajmniej potwierdzi czy jest szansa coś zmierzyć uC:
    Atmega jako miernik częstotliwości generatora
    A na wydatek 30zł każdy kto zaczyna się bawić z AVR czy Arduino może sobie chyba pozwolić. Przy okazji przyda się przy innych zabawach z AVR.
  • #12
    tplewa
    Level 39  
    kaczakat wrote:
    Saleae oczywiście jest prymitywnym zamiennikiem oscyloskopu w tym zastosowaniu, ale przynajmniej potwierdzi czy jest szansa coś zmierzyć uC:
    Atmega jako miernik częstotliwości generatora
    A na wydatek 30zł każdy kto zaczyna się bawić z AVR czy Arduino może sobie chyba pozwolić. Przy okazji przyda się przy innych zabawach z AVR.


    Ale po co ? jak za parę groszy można wykryć fale prostokątną ? przy okazji ucząc się czegoś nowego... Najprościej to czy coś jest na wyjściu to ci dwa tranzystory i led w tym układzie wystarczą...
  • #14
    tplewa
    Level 39  
    Trzeba mieć najlepiej diode germanową, a w tych czasach to element niezbyt oczywisty ;)
  • #15
    Steryd3
    Level 33  
    kaczakat wrote:
    Saleae oczywiście jest prymitywnym zamiennikiem oscyloskopu w tym zastosowaniu, ale przynajmniej potwierdzi czy jest szansa coś zmierzyć uC:
    Atmega jako miernik częstotliwości generatora
    A na wydatek 30zł każdy kto zaczyna się bawić z AVR czy Arduino może sobie chyba pozwolić. Przy okazji przyda się przy innych zabawach z AVR.


    Z tym Saleae za 30zł to nie tak do końca. Pomijając już, że analizator stanów logicznych i oscyloskop to jednak nieco inne urządzenia to uważał bym z tymi podróbkami za parę złotych. Sam kiedyś nabyłem i ubiłem coś takiego bez większego wysiłku...okazało się, iż jedynym zabezpieczeniem jakie posiadał mój chiński egzemplarz to rezystory dane w szereg z wejściem scalaka.
    Dodatkowa kwestia to poziomy przełączania w analizatorze - nie wiem czy to jest to samo co w AVR (czy logika 3,3V czy 5V).

    Zamiast robić jakieś ekwilibrystyki to lepiej podejść do kogoś kto dysponuje takim sprzętem i za piwo pooglądać co się dzieje.

    Tak to już jest, że bez oscyloskopu pewnego rodzaju konstrukcje w elektronice są wręcz nie do okiełznania.
  • #16
    tplewa
    Level 39  
    Ale ja nie wiem co wy z tym oscyloskopem... jak będziecie robić coś na 433MHz to też kupicie oscyloskop z pasmem by coś zobaczyć ?

    Tutaj nie potrzeba tony sprzętu tylko trochę praktyki i wiedzy... Do tego prosty sprzęt typu jak zostało wspomniane sonda w.cz. czy tam GDO/TDO, a obecnie najlepiej coś w stylu NWT (nawet najprostsze NWT 7)...

    Zresztą jak wspomniałem przy tej częstotliwości to radio wystarczy
  • #17
    Anonymous
    Level 1