Spisu treści:
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-13 06:58
Co miesiąc płacimy wysokie rachunki za wypożyczenie pakietów telewizyjnych. Ale nie mamy pojęcia, ile kanałów faktycznie oglądamy. Nawet my nie mamy pojęcia, ile godzin spędzamy na oglądaniu telewizji.
Tutaj zbudowałem rejestrator danych, który będzie przechowywać twoje wzorce oglądania telewizji.
Dzięki temu możesz
- Śledź, który kanał oglądasz najczęściej, a który nie. Możesz porzucić niechciane kanały i zaoszczędzić trochę pieniędzy
- Ile czasu Twoje dzieci oglądają na plecach i jakie kanały oglądają
- Ile godzin spędzasz oglądając telewizję itp.
Krok 1: Wymagany materiał
Aby ukończyć projekt, potrzebujesz następujących materiałów
- 1 X Arduino Uno/Mega
- 1 X moduł RTC 1307
- 1 X moduł karty microSD
- 1 X karta micro sd;
- 1 X komórka na monety
- 1 X odbiornik podczerwieni TSOP1738
- 1 X LED (opcjonalnie)
- Rezystor 2X470 Ohm
- Kable rozruchowe
- Mała Veroboard
- Zasilanie USB w kablu / adapter 9V
Krok 2: Wymagane narzędzia i oprogramowanie
- IDE Arduino
- MS Excel
- Lutownica
- Brzeszczot
- Pistolet na gorący klej
- Odpowiednia szafka do przechowywania projektu
- Śrubokręt
Krok 3: Schemat ideowy
Proszę znaleźć schemat na obrazku
Krok 4: Protokół IR
Do wykonania projektu potrzebujemy następującej biblioteki
- Biblioteka IR
- Biblioteka kart SD.
- Biblioteka RTC
- Najpierw musimy zrozumieć nasz protokół Set Box IR. Aby to znaleźć, prześlij przykładowy kod z biblioteki IR. Załączony zrzut ekranu
- Po wykonaniu musimy dowiedzieć się, który protokół jest używany
- W moim przypadku mam trochę pecha
- Znalazłem nieznany kod
- Następnie robię log dla wszystkich odebranych 36-bitowych danych i robię kod działający dla mnie.
- Przeanalizowałem dane i stwierdziłem, że zmieniają się tylko 4 bity i to jest klucz do danych.
Krok 5: Kod Arduino
Opisałem kod w pliku INO i wideo. Podstawowym algorytmem jest
- Dekodowanie IR
- Wartość klucza IR
- weź aktualny czas z RTC
- Połącz dane i przechowuj na karcie SD
linki biblioteczne
github.com/adafruit/RTClib // Biblioteka RTC
github.com/z3t0/Arduino-IRremote // Biblioteka IR
Krok 6: Analiza LOGÓW
Mamy plik w formacie csv. Kroki do analizy
-
Musimy zrozumieć naszą logikę STB. Mój STB używa 3 cyfr numeru kanału, a kanał to 100, 703, 707 202 itd. Limit czasu naciśnięcia klawisza wynosi 3 sekundy. Istnieją trzy sposoby zmiany kanału
- Naciskając bezpośredni kanał nr
- Naciskając przycisk Kanał + i Kanał -
- Naciskając przycisk Zamień, aby uzyskać poprzednio oglądany kanał
- Ponieważ mikrokontroler nie jest w stanie analizować tych wszystkich warunków pomiędzy nimi. Przeanalizowałem dane w excelu. Użyłem Arduino do przechowywania dziennika zdalnego naciśnięcia
- Proszę obejrzeć film, aby uzyskać pełne zrozumienie.