Mundarija:

AndyMOTE serveri: 12 qadam
AndyMOTE serveri: 12 qadam

Video: AndyMOTE serveri: 12 qadam

Video: AndyMOTE serveri: 12 qadam
Video: Skeleton hits the Griddy ☠️ 2024, Noyabr
Anonim
AndyMOTE server
AndyMOTE server

Men o'z uyim uchun universal masofadan boshqarish pultini xohlardim va buni mobil telefonimdagi ilova (foydalanuvchi interfeysini ta'minlash uchun) va infraqizil "portlovchi" ni taqdim etish uchun Raspberry PI yordamida amalga oshirishim kerakligini tushundim. Biroz tergovdan so'ng men "Blaster" uchun ideal ko'rinadigan LIRC loyihasini topdim. Men o'z Android ilovamni (AndyMOTE) va kichik "Server" dasturini yozdim, ular orasidagi interfeysni ta'minlayman.

Bu ko'rsatma sizga serverni qanday qurishni ko'rsatadi

Bu erda berilgan ko'rsatmalar Raspian Jessi bilan ishlashi kerak, ular Raspian Buster bilan ishlamaydi va men shuni tushunamanki, Raspian endi Raspberry Pi OS bilan almashtirilgan, menda veb -saytimda yangilangan ko'rsatmalar to'plami bor (havolaga qarang) quyida) Raspian Stretch-Lite yoki Raspian Buster-Lite bilan ishlaydigan

1 -qadam: elementlar ro'yxati

  • RaspberryPi Zero WH
  • Energenie ENER314-IQ infraqizil tekshirgich
  • Micro SD karta (10 -sinf) (16 Gb)
  • Raspberry Pi quvvat manbai
  • (Ixtiyoriy) korpus (masalan: Pibow Zero W)
  • (Ixtiyoriy) infraqizil masofadan boshqarish pulti* (1 qabul qiluvchi; 4 ta uzatuvchi)

Shuningdek, sizga Raspberry Pi -ga ushbu elementlarni ulashga qodir bo'lgan monitor, klaviatura va kabellar kerak bo'ladi

2 -qadam: Raspberry Pi -ni tayyorlang

Bu yerdan Raspian Lite -ni yuklab oling va uni SD -kartangizga o'rnating (ko'rsatmalar bu erda).

Raspian Lite SD -kartangizga o'rnatilgandan so'ng va kartani Raspberry Pi -ga ko'chirishdan oldin; kartani shaxsiy kompyuteringizga o'rnating. Bo'sh fayl /boot /ssh yarating (bu serverda SHH ni yoqadi) va /boot/config.txt fayliga quyidagi tahrirlarni kiriting.

# HDMI-ni oddiy outputhdmi_drive = 2# HDMI-ni DMT rejimiga o'rnating (monitorlar uchun tikiladigan) hdmi_group = 2# Ruxsatni 800x600 ga sozlang @ 60hzhdmi_mode = 9dtoverlay = lirc-rpi, gpio_in_pin = 18, gpio_out_pin = 17

(Videoni sozlash bo'yicha ko'rsatma uchun bu erga qarang)

3 -qadam: Serverni yig'ing

Serverni yig'ing
Serverni yig'ing

Birinchidan, Raspberry Pi-ga oldindan tayyorlangan SD-kartani joylashtiring. Raspberry Pi -ni ish joyiga qo'ying. Menda ENER314-IR infraqizil infraqizil tekshirgichi Pibow korpusiga xalaqit bergani uchun ikkita bo'lak ishlatilmadi.

Keyin, Energenie ENER314-IR infraqizil tekshirgichini Raspberry Pi-ga ulang (rasmga qarang).

Keyin, Raspberry Pi ni klaviatura (USB ulagichi yordamida) va monitorga ulang (HDMI ulagichi yordamida… adapterlar kerak bo'lishi mumkin).

Nihoyat, quvvatni yoqing va qurilmaning yuklanishini kuting.

4 -qadam: Tarmoqni sozlash

Birinchidan, sevimli muharriri (masalan, nano) yordamida wpa-supplicant konfiguratsiya faylini oching.

$ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Faylning oxiriga o'ting va o'z tarmog'ingizni qo'shing (masalan).

tarmoq = {ssid = "YOUR_SSID" psk = "YOUR_KEY" ustuvorligi = "1" id_str = "YOUR_SSID_NAME"}

YOUR_SSID, YOUR_KEY va YOUR_SSID_NAME ni tarmoqqa mos keladigan qilib almashtiring.

Faylni saqlang, WPA -ni qayta ishga tushiring va qayta yoqing.

$ wpa_cli -i wlan0 $ sudo qayta yuklashni qayta sozlang

5 -qadam: Statik IP -manzilni o'rnating

Serverda aniq IP -manzil bo'lishi tavsiya etiladi. Siz bunga DHCP serveringizni mos ravishda sozlash orqali yoki wlan0 interfeysini Raspberry Pi -dagi statik manzilga o'rnatish uchun /etc/dhcpcd.conf faylini tahrir qilishingiz va qatorlarni qo'shishingiz mumkin.

# Statik IP konfiguratsiyasiga misol: wlan0static ip_address interfeysi = 192.168.1.116/24 statik routerlar = 192.168.1.1 statik domen_name_servers = 192.168.1.1 8.8.8.8

192.168.1.1 -ni yo'riqnoma manziliga va 192.168.1.116 -ni dastur uchun kerak bo'lgan haqiqiy statik manzilga o'zgartiring.

* Siz raspi-config yordam dasturini ishga tushirishni va shu vaqtda konfiguratsiyaga o'zgartirish kiritishni xohlashingiz mumkin.

Ish tugagach, qayta yoqing.

6 -qadam: LIRC -ni o'rnating

Buyruq yordamida LIRC -ni o'rnating.

$ sudo apt-get install lirc

/Etc /modules faylini tahrirlash; masalan:

$ sudo nano /etc /modules

va qatorlarni qo'shing:

lirc_devlirc_rpi gpio_in_pin = 18 gpio_out_pin = 17

Faylni saqlang va qayta ishga tushiring.

$ sudo qayta ishga tushirish

7 -qadam: LIRC -ni sozlang

/Etc/lirc/hardware.conf faylini tahrir qiling, masalan:

$ sudo nano /etc/lirc/hardware.conf

va shunday ko'rinishga keltiring:

###################################################################################### ####### /etc/lirc/hardware.conf## lircdLIRCD_ARGS = "-uinput-Listen" ishga tushirilganda ishlatiladigan dalillar fayl# START_LIRCMD = false ## Yaxshi konfiguratsiya fayli mavjud bo'lsa ham, irexec dasturini ishga tushirmang.# START_IREXEC = false ## Kerakli yadro modullarini yuklashga harakat qilingLOAD_MODULES = true ## "lircd --driver = help" ni ishga tushiring. qo'llab -quvvatlanadigan drayverlar ro'yxati. DRIVER = "default" ## odatda/dev/lirc0 - bu udevDEVICE = "/dev/lirc0" MODULES = "lirc_rpi" dan foydalanadigan tizimlar uchun to'g'ri sozlama ## Agar mavjud bo'lsa, sizning qurilmangiz uchun standart konfiguratsiya fayllariLIRCD_CONF = "" LIRCMD_CONF = "" /etc/lirc/lirc_options.conf faylini tahrirlang va satrlarni quyidagi tarzda o'zgartiring: driver = defaultdevice =/dev/lirc0

Faylni saqlang va lircd -ni qayta ishga tushiring.

$ sudo systemctl lircd -ni qayta ishga tushiring

8 -qadam: Qabul qilgichni tekshirish

LIRC Daemon -ni to'xtatish va qabul qilgichni tekshirish uchun quyidagi buyruqlar ketma -ketligini kiriting.

$ sudo systemctl stop lircd $ sudo mode2

Mode2 dasturi IQ signalining konsolga belgi-bo'shliq nisbatini chiqaradi. IQ qabul qilgichga masofadan boshqarish pultini yo'naltiring va ba'zi tugmachalarni bosing. Siz shunga o'xshash narsani ko'rishingiz kerak:

bo'shliq 16300 puls 95 bo'shliq 28794 puls 80 bo'shliq 19395 puls 83 bo'shliq 402351

tugagandan so'ng, ctl-c tugmachasini bosing va quyidagi buyruq yordamida LIRC Daemon-ni qayta ishga tushiring.

$ sudo systemctl start lircd

9 -qadam: Masofadan boshqarish pultlarini qo'shing - 1 -usul

LIRC har bir masofadan boshqarish pultiga tegishli ma'lumotlarni o'z ichiga olgan konfiguratsiya fayllaridan foydalanadi, ularni LIRC taqlid qilishi mumkin. LIRC quyi tizimi kerakli tarzda ishlashi uchun siz ushbu konfiguratsiya fayllarini yaratishingiz yoki boshqacha tarzda taqdim etishingiz kerak.

Muhim

Siz har bir masofadan boshqarish pulti uchun individual konfiguratsiya faylini taqdim etishingiz kerak, konfiguratsiya fayllari /etc/lirc/lircd.conf.d katalogida saqlanishi kerak. Kalit nomini tanlash AndyMOTE -ning eng yaxshi tajribasi uchun muhim, kalitlarga nom tanlashda bu erdagi ko'rsatmalarga amal qiling. Konfiguratsiya fayllarini bu erdan ham yuklab olish mumkin, lekin ehtiyot bo'ling, agar siz ulardan foydalansangiz, ular faqat bitta masofaviy konfiguratsiyani o'z ichiga olishi kerak. (Konfiguratsiya fayllari - bu oddiy matnli fayllar va agar kerak bo'lsa, ularni osongina tahrir qilish mumkin.

1 -usul quyidagi buyruqlar yordamida asl masofadan boshqarish pultini talab qiladi:

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

-Yoki-

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

FILENAME -ni siz sozlayotgan masofadan boshqarish pultining tavsiflovchi nomi bilan almashtiring. Oxirgi buyruq "xom" faylni yaratadi va bu ba'zida siz foydalanadigan masofadan boshqarish pultining xususiyatlariga qarab talab qilinadi. -N kaliti sizga xohlagan kalit nomini ishlatishga imkon beradi (faqat LIRC nom maydoni ro'yxati bilan chegaralanmaydi).

Ishni tugatgandan so'ng, lircdni qayta ishga tushirishni va qayta ishga tushirishni unutmang.

$ sudo systemctl start lircd $ sudo reboot

10 -qadam: Masofadan boshqarish pultlarini qo'shing - 2 -usul

2-usul asl GlobalGesh keshini 200 000 dan ortiq IQ kodli bulutli ma'lumotlar bazasini saqlashni talab qilmaydi. Har kim ro'yxatdan o'tishi va kuniga 5 tagacha kod to'plamini yuklab olishi mumkin. Bu kodlar bu erda tasvirlangan gcConvert ilovasi yordamida AndyMOTE uchun qulay tarzda LIRC conf fayllariga aylantirilishi mumkin.

11 -qadam: AndyMOTE Server dasturini o'rnating

Librlirc va libboost kutubxonalarini quyida tasvirlangan tarzda o'rnating:

$ sudo apt-get update $ sudo apt-get install liblirc-dev libboost-all-dev

Keyin git -ni o'rnating, uy katalogiga kiring va andymoteserver omborini klonlang

$ sudo apt install git $ cd ~ $ git clone

keyin manbani kompilyatsiya qiling

$ cd andymoteserver $ make

Olingan faylni qulay joyga ko'chiring; masalan:

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

Tozalash

$ cd ~ $ rm -Rf andymoteserver

Va nihoyat, AndyMOTE Serverni xizmat sifatida ishga tushirish uchun /lib/systemd/system/andymote.service faylini quyida ko'rsatilgan tarzda yarating:

[Birlik] Tavsif = AndyMOTE Serverni xizmat sifatida ishga tushirish [Xizmat] Type = simpleRemainAfterExit = falseRestart = alwaysRestartSec = 30ExecStop =/bin/trueExecStart =/opt/andymoteserver/andymote [Install] WantedBy = multi-user.target

Xizmatni yoqing va ishga tushiring

$ sudo systemctl andymote ni ishga tushiradi $ sudo systemctl start andymote

12 -qadam: Va nihoyat …

Va nihoyat…
Va nihoyat…

Yuqoridagi rasmda mening serverim oxirgi holatda ko'rsatilgan (chapda). Fotosuratning o'ng tomonidagi qurilma infraqizil masofadan boshqarish pulti bo'lib, u serverdan IQ signallarini oladi va ularni 4 ta IQ transmitterlari orqali qayta uzatadi (ko'rsatilmagan); Bular mening media qurilmalarimga (televizor, kuchaytirgich va boshqalar) o'rnatilgan.

Umid qilamanki, sizga yoqadi!

Tavsiya: