Obsah:
- Krok 1: Požadavky
- Krok 2: Instalace softwaru
- Krok 3: Instalace softwaru - Pt.2
- Krok 4: Hardwarové zapojení
- Krok 5: GPIO piny na Raspi
- Krok 6: Testování
- Krok 7: Odstraňování problémů
- Krok 8: Konečná instalace
Video: Digitální hodiny amatérského rádia Raspberry Pi: 8 kroků (s obrázky)
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:22
Přehled
Amatérští rozhlasoví operátoři (alias HAM rádio) používají pro většinu své činnosti 24hodinový UTC (univerzální koordinovaný čas). Rozhodl jsem se postavit digitální hodiny pomocí levných 4místných displejů TM1637 a Raspberry Pi Zero W namísto hodin s GUI. (Hardware je zábava!)
Displej poháněný TM1637 má čtyři 7 segmentové LED se středním dvojtečkou „:“mezi dvěma sadami číslic. K ovládání displeje jsou zapotřebí dva vodiče plus 5 V + a uzemnění, celkem tedy 4 vodiče.
U tohoto konkrétního projektu jsem chtěl, aby Raspi získal čas ze serverů NTP (Network Time Protocol) přes internet. Plánuji další verzi těchto hodin pro běh na Arduino Uno a modulu Real-Time Clock, když není k dispozici WiFi a pro přenosnější provoz.
Také jsem chtěl, aby hodiny ukazovaly místní čas ve formátech 12 hodin a 24 hodin, stejně jako UTC ve formátech 12 hodin a 24 hodin. Software je navržen tak, aby vám umožnil používat pouze UTC 24 hodin (typické šunky) nebo různé časy až na 4 různých displejích.
Můžete také nastavit ČASOVOU ZÓNU, kterou chcete použít místo výchozího místního času. Každý ze čtyř displejů tedy mohl zobrazit jiné časové pásmo a ve formátu 12 hodin nebo 24 hodin.
Tento projekt vyžaduje pájení konektorů nebo vodičů na moduly Pi a/nebo tm1637.
Úplné pokyny jsou také k dispozici na GITHUB:
Krok 1: Požadavky
• Raspberry Pi2, 3 nebo Zero W. (tj. Jakékoli pi se 40kolíkovým konektorem a ethernetem/Wifi)
• 4-TM1637 4místné zobrazovací moduly
A/nebo
POZNÁMKA: můžete použít větší nebo menší, pokud jsou kompatibilní s TM1637.
• Kabelový svazek se 16 vodiči (každý TM1637 potřebuje 4 vodiče)
• Bezpájecí prkénko a dráty Or
• Pájitelný prkénko a různé kolíkové konektory.
• 8 GB MicroSD nebo větší pro Pi
• 5V napájecí zdroj pro Pi.
Krok 2: Instalace softwaru
Tato aplikace používá snadno použitelnou knihovnu pythonTM1637.py napsanou Timem Waizeneggerem. (Pokud chcete podrobnosti o knihovně, podívejte se na:
Věděl jsi?
Pokud nainstalujete Raspbian na kartu SD pomocí počítače, můžete na kartě vytvořit dva soubory pro konfiguraci přístupu WiFi a SSH před spuštěním na Raspberry?
Předpokládejme proto, že je vaše karta SD aktuálně připojena jako K: na vašem PC:
1) Nainstalujte obrázek Raspbian Lite na SD.
www.raspberrypi.org/software/operating-systems/#raspberry-pi-os-32-bit
2) Pomocí poznámkového bloku vytvořte soubor s názvem „ssh“a pomocí příkazu Uložit jako „Všechny soubory“do K: / ssh
Soubor může obsahovat cokoli. Důležitý je název souboru. Nesmí být „ssh.txt“!!!
3) S poznámkovým blokem vytvořte druhý soubor s názvem „wpa_supplicant.conf“s následujícím:
ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdevupdate_config = 1 network = {ssid = "mySSID" psk = "mypassword" key_mgmt = WPA-PSK}
Použijte Uložit jako „Všechny soubory“do K: / wpa_supplicant.conf
Znovu nenechte Poznámkový blok změnit na „wpa_supplicant.conf.txt“!!
Když spouštíte Raspberry poprvé, Raspbian je vyhledá a připojí se k vašemu Wifi. IP adresu však budete muset vyhledat na svém routeru, protože je přiřazena automaticky.
Krok 3: Instalace softwaru - Pt.2
1. Pokud jste tak ještě neučinili, nainstalujte si verzi Raspbian Lite na kartu microSD o velikosti 8 GB nebo větší. Nepotřebujete verzi GUI, protože tento projekt nepoužívá monitor ani klávesnici.
POZNÁMKA !: Tento projekt vyžaduje Python2.7!
www.raspberrypi.org/software/operating-systems/#raspberry-pi-os-32-bit
2. K Raspberry budete muset přistupovat vzdáleně přes SSH. V systému Windows můžete použít terminálový program PUTTY SSH. Na Macu stačí vyvolat okno příkazového terminálu.
3. Vložte kartu microSD do Pi a zapojte napájení. Zavedení bude trvat několik minut.
4. Pro vzdálené přihlášení ke svému Raspberry Pi budete potřebovat zjistit jeho IP adresu. Můžete zkusit: $ ssh [email protected] (Nebo z Putty zadejte název hostitele [email protected] V opačném případě budete muset zjistit, zda váš router zobrazuje IP adresy vašich místních zařízení. Výchozí id/passwd je „pi /malina"
Jakmile jste přihlášeni jako uživatel pi:
5. Aktualizujte svůj Raspbian: $ sudo apt update $ sudo apt upgrade
6. Konfigurujte Raspberry: $ sudo raspi-config a. Změnit heslo uživatele b. Možnosti lokalizace -> Změnit časové pásmo Vyberte své místní časové pásmo c. Kartu dokončete
7. Nainstalujte software RaspiDigiHamClock: $ cd/home/pi $ sudo apt update $ sudo apt install git $ git clone
8. Vypněte Pi pro nastavení hardwaru $ nyní vypněte Poté, co LED zhasne, odpojte napájení
Krok 4: Hardwarové zapojení
Konektory můžete připájet na moduly TM1637 a Raspberry Pi (pokud již konektor nemá). Než začnete, rozhodněte se, jak chcete monitory namontovat a jestli budete používat prkénko nebo pájecí vodiče přímo na moduly Pi a displeje.
Modulové kolíky TM1637
Poznámka k zapojení: Některé moduly tm1637 překlápějí piny +5V a GND! Nemusí tedy vypadat stejně jako na fotografiích.
Modul TM1637 je čtyřmístný LED displejový modul, který používá čip ovladače TM1637. K ovládání 4místného 8segmentového displeje potřebuje pouze dvě připojení. Dva další vodiče napájí 5+ voltů a uzemňují.
PIN DESC CLK Hodiny DIO data v GND uzemnění 5V +5 voltů
Některé moduly tm1637 překlápí piny +5v a GND, zkontrolujte tedy označení svého modulu
Test každého modulu Poté dočasně připojte první modul k pinům zobrazeným níže.
DOČASNÝ TEST MODULETM1637 Modul Pin Pi Fyzický Pin# 5V 2 GND 6 CLK 40 DIO 38 Rozložení pinů najdete níže v diagramech.
Druhá fotografie ukazuje dva displeje dočasně připojené k Raspberry Pi 3 se spuštěným softwarem.
1. Jakmile budete mít modul dočasně zapojený a zkontrolujete vaše zapojení
2. Zapněte Raspberry Pi. Červená dioda na modulu by se měla rozsvítit, ale zatím se nezobrazí ŽÁDNÝ DISPLEJ.
3. SSH do vašeho Pi znovu jako dříve.
$ cd RaspiDigiHamClock
$ python test.py
Měli byste vidět cyklus zobrazení prostřednictvím různých krátkých zpráv. Pokud tak neučiníte, nejprve znovu zkontrolujte zapojení! Je snadné převrátit vodič nebo zapojit do nesprávného kolíku GPIO na Pi. Pokud se zobrazí chybová zpráva Pythonu, ověřte svou verzi Pythonu pomocí:
$ python -V (velké „V“)
Python 2.7. X
Netestoval jsem proti Pythonu 3, takže si nejsem jistý, zda je knihovna kompatibilní.
Zkopírujte chybovou zprávu (obvykle poslední řádek chyby) a vložte do vyhledávání Google. To může poskytnout vodítko k tomu, co se stalo.
Pokud váš modul funguje, gratulujeme! Víte, že modul a Pi fungují. Nyní opakujte pro každý modul, abyste jej otestovali. (Doporučuji vypnout Pi a vypnout PŘED zapojením/odpojením modulů !!)
$ sudo nyní vypnuto
Krok 5: GPIO piny na Raspi
Tento projekt používá pro Piny ID fyzických desek GPIO.
To je pin 1 až pin 40. Ne číslování pinů GPIO „BCM“. (Ano, trochu matoucí, ale BOARD je pouze počet pinů zleva nahoře vpravo dole.)
Modul displeje TM1637 Modul Pin Pi Fyzický pin#Napájení 5V 2 Zem GND 6
Modul č. 1 CLK 33
DIO 31
Modul č. 2 CLK 36
DIO 32
Modul č. 3 CLK 37
DIO 35
Modul č. 4 CLK 40
DIO 38
Poznámka: V případě potřeby nemusíte přidávat všechny 4 moduly. Můžete mít 1 až 4 moduly. (Ano, je možné přejít na více modulů, ale musíte kód upravit, aby podporoval více.)
ALE MUSÍTE zapojovat moduly postupně od modulu č. 1
Důvodem je, že knihovna TM1637 očekává od modulu ACK, takže se zdá, že jinak čeká.
Ukázkové fotografie pájené prkénka Musíte dodržovat svůj vlastní vzor zapojení, aby odpovídal dříve zobrazeným kolíkům GPIO, protože konektory a moduly, které jsem použil, nemusí odpovídat vašim.
Krok 6: Testování
Páni, to bylo trochu zapojení! Nyní je čas na testování kouře…
Protože již znáte jednotlivé moduly a práci Pi (testovali jste moduly, jak bylo popsáno výše?), Je dalším krokem nastavení souboru. INI a spuštění hodinového programu:
1. Upravte soubor raspiclock.ini
$ cd/home/pi/RaspiDigiHamClock
$ nano raspiclock.ini
2. Změňte počet_modulů na počet připojených kabelů. To je důležité, protože knihovna bude čekat na ACK, pokud nemůže mluvit s modulem. Nezapomeňte zapojit počet modulů, V OBJEDNÁVCE ZOBRAZENÉ v. INI Poznámka: Extra TZ a HR a GPIO PINS jsou ignorovány, pokud je num_modules menší než 4.
3. Přidejte časová pásma pro každý modul.
Toto jsou názvy Linux TZ, například „America/New_York“, EST5EDT, UTC nebo „Local“pro vaše místní časové pásmo nastavené pomocí raspi-config. Výchozí hodnota je UTC
4. Nastavte, zda se má pro každý modul zobrazovat režim 12 hodin nebo 24 hodin
[HODINY]; Počet modulů TM1637 (mezi 1 a 4) num_modules = 2
; Časové zóny pro každý modul
; Pomocí raspi-config nastavte Místní časové pásmo; Výchozí hodnota je UTC; Formát je název Linux TZ nebo 'Local' pro místní čas; 'America/New_York', EST5EDT, UTC, 'Local' TZ1 = Local TZ2 = UTC TZ3 = TZ4 =
; 12/24 hodin pro každý modul
HR1 = 12 HR2 = 24 HR3 = 12 HR4 = 24
; JAS (rozsah 1..7)
LUM = 1
5. Neměli byste upravovat piny GPIO, pokud je nezapojíte do různých pinů #na Pi.
6. Uložte změny a poté spusťte hodiny:
$ python raspiclock.py
Pokud je vše v pořádku, všechny vaše moduly zobrazení by se měly rozsvítit s časy nastavenými v souboru. INI.
Gratulujeme! Přeskočte odstraňování problémů a přejděte na Konečnou instalaci…
Krok 7: Odstraňování problémů
Měli byste vidět několik jednoduchých zpráv o ladění:
Inicializace… Počet modulů = 4 Spuštění hodinové smyčky… Modul č. 1 displayTM () Modul#2 displayTM () Modul#3 displayTM () Modul#4 displayTM () (opakování…)
Pokud jste moduly dříve testovali a všechny fungovaly, pak víte, že moduly a Raspberry jsou dobré.
A) HANG - Pokud se zdá, že zprávy o ladění visí na jednom místě, program čeká na ACK z tohoto modulu#.
Nejprve zkontrolujte zapojení! Je snadné převrátit vodič nebo zapojit do nesprávného kolíku GPIO na Pi.
Za druhé, vyměňte moduly, abyste zjistili, zda se modul náhle nepovedl.
Za třetí, zkontrolujte soubor raspiclock.ini, zda neobsahuje chyby. Je -li to nutné, smažte celý adresář a proveďte další GIT CLONE pro opětovné načtení.
Začtvrté, znovu zkontrolujte zapojení!;-)
B) Pokud se vám zobrazí chybová zpráva Pythonu, ověřte svou verzi Pythonu pomocí:
$ python -V (velké „V“)
Python 2.7. X
Netestoval jsem proti Pythonu 3, takže si nejsem jistý, zda je knihovna kompatibilní. Zkopírujte chybovou zprávu (obvykle poslední řádek chyby) a vložte do vyhledávání Google. To může poskytnout vodítko k tomu, co se stalo.
Krok 8: Konečná instalace
1. Znovu upravte soubor. INI a nastavte ladění = 0. $ cd/home/pi/RaspiDigiHamClock
$ nano raspiclock.ini
2. Zkontrolujte také, zda jsou časové pásma TZ a nastavení HR 12/24 hodin podle vašich představ.
3. Nastavte požadovaný jas mezi 1 a 7.
4. Spusťte skript install.sh a přidejte do pi crontab pro automatické spuštění při spuštění.
$ sh install.sh
5. Restartujte
$ sudo restart
6. Mělo by se restartovat a poté spustit.
DOKONČENO!
Doporučuje:
Jak vyrobit analogové hodiny a digitální hodiny s LED páskem pomocí Arduina: 3 kroky
Jak vyrobit analogové hodiny a digitální hodiny s LED páskem pomocí Arduina: Dnes vyrobíme analogové hodiny & Digitální hodiny s LED páskem a modulem MAX7219 Dot s Arduino. Budou opravovat čas podle místního časového pásma. Analogové hodiny mohou používat delší LED pásek, takže je lze zavěsit na zeď a stát se uměleckým
Digitální hodiny, ale bez mikrokontroléru [hardcore elektronika]: 13 kroků (s obrázky)
Digitální hodiny, ale bez mikrokontroléru [Hardcore Electronics]: Stavět obvody s mikrokontrolérem je docela snadné, ale úplně zapomínáme na spoustu práce, kterou musel mikrokontrolér vykonat, aby dokončil jednoduchý úkol (i když bliká LED). Jak těžké by bylo vytvořit kompletní digitální hodiny
CLEPCIDRE: Digitální hodiny Cider Bottles: 8 kroků (s obrázky)
CLEPCIDRE: Digitální hodiny Cider Bottles: Než se ponořím do popisu objektu, musím vysvětlit kontext, ve kterém byl navržen a postaven. Moje žena je výtvarnice a pracuje v zásadě s hlínou, jako keramička, ale také s jinými materiály, jako je dřevo, břidlice nebo sklo. Ve většině jejích
Digitální chronometr vše v jednom (hodiny, časovač, alarm, teplota): 10 kroků (s obrázky)
All in One Digital Chronometer (Clock, Timer, Alarm, Temperature): Plánovali jsme udělat Timer pro nějakou jinou soutěž, ale později jsme také implementovali hodiny (bez RTC). Když jsme se dostali k programování, začali jsme se zajímat o aplikaci dalších funkcí na zařízení a nakonec jsme přidali DS3231 RTC, as
Přepracované hodiny rádia: 6 kroků
Přepracované rádiové hodiny: Tento návod ukáže, jak předělat vadné rádiové hodiny, jejichž LED displej je nahrazen malými LED světelnými varhany, čímž se zařízení stane atraktivnějším pro použití pouze jako rádio