Obsah:

Digitální hodiny amatérského rádia Raspberry Pi: 8 kroků (s obrázky)
Digitální hodiny amatérského rádia Raspberry Pi: 8 kroků (s obrázky)

Video: Digitální hodiny amatérského rádia Raspberry Pi: 8 kroků (s obrázky)

Video: Digitální hodiny amatérského rádia Raspberry Pi: 8 kroků (s obrázky)
Video: SUT - Raspberry Pi 23.4.2013 2024, Listopad
Anonim
Digitální hodiny amatérského rádia Raspberry Pi
Digitální hodiny amatérského rádia Raspberry Pi

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

Požadavky
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í

Hardware zapojení
Hardware zapojení
Hardware zapojení
Hardware zapojení
Hardware zapojení
Hardware 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

GPIO piny na Raspi
GPIO piny na Raspi
GPIO piny na Raspi
GPIO piny na Raspi
GPIO piny na Raspi
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

Konečná instalace
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: