Satura rādītājs:

Raspberry Pi radioamatieru digitālais pulkstenis: 8 soļi (ar attēliem)
Raspberry Pi radioamatieru digitālais pulkstenis: 8 soļi (ar attēliem)

Video: Raspberry Pi radioamatieru digitālais pulkstenis: 8 soļi (ar attēliem)

Video: Raspberry Pi radioamatieru digitālais pulkstenis: 8 soļi (ar attēliem)
Video: Часы G-Shock до 250 долларов-15 лучших часов Casio G до 250 доллар... 2024, Novembris
Anonim
Raspberry Pi radioamatieru digitālais pulkstenis
Raspberry Pi radioamatieru digitālais pulkstenis

Pārskats

Radioamatieri (pazīstami arī kā HAM Radio) lielu daļu savas darbības izmanto 24 stundu UTC (universālais koordinētais laiks). Es nolēmu izveidot digitālo pulksteni, izmantojot zemo cenu TM1637 4 ciparu displejus un Raspberry Pi Zero W, nevis tikai GUI pulksteni. (Aparatūra ir jautra!)

TM1637 vadītajam displejam ir četri 7 segmenta gaismas diodes ar centrālo kolu “:” starp divām ciparu kopām. Lai vadītu displeju, nepieciešami divi vadi plus 5V + un zemējums kopumā 4 vadiem.

Šim konkrētajam projektam es vēlējos, lai Raspi saņemtu savu laiku no NTP (tīkla laika protokola) serveriem, izmantojot internetu. Es plānoju citu šī pulksteņa versiju darboties ar Arduino Uno un reāllaika pulksteņa moduli, kad nav pieejams WiFi, un ērtākai pārnēsāšanai.

Es arī vēlējos, lai pulkstenis rādītu vietējo laiku 12 stundu un 24 stundu formātā, kā arī UTC 12 stundu un 24 stundu formātos. Programmatūra ir izstrādāta, lai ļautu jums izmantot tikai UTC 24 stundas (tipisks šķiņķis) vai dažādus laikus līdz 4 dažādiem displejiem.

Varat arī iestatīt TIME ZONE, ko vēlaties izmantot noklusējuma vietējā laika vietā. Tātad katrs no četriem displejiem varētu parādīt atšķirīgu laika joslu 12 vai 24 stundu formātā.

Šim projektam nepieciešami lodēšanas savienotāji vai vadi uz Pi un/vai tm1637 moduļiem.

Pilnas instrukcijas ir pieejamas arī vietnē GITHUB:

1. darbība. Prasības

Prasības
Prasības

• Raspberry Pi2, 3 vai Zero W. (t.i., jebkura pi ar 40 kontaktu galveni un Ethernet/Wifi)

• 4-TM1637 4 ciparu displeja moduļi

Un/vai

PIEZĪME. Varat izmantot lielākus vai mazākus, ja tie ir saderīgi ar TM1637.

• vadi ar 16 vadiem (katram TM1637 nepieciešami 4 vadi)

• bez lodēšanas maizes dēlis un vadi. Or

• Lodēt spējīgs maizes dēlis un dažādi tapu savienotāji.

• 8 GB MicroSD vai lielāks Pi

• 5V barošanas avots Pi.

2. darbība: programmatūras instalēšana

Šī lietojumprogramma izmanto viegli lietojamoTM1637.py python bibliotēku, kuras autors ir Tims Vaizenegers. (Ja vēlaties uzzināt vairāk par bibliotēku, pārbaudiet:

Vai tu zināji?

Ja instalējat Raspbian SD kartē, izmantojot datoru, varat izveidot divus failus kartē, lai konfigurētu WiFi un SSH piekļuvi, pirms to palaižat Raspberry?

Pieņemsim, ka jūsu SD karte datorā pašlaik ir uzstādīta kā K:

1) Instalējiet Raspbian Lite attēlu SD.

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

2) Izmantojot piezīmju grāmatiņu, izveidojiet failu ar nosaukumu “ssh” un izmantojiet Saglabāt kā “Visi faili” uz K: / ssh

Fails var saturēt jebko. Svarīgs ir faila nosaukums. Nedrīkst būt “ssh.txt” !!!

3) Izmantojot piezīmju grāmatiņu, izveidojiet otru failu ar nosaukumu “wpa_supplicant.conf” ar šādu:

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

Izmantojiet Saglabāt kā “Visi faili” uz K: / wpa_supplicant.conf

Atkal neļaujiet Notepad to mainīt uz “wpa_supplicant.conf.txt” !!

Pirmo reizi palaižot Raspberry, Raspbian tos meklēs un izveidos savienojumu ar jūsu Wifi. Jums būs jāmeklē maršrutētājā IP adrese, jo tā ir automātiski piešķirta.

3. darbība: programmatūras instalēšana - 2. punkts

1. Ja vēl neesat to izdarījis, instalējiet Raspbian Lite versiju 8 GB vai lielākā microSD kartē. Jums NAV nepieciešama GUI versija, jo šis projekts neizmanto monitoru vai tastatūru.

PIEZĪME! Šis projekts prasa Python2.7!

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

2. Jums būs jāpiekļūst Raspberry attālināti, izmantojot SSH. Operētājsistēmā Windows varat izmantot PUTTY SSH termināļa programmu. Operētājsistēmā Mac vienkārši atveriet komandu termināļa logu.

3. Ievietojiet microSD karti Pi un pievienojiet strāvas avotu tūlīt. Palaišana prasīs dažas minūtes.

4. Lai attālināti pieteiktos savā Raspberry Pi, jums jāatrod tā IP adrese. Varat mēģināt: $ ssh [email protected] (Vai no Putty ievadiet resursdatora nosaukumu [email protected] Pretējā gadījumā jums būs jāpārbauda, vai maršrutētājs parādīs jūsu vietējo ierīču IP adreses. Noklusējuma ID/passwd ir “pi /aveņu”

Kad esat pieteicies kā pi lietotājs:

5. Atjauniniet savu Raspbian: $ sudo apt update $ sudo apt jauninājumu

6. Konfigurējiet Raspberry: $ sudo raspi-config a. Mainīt lietotāja paroli b. Lokalizācijas opcijas -> Mainīt laika joslu Izvēlieties savu vietējo laika joslu c. Tab, lai pabeigtu

7. Instalējiet programmatūru RaspiDigiHamClock: $ cd/home/pi $ sudo apt update $ sudo apt install git $ git clone

8. Izslēdziet savu Pi, lai iestatītu aparatūras $ izslēgšanu tūlīt Pēc gaismas diode nodziest, atvienojiet strāvu

4. solis: Aparatūras vadu savienošana

Aparatūras vadi
Aparatūras vadi
Aparatūras vadi
Aparatūras vadi
Aparatūras vadi
Aparatūras vadi

Jūs varat lodēt savienotājus uz TM1637 moduļiem un Raspberry Pi (ja tam vēl nav savienotāja). Pirms darba sākšanas izlemiet, kā vēlaties uzstādīt displejus un vai izmantojat maizes dēli vai lodēšanas vadus tieši uz Pi un displeja moduļiem.

TM1637 moduļa tapas

Elektroinstalācija Piezīme: Daži tm1637 moduļi apgriež +5v un GND tapas! Tāpēc tas var neizskatīties tāpat kā fotoattēli.

TM1637 modulis ir 4 ciparu LED displeja modulis, kas izmanto TM1637 draivera mikroshēmu. Tam ir nepieciešami tikai divi savienojumi, lai kontrolētu četru ciparu 8 segmentu displeju. Divi citi vadi baro 5+ voltu jaudu un zemējumu.

PIN DESC CLK Pulkstenis DIO dati GND zemē 5V +5 volti

Daži tm1637 moduļi apgriež +5v un GND tapas, tāpēc pārbaudiet moduļa marķējumu

Ieteicams sākt ar vienu 4 vadu sieviešu savienotāja kabeli ar vīriešu savienotājiem, kas pielodēti pie viena no moduļiem un Pi. Pēc tam īslaicīgi pievienojiet pirmo moduli līdz zemāk redzamajām tapām.

PAGAIDU TESTS A MODULETM1637 Moduļa tapa Pi Fiziskā tapa# 5V 2 GND 6 CLK 40 DIO 38 Skatiet tālāk esošās GPIO diagrammas, lai atrastu tapu izkārtojumus.

Otrajā fotoattēlā ir redzami divi displeji, kas īslaicīgi pievienoti Raspberry Pi 3, kad programmatūra darbojas.

1. Kad esat uz laiku pievienojis moduli un pārbaudījis elektroinstalāciju

2. Ieslēdziet Raspberry Pi. Sarkanajai gaismas diodei uz moduļa vajadzētu iedegties, bet displeja vēl nebūs.

3. SSH savā Pi vēlreiz, kā iepriekš.

$ cd RaspiDigiHamClock

$ python test.py

Jums vajadzētu redzēt displeja ciklu, izmantojot dažādas īsziņas. Ja to nedarāt, vispirms vēlreiz pārbaudiet elektroinstalāciju! Pi ir viegli pagriezt vadu vai iespraust nepareizā GPIO tapā. Ja tiek parādīts Python kļūdas ziņojums, pārbaudiet savu Python versiju, izmantojot:

$ python -V (lielais burts "V")

Python 2.7. X

Es neesmu pārbaudījis Python 3, tāpēc neesmu pārliecināts, vai bibliotēka ir saderīga.

Kopējiet kļūdas ziņojumu (parasti kļūdas pēdējo rindiņu) un ielīmējiet Google meklēšanā. Tas var dot norādi par notikušo.

Ja jūsu modulis darbojas, apsveicam! Jūs zināt, ka modulis un Pi darbojas. Tagad atkārtojiet katru moduli, lai to pārbaudītu. (Es iesaku izslēgt Pi un izslēgt PIRMS moduļu pievienošanas/atvienošanas !!)

$ sudo tagad tiek izslēgts

5. solis: GPIO tapas Raspi

GPIO tapas uz Raspi
GPIO tapas uz Raspi
GPIO tapas uz Raspi
GPIO tapas uz Raspi
GPIO tapas uz Raspi
GPIO tapas uz Raspi

Šis projekts tapām izmanto GPIO fiziskos BOARD ID.

Tas ir Pin 1 līdz Pin 40. Ne “BCM” GPIO pin numerācija. (Jā, mazliet mulsinoši, bet BOARD ir tikai pin skaits no augšas pa kreisi uz leju pa labi.)

Displeja modulis TM1637 Moduļa tapa Pi Fiziskā tapa#Jauda 5V 2 Zemes GND 6

1. modulis CLK 33

DIO 31

2. modulis CLK 36

DIO 32

3. modulis CLK 37

DIO 35

4. modulis CLK 40

DIO 38

Piezīme: Ja nepieciešams, jums nav jāpievieno visi 4 moduļi. Jums var būt no 1 līdz 4 moduļiem. (Jā, ir iespējams doties uz vairākiem moduļiem, bet jums ir jāmaina kods, lai atbalstītu vairāk.)

BET, jums ir jāpievieno moduļi secīgi, sākot ar 1. moduli

Tas ir tāpēc, ka bibliotēka TM1637 no moduļa sagaida ACK, tāpēc šķiet, ka tā gaida citādi.

Lodētas maizes dēļa fotoattēlu paraugi Jums ir jāievēro savs elektroinstalācijas modelis, lai tas atbilstu iepriekš parādītajām GPIO tapām, jo izmantotie savienotāji un moduļi var neatbilst jūsu.

6. darbība: pārbaude

Oho, tas bija mazliet vadu! Tagad ir laiks pārbaudīt dūmus …

Tā kā jūs jau zināt atsevišķus moduļus un Pi darbu (jūs pārbaudījāt moduļus, kā aprakstīts iepriekš?), Tad nākamais solis ir iestatīt. INI failu un palaist pulksteņa programmu:

1. Rediģējiet raspiclock.ini

$ cd/home/pi/RaspiDigiHamClock

$ nano raspiclock.ini

2. Mainiet num_modules uz to, cik daudz esat pievienojis. Tas ir svarīgi, jo bibliotēka var gaidīt ACK, ja tā nevar sarunāties ar moduli. Noteikti pievienojiet moduļu skaitu, ININ. RĀDĪTĀ RĪKOJUMĀ. Piezīme. Ja papildu moduļu skaits ir mazāks par 4, papildu TZ un HR un GPIO PINS netiek ņemti vērā.

3. Katram modulim pievienojiet laika joslas.

Tie ir Linux TZ nosaukumi, piemēram, “America/New_York”, EST5EDT, UTC vai “Local” jūsu vietējai laika joslai, kas iestatīta, izmantojot raspi-config. Noklusējums ir UTC

4. Iestatiet, vai katram modulim rādīt 12 vai 24 stundu režīmu

[CLOCK]; TM1637 moduļu skaits (no 1 līdz 4) num_modules = 2

; Laika joslas katram modulim

; Izmantojiet raspi-config, lai iestatītu vietējo laika joslu; Noklusējums ir UTC; Formāts ir Linux TZ nosaukumi vai “Local” vietējam laikam; 'Amerika/Ņujorka', EST5EDT, UTC, 'vietējais' TZ1 = vietējais TZ2 = UTC TZ3 = TZ4 =

; 12/24 stundas katram modulim

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

; GAISMUMS (diapazons 1..7)

LUM = 1

5. Jums nav jārediģē GPIO tapas, ja vien neesat pievienojis tās dažādiem Pi #taustiņiem.

6. Saglabājiet izmaiņas un pēc tam palaidiet pulksteni:

$ python raspiclock.py

Ja viss ir kārtībā, visiem jūsu displeja moduļiem vajadzētu iedegties, norādot laiku. INI failā.

Apsveicam! Izlaidiet problēmu novēršanu un dodieties uz galīgo instalēšanu…

7. darbība: problēmu novēršana

Jums vajadzētu redzēt dažus vienkāršus atkļūdošanas ziņojumus:

Notiek inicializēšana… Moduļu skaits = 4 Pulksteņa cikla sākšana… Module#1 displayTM () Module#2 displayTM () Module#3 displayTM () Moduļa#4 displayTM () (atkārtojas…)

Ja jūs iepriekš pārbaudījāt moduļus un tie visi strādāja, tad jūs zināt, ka moduļi un aveņu ir labi.

A) HANG - Ja atkļūdošanas ziņojumi karājas vienā vietā, programma gaida ACK no šī moduļa#.

Vispirms pārbaudiet elektroinstalāciju! Pi ir viegli pagriezt vadu vai iespraust nepareizā GPIO tapā.

Otrkārt, nomainiet moduļus, lai redzētu, vai modulis pēkšņi sabojājās.

Treškārt, pārbaudiet, vai failā raspiclock.ini nav kļūdu. Ja nepieciešams, izdzēsiet visu direktoriju un veiciet citu GIT CLONE, lai to atgūtu vēlreiz.

Ceturtkārt, vēlreiz pārbaudiet elektroinstalāciju!;-)

B) Ja tiek parādīts Python kļūdas ziņojums, pārbaudiet savu Python versiju, izmantojot:

$ python -V (lielais burts "V")

Python 2.7. X

Es neesmu pārbaudījis pret Python 3, tāpēc neesmu pārliecināts, vai bibliotēka ir saderīga. Kopējiet kļūdas ziņojumu (parasti kļūdas pēdējo rindiņu) un ielīmējiet Google meklēšanā. Tas var dot norādi par notikušo.

8. darbība: galīgā uzstādīšana

Galīgā uzstādīšana
Galīgā uzstādīšana

1. Vēlreiz rediģējiet. INI failu un iestatiet atkļūdošanu = 0. $ cd/home/pi/RaspiDigiHamClock

$ nano raspiclock.ini

2. Pārbaudiet arī TZ laika joslas un HR 12/24 stundu iestatījumus, kā vēlaties.

3. Iestatiet spilgtumu pēc vēlēšanās no 1 līdz 7.

4. Palaidiet skriptu install.sh, lai pievienotu pi crontab automātiskai palaišanai palaišanas laikā.

$ sh install.sh

5. Pārstartējiet

$ sudo atsāknēšana

6. Tam vajadzētu atsāknēt un pēc tam sākt darboties.

GATAVS!

Ieteicams: