Sisällysluettelo:

Raspberry Pi Amateur Radio Digital Clock: 8 vaihetta (kuvilla)
Raspberry Pi Amateur Radio Digital Clock: 8 vaihetta (kuvilla)

Video: Raspberry Pi Amateur Radio Digital Clock: 8 vaihetta (kuvilla)

Video: Raspberry Pi Amateur Radio Digital Clock: 8 vaihetta (kuvilla)
Video: How To Chia GPU Plotting and Farming Guide for WINDOWS UPDATED - Gigahorse Start to Finish - 2023 2024, Marraskuu
Anonim
Raspberry Pi amatööriradion digitaalikello
Raspberry Pi amatööriradion digitaalikello

Yleiskatsaus

Amatööriradio -operaattorit (aka HAM Radio) käyttävät 24 tunnin UTC -aikaa (Universal Coordinated Time) suuren osan toiminnastaan. Päätin rakentaa digitaalisen kellon käyttämällä halpoja 4-numeroisia TM1637-näyttöjä ja Raspberry Pi Zero W: tä pelkän graafisen käyttöliittymän sijaan. (Laitteisto on hauskaa!)

TM1637 -ohjattavassa näytössä on neljä seitsemän segmentin lediä, joiden keskellä on kaksoispiste ":" kahden numerosarjan välissä. Näytön ohjaamiseen tarvitaan kaksi johtoa sekä 5V + ja maadoitus yhteensä 4 johdolle.

Tätä projektia varten halusin Raspin saavan aikansa NTP -palvelimilta (Network Time Protocol) Internetin kautta. Suunnittelen toista kellon versiota käytettäväksi Arduino Unolla ja reaaliaikaisella kellomoduulilla, kun WiFi ei ole käytettävissä ja kannettavampaa käyttöä varten.

Halusin myös, että kello näyttää paikallista aikaa 12 ja 24 tunnin muodoissa sekä UTC 12 ja 24 tunnin muodoissa. Ohjelmiston avulla voit käyttää vain 24 tunnin UTC -aikaa (tyypillisiä kinkkuja) tai eri aikoina jopa 4 eri näytössä.

Voit myös asettaa aikavyöhykkeen, jota haluat käyttää paikallisen oletusajan sijasta. Joten jokainen neljästä näytöstä voisi näyttää eri aikavyöhykkeen ja 12 tai 24 tunnin muodossa.

Tämä projekti vaatii juotosliittimiä tai -johtoja Pi- ja/tai tm1637 -moduuleihin.

Kaikki ohjeet ovat saatavilla myös GITHUBissa:

Vaihe 1: Vaatimukset

Vaatimukset
Vaatimukset

• Raspberry Pi2, 3 tai Zero W. (eli mikä tahansa pi, jossa on 40 -nastainen otsikko ja Ethernet/Wifi)

• 4-TM1637 4-numeroiset näyttömoduulit

Ja/tai

HUOMAUTUS: voit käyttää isompia tai pienempiä, kunhan ne ovat TM1637 -yhteensopivia.

• Johtosarja, jossa 16 johtoa (jokainen TM1637 tarvitsee 4 johtoa)

• Juotamaton leipälevy ja johdot

• Juotettava leipälauta ja erilaiset nastaliittimet.

• 8 Gt: n MicroSD tai suurempi Pi -kortille

• 5 V: n virtalähde Pi: lle.

Vaihe 2: Ohjelmiston asennus

Tämä sovellus käyttää helppokäyttöistäTM1637.py python -kirjastoa, jonka on kirjoittanut Tim Waizenegger. (Jos haluat lisätietoja kirjastosta, tutustu:

Tiesitkö?

Jos asennat Raspbianin SD -kortille tietokoneella, voit luoda kortille kaksi tiedostoa määrittääksesi WiFi- ja SSH -yhteyden ennen kuin käynnistät sen Raspberry -laitteella?

Oletetaan, että SD -korttisi on tällä hetkellä asennettu tietokoneeseen K:

1) Asenna Raspbian Lite -kuva SD -levylle.

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

2) Luo muistilehtiöllä tiedosto nimeltä "ssh" ja käytä Tallenna nimellä "Kaikki tiedostot" kohtaan K: / ssh

Tiedosto voi sisältää mitä tahansa. Tiedostonimi on tärkeä. EI saa olla "ssh.txt" !!!

3) Luo muistilehtiöllä toinen tiedosto nimeltä "wpa_supplicant.conf", jossa on seuraava:

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

Käytä Tallenna nimellä”Kaikki tiedostot” kohteeseen K: / wpa_supplicant.conf

Älä myöskään anna Notepadin muuttaa sitä muotoon "wpa_supplicant.conf.txt" !!

Kun käynnistät Vadelman ensimmäisen kerran, Raspbian etsii näitä ja muodostaa yhteyden Wifi -verkkoon. Sinun on kuitenkin etsittävä reitittimestä IP -osoite, koska se on automaattisesti määritetty.

Vaihe 3: Ohjelmiston asennus - Pt.2

1. Jos et ole jo tehnyt niin, asenna Raspbian Lite -versio vähintään 8 Gt: n microSD -kortille. Et tarvitse GUI -versiota, koska tämä projekti ei käytä näyttöä tai näppäimistöä.

HUOM! Tämä projekti vaatii Python2.7!

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

2. Sinun on käytettävä Raspberrya etänä SSH: n kautta. Windowsissa voit käyttää PUTTY SSH -pääteohjelmaa. Macissa tuo vain komentopäätteen ikkuna.

3. Aseta microSD -kortti Pi -laitteeseen ja kytke virta heti. Käynnistyminen kestää muutaman minuutin.

4. Kirjautuaksesi Raspberry Pi -laitteeseen etänä sinun on löydettävä sen IP -osoite. Voit kokeilla: $ ssh [email protected] (Tai kirjoita Putty, kirjoita isäntänimi [email protected] Muussa tapauksessa sinun on tarkistettava, näyttääkö reitittimesi paikallisten laitteidesi IP -osoitteet. Oletustunnus/salasana on "pi /vadelma"

Kun olet kirjautunut sisään pi -käyttäjänä:

5. Päivitä Raspbian: $ sudo apt update $ sudo apt päivitys

6. Määritä Vadelma: $ sudo raspi-config a. Vaihda käyttäjän salasana b. Lokalisointiasetukset -> Muuta aikavyöhykettä Valitse paikallinen aikavyöhyke c. Välilehti loppuun

7. Asenna RaspiDigiHamClock -ohjelmisto: $ cd/home/pi $ sudo apt update $ sudo apt install git $ git clone

8. Sammuta Pi -laitteesi laitteiston $ sammutuksen määrittämiseksi nyt Kun LED -valo sammuu, irrota virtajohto

Vaihe 4: Laitteiston johdotus

Laitteiston johdotus
Laitteiston johdotus
Laitteiston johdotus
Laitteiston johdotus
Laitteiston johdotus
Laitteiston johdotus

Voit juottaa liittimiä TM1637 -moduuleihin ja Raspberry Pi -laitteeseen (jos siinä ei vielä ole liitintä). Ennen kuin aloitat, päätä, miten haluat asentaa näytöt ja aiotko käyttää leipälevyä tai juotosjohtoja suoraan Pi- ja näyttömoduuleihin.

TM1637 -moduulitapit

Johdotus Huomautus: Jotkut tm1637 -moduulit kääntävät +5v- ja GND -nastat! Joten ei ehkä näytä samalta kuin valokuvat.

TM1637-moduuli on 4-numeroinen LED-näyttömoduuli, joka käyttää TM1637-ohjainsirua. Se tarvitsee vain kaksi liitäntää 4-numeroisen 8-segmenttisen näytön ohjaamiseen. Kaksi muuta johtoa syöttävät 5+ voltin virtaa ja maadoitusta.

PIN DESC CLK Kello DIO Data In GND Ground 5V +5 volttia

Jotkut tm1637 -moduulit kääntävät +5v- ja GND -nastat, joten tarkista moduulin merkinnät

Testaa jokainen moduuli Ehdotan, että aloitat yhdellä 4 -johtimisella naarasliitäntäkaapelilla, jossa on urosliittimet, jotka on juotettu yhteen moduulista ja Pi. Liitä sitten ensimmäinen moduuli väliaikaisesti alla oleviin nastoihin.

TIETOINEN TESTI A MODULETM1637 Moduuli Pin Pi Fyysinen nasta# 5V 2 GND 6 CLK 40 DIO 38 Katso GPIO -kaaviot kauemmas löytääksesi nastan asettelut.

Toisessa kuvassa on kaksi näyttöä, jotka on tilapäisesti kytketty Raspberry Pi 3: een ohjelmiston ollessa käynnissä.

1. Kun olet kytkenyt moduulin väliaikaisesti ja tarkistanut johdot

2. Käynnistä Raspberry Pi. Moduulin punaisen LED -valon pitäisi syttyä, mutta NÄYTTÖÄ ei vielä näy.

3. SSH osaksi Pi uudelleen kuten aiemmin.

$ cd RaspiDigiHamClock

$ python test.py

Sinun pitäisi nähdä näyttöjakso eri lyhytsanomien kautta. Jos et, tarkista ensin johdotus uudelleen! Johto tai pistoke on helppo kääntää väärään GPIO -nastaan Pi: ssä. Jos saat Python -virheilmoituksen, tarkista Python -versiosi seuraavasti:

$ python -V (iso kirjain "V")

Python 2.7. X

En ole testannut Python 3: ta vastaan, joten en ole varma, onko kirjasto yhteensopiva.

Kopioi virheilmoitus (yleensä virheen viimeinen rivi) ja liitä Google -hakuun. Tämä voi antaa vihjeen siitä, mitä tapahtui.

Jos moduuli toimii, onnittelut! Tiedät, että moduuli ja Pi toimivat. Toista nyt jokaiselle moduulille testataksesi sitä. (Ehdotan, että Pi sammutetaan ja virta katkaistaan ENNEN moduulien kytkemistä/irrottamista !!)

$ sudo sammuu nyt

Vaihe 5: GPIO -nastat Raspissa

GPIO -nastat Raspissa
GPIO -nastat Raspissa
GPIO -nastat Raspissa
GPIO -nastat Raspissa
GPIO -nastat Raspissa
GPIO -nastat Raspissa

Tämä projekti käyttää GPIO: n fyysisiä BOARD -tunnuksia nastoille.

Tämä on nasta 1 - nasta 40. Ei "BCM" GPIO -numerointi. (Kyllä, hieman hämmentävää, mutta BOARD on vain pin -numero ylhäältä vasemmalta oikealle.)

Näyttömoduuli TM1637 Moduuli Pin Pi Fyysinen nasta#Virta 5V 2 Maadoitus GND 6

Moduuli #1 CLK 33

DIO 31

Moduuli #2 CLK 36

DIO 32

Moduuli #3 CLK 37

DIO 35

Moduuli #4 CLK 40

DIO 38

Huomautus: Kaikkia 4 moduulia ei tarvitse lisätä haluttaessa. Sinulla voi olla 1–4 moduulia. (Kyllä, on mahdollista siirtyä useampiin moduuleihin, mutta sinun on muutettava koodi, jotta voit tukea enemmän.)

MUTTA, sinun on kytkettävä moduulit peräkkäin alkaen moduulista 1

Tämä johtuu siitä, että TM1637 -kirjasto odottaa ACK: ta moduulilta, joten se näyttää roikkuvan odottamassa muuten.

Esimerkkikuvia juotetusta leipälevystä Sinun on noudatettava omaa johdotusmalliasi vastaamaan aiemmin esitettyjä GPIO -nastoja, koska käyttämäni liittimet ja moduulit eivät välttämättä vastaa sinun.

Vaihe 6: Testaus

Vau, se oli vähän johdotusta! Nyt on savutestien aika …

Koska tiedät jo yksittäiset moduulit ja Pi -työn (testasit moduuleja aiemmin kuvatulla tavalla?), Seuraava askel on. INI -tiedoston määrittäminen ja kello -ohjelman suorittaminen:

1. Muokkaa raspiclock.ini -tiedostoa

$ cd/home/pi/RaspiDigiHamClock

$ nano raspiclock.ini

2. Muuta numeroiden_moduulit määräksi. Tämä on tärkeää, koska kirjasto roikkuu odottaessaan ACK: ta, jos se ei pysty puhumaan moduulille. Muista kytkeä moduulien lukumäärä. INI -KUVASSA OLEVASSA TILAUKSESSA.

3. Lisää aikavyöhykkeet kullekin moduulille.

Nämä ovat Linuxin TZ-nimiä, kuten "America/New_York", EST5EDT, UTC tai "Local" paikalliselle aikavyöhykkeelle määritettynä raspi-config. Oletus on UTC

4. Aseta, näytetäänkö jokaisen moduulin 12 tai 24 tunnin tila

[KELLO]; TM1637 -moduulien lukumäärä (1-4) num_modules = 2

; Aikavyöhykkeet kullekin moduulille

; Käytä raspi-config-asetusta paikallisen aikavyöhykkeen asettamiseen; Oletus on UTC; Muoto on Linuxin TZ -nimet tai paikalliset paikalliset ajat; 'America/New_York', EST5EDT, UTC, 'Local' TZ1 = Paikallinen TZ2 = UTC TZ3 = TZ4 =

; 12/24 tuntia jokaiselle moduulille

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

; KIRKKAUS (alue 1..7)

LUM = 1

5. Sinun ei tarvitse muokata GPIO -nastoja, ellet liitä niitä Pi: n eri nastoihin.

6. Tallenna muutokset ja aja sitten kello:

$ python raspiclock.py

Jos kaikki on hyvin, kaikkien näyttömoduulien pitäisi syttyä. INI -tiedostossa määritettyjen aikojen mukaisesti.

Onnittelut! Ohita vianetsintä ja siirry lopulliseen asennukseen…

Vaihe 7: Vianetsintä

Sinun pitäisi nähdä muutamia yksinkertaisia virheenkorjausviestejä:

Alustetaan… Moduulien lukumäärä = 4 Kellosilmukan käynnistäminen… Moduuli#1 displayTM () Moduuli#2 displayTM () Moduuli#3 displayTM () Moduuli#4 displayTM () (toistuva…)

Jos testasit moduuleja aiemmin ja ne kaikki toimivat, tiedät, että moduulit ja Vadelma ovat hyviä.

A) HANG - Jos virheenkorjausviestit näyttävät roikkuvan yhdessä paikassa, ohjelma odottaa ACK: ta kyseiseltä moduulilta#.

Tarkista ensin johdot! Johto tai pistoke on helppo kääntää väärään GPIO -nastaan Pi: ssä.

Toiseksi, vaihda moduuleja nähdäksesi, menikö moduuli yhtäkkiä huonoon.

Kolmanneksi, tarkista raspiclock.ini -tiedosto virheiden varalta. Poista tarvittaessa koko hakemisto ja hae uudelleen GIT CLONE.

Neljänneksi, tarkista johdotus uudelleen!;-)

B) Jos saat Python -virheilmoituksen, tarkista Python -versiosi seuraavasti:

$ python -V (iso kirjain "V")

Python 2.7. X

En ole testannut Python 3: ta vastaan, joten en ole varma, onko kirjasto yhteensopiva. Kopioi virheilmoitus (yleensä virheen viimeinen rivi) ja liitä Google -hakuun. Tämä voi antaa vihjeen siitä, mitä tapahtui.

Vaihe 8: Lopullinen asennus

Lopullinen asennus
Lopullinen asennus

1. Muokkaa. INI -tiedostoa uudelleen ja aseta debug = 0. $ cd/home/pi/RaspiDigiHamClock

$ nano raspiclock.ini

2. Tarkista myös, että TZ -aikavyöhykkeet ja HR 12/24 tunnin asetukset ovat haluamasi.

3. Aseta haluamasi kirkkaus välille 1 ja 7.

4. Suorita install.sh -komentosarja, joka lisätään pi crontabiin automaattista käynnistystä varten käynnistyksen yhteydessä.

$ sh install.sh

5. Käynnistä uudelleen

$ sudo uudelleenkäynnistys

6. Sen pitäisi käynnistyä uudelleen ja sitten käynnistyä.

VALMIS!

Suositeltava: