Elektroda.pl
Elektroda.pl
X
PCBway
Prosz, dodaj wyj徠ek dla www.elektroda.pl do Adblock.
Dzi瘯i temu, 瞠 ogl康asz reklamy, wspierasz portal i u篡tkownik闚.

Przetaktowanie Arduino z ch這dzeniem ciek造m azotem

ghost666 25 Wrz 2013 15:05 10923 7
  • Przetaktowanie Arduino z ch這dzeniem ciek造m azotem

    Przetaktowywanie Arduino z wykorzystaniem ch這dzenia ciek造m azotem. Cel 20 MHz ⇒ 65,3 MHz @ -196蚓

    Przed opisem projektu autor odpowiada na dwa podstawowe pytania, kt鏎e i tak zosta造by zadane, wi璚 mo瞠 warto od tego zacz望?

    1) Dlaczego? Bo mog. Aby nauczy si jak dzia豉 elektronika w warunkach kriogenicznych i z czystej ciekawo軼i, ile mocy obliczeniowej da si wycisn望 z zwyk貫go AVRa, je郵i odpowiednio mocno si postaramy. Eksperyment ten jest tak瞠 poniek康 analogiczny do podobnych eksperyment闚 przeprowadzonych z wykorzystaniem procesor闚 komputer闚 osobistych.

    2) Dlaczego Arduino UNO (ATmega328P)? Oczywi軼ie, istnieje wiele szybszych mikrokontroler闚, jednak瞠 ten model Arduino zdaje si by najpopularniejszy po鈔鏚 amator闚 programowania i mikrokontroler闚. Z punktu widzenia praktycznego 豉twiej by這by wykorzysta ARMu (na przyk豉d Cortex M3 lub M4) albo uk豉d FPGA.

    Przetaktowywanie mikrokontroler闚 z wykorzystaniem ciek貫go azotu wydaje si by trudniejsze ni taki sam zabieg z wykorzystaniem procesora komputera osobistego - nie istniej 瘸dne znane testery wydajno軼i, AVRy nie posiadaj wewn皻rznego programowalnego generatora cz瘰totliwo軼i ani 廝鏚豉 zasilania. Ponadto podczas zamra瘸nia p造tki prototypowej tak瞠 inne jej elementy by造 ch這dzone, cz瘰to by這 to 廝鏚貫m ich awarii. Na szcz窷cie uda這 si pokona wszystkie problemy napotkane podczas realizacji projektu.

    Ciek造 azot (LN2)

    Autor ju od dawna chcia wykorzysta do czego ciek造 azot (LN2). Okazuje si 瞠 w okolicach Moskwy, gdzie mieszka, istnieje szereg firm sprzedaj帷ych LN2 osobom fizyczny. Najbli瞠j jego miejsca zamieszkania znajduje si NII KM, gdzie litr ciek貫go azotu mo積a kupi ju za $1,5. Oczywi軼ie ceny wahaj si i czasami dochodz a do $8.

    Ciek造 azot jest - dos這wnie - robiony z powietrza. Jest ono skraplane, a nast瘼nie sk豉dniki s separowane od siebie w kolumnie frakcjonuj帷ej. Innym sposobem jest oddzielenie najpierw azotu od innych gaz闚 sk豉daj帷ych si na powietrze, a nast瘼nie skroplenie go. Do oddzielania innych gaz闚 od azotu u篡wa si najcz窷ciej filtr闚 zeolitowych. Maszyny do wytwarzania ciek貫go azotu dost瘼ne s komercyjnie, a koszt elektryczno軼i potrzebnej do wytworzenia jednego litra LN2 to oko這 $0,15 - $0,30... wiadomo ju o co prosi 鈍. Miko豉ja ;).

    Przetaktowanie Arduino z ch這dzeniem ciek造m azotem
    Przetaktowanie Arduino z ch這dzeniem ciek造m azotem


    Pomimo bardzo niskiej temperatury ciek貫go azotu (-196 蚓 ) mo積a go normalnie transportowa z wykorzystaniem zwyk造ch stalowych pojemnik闚 (szklane s wykluczone - stres termiczny w szkle spowoduje ich p瘯ni璚ie). Po dodaniu niewielkiej izolacji termicznej - 1 cm piankowego materia逝 plus warstwa folii) LN2 m鏬 by przechowywany przez oko這 30 godzin. Dla por闚nania - w dedykowanych pojemnikach na ciek造 azot o pojemno軼i 5 L (naczynia Dewara - przyp. t逝m.) LN2 mo積a przechowywa nawet przez 25 dni. Pami皻a nale篡 瞠 naczy z skroplonym gazem nie mo積a szczelnie zamyka! paruj帷y gaz wytworzy ci郾ienie zdolne rozerwa pojemnik. Ka盥y pojemnik.

    Przetaktowanie Arduino z ch這dzeniem ciek造m azotem


    Testy mikrokontrolera

    Autor zmuszony by napisa odpowiednie oprogramowanie testuj帷e do AVRa. Testuje ono zapis i odczyt z pami璚i SRAM, odczyt pami璚i flash a tak瞠 wykonuje operacje arytmetyczne i monitoruje przebieg programu. Pomys testu jest bardzo prosty - ka盥y krok niemal瞠 losowo zmienia sum kontroln, ale po pewnej licznie cykli suma kontrolna zbiega do ustalonej warto軼i. Program da si pobra z strony autora.

    Rezultaty analizy wy鈍ietlane s na standardowym LCD (HD44780) pod陰czonym do mikrokontrolera szyn 4 bitow. W drugiej linijce wy鈍ietlacza znajduj si wszystkie istotne dane - numer iteracji oraz suma kontrolna. Je郵i wszystko jest w porz康ku suma kontrolna powinna wynosi 12345678. Pierwsze dwie cyfry odpowiadaj za test SRAM, nast瘼ne za flash, test arytmetyki i dzia豉nia programu. B喚dy w sumie kontrolnej si kumuluj, zatem 瘸den b陰d nie pozostanie niezauwa穎ny, nawet je郵i wydarzy si tylko raz.

    Przetaktowanie Arduino z ch這dzeniem ciek造m azotem


    Rezultaty badania stabilno軼i programu s tak瞠 podawane na mrugaj帷e pomara鎍zowe LEDy na p造tce. R闚nomierne mrugania oznacza 瞠 wszystko jest OK. Jedno kr鏒kie mrugni璚ie odpowiada za b陰d SRAM, dwa za flash etc.

    Przy testach w temperaturze oko這 -100 蚓 najcz瘰tszymi b喚dami by造 b喚dy wynikaj帷e z ci庵這軼i programu, przy temperaturze LN2 (-196 蚓) najcz窷ciej zawodzi豉 pami耩 SRAM. Wy鈍ietlanie b喚d闚 na LEDach zosta造 zaimplementowane z powodu potencjalnych trudno軼i z implementacj obs逝gi wy鈍ietlacza spowodowanych podwy窺zonym napi璚iem pracy. Jednak瞠 w rzeczywisto軼i okaza這 si inaczej - w豉軼iwo軼i diod LED drastycznie zmieni造 si po sch這dzeniu. Najpierw zmieni造 one kolor, a nast瘼nie przesta造 w og鏊e 鈍ieci. Wszystko wskazuje na to 瞠 pod wp造wem zmiany temperatury przerwa energetyczna p馧przewodnika zwi瘯szy豉 si na tyle 瞠 napi璚ie przy這穎ne do diody by這 niedostateczne. Poni瞠j dok豉dniej opisano ten efekt.

    Generator zegara taktuj帷ego

    Arduino zazwyczaj taktowane jest z wykorzystaniem generatora kwarcowego. Fundamentalne cz瘰totliwo軼i tego typu generator闚 zazwyczaj wynosz 30 MHz lub mniej, co oznacza 瞠 nie jeste鄉y w stanie wykorzysta tego rozwi您ania do porz康nego przetaktowania uk豉du, musimy wykorzysta zewn皻rzny generator. Aby nie zmienia nic w samej p造tce prototypowej po prostu odgi皻o dwa piny mikrokontrolera i pod陰czono jest do zewn皻rznego generatora zegarowego. Oczywi軼ie fuse bity zosta造 odpowiednio ustawione aby mikrokontroler korzysta z zewn皻rznego zegara, co wymaga這 wykorzystania zewn皻rznego programatora r闚noleg貫go. (TL866CS MiniPro). Na zdj璚iu poni瞠j, opr鏂z programatora, wida zewn皻rzny modu przetwornicy DC-DC opaty o LM2596, kt鏎y zosta wykorzystany do zasilania uk豉du.

    Przetaktowanie Arduino z ch這dzeniem ciek造m azotem


    Autor niestety nie posiada generatora laboratoryjnego o zakresie do 100 MHz, a jako 瞠 nie jest to tanie urz康zenie samodzielnie skonstruowa prosty generator do taktowania tego uk豉du. Za這瞠nia by造 proste - cz瘰totliwo嗆 od 16 MHz do 100 MHz, wype軟ienie impuls闚 50%, przebieg oczywi軼ie prostok徠ny. Po pewnych problemach uda這 mu si skonstruowa taki uk豉d. Okaza這 si 瞠 wi瘯szo嗆 dost瘼nych aktualnie popularnych uk豉d闚 TTL nie radzi sobie za dobrze z tak du篡m zakresem cz瘰totliwo軼i lub dzia豉 niestabilnie. Schemat generatora poni瞠j.

    Przetaktowanie Arduino z ch這dzeniem ciek造m azotem


    Opornik R1 s逝篡 tutaj do terminacji szeregowej uk豉du, a tak瞠 ogranicza nadmierne napi璚ie na wyj軼iu. Przy zasilaniu 8V szpilki napi璚ia mog造 by dochodzi nawet do 16 V, co jest niebezpieczne dla mikrokontrolera. Do jego skonstruowania mo積a wykorzysta uk豉dy AC, LVC oraz VHC. Uk豉dy HC s zbyt wolne (maks 50 MHz). Odradza si r闚noleg貫 陰czenie wyj嗆 uk豉d闚, gdy z uwagi na r騜ny ich czas za陰czania czasami na wyj軼iu, na kilka nanosekund, pojawia si sygna o amplitudzie 0,5 V.

    Przetaktowanie Arduino z ch這dzeniem ciek造m azotem


    Co dzieje si z elementami elektronicznymi w temperaturach kriogenicznych?

    Po sch這dzeniu do temperatury ciek貫go azotu rezystancja metali znacznie spada. Na przyk豉d op鏎 cewki wynosi 56,3 Ω w temperaturze pokojowej, a jedynie 6,6 Ω w temperaturze LN2 - spadek o czynnik 8,5. W przypadku kondensator闚 sprawy s znacznie bardziej skomplikowane. Pojemno嗆 kondensator闚 spada o 5..6 rz璠闚 wielko軼i - w zasadzie do zera. Ceramiczne kondensatory zachowuj si zale積ie od u篡tego dielektryka - Y5V spada do zera, dro窺ze X7R spada do oko這 2/3 pojemno軼i natomiast w przypadku kondensator闚 z dielektrykiem NP0 spadek to tylko 1%, jednak瞠 te ostatnie da si zakupi tylko do oko這 1000 pF. Zatem je郵i do odsprz璕ania zasilania w uk豉dzie wykorzystano kondensatory z dielektrykiem Y5V uk豉d mo瞠 nie dzia豉 stabilnie w temperaturze LN2. W przypadku podgrzewania kondensator闚, do oko這 100 - 150 蚓 efekt jest podobny, mo積a je zatem testowa w takich warunkach. Aby zapewni stabilne dzia豉nie mikrokontrolera autor zalutowa kondensatory X7R i NP0 bezpo鈔ednio na wyprowadzenia zasilaj帷e AVRa.

    W przypadku p馧przewodnik闚 niska temperatura poszerza przerw energetyczn i zwi瘯sza ruchliwo嗆 no郾ik闚 (dziur i elektron闚), jednak瞠 nie jest to proces liniowy. W praktyce w ciek造m azocie spadek napi璚ia na diodzie krzemowej wynosi 1,1 V zamiast 0,6 V znanego z temperatury pokojowej. Efekt ten powa積ie wp造wa na dzia豉nie analogowej cz窷ci uk豉du. Drug konsekwencj zwi瘯szenia si przerwy energetycznej jest zmiana koloru emisji diod LED. Poszerzenie przerwy energetycznej powoduje przesuni璚ie si emisji w stron kr鏒kofalow (ku niebieskiemu). Efekt ten wida najlepiej dla diod 鄴速ych i czerwonych - 鈍iec na zielono. Jednocze郾ie wzrasta zapotrzebowanie na napi璚ie.



    Czemu uk豉dy CMOS dzia豉j szybciej w niskiej temperaturze?

    Pr璠ko嗆 dzia豉nia uk豉d闚 wykonanych w technice CMOS zale篡 g堯wnie od tego jak szybko tranzystory s w stanie na豉dowa paso篡tnicz pojemno嗆 (pojemno嗆 z陰cza plus pojemno嗆 bramki) poprzez paso篡tniczy op鏎 i induckyjno嗆 (po陰czenia pomi璠zy tranzystorami). Gdy zmniejszymy temperatur spada op鏎 po陰cze, co powoduje 瞠 ca這嗆 dzia豉 szybciej. Zatem - LN2 pomaga w przetaktowywaniu uk豉du nie dlatego 瞠 pomaga w odprowadzaniu ciep豉 z uk豉du, ale dlatego 瞠 zmienia - na lepsze - parametry elektryczne uk豉d闚 CMOS.

    Niech przetaktowywanie si rozpocznie!

    Po wszystkich opisanych powy瞠j przygotowaniach mo積a by這 przyst徙i do samego eksperymentu. W陰czony uk豉d umieszczono w kuwecie i zacz皻o wlewa LN2. Po chwili od wlania azotu... pod鈍ietlenie LCD zagas這, a sama p造ta si zawiesi豉. Gigantyczna pora磬a. Jednak瞠 po podniesieniu p造tki lekko powy瞠j poziomu cieczy, co spowodowa這 jej podgrzanie, p造ta dzia豉豉 poprawnie i stabilnie z zegarem do 45 MHz. Jednak瞠 sam rezultat nie by stabilny, gdy temperatura uk豉du p造wa豉.

    Po dok豉dniejszej analizie tego efektu okaza這 si 瞠 winnym tego zachowania mo瞠 by detektor zapadu napi璚ia (ang. brown-out - spadek napi璚ia poni瞠j pewnego progu, wy窺zego ni black-out, czyli totalny zanik zasilania - przyp. t逝m.). Po wy陰czeniu detektora zapadu napi璚ia zasilaj帷ego p造tka dzia豉豉 w pe軟i poprawnie w czasie zanurzenia w LN2. Jednak瞠 problem zwi您any z pod鈍ietleniem LCD nadal by aktualny. Pod鈍ietlenie zasilane by這 z p造tki wyposa穎nej w liniowy stabilizator napi璚ia. Okazuje si 瞠 w temperaturach kriogenicznych uk豉d ten nie dzia豉 lub napi璚ie by這 zbyt ma貫 aby zapali diodowe pod鈍ietlenie LCD.

    Stabilny zegar uk豉du wyni鏀 w tych warunkach oko這 50 MHz. Na tym etapie autor zacz掖 zwi瘯sza napi璚ie zasilania, a do 8 V. Powy瞠j tego napi璚ia mikrokontroler przestawa dzia豉 stabilnie. Przy napi璚iu oko這 7,5 V - 8 V uda這 si osi庵n望 stabiln prac przy zegarze 65,3 MHz. Dla por闚nania w temperaturze pokojowej przy zasilaniu 5V maksymalny zegar wyni鏀 32,5 MHz, a przy zasilaniu 8 V 37 MHz. Przeprowadzono godzinn pr鏏 stabilno軼i na 65 MHz - nie zosta造 wykryte 瘸dne b喚dy podczas pracy Arduino. W trakcie tego eksperymentu zu篡to 3 litry ciek貫go azotu.

    Przetaktowanie Arduino z ch這dzeniem ciek造m azotem Przetaktowanie Arduino z ch這dzeniem ciek造m azotem Przetaktowanie Arduino z ch這dzeniem ciek造m azotem


    Po wyj璚iu Arduino z ciek貫go azotu natychmiastowo pokrywa si ono szronem

    Przetaktowanie Arduino z ch這dzeniem ciek造m azotem




    Podsumowanie

    * Arduino UNO wyposa穎ne w ATmega328P jest stabilne przy zasilaniu 8 V do cz瘰totliwo軼i taktowania 65,3 MHz w temperaturze ciek貫go azotu.
    * Uda這 si eksperymentalnie sprawdzi jak elementy elektroniczne zmieniaj swoje w豉軼iwo軼i w temperaturach kriogenicznych - metal zmniejsza op鏎, kondensatory trac pojemno嗆, przerwa energetyczna p馧przewodnik闚 poszerza si (diody LED zmieniaj kolor, uk豉dy analogowe dzia豉j inaczej)
    * Podczas sch豉dzania uk豉d闚 poni瞠j 0 蚓 nale篡 pami皻a o ogrzewaniu kondensator闚. W innym razie uk豉d nie b璠zie stabilny z uwagi na brak odsprz璕ania zasilania.
    * 畝dne Arduino nie zosta這 skrzywdzone w trakcie eksperymentu ;). P造tka prototypowa po ca造m eksperymencie nadal jest w pe軟i funkcjonalna.
    毒鏚豉:
    http://3.14.by/en/read/arduino-liquid-nitrogen-overclocking

    Fajne! Ranking DIY
    Potrafisz napisa podobny artyku? Wy郵ij do mnie a otrzymasz kart SD 64GB.
    O autorze
    ghost666
    T逝macz Redaktor
    Offline 
    Fizyk z wykszta販enia. Po zrobieniu doktoratu i dw鏂h latach pracy na uczelni, przeszed do sektora prywatnego, gdzie zajmuje si projektowaniem urz康ze elektronicznych i programowaniem. Od 2003 roku na forum Elektroda.pl, od 2008 roku cz這nek zespo逝 redakcyjnego.
    ghost666 napisa 9480 post闚 o ocenie 7358, pom鏬 157 razy. Mieszka w mie軼ie Warszawa. Jest z nami od 2003 roku.
  • PCBway
  • #2
    dondu
    Moderator Mikrokontrolery Projektowanie
    Wprawdzie temat dotyczy przetaktowania, ale szkoda, 瞠 autor nie zg喚bi tematu wp造wu temperatury na cz窷 analogow (wspomnia jedynie, 瞠 jest ogromny), wszak to jeden z najistotniejszych element闚 mikrokontroler闚.
  • #3
    maciej_333
    Poziom 34  
    Przetaktowa貫m ostatnio w pewnym projekcie Atmeg16A do 20MHz. Niby dzia豉 dobrze, ale s np. problemy z UART'em. Dzia豉 dziwnie powy瞠j 38400b/s. Natomiast w Atmedze32 UART nie dzia豉 wcale przy tej cz瘰totliwo軼i taktowania.
  • PCBway
  • #4
    shg
    Specjalista techniki cyfrowej
    Chcia豚ym zaprzeczy doniesieniom, jakoby nie mo積a by這 wlewa ciek貫go azotu do szklanych pojemnik闚. Mo積a, ale pojemnik musi by wykonany z odpowiedniego szk豉. Nadaje si np. Duran, czyli szk這 borokrzemianowe 3.3 (wsp馧czynnik rozszerzalno軼i cieplnej 3.3e-6 1/K). Bez problemu mo積a kupi szklane dewary (obudowane jakim plastikiem / metalem) przeznaczone do przechowywania LN2. Sam takiego u篡wam.

    Ca造 czas mam w planie sprawdzenie jak zachowa si ca造 zestaw LED (r騜ne kolory) przy takim ch這dzeniu. My郵a貫m te o zrobieniu superniskoszumnego wzmacniacza mikrofonowego, niestety to nie CCD i ch這dzenie do -40蚓 zmniejsza szum tylko nieznacznie.
  • #5
    NdYAG
    Poziom 16  
    shg napisa:
    Chcia豚ym zaprzeczy doniesieniom, jakoby nie mo積a by這 wlewa ciek貫go azotu do szklanych pojemnik闚. Mo積a, ale pojemnik musi by wykonany z odpowiedniego szk豉. Nadaje si np. Duran, czyli szk這 borokrzemianowe 3.3 (wsp馧czynnik rozszerzalno軼i cieplnej 3.3e-6 1/K). Bez problemu mo積a kupi szklane dewary (obudowane jakim plastikiem / metalem) przeznaczone do przechowywania LN2. Sam takiego u篡wam.
    .


    Tutaj chodzi o co innego: zabrudzony pojemnik szklany jest niebezpieczny, bo inna jest rozszerzalno嗆 szk豉 a inna pokrywaj帷ego szk這 brudu (czy innej obecnej substancji, np. wody). Poniewa s to naczynia z w御kimi szyjami trudno obejrze wn皻rze takiego pojemnika i wyczy軼i. Je郵i pojemnik jest czysty to ok.
  • #6
    jacynka84
    Poziom 26  
    Co te ludzie z ta atmeg...Niech Xmega si wreszcie spopularyzuje SMD i niskie napi璚ia.
    Co rusz to dziadowska atmega8 si gdzie przewija.

    Cho rozumiem 瞠 to akurat na cele eksperymentu.
    Co do przetaktowania to Xmega 32a4 dzia豉 mi na 64Mhz, (org 32Mhz), ale prefyreia nie podzielaj jej zapa逝 i taki Lcd ILI9341 na SPI siada powy瞠j 48Mhz o ile pami皻am, jednak ledy itp proste rzeczy dzia豉造 przy 64Mhz co znaczy這 瞠 sama xmega te, zobacz czy da si jej pocisn望 72Mhz+.
  • #7
    ghost666
    T逝macz Redaktor
    jacynka84 napisa:
    Co te ludzie z ta atmeg...Niech Xmega si wreszcie spopularyzuje SMD i niskie napi璚ia.
    Co rusz to dziadowska atmega8 si gdzie przewija.

    Cho rozumiem 瞠 to akurat na cele eksperymentu.
    Co do przetaktowania to Xmega 32a4 dzia豉 mi na 64Mhz, (org 32Mhz), ale prefyreia nie podzielaj jej zapa逝 i taki Lcd ILI9341 na SPI siada powy瞠j 48Mhz o ile pami皻am, jednak ledy itp proste rzeczy dzia豉造 przy 64Mhz co znaczy這 瞠 sama xmega te, zobacz czy da si jej pocisn望 72Mhz+.


    (nie)stety AVRy to nowe 8051 i ATmega b璠zie 篡豉 jeszcze bardzo d逝go w鈔鏚 hobbyst闚, tak jak rdze '51 egzystuje nadal w wielu aplikacjach embedded.
  • #8
    jacynka84
    Poziom 26  
    No niestety.
    Teraz Xmega kr璚i貫m na 3,3V rzecz jasna na wew. oscylatorze, na 64Mhz chodzi normalnie cho na Lcd 320x240 pojawia造 si rzadko artefakty, ale zasadniczo dzia豉 niemal normalnie, z tym lcd przy 72Mhz nie startowa豉, ale bez lcd startowa豉 ale robi豉 b喚dy nawet przy b造skaniu ledami.
    Mo瞠 w celach takich jak w artykule podwy窺z napi璚ie ale to nie teraz, tym bardziej 瞠 lcd nie mog traktowa za wysokim napi璚iem bo ryzykowne.