فهرست مطالب:

سرور AndyMOTE: 12 مرحله
سرور AndyMOTE: 12 مرحله

تصویری: سرور AndyMOTE: 12 مرحله

تصویری: سرور AndyMOTE: 12 مرحله
تصویری: این ویدیو باعث میشه خودتو نکشی!! 2024, ژوئن
Anonim
سرور AndyMOTE
سرور AndyMOTE

من یک کنترل از راه دور جهانی برای mancave خود می خواستم و متوجه شدم که باید بتوانم این کار را با یک برنامه روی تلفن همراهم (برای ارائه رابط کاربری) و یک Raspberry PI برای ارائه Blaster مادون قرمز انجام دهم. پس از کمی تحقیق ، پروژه LIRC را کشف کردم که برای "Blaster" ایده آل به نظر می رسید. من برنامه اندروید خودم (AndyMOTE) و یک برنامه کوچک "سرور" را برای ارائه رابط بین این دو نوشتم.

این دستورالعمل نحوه ساخت سرور را به شما نشان می دهد

دستورالعمل های ارائه شده در اینجا باید با Raspian Jessie کار کند ، آنها با Raspian Buster کار نمی کنند و در این مرحله ، من درک می کنم که Raspian در حال حاضر با Raspberry Pi OS جایگزین شده است ، من یک مجموعه دستورالعمل به روز شده در وب سایت خود دارم (پیوند را ببینید زیر) که با Raspian Stretch-Lite یا Raspian Buster-Lite کار می کنند

مرحله 1: فهرست موارد

  • RaspberryPi Zero WH
  • کنترل کننده مادون قرمز Energenie ENER314-IR
  • کارت حافظه Micro SD (کلاس 10) (16 گیگابایت)
  • منبع تغذیه رزبری پای
  • (اختیاری) مورد (به عنوان مثال: Pibow Zero W)
  • (اختیاری) توسعه دهنده کنترل از راه دور مادون قرمز* (1 گیرنده ؛ 4 فرستنده)

همچنین به یک مانیتور ، صفحه کلید و کابل هایی نیاز دارید که بتوانند این موارد را به رزبری پای خود متصل کنند

مرحله 2: تمشک پای خود را آماده کنید

Raspian Lite را از اینجا بارگیری کنید و سپس آن را روی کارت SD خود نصب کنید (دستورالعمل اینجا).

هنگامی که Raspian Lite روی کارت SD شما نصب شده است و قبل از اینکه کارت را به Raspberry Pi خود منتقل کنید ؛ کارت را روی رایانه خود نصب کنید یک فایل خالی /boot /ssh ایجاد کنید (این SHH را روی سرور فعال می کند) و ویرایش های زیر را در فایل /boot/config.txt انجام دهید

# HDMI را روی خروجی معمولی قرار دهیدhdmi_drive = 2# HDMI را روی حالت DMT (قابل نصب برای مانیتورها) hdmi_group = 2# وضوح تصویر را روی 800x600 @ 60hzhdmi_mode = 9dtoverlay = lirc-rpi ، gpio_in_pin = 18 ، gpio_out_pin = 17 تنظیم کنید

(برای راهنمای تنظیمات ویدیو اینجا را ببینید)

مرحله 3: سرور را مونتاژ کنید

سرور را مونتاژ کنید
سرور را مونتاژ کنید

ابتدا ، کارت SD از پیش آماده شده خود را در Raspberry Pi قرار دهید. Raspberry Pi را در جعبه آن قرار دهید. من مشکلی داشتم که کنترل کننده مادون قرمز ENER314-IR با مورد Pibow تداخل داشت بنابراین از دو قطعه استفاده نکرد.

سپس ، کنترل کننده مادون قرمز Energenie ENER314-IR را به رزبری پای وصل کنید (تصویر را ببینید).

سپس ، Raspberry Pi را به صفحه کلید (با استفاده از اتصال USB) و مانیتور (با استفاده از اتصال HDMI … ممکن است آداپتور لازم باشد) وصل کنید.

در نهایت ، برق را روشن کرده و منتظر بوت شدن دستگاه باشید.

مرحله 4: راه اندازی شبکه

ابتدا فایل پیکربندی wpa-supplicant را با استفاده از ویرایشگر مورد علاقه خود (به عنوان مثال نانو) باز کنید.

$ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

به انتهای فایل بروید و شبکه خود را اضافه کنید (به عنوان مثال).

network = {ssid = "YOUR_SSID" psk = "YOUR_KEY" اولویت = "1" id_str = "YOUR_SSID_NAME"}

YOUR_SSID ، YOUR_KEY و YOUR_SSID_NAME را مناسب شبکه خود جایگزین کنید.

فایل را ذخیره کرده ، درخواست کننده WPA را راه اندازی مجدد کرده و راه اندازی مجدد کنید.

$ wpa_cli -i wlan0 راه اندازی مجدد $ sudo را مجدداً پیکربندی کنید

مرحله 5: آدرس IP ثابت را تنظیم کنید

توصیه می شود که سرور شما دارای آدرس IP ثابت باشد. ممکن است بتوانید با پیکربندی مناسب سرور DHCP خود به این هدف دست یابید یا با تنظیم رابط wlan0 به آدرس ثابت روی رزبری پای ، فایل /etc/dhcpcd.conf را ویرایش کرده و خطوط را در آن قرار دهید.

# پیکربندی IP ثابت

192.168.1.1 را به آدرس واقعی روتر خود و 192.168.1.116 را به آدرس ثابت واقعی که برای برنامه خود نیاز دارید تغییر دهید.

* ممکن است بخواهید ابزار raspi-config را اجرا کرده و هرگونه تغییر پیکربندی را در این مرحله انجام دهید.

پس از اتمام راه اندازی مجدد کنید.

مرحله 6: LIRC را نصب کنید

با استفاده از دستور LIRC را نصب کنید.

$ sudo apt-get lirc install

فایل /etc /modules را ویرایش کنید ؛ به عنوان مثال:

$ sudo nano /etc /modules

و خطوط را اضافه کنید:

lirc_devlirc_rpi gpio_in_pin = 18 gpio_out_pin = 17

فایل را ذخیره کرده و راه اندازی مجدد کنید.

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

مرحله 7: LIRC را پیکربندی کنید

فایل /etc/lirc/hardware.conf را ویرایش کنید ، به عنوان مثال:

$ sudo nano /etc/lirc/hardware.conf

و آن را شبیه به این کنید:

################################################### ####### /etc/lirc/hardware.conf## استدلال هایی که هنگام راه اندازی lircd استفاده می شود LIRCD_ARGS = "-uinput --listen" ## lircmd را حتی اگر به نظر می رسد پیکربندی خوبی وجود دارد ، شروع نکنید فایل# START_LIRCMD = false ## irexec را شروع نکنید ، حتی اگر یک فایل پیکربندی خوب وجود داشته باشد.# START_IREXEC = false ## سعی کنید ماژول های هسته مناسب را بارگذاری کنید لیست درایورهای پشتیبانی شده. DRIVER = "پیش فرض" ## معمولاً/dev/lirc0 تنظیم صحیحی برای سیستمهایی است که از udevDEVICE = "/dev/lirc0" MODULES = "lirc_rpi" ## در صورت وجود فایلهای پیکربندی پیش فرض سخت افزار شما استفاده می کنند LIRCD_CONF = "" LIRCMD_CONF = "" فایل /etc/lirc/lirc_options.conf را ویرایش کرده و خطوط زیر را اصلاح کنید: driver = defaultdevice =/dev/lirc0

فایل را ذخیره کرده و lircd را مجدداً راه اندازی کنید.

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

مرحله 8: آزمایش گیرنده

ترتیب زیر را برای متوقف کردن LIRC Daemon و آزمایش گیرنده وارد کنید.

$ sudo systemctl stop lircd $ sudo mode2

برنامه mode2 نسبت علامت به فضای سیگنال IR را به کنسول خروجی می دهد. یک کنترل از راه دور را روی گیرنده IR خود قرار دهید و برخی دکمه ها را فشار دهید. شما باید چیزی شبیه به این را ببینید:

فضا 16300 پالس 95 فضا 28794 پالس 80 اسپیس 19395 پالس 83 اسپیس 402351

پس از اتمام کار ctl-c را فشار دهید و LIRC Daemon را با دستور زیر راه اندازی مجدد کنید.

$ sudo systemctl شروع lircd

مرحله 9: افزودن ریموت - روش 1

LIRC از فایلهای پیکربندی استفاده می کند که حاوی داده های مربوط به هر کنترل از راه دور است که می تواند توسط LIRC شبیه سازی شود. برای اینکه زیر سیستم LIRC به دلخواه کار کند ، باید این فایلهای پیکربندی را ایجاد کرده یا در غیر این صورت ارائه دهید.

مهم

شما باید برای هر یک از راه دور یک فایل پیکربندی جداگانه ارائه دهید. فایل های پیکربندی باید در فهرست /etc/lirc/lircd.conf.d ذخیره شوند. انتخاب نام کلیدی برای بهترین تجربه AndyMOTE مهم است ، هنگام انتخاب نام کلیدها ، لطفاً دستورالعمل های اینجا را دنبال کنید. فایلهای پیکربندی را می توانید از اینجا بارگیری کنید اما مراقب باشید که در صورت استفاده از آنها ، فقط باید یک پیکربندی از راه دور داشته باشند. (فایلهای پیکربندی فایلهای متنی ساده ای هستند و در صورت لزوم به راحتی قابل ویرایش هستند.

روش 1 نیاز به کنترل از راه دور اصلی با استفاده از دستورات زیر دارد:

$ sudo systemctl stop lircd $ sudo irrecord -n ~/FILENAME.conf

$ sudo irrecord -f -n ~/FILENAME.conf

برای کنترل از راه دور که پیکربندی کرده اید ، نام FILENAME را با نام توصیفی جایگزین کنید. دستور اخیر یک فایل خام ایجاد می کند و گاهی اوقات بسته به ویژگی های کنترل از راه دور که استفاده می کنید ، به این مورد نیاز است. سوئیچ -n به شما این امکان را می دهد که از هر نام کلیدی که دوست دارید استفاده کنید (نه اینکه محدود به لیست LIRC Namespace باشید).

به یاد داشته باشید که پس از اتمام کار lircd را مجدداً راه اندازی کرده و راه اندازی مجدد کنید.

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

مرحله 10: افزودن ریموت - روش 2

روش 2 به ریموت اصلی نیاز ندارد همه می توانند روزانه حداکثر 5 مجموعه کد ثبت نام کرده و بارگیری کنند. این مجموعه ها را می توان با استفاده از برنامه gcConvert که در اینجا توضیح داده شده است ، به صورت دوستانه با AndyMOTE ، به فایل های conf LIRC تبدیل کرد.

مرحله 11: برنامه سرور AndyMOTE را نصب کنید

کتابخانه های liblirc و libboost را مطابق شرح زیر نصب کنید:

$ sudo apt-get بروزرسانی $ sudo apt-get نصب liblirc-dev libboost-all-dev

در مرحله بعد ، git را نصب کنید ، وارد فهرست اصلی خود شوید و مخزن andymoteserver را کلون کنید

$ sudo apt install git $ cd ~ $ git clone

سپس منبع را کامپایل کنید

$ cd andymoteserver $ make

فایل به دست آمده را به مکان مناسب منتقل کنید. به عنوان مثال:

$ sudo mkdir -p/opt/andymoteserver $ sudo mv dist/Debug/GNU -Linux/andymote/opt/andymoteserver/

مرتب کنید

$ cd ~ $ rm -Rf andymoteserver

در نهایت ، برای اجرای سرور AndyMOTE به عنوان سرویس ، فایل /lib/systemd/system/andymote.service را با محتوا مطابق شکل زیر ایجاد کنید:

[Unit] Description = AndyMOTE Server را به عنوان یک سرویس اجرا کنید [Service] Type = simpleRemainAfterExit = falseRestart = alwaysRestartSec = 30ExecStop =/bin/trueExecStart =/opt/andymoteserver/andymote [Install] WantedBy = multi-user.target

سرویس را فعال کرده و راه اندازی کنید

$ sudo systemctl را فعال کنید andymote $ sudo systemctl را شروع کنید andymote

مرحله 12: و در نهایت…

و در نهایت…
و در نهایت…

تصویر بالا سرور من را در موقعیت نهایی خود (سمت چپ) نشان می دهد. دستگاه سمت راست عکس ، کنترل کننده کنترل از راه دور مادون قرمز است ، این سیگنال های IR را از سرور دریافت می کند و آنها را از طریق 4 فرستنده IR (نشان داده نشده) مجدداً منتقل می کند. اینها روی دستگاههای رسانه ای من (تلویزیون ، تقویت کننده و غیره) نصب شده اند.

امیدوارم لذت ببرید!

توصیه شده: