Taula de continguts:

Rellotge digital de ràdio amateur Raspberry Pi: 8 passos (amb imatges)
Rellotge digital de ràdio amateur Raspberry Pi: 8 passos (amb imatges)

Vídeo: Rellotge digital de ràdio amateur Raspberry Pi: 8 passos (amb imatges)

Vídeo: Rellotge digital de ràdio amateur Raspberry Pi: 8 passos (amb imatges)
Vídeo: 10 самых АТМОСФЕРНЫХ мест Дагестана. БОЛЬШОЙ ВЫПУСК #Дагестан #ПутешествиеПоДагестану 2024, De novembre
Anonim
Rellotge digital de ràdio amateur Raspberry Pi
Rellotge digital de ràdio amateur Raspberry Pi

Visió general

Els operadors de ràdio amateur (també coneguda com a ràdio HAM) utilitzen les 24 hores UTC (temps coordinat universal) durant bona part del seu funcionament. Vaig decidir construir un rellotge digital amb pantalles de 4 dígits TM1637 de baix cost i un Raspberry Pi Zero W en lloc de només un rellotge GUI. (El maquinari és divertit!)

La pantalla accionada per TM1637 té quatre leds de 7 segments amb dos punts centrals ":" entre dos conjunts de dígits. Es necessiten dos cables per accionar la pantalla més 5V + i terra per a un total de 4 cables.

Per a aquest projecte en particular, volia que el Raspi obtingués el seu temps dels servidors NTP (Network Time Protocol) a través d'Internet. Estic planejant una altra versió d’aquest rellotge per funcionar amb un mòdul Arduino Uno i un mòdul de rellotge en temps real, per a quan no hi hagi WiFi disponible i per a un funcionament més portàtil.

També volia que el rellotge mostri l’hora local en formats de 12 i 24 hores, així com UTC en formats de 12 i 24 hores. El programari està dissenyat per permetre-vos utilitzar només les 24 hores UTC (pernils típics) o diferents hores en un màxim de 4 pantalles diferents.

També podeu configurar la ZONA HORARIA que voleu utilitzar en lloc de l'hora local predeterminada. Per tant, cadascuna de les quatre pantalles pot mostrar una zona horària diferent i en format de 12 o 24 hores.

Aquest projecte requereix connectors o cables de soldadura als mòduls Pi i / o tm1637.

Les instruccions completes també estan disponibles a GITHUB:

Pas 1: requisits

Requisits
Requisits

• Raspberry Pi2, 3 o Zero W. (és a dir, qualsevol pi amb capçalera de 40 pins i Ethernet / Wifi)

• 4 - Mòduls de visualització de 4 dígits TM1637

I / o

NOTA: podeu utilitzar-ne d'altres de més grans o més petits, sempre que siguin compatibles amb TM1637.

• Arnés de cables amb 16 cables (cada TM1637 necessita 4 cables)

• Taula de pa i cables sense soldar

• Taula de pa que es pot soldar i diversos connectors de pins.

• MicroSD de 8 GB o més per a Pi

• Alimentació de 5v per a Pi.

Pas 2: Instal·lació del programari

Aquesta aplicació utilitza la biblioteca Python TM1637.py fàcil d'utilitzar escrita per Tim Waizenegger. (Si voleu detalls sobre la biblioteca, consulteu:

Ho savies?

Si instal·leu Raspbian en una targeta SD mitjançant un PC, podeu crear dos fitxers a la targeta per configurar l'accés WiFi i SSH abans d'arrencar-lo en un Raspberry?

Per a això, suposeu que la vostra targeta SD està muntada actualment com a K: al vostre PC:

1) Instal·leu la imatge Raspbian Lite a la SD.

www.raspberrypi.org/software/operating-systems/#raspberry-pi-os-32-bit

2) Amb el bloc de notes, creeu un fitxer anomenat només "ssh" i utilitzeu Desa com a "Tots els fitxers" a K: / ssh

El fitxer pot contenir qualsevol cosa. És important el nom del fitxer. NO ha de ser "ssh.txt" !!!

3) Amb el bloc de notes, creeu un segon fitxer anomenat "wpa_supplicant.conf" amb el següent:

ctrl_interface = DIR = / var / run / wpa_supplicant GROUP = netdevupdate_config = 1 network = {ssid = "mySSID" psk = "mypassword" key_mgmt = WPA-PSK}

Utilitzeu Desa com a "Tots els fitxers" a K: / wpa_supplicant.conf

Una vegada més, no deixeu que el Bloc de notes el canviï a "wpa_supplicant.conf.txt".

Quan arrenceu el Raspberry la primera vegada, Raspbian en buscarà i es connectarà al vostre Wifi. Haureu de buscar l'adreça IP al router, ja que s'ha assignat automàticament.

Pas 3: Instal·lació de programari - Pt.2

1. Si encara no ho heu fet, instal·leu la versió Raspbian Lite en una targeta microSD de 8 GB o superior. NO necessiteu la versió de la GUI, ja que aquest projecte no utilitza cap monitor ni teclat.

NOTA: aquest projecte requereix Python2.7!

www.raspberrypi.org/software/operating-systems/#raspberry-pi-os-32-bit

2. Haureu d’accedir al Raspberry remotament mitjançant SSH. Al Windows, podeu utilitzar el programa terminal PUTTY SSH. A Mac, només cal que obriu una finestra del terminal d’ordres.

3. Introduïu la targeta microSD al Pi i connecteu-la ara. L'arrencada trigarà uns minuts.

4. Per iniciar sessió remotament al vostre Raspberry Pi, haureu de trobar la seva adreça IP. Podeu provar: $ ssh [email protected] (O des de Putty, introduïu hostname [email protected] En cas contrari, haureu de veure si el vostre router mostrarà les adreces IP dels vostres dispositius locals. L'identificador / passwd per defecte és pi / gerd”

Un cop hàgiu iniciat la sessió com a usuari de pi:

5. Actualitzeu Raspbian: $ sudo apt update $ sudo apt upgrade

6. Configureu el gerd: $ sudo raspi-config a. Canvia la contrasenya d'usuari b. Opcions de localització -> Canviar zona horària Seleccioneu la vostra zona horària local c. Pestanya per acabar

7. Instal·leu el programari RaspiDigiHamClock: $ cd / home / pi $ sudo apt update $ sudo apt install git $ git clone

8. Apagueu el Pi per configurar el maquinari $ apagat ara Un cop apagat el LED, desconnecteu la xarxa

Pas 4: Cablatge de maquinari

Cablatge de maquinari
Cablatge de maquinari
Cablatge de maquinari
Cablatge de maquinari
Cablatge de maquinari
Cablatge de maquinari

Podeu soldar els connectors als mòduls TM1637 i al Raspberry Pi (si encara no té un connector). Abans de començar, decidiu com voleu muntar les pantalles i si voleu utilitzar una placa de connexió o cables de soldadura directament als mòduls Pi i display.

Pins del mòdul TM1637

Cablejat Nota: Alguns mòduls tm1637 giren els pins + 5v i GND. Per tant, pot no aparèixer igual que les fotos.

El mòdul TM1637 és un mòdul de pantalla LED de 4 dígits que utilitza el xip del controlador TM1637. Només necessita dues connexions per controlar la pantalla de 8 dígits de 4 dígits. Altres dos cables alimenten a terra més de 5 volts.

PIN DESC CLK Clock DIO DIO en terra GND 5V +5 volts

Alguns mòduls tm1637 giren els pins + 5v i GND, així que comproveu les marques del mòdul

Proveu cada mòdul. Us suggereixo començar amb un cable de connector femella de 4 fils amb connectors mascle soldats a un dels mòduls i al Pi. A continuació, connecteu temporalment el primer mòdul fins als pins que es mostren a continuació.

PROVA TEMPORAL A MODULETM1637 Pin del mòdul Pin físic Pi # 5V 2 GND 6 CLK 40 DIO 38 Vegeu els diagrames GPIO més avall per trobar els dissenys del pin.

La segona foto mostra dues pantalles connectades temporalment a un Raspberry Pi 3 amb el programari en execució.

1. Un cop tingueu un mòdul connectat temporalment i comproveu el cablejat

2. Engegueu el Raspberry Pi. El LED vermell del mòdul hauria d’encendre’s, però encara no hi haurà MOSTRA.

3. SSH de nou al vostre Pi com abans.

$ cd RaspiDigiHamClock

$ python test.py

Hauríeu de veure el cicle de visualització a través de diversos missatges curts. Si no ho feu, primer torneu a comprovar el cablejat. És fàcil capgirar un cable o endollar-lo al PIN GPIO equivocat del Pi. Si rebeu un missatge d'error de Python, verifiqueu la versió de Python mitjançant:

$ python -V (majúscula "V")

Python 2.7. X

No he fet proves contra Python 3, així que no estic segur de si la biblioteca és compatible.

Copieu el missatge d'error (normalment l'última línia de l'error) i Enganxeu-lo a la cerca de Google. Això pot donar una pista sobre el que va passar.

Si el vostre mòdul funciona, enhorabona! Ja sabeu que el mòdul i Pi funcionen. Ara repeteix per a cada mòdul per provar-lo. (Us suggereixo apagar Pi i apagar-lo ABANS d'endollar / desconnectar mòduls !!)

$ sudo tancament ara

Pas 5: pins GPIO a Raspi

GPIO Pins a Raspi
GPIO Pins a Raspi
GPIO Pins a Raspi
GPIO Pins a Raspi
GPIO Pins a Raspi
GPIO Pins a Raspi

Aquest projecte utilitza els identificadors de la JUNTA física GPIO per als pins.

Això és el pin 1 al pin 40. No és la numeració del pin GPIO "BCM". (Sí, és una mica confús, però BOARD és només el recompte de pins de la part superior esquerra a la part inferior dreta.)

Mòdul de visualització Pin del mòdul TM1637 Pin físic Pin # Potència 5V 2 Terra GND 6

Mòdul # 1 CLK 33

DIO 31

Mòdul # 2 CLK 36

DIO 32

Mòdul # 3 CLK 37

DIO 35

Mòdul # 4 CLK 40

DIO 38

Nota: no cal afegir els 4 mòduls si es desitja. Podeu tenir entre 1 i 4 mòduls. (Sí, és possible anar a més mòduls, però cal que modifiqueu el codi per donar-ne més suport.)

PERUT, HEM DE connectar els mòduls de manera seqüencial a partir del mòdul # 1

Això es deu al fet que la biblioteca TM1637 espera que un mòdul ACK del mòdul sembli penjat esperant d'una altra manera.

Fotos de mostra de la placa de pa soldada: heu de seguir el vostre propi patró de cablejat perquè coincideixi amb els pins GPIO que es mostren anteriorment, ja que és possible que els connectors i els mòduls que he utilitzat no coincideixin amb els vostres.

Pas 6: proves

Vaja, va ser una mica de cablejat! Ara és hora de fer proves de fum …

Com que ja coneixeu els mòduls individuals i el funcionament de Pi (heu provat els mòduls tal com s'ha descrit anteriorment?), El següent pas és configurar el fitxer. INI i executar el programa de rellotge:

1. Editeu raspiclock.ini

$ cd / home / pi / RaspiDigiHamClock

$ nano raspiclock.ini

2. Canvieu els num_modules a quants heu connectat. Això és important, ja que la biblioteca penjarà esperant un ACK si no pot parlar amb un mòdul. Assegureu-vos de connectar el nombre de mòduls, A L'ORDRE MOSTRA a. INI Nota: Els PINS TZ addicionals i HR i GPIO s'ignoren si num_modules és inferior a 4.

3. Afegiu zones horàries per a cada mòdul.

Es tracta de noms Linux TZ, com ara "America / New_York", EST5EDT, UTC o "Local" per a la vostra zona horària local, tal com es defineix mitjançant raspi-config. El valor per defecte és UTC

4. Definiu si es mostrarà el mode de 12 hores o 24 hores per a cada mòdul

[RELLOTGE]; Nombre de mòduls TM1637 (entre 1 i 4) num_modules = 2

; Zones horàries per a cada mòdul

; Utilitzeu raspi-config per establir la zona horària local; El valor per defecte és UTC; El format és Linux TZ noms o "Local" per a l'hora local; "Amèrica / Nova York", EST5EDT, UTC, "Local" TZ1 = Local TZ2 = UTC TZ3 = TZ4 =

; 12/24 hores per a cada mòdul

HR1 = 12 HR2 = 24 HR3 = 12 HR4 = 24

; LLUMINOSITAT (rang 1..7)

LUM = 1

5. No hauríeu d’editar els pins GPIO tret que els connecteu a diferents pins # del Pi.

6. Deseu els canvis i executeu el rellotge:

$ python raspiclock.py

Si tot està bé, tots els vostres mòduls de visualització haurien d’il·luminar-se amb els temps establerts al fitxer. INI.

Enhorabona! Omet la solució de problemes i vés a la instal·lació final …

Pas 7: resolució de problemes

Hauríeu de veure que apareixen alguns missatges de depuració simples:

Inicialització … Nombre de mòduls = 4 Arrencada del rellotge de rellotge … Mòdul # 1 displayTM () Mòdul # 2 displayTM () Mòdul # 3 displayTM () Mòdul # 4 displayTM () (que es repeteix …)

Si heu provat els mòduls anteriorment i tots funcionaven, sabreu que els mòduls i el gerd són bons.

A) HANG - Si els missatges de depuració semblen penjar-se en un lloc, el programa espera un ACK d'aquest mòdul #.

Primer comproveu el cablejat. És fàcil capgirar un cable o endollar-lo al PIN GPIO equivocat del Pi.

En segon lloc, canvieu els mòduls per veure si un mòdul de sobte va funcionar malament.

En tercer lloc, comproveu si hi ha errors al fitxer raspiclock.ini. Si cal, suprimiu tot el directori i feu un altre GIT CLONE per recuperar-lo de nou.

En quart lloc, reviseu el cablejat.;-)

B) Si rebeu un missatge d'error de Python, verifiqueu la versió de Python mitjançant:

$ python -V (majúscula "V")

Python 2.7. X

No he fet proves contra Python 3, així que no estic segur de si la biblioteca és compatible. Copieu el missatge d'error (normalment l'última línia de l'error) i Enganxeu-lo a la cerca de Google. Això pot donar una pista sobre el que va passar.

Pas 8: instal·lació final

Instal·lació final
Instal·lació final

1. Editeu de nou el fitxer. INI i configureu la depuració = 0. $ cd / home / pi / RaspiDigiHamClock

$ nano raspiclock.ini

2. Verifiqueu també que els fusos horaris TZ i la configuració HR 12/24 hores siguin com desitgeu.

3. Establiu la brillantor com vulgueu entre 1 i 7.

4. Executeu l'script install.sh per afegir-lo a pi crontab per a l'inici automàtic en arrencar.

$ sh install.sh

5. Reinicieu

$ sudo reiniciar

6. Ha de reiniciar-se i després sortir en funcionament.

ACABAT!

Recomanat: