Мазмұны:

Raspberry Pi әуесқойлық радио цифрлық сағаты: 8 қадам (суреттермен)
Raspberry Pi әуесқойлық радио цифрлық сағаты: 8 қадам (суреттермен)

Бейне: Raspberry Pi әуесқойлық радио цифрлық сағаты: 8 қадам (суреттермен)

Бейне: Raspberry Pi әуесқойлық радио цифрлық сағаты: 8 қадам (суреттермен)
Бейне: MJC Stream: Видишь енота? А он есть! Главное об ML и компьютерном зрении 2024, Шілде
Anonim
Raspberry Pi әуесқойлық радио цифрлық сағаты
Raspberry Pi әуесқойлық радио цифрлық сағаты

Шолу

Әуесқойлық радио операторлары (HAM Radio) өз жұмысының көп бөлігінде 24 сағаттық UTC (әмбебап үйлестірілген уақыт) пайдаланады. Мен цифрлық сағатты GUI сағаттарының орнына арзан TM1637 4 таңбалы дисплейлер мен Raspberry Pi Zero W көмегімен құруды шештім. (Аппараттық құрал көңілді!)

TM1637 жетекші дисплейінде екі цифрдың арасында «:» нүктесі бар 7 сегментті төрт жарық диоды бар. Дисплейді қосу үшін екі сым қажет, сонымен қатар 5В + және жерге тұтас 4 сым.

Бұл нақты жоба үшін мен Raspi -ге Интернет арқылы NTP (Network Time Protocol) серверлерінен уақыт алғысы келді. Мен бұл сағаттардың басқа нұсқасын Arduino Uno мен нақты уақыттағы сағат модулінде жұмыс істеуді жоспарлап отырмын, ол WiFi жоқ кезде және портативті жұмыс үшін.

Мен сондай -ақ сағаттың жергілікті уақытты 12 сағат және 24 сағат форматында, сондай -ақ UTC 12 сағат және 24 сағат форматында көрсеткенін қалаймын. Бағдарламалық жасақтама UTC 24 сағатты (әдеттегі ветчина) немесе әр түрлі уақытты 4 түрлі дисплейде пайдалануға мүмкіндік береді.

Әдепкі жергілікті уақыттың орнына пайдаланғыңыз келетін УАҚЫТ белдеуін орнатуға болады. Осылайша, төрт дисплейдің әрқайсысы 12 сағат немесе 24 сағат форматында басқа уақыт белдеуін көрсете алады.

Бұл жоба Pi және/немесе tm1637 модульдеріне қосқыштарды немесе сымдарды дәнекерлеуді қажет етеді.

Толық нұсқаулар GITHUB -да бар:

1 -қадам: талаптар

Талаптар
Талаптар

• Raspberry Pi2, 3 немесе Zero W. (яғни, 40 істікшелі және Ethernet/Wifi бар кез келген pi)

• 4-TM1637 4 таңбалы Дисплей модульдері

Және/немесе

ЕСКЕРТПЕ: егер олар TM1637 үйлесімді болса, үлкенін немесе кішісін пайдалануға болады.

• 16 сымнан тұратын сымдар (әр TM1637 үшін 4 сым қажет)

• Дәнекерленген тақталар мен сымдар Немесе

• Дәнекерлеуге арналған нан тақтасы және әр түрлі істікшелі қосқыштар.

• Pi үшін 8 ГБ MicroSD немесе үлкенірек

• Pi үшін 5в қуат көзі.

2 -қадам: Бағдарламалық қамтамасыз етуді орнату

Бұл қосымшада Тим Вайзенеггер жазғанTM1637.py python кітапханасы пайдаланылады. (Егер сіз кітапхана туралы мәлімет алғыңыз келсе, қараңыз:

Сіз білдіңіз бе?

Егер сіз Raspbian -ды компьютердің көмегімен SD картасына орнатсаңыз, оны таңқурайға жүктемес бұрын WiFi мен SSH қатынасын конфигурациялау үшін картада екі файл жасай аласыз ба?

Бұл үшін сіздің SD картаңыз қазіргі уақытта компьютерде K: түрінде орнатылған деп есептеңіз:

1) Raspbian Lite кескінін SD картасына орнатыңыз.

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

2) Блокнотпен тек «ssh» деп аталатын файл жасаңыз және «Барлық файлдар» ретінде сақтауды K: / ssh -ге қолданыңыз.

Файлда кез келген нәрсе болуы мүмкін. Бұл маңызды файл атауы. «Ssh.txt» болмауы керек !!!

3) Блокнотпен келесі «wpa_supplicant.conf» деп аталатын екінші файл жасаңыз:

ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdevupdate_config = 1 желі = {ssid = «mySSID» psk = «mypassword» key_mgmt = WPA-PSK}

«Барлық файлдар» ретінде сақтауды K: / wpa_supplicant.conf файлына пайдаланыңыз

Тағы да, Блокноттың оны «wpa_supplicant.conf.txt» деп өзгертуіне жол бермеңіз !!

Таңқурайды бірінші рет жүктегенде, Raspbian оларды іздейді және Wi -Fi желісіне қосылады. Сіз маршрутизатордан IP мекенжайын іздеуіңіз керек, бірақ ол автоматты түрде тағайындалған.

3 -қадам: Бағдарламалық қамтамасыз етуді орнату - Pt.2

1. Егер сізде әлі жоқ болса, 8GB немесе одан үлкен microSD картасына Raspbian Lite нұсқасын орнатыңыз. Сізге GUI нұсқасы қажет емес, себебі бұл жобада монитор немесе пернетақта қолданылмайды.

ЕСКЕРТУ!: Бұл жобаға Python2.7 қажет!

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

2. Raspberry -ге SSH арқылы қашықтан кіру қажет болады. Windows жүйесінде PUTTY SSH терминалдық бағдарламасын қолдануға болады. Mac жүйесінде командалық терминал терезесін ашыңыз.

3. MicroSD картасын Pi ұясына салыңыз да, қуат көзіне қосыңыз. Жүктеу үшін бірнеше минут қажет.

4. Raspberry Pi -ге қашықтан кіру үшін оның IP -адресін табу қажет болады. Сіз көре аласыз: $ ssh [email protected] (Немесе Putty -ден хост атауын енгізіңіз [email protected] Әйтпесе, сіздің маршрутизаторыңыз жергілікті құрылғылардың IP -мекен -жайларын көрсететінін көру қажет болады. Әдепкі id/passwd - бұл «pi» /таңқурай»

Pi пайдаланушысы ретінде кіргеннен кейін:

5. Raspbian жаңартыңыз: $ sudo apt update $ sudo apt upgrade

6. Raspberry конфигурациялаңыз: $ sudo raspi-config a. Пайдаланушы құпия сөзін өзгерту b. Локализация опциялары -> Уақыт белдеуін өзгерту Жергілікті уақыт белдеуін таңдаңыз c. Аяқтау үшін қойынды

7. RaspiDigiHamClock бағдарламалық жасақтамасын орнатыңыз: $ cd/home/pi $ sudo apt update $ sudo apt install git $ git clone

8. Аппараттық $ сөндіруді орнату үшін Pi -ді өшіріңіз

4 -қадам: аппараттық сымдар

Аппараттық сымдар
Аппараттық сымдар
Аппараттық сымдар
Аппараттық сымдар
Аппараттық сымдар
Аппараттық сымдар

Сіз коннекторларды TM1637 модульдеріне және Raspberry Pi -ге дәнекерлей аласыз (егер оның қосқышы болмаса). Бастамас бұрын, дисплейлерді қалай орнатқыңыз келетінін шешіңіз, егер сіз нан тақтасын немесе дәнекерлеу сымдарын тікелей Pi мен дисплей модульдеріне қолданатын болсаңыз.

TM1637 модуль түйреуіштері

Сым туралы ескерту: Кейбір tm1637 модульдері +5v және GND түйреуіштерін аударады! Сондықтан фотосуреттер бірдей болмауы мүмкін.

TM1637 модулі-TM1637 драйвер чипін қолданатын 4 санды LED дисплей модулі. 4 таңбалы 8 сегментті дисплейді басқару үшін оған тек екі қосылым қажет. Басқа екі сым 5+ вольтты және жерге қосады.

PIN DESC CLK Сағат DIO деректері GND Ground 5V +5 вольтінде

Кейбір tm1637 модульдері +5v және GND түйреуіштерін аударады, сондықтан модульдің белгілерін тексеріңіз

Модульдердің әрқайсысын сынап көріңіз, модульдердің бірі мен Пи -ге дәнекерленген еркек қосқыштары бар жалғыз 4 сымды әйел коннекторлы кабельден бастауды ұсынамын. Содан кейін бірінші модульді төменде көрсетілген түйреуіштерге дейін уақытша қосыңыз.

УАҚЫТТЫҚ СЫНАУ MODULETM1637 модулінің Pin Pi физикалық түйрегіші# 5V 2 GND 6 CLK 40 DIO 38 Ілгектердің орналасуын табу үшін GPIO диаграммаларын төменнен қараңыз.

Екінші суретте Raspberry Pi 3 бағдарламалық жасақтамасы бар уақытша қосылған екі дисплей көрсетілген.

1. Сізде модуль болғаннан кейін уақытша сым қосылып, сым тексерілді

2. Raspberry Pi қуатын қосыңыз. Модульдегі қызыл жарық диоды жануы керек, бірақ әлі дисплей болмайды.

3. SSH сіздің Pi -ге бұрынғыға ұқсас.

$ cd RaspiDigiHamClock

$ python test.py

Әр түрлі қысқа хабарламалар арқылы дисплей циклін көру керек. Егер олай болмаса, алдымен сымды қайта тексеріңіз! Сымды бұру немесе Pi -ге қате GPIO түйреуішін қосу оңай. Егер сіз Python қате туралы хабар алсаңыз, Python нұсқасын келесі жолмен тексеріңіз:

$ python -V (бас әріп «V»)

Python 2.7. X

Мен Python 3 -ке қарсы сынақтан өтпедім, сондықтан кітапхананың үйлесімді екеніне сенімді емеспін.

Қате туралы хабарды көшіріңіз (әдетте қатенің соңғы жолы) және Google іздеуіне қойыңыз. Бұл не болғанын түсінуге мүмкіндік береді.

Егер сіздің модуль жұмыс істесе, құттықтаймын! Сіз модуль мен Pi жұмыс істейтінін білесіз. Енді оны тексеру үшін әр модуль үшін қайталаңыз. (Мен модульдерді қосар/ажыратпас бұрын Pi мен өшіруді ұсынамын !!)

$ sudo қазір жабылады

5 -қадам: Raspi -де GPIO түйреуіштері

Raspi -де GPIO түйреуіштері
Raspi -де GPIO түйреуіштері
Raspi -де GPIO түйреуіштері
Raspi -де GPIO түйреуіштері
Raspi -де GPIO түйреуіштері
Raspi -де GPIO түйреуіштері

Бұл жоба түйреуіштер үшін GPIO физикалық BOARD идентификаторларын пайдаланады.

Бұл PIN -1 -ден 40 -қа дейінгі түйін. Бұл «BCM» GPIO PIN нөмірленуі емес. (Иә, біршама түсініксіз, бірақ BOARD - бұл жоғарыдан төменге оңға қарай түйреуіштер саны).

Дисплей модулі TM1637 Модульдік PIN Пи физикалық түйреуіш#Қуат 5V 2 Жерге GND 6

№1 модуль CLK 33

DIO 31

№2 модуль CLK 36

DIO 32

№3 модуль CLK 37

DIO 35

Модуль № 4 CLK 40

ДИО 38

Ескерту: Қажет болса, барлық 4 модульді қосудың қажеті жоқ. Сізде 1 -ден 4 -ке дейін модуль болуы мүмкін. (Иә, басқа модульдерге баруға болады, бірақ көбірек қолдау үшін кодты өзгерту қажет.)

БІРАҚ, №1 модульден бастап модульдерді дәйекті түрде қосу керек

Бұл TM1637 кітапханасы модульден ACK күтеді, сондықтан басқаша күтеді.

Дәнекерленген тақтаның фотосуреттерінің үлгісі Бұрын көрсетілген GPIO түйреуіштеріне сәйкес келу үшін өзіңіздің сым үлгісін ұстануыңыз қажет, себебі мен қолданған қосқыштар мен модульдер сіздікіне сәйкес келмеуі мүмкін.

6 -қадам: тестілеу

Уау, бұл сәл сым болды! Енді түтінді сынаудың уақыты келді …

Сіз жеке модульдер мен Pi жұмысын білетіндіктен (сіз модульдерді бұрын сипатталғандай тексердіңіз бе?), Келесі қадам. INI файлын орнату және сағаттық бағдарламаны іске қосу болып табылады:

1. raspiclock.ini өңдеңіз

$ cd/home/pi/RaspiDigiHamClock

$ nano raspiclock.ini

2. num_modules санын қанша сым қосқаныңызға өзгертіңіз. Бұл өте маңызды, себебі модульмен сөйлесе алмаса, кітапхана ACK күтеді.. INI -де көрсетілген ТІРТІПТЕ модульдер санын қосуды ұмытпаңыз Ескертпе: num_modules 4 -тен аз болса, қосымша TZ және HR және GPIO PIN -кодтары еленбейді.

3. Әр модуль үшін уақыт белдеулерін қосыңыз.

Бұл raspi-config арқылы орнатылған жергілікті уақыт белдеуіне арналған 'America/New_York', EST5EDT, UTC немесе 'Local' сияқты Linux TZ атаулары. Әдепкі - UTC

4. Әр модуль үшін 12 сағат немесе 24 сағат режимін көрсетуді орнатыңыз

[САҒАТ]; TM1637 модульдерінің саны (1 мен 4 арасында) num_modules = 2

; Әр модуль үшін уақыт белдеулері

; Жергілікті уақыт белдеуін орнату үшін raspi-config пайдаланыңыз; Әдепкі - UTC; Формат - Linux TZ атаулары немесе жергілікті уақыт үшін 'Local'; 'America/New_York', EST5EDT, UTC, 'Local' TZ1 = Local TZ2 = UTC TZ3 = TZ4 =

; Әр модуль үшін 12/24 сағат

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

; ЖАРҚЫНДЫҚ (диапазон 1..7)

LUM = 1

5. GPIO түйреуіштерін Pi -дегі басқа істікшелерге қоспайынша, оларды өңдеудің қажеті жоқ.

6. Өзгерістерді сақтап, сағатты іске қосыңыз:

$ python raspiclock.py

Егер бәрі жақсы болса, дисплейдің барлық модульдері. INI файлында орнатылған уақытпен бірге жануы керек.

Құттықтаймын! Ақауларды жоюды өткізіп жіберіп, соңғы орнатуға өтіңіз …

7 -қадам: ақауларды жою

Сіз қарапайым отладка туралы хабарлардың пайда болуын көруіңіз керек:

Іске қосылу… Модульдер саны = 4 Іске қосу циклы… Модуль#1 дисплей TM () Модуль#2 дисплейTM () Модуль#3 дисплейTM () Модуль#4 дисплей TM

Егер сіз бұрын модульдерді сынап көрсеңіз және олардың барлығы жұмыс істесе, онда сіз модуль мен таңқурайдың жақсы екенін білесіз.

A) HANG - Егер отладка хабарламалары бір жерде ілініп тұрса, онда бағдарлама#модулінен ACK күтеді.

Алдымен сымдарды тексеріңіз! Сымды бұру немесе Pi -ге қате GPIO түйреуішін қосу оңай.

Екіншіден, модуль кенеттен бұзылғанын көру үшін модульдерді ауыстырыңыз.

Үшіншіден, raspiclock.ini файлын қателер үшін тексеріңіз. Қажет болса, бүкіл каталогты жойып, қайтадан алу үшін басқа GIT CLONE жасаңыз.

Төртіншіден, электр сымдарын қайтадан тексеріңіз!;-)

B) Егер сіз Python қате туралы хабар алсаңыз, Python нұсқасын келесі жолмен тексеріңіз:

$ python -V (бас әріп «V»)

Python 2.7. X

Мен Python 3 -ке қарсы сынақтан өтпедім, сондықтан кітапхананың үйлесімді екеніне сенімді емеспін. Қате туралы хабарды көшіріңіз (әдетте қатенің соңғы жолы) және Google іздеуіне қойыңыз. Бұл не болғанын түсінуге мүмкіндік береді.

8 -қадам: соңғы орнату

Соңғы орнату
Соңғы орнату

1.. INI файлын қайта өңдеңіз және debug = 0. $ cd/home/pi/RaspiDigiHamClock орнатыңыз

$ nano raspiclock.ini

2. Сондай -ақ, TZ уақыт белдеулерін және HR 12/24 сағаты сіз қалағандай екенін тексеріңіз.

3. Жарықтықты қалағаныңызша 1 мен 7 аралығында орнатыңыз.

4. Жүктеу кезінде автоматты түрде іске қосу үшін pi crontab қосу үшін install.sh сценарийін іске қосыңыз.

$ sh install.sh

5. Қайта жүктеу

$ sudo қайта жүктеу

6. Ол қайта жүктеліп, содан кейін іске қосылуы керек.

Аяқталды!

Ұсынылған: