فهرست مطالب:

ساعت دیجیتال رادیویی آماتور رزبری پای: 8 مرحله (همراه با تصاویر)
ساعت دیجیتال رادیویی آماتور رزبری پای: 8 مرحله (همراه با تصاویر)

تصویری: ساعت دیجیتال رادیویی آماتور رزبری پای: 8 مرحله (همراه با تصاویر)

تصویری: ساعت دیجیتال رادیویی آماتور رزبری پای: 8 مرحله (همراه با تصاویر)
تصویری: 120Tron - AM vs FM | تفاوت اصلی و کاربردی امواج رادیویی و الکترومغناطیسی 2024, جولای
Anonim
ساعت دیجیتال رادیویی آماتور رزبری پای
ساعت دیجیتال رادیویی آماتور رزبری پای

بررسی اجمالی

اپراتورهای رادیویی آماتور (معروف به رادیو HAM) از 24 ساعت UTC (زمان هماهنگ جهانی) برای بیشتر فعالیت خود استفاده می کنند. من تصمیم گرفتم یک ساعت دیجیتالی با استفاده از نمایشگرهای 4 رقمی ارزان TM1637 و یک Raspberry Pi Zero W به جای یک ساعت GUI بسازم. (سخت افزار سرگرم کننده است!)

صفحه نمایش TM1637 دارای چهار چراغ 7 قسمتی با یک قطب مرکزی ":" بین دو مجموعه رقم است. برای رانندگی صفحه نمایش به علاوه 5 ولت پلاس + دو سیم و در مجموع 4 سیم به دو سیم نیاز است.

برای این پروژه خاص ، می خواستم Raspi زمان خود را از سرورهای NTP (پروتکل زمان شبکه) از طریق اینترنت دریافت کند. من در حال برنامه ریزی نسخه دیگری از این ساعت برای کار بر روی Arduino Uno و ماژول ساعت در زمان واقعی هستم ، برای زمانی که فای در دسترس نیست و برای عملکرد بیشتر قابل حمل.

من همچنین می خواستم ساعت زمان محلی را در قالب های 12 ساعته و 24 ساعته و همچنین UTC در قالب های 12 ساعته و 24 ساعته نشان دهد. این نرم افزار به گونه ای طراحی شده است که به شما امکان می دهد فقط از UTC 24 ساعته (ژامبون معمولی) یا زمانهای مختلف در حداکثر 4 صفحه نمایش مختلف استفاده کنید.

همچنین می توانید منطقه زمانی را که می خواهید به جای زمان محلی پیش فرض استفاده کنید ، تنظیم کنید. بنابراین هر یک از چهار صفحه نمایش می تواند یک منطقه زمانی متفاوت و در قالب 12 ساعت یا 24 ساعت نشان دهد.

این پروژه نیاز به اتصال اتصالات یا سیم ها بر روی ماژول های Pi و/یا tm1637 دارد.

دستورالعمل های کامل نیز در GITHUB موجود است:

مرحله 1: الزامات

الزامات
الزامات

• Raspberry Pi2 ، 3 یا Zero W. (یعنی هر pi با سرصفحه 40 پین و اترنت/فای)

• 4-TM1637 ماژول های نمایش 4 رقمی

و/یا

توجه: می توانید از موارد بزرگتر یا کوچکتر استفاده کنید ، مادامی که با TM1637 سازگار باشند.

• مهار سیم با 16 سیم (هر TM1637 به 4 سیم نیاز دارد)

• تخته نان بدون سیم و سیم یا

• Breadboard با قابلیت لحیم کاری و اتصالات مختلف پین.

• 8 گیگابایت MicroSD یا بیشتر برای Pi

• منبع تغذیه 5 ولت برای Pi.

مرحله 2: نصب نرم افزار

این برنامه از کتابخانه پایتون TM1637.py استفاده می کند که توسط Tim Waizenegger نوشته شده است. (اگر می خواهید جزئیات کتابخانه را مطالعه کنید ، به آدرس زیر مراجعه کنید:

آیا میدانستید؟

اگر Raspbian را روی کارت SD با استفاده از رایانه شخصی نصب کنید ، می توانید دو فایل روی کارت ایجاد کنید تا WiFi و SSH را قبل از راه اندازی روی رزبری پیکربندی کنید؟

برای این کار ، فرض کنید کارت SD شما در حال حاضر به صورت K: روی رایانه شما نصب شده است:

1) تصویر Raspbian Lite را روی SD نصب کنید.

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

2) با دفترچه یادداشت ، فایلی به نام "ssh" ایجاد کنید و از Save As "All files" در K: / ssh استفاده کنید.

فایل می تواند حاوی هر چیزی باشد. این نام فایل است که مهم است. نباید "ssh.txt" باشد !!!

3) با دفترچه یادداشت ، یک فایل دوم به نام "wpa_supplicant.conf" با موارد زیر ایجاد کنید:

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

از Save As “All files” در K: / wpa_supplicant.conf استفاده کنید

باز هم ، اجازه ندهید دفترچه یادداشت آن را به "wpa_supplicant.conf.txt" تغییر دهد !!

وقتی اولین بار Raspberry را راه اندازی می کنید ، Raspbian به دنبال این موارد می گردد و به Wifi شما متصل می شود. با این حال ، باید آدرس IP خود را در روتر خود جستجو کنید ، زیرا به صورت خودکار تعیین شده است.

مرحله 3: نصب نرم افزار - Pt.2

1. اگر قبلاً نصب نکرده اید ، نسخه Raspbian Lite را روی کارت microSD 8 گیگابایت یا بزرگتر نصب کنید. شما نیازی به نسخه GUI ندارید ، زیرا این پروژه از مانیتور یا صفحه کلید استفاده نمی کند.

توجه: این پروژه نیاز به Python2.7 دارد!

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

2. باید از راه دور از طریق SSH به تمشک دسترسی داشته باشید. در Windows ، می توانید از برنامه پایانه PUTTY SSH استفاده کنید. در مک ، فقط پنجره ترمینال فرمان را باز کنید.

3. کارت microSD را به Pi وارد کرده و برق را وصل کنید. چند دقیقه طول می کشد تا بوت شود.

4. برای ورود از راه دور به رزبری پای خود ، باید آدرس IP آن را پیدا کنید. شما می توانید امتحان کنید: /تمشک”

پس از ورود به سیستم pi:

5. Raspbian خود را به روز کنید: $ sudo apt update $ sudo apt upgrade

6. پیکربندی رزبری: $ sudo raspi-config a. تغییر رمز عبور کاربر ب. گزینه های محلی سازی -> تغییر منطقه زمانی منطقه زمانی محلی خود را انتخاب کنید c. برگه برای پایان

7. نصب نرم افزار RaspiDigiHamClock: $ cd/home/pi $ sudo apt update $ sudo apt install git $ git clone

8. Pi را برای راه اندازی سخت افزار $ خاموش کنید پس از خاموش شدن LED ، برق را وصل کنید

مرحله 4: سیم کشی سخت افزار

سیم کشی سخت افزاری
سیم کشی سخت افزاری
سیم کشی سخت افزاری
سیم کشی سخت افزاری
سیم کشی سخت افزاری
سیم کشی سخت افزاری

می توانید اتصالات را روی ماژول های TM1637 و Raspberry Pi لحیم کنید (اگر قبلاً کانکتور ندارد). قبل از شروع ، تصمیم بگیرید که چگونه می خواهید نمایشگرها را نصب کنید و آیا می خواهید از تخته نان یا سیم لحیم مستقیماً روی ماژول های Pi و صفحه نمایش استفاده کنید.

پین های ماژول TM1637

نکته سیم کشی: برخی از ماژول های tm1637 پین های +5v و GND را تلنگر می زنند! بنابراین ممکن است مانند عکس ها به نظر نرسد.

ماژول TM1637 یک ماژول صفحه نمایش LED 4 رقمی است که از تراشه درایور TM1637 استفاده می کند. برای کنترل صفحه 4 رقمی 8 سگمنت فقط به دو اتصال نیاز دارد. دو سیم دیگر قدرت ولتاژ 5+ ولت را تغذیه می کند.

PIN DESC CLK ساعت DIO Data در GND Ground 5V +5 ولت

برخی از ماژول های tm1637 پین های +5v و GND را ورق می زنند ، بنابراین علامت های ماژول خود را بررسی کنید

من پیشنهاد می کنم با کابل اتصال زن 4 سیم تک سیم با اتصالات نر که به یکی از ماژول ها و Pi لحیم شده اند ، شروع کنید. سپس ماژول اول را به طور موقت به پین های زیر نشان دهید.

TIMPORARY TEST A MODULETM1637 ماژول Pin Pi پین فیزیکی# 5V 2 GND 6 CLK 40 DIO 38 برای یافتن طرح بندی پین ها نمودارهای GPIO را در پایین تر مشاهده کنید.

عکس دوم دو نمایشگر را نشان می دهد که موقتاً به رزبری پای 3 متصل شده اند و نرم افزار در حال اجرا است.

1. هنگامی که یک ماژول را موقتا سیم کشی کردید و سیم کشی خود را بررسی کردید

2. رزبری پای را روشن کنید. LED قرمز روی ماژول باید روشن شود ، اما هنوز هیچ نمایشگری وجود نخواهد داشت.

3. SSH را مانند قبل دوباره وارد Pi خود کنید.

$ cd RaspiDigiHamClock

$ python test.py

شما باید چرخه نمایش را از طریق پیام های کوتاه مختلف مشاهده کنید. اگر این کار را نکردید ، ابتدا سیم کشی خود را دوباره بررسی کنید! تلنگر زدن سیم یا اتصال پین اشتباه GPIO در Pi آسان است. در صورت دریافت پیام خطای پایتون ، نسخه پایتون خود را با استفاده از موارد زیر تأیید کنید:

$ python -V (بزرگ "V")

پایتون 2.7. X

من در مورد پایتون 3 آزمایش نکرده ام ، بنابراین مطمئن نیستم که کتابخانه سازگار است یا خیر.

پیام خطا (معمولاً آخرین خط خطا) را کپی کرده و در جستجوی Google جایگذاری کنید. این ممکن است سرنخی از آنچه رخ داده است ارائه دهد.

اگر ماژول شما کار می کند ، تبریک می گویم! می دانید که ماژول و Pi کار می کنند. حالا برای تست هر ماژول این کار را تکرار کنید. (پیشنهاد می کنم قبل از اتصال/جدا کردن ماژول ها Pi را خاموش و خاموش کنید !!)

$ sudo در حال حاضر خاموش است

مرحله 5: پین GPIO در Raspi

پین GPIO در Raspi
پین GPIO در Raspi
پین GPIO در Raspi
پین GPIO در Raspi
پین GPIO در Raspi
پین GPIO در Raspi

این پروژه از شناسه های فیزیکی GPIO BOARD برای پین ها استفاده می کند.

این پین 1 تا پین 40 است. نه شماره گذاری پین "BCM" GPIO. (بله ، کمی گیج کننده است ، اما BOARD فقط تعداد پین ها از بالا به چپ به پایین راست است.)

نمایش ماژول TM1637 ماژول Pin Pi پین فیزیکی#قدرت 5V 2 زمین GND 6

ماژول شماره 1 CLK 33

DIO 31

ماژول شماره 2 CLK 36

DIO 32

ماژول شماره 3 CLK 37

DIO 35

ماژول شماره 4 CLK 40

DIO 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 می ماند. حتماً تعداد ماژول ها را وارد کنید ، IN THE ORDER SHOWN در. INI توجه داشته باشید: اگر num_modules کمتر از 4 باشد ، PIN های اضافی TZ و HR و GPIO نادیده گرفته می شوند.

3. برای هر ماژول Timezones اضافه کنید.

این نام های لینوکس TZ است ، مانند "America/New_York" ، EST5EDT ، UTC یا "Local" برای منطقه زمانی محلی شما که از طریق raspi-config تنظیم شده است. پیش فرض UTC است

4. تنظیم کنید که آیا برای هر ماژول حالت 12 ساعته یا 24 ساعته نمایش داده شود یا خیر

[ساعت]؛ تعداد ماژول های TM1637 (بین 1 تا 4) num_modules = 2

؛ مناطق زمانی برای هر ماژول

؛ برای تنظیم منطقه زمانی محلی از raspi-config استفاده کنید. پیش فرض UTC است ؛ فرمت نام لینوکس TZ یا "محلی" به وقت محلی است. 'America/New_York'، EST5EDT، UTC، 'Local' TZ1 = محلی 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 () (تکرار…)

اگر ماژول ها را قبلاً آزمایش کرده اید و همه آنها کار کرده اند ، می دانید که ماژول ها و تمشک خوب هستند.

الف) HANG - اگر به نظر می رسد پیام های اشکال زدایی در یک نقطه آویزان هستند ، برنامه منتظر ACK از آن ماژول#است.

ابتدا سیم کشی خود را بررسی کنید! تلنگر زدن سیم یا اتصال پین اشتباه GPIO در Pi آسان است.

دوم ، ماژول ها را عوض کنید تا ببینید آیا یک ماژول ناگهان خراب شده است.

سوم ، فایل raspiclock.ini را برای خطاها بررسی کنید. در صورت لزوم ، کل فهرست را حذف کرده و GIT CLONE دیگری را برای بازیابی مجدد انجام دهید.

چهارم ، سیم کشی خود را دوباره بررسی کنید! ؛-)

ب) در صورت دریافت پیام خطای پایتون ، نسخه پایتون خود را با استفاده از موارد زیر تأیید کنید:

$ python -V (بزرگ "V")

پایتون 2.7. X

من در مورد Python 3 آزمایش نکرده ام ، بنابراین مطمئن نیستم که کتابخانه سازگار است یا خیر. پیام خطا (معمولاً آخرین خط خطا) را کپی کرده و در جستجوی Google جایگذاری کنید. این ممکن است سرنخی از آنچه رخ داده است ارائه دهد.

مرحله 8: نصب نهایی

نصب نهایی
نصب نهایی

1. فایل. INI را دوباره ویرایش کرده و اشکال زدایی را = 0. $ cd/home/pi/RaspiDigiHamClock تنظیم کنید

$ nano raspiclock.ini

2. همچنین مناطق زمانی TZ و تنظیمات HR 12/24 ساعت را مطابق میل خود بررسی کنید.

3. Brightness را به میزان دلخواه بین 1 تا 7 تنظیم کنید.

4. اسکریپت install.sh را برای افزودن به pi crontab برای راه اندازی خودکار در بوت اجرا کنید.

$ sh install.sh

5. راه اندازی مجدد

راه اندازی مجدد $ sudo

6. باید راه اندازی مجدد شود و سپس در حال اجرا باشد.

تمام شده!

توصیه شده: