piątek 30.10.2026 · tydzień 2 · Radio, czas, pozycja i pola
Zegar DS3231, wyścig kwarców
Na koniec dnia: prawdziwa godzina na wyświetlaczu, start wyścigu zegara UNO z zegarem kwarcowym, i zrozumienie, czemu tani rezonator ucieka.
Wprowadzenie 1/2
Po co to dziś
Twoje pytanie z 16.10 o metronom w liczbach. Zegar DS3231 ma własny kwarc, własną bateryjkę i termometr, którym poprawia kwarc. UNO ma tani rezonator ceramiczny. Zmierzysz różnicę.
Wprowadzenie 2/2
Do czego prowadzi
Po co: węzeł o kwarcach i dokładności czasu (nowy), a praktycznie: stacja pogodowa dostaje znacznik czasu i może zapisywać historię.
Teoria 1/5 · 20 minut przed częściami
Kwarc 32 768 Hz w DS3231 to widełki kamertonu wytrawione w krysztale; częstotliwość zależy od temperatury parabolą z maksimum przy 25 °C.
Układ mierzy temperaturę i dołącza lub odłącza maleńkie kondensatory, żeby to skompensować: 2 ppm, czyli minuta na rok.
Teoria 2/5 · 20 minut przed częściami
Rezonator ceramiczny w UNO (16 MHz) ma dokładność 0,5 % i dryf z temperaturą 10 razy większy; millis() liczy z niego, więc po dobie ucieka od kilku do kilkudziesięciu sekund.
W XIAO kwarc 40 MHz jest lepszy (10–20 ppm), ale bez kompensacji temperatury.
Teoria 3/5 · 20 minut przed częściami
ppm to części na milion: 20 ppm to 20 µs na sekundę, 1,7 s na dobę, 10 minut na rok.
Tę jednostkę spotkasz w każdej karcie katalogowej kwarcu i czujnika.
Teoria 4/5 · 20 minut przed częściami
Adres 0x68 to ten sam, co czujnik ruchu MPU‑6050.
Na jednej magistrali nie mogą być razem: dziś MPU idzie na bok, a w notatce zapisz, jak to rozwiązać (druga magistrala na innych nóżkach XIAO albo mostek AD0 na MPU, który zmienia jego adres na 0x69).
Teoria 5/5 · 20 minut przed częściami
Bateryjka CR2032 podtrzymuje zegar bez zasilania przez lata; pamięć 24C32 na module to 4 kB na notatki, przyda się do dziennika stacji.
Przygotowanie · 10 minut
Zbierz z magazynu i połóż na macie
Adres to pudełko, rząd i kolumna z mapki na wieczku. W bloku 3 wszystko wraca na te same miejsca.
Części (7)
Narzędzia i rzeczy użyte nietypowo (1)
Krok 1 z 6
Konflikt adresów
Odłącz MPU‑6050 (0x68). Podłącz DS3231 z włożoną CR2032. Skaner: 0x68 to teraz zegar, 0x57 to jego pamięć.
Krok 2 z 6
Ustawienie czasu
RTClib: rtc.adjust(DateTime(F(__DATE__), F(__TIME__))) ustawia czas kompilacji. Potem usuń tę linię i Upload ponownie: czas zostaje.
Krok 3 z 6
Zjawisko 1: temperatura z zegara
rtc.getTemperature(): układ ma termometr do kompensacji. Porównaj z SHT31 z przedwczoraj.
Krok 4 z 6
Start wyścigu
Na UNO: program zapisuje millis() i czas z DS3231 na starcie, potem co 10 s wypisuje różnicę w sekundach. Zostaw włączone do jutra.
Krok 5 z 6
Zjawisko 2: zimno
Jutro rano: UNO (bez zegara) w woreczku do lodówki na 30 min, dalej zasilane powerbankiem; porównaj tempo ucieczki przed i po.
Krok 6 z 6
Mostek AD0
Przez lupę znajdź na module MPU‑6050 pole AD0; podaj na nie 3,3 V (przewód) i uruchom skaner: MPU pod 0x69. Konflikt rozwiązany.
Blok 2 · budowa tygodnia · 1/1
Stacja pogodowa, krok 5: historia
Każdy pomiar dostaje znacznik czasu; odbiornik na UNO rysuje na OLED wykres temperatury z ostatniej godziny (60 punktów).
Blok 3 · 30 minut
Dowód, notatka, porządek
zdjęcie OLED z godziną + pierwsza wartość różnicy wyścigu (jutro druga) + skaner z 0x68 i 0x69
Pięć zdań: co kompensuje DS3231; co to ppm; ile ucieka UNO na godzinę; jak rozwiązałeś konflikt adresów; co da lodówka (hipoteza).
- 4-A4Płytka XIAO ESP32-S3 (nr 1 odbiornik, MAC 68:ee:8f:50:c0:74, antena wypięta 22.10)
- 4-A4Płytka XIAO ESP32-S3 (nr 2 nadajnik, MAC 68:ee:8f:50:67:64)
- 4-A4Listwa 7 szpilek w pudełku XIAO
- 4-B1OLED 0,96 cala 128×64 (szpilki GND VCC SCL SDA)
- 9-A2Klon UNO z gniazdem USB-C
- 2-*Płytka stykowa 830 pól
- 2-*Kondensator elektrolityczny 100 µF 50 V
- biurkoMata antystatyczna 60 × 120 cm
Dowód wyślij w rozmowie; po zapisaniu dzień dostaje punkt. Karta dnia: Warsztat → Plan → 30.10