Სარჩევი:

AndyMOTE სერვერი: 12 ნაბიჯი
AndyMOTE სერვერი: 12 ნაბიჯი

ვიდეო: AndyMOTE სერვერი: 12 ნაბიჯი

ვიდეო: AndyMOTE სერვერი: 12 ნაბიჯი
ვიდეო: WHY I CAN'T PLAY THIS GAME ANDYMORE 2024, ნოემბერი
Anonim
AndyMOTE სერვერი
AndyMOTE სერვერი

მე მინდოდა უნივერსალური დისტანციური მართვა ჩემი mancave- ისთვის და მივხვდი, რომ მე უნდა შემეძლოს ამის გაკეთება ჩემს მობილურ ტელეფონზე არსებული აპლიკაციით (მომხმარებლის ინტერფეისის უზრუნველსაყოფად) და ჟოლოს PI ინფრაწითელი 'Blaster' უზრუნველსაყოფად. მცირე გამოკვლევის შემდეგ აღმოვაჩინე LIRC პროექტი, რომელიც იდეალური ჩანდა "Blaster" - ისთვის. მე დავწერე ჩემი Android აპლიკაცია (AndyMOTE) და პატარა "სერვერის" პროგრამა, რათა უზრუნველვყოთ ინტერფეისი ორს შორის.

ეს ინსტრუქცია გიჩვენებთ როგორ ავაშენოთ სერვერი

აქ მოცემული ინსტრუქციები უნდა მუშაობდეს რასპიან ჯესიზე, ისინი არ მუშაობენ რასპიან ბასტერთან და, ამ ეტაპზე, მე მესმის, რომ რასპიანი ახლა შეიცვალა Raspberry Pi OS– ით, მე მაქვს განახლებული ინსტრუქციები ჩემს ვებგვერდზე (იხ. ბმული ქვემოთ), რომელიც მუშაობს Raspian Stretch-Lite ან Raspian Buster-Lite– თან

ნაბიჯი 1: ნივთების სია

  • RaspberryPi Zero WH
  • Energenie ENER314-IR ინფრაწითელი კონტროლერი
  • მიკრო SD ბარათი (კლასი 10) (16 GB)
  • ჟოლო Pi კვების წყარო
  • (სურვილისამებრ) საქმე (მაგ.: Pibow Zero W)
  • (სურვილისამებრ) ინფრაწითელი დისტანციური მართვის გამაძლიერებელი* (1 მიმღები; 4 გადამცემი)

თქვენ ასევე დაგჭირდებათ მონიტორი, კლავიატურა და კაბელები, რომლებსაც შეუძლიათ დააკავშირონ ეს ელემენტები თქვენს Raspberry Pi– ს

ნაბიჯი 2: მოამზადეთ თქვენი ჟოლო პი

ჩამოტვირთეთ Raspian Lite აქედან და შემდეგ დააინსტალირეთ თქვენს SD ბარათზე (ინსტრუქცია აქ).

მას შემდეგ რაც Raspian Lite დაინსტალირდება თქვენს SD ბარათზე და სანამ ბარათს თქვენს Raspberry Pi– ზე გადაიტანთ; დააინსტალირეთ ბარათი თქვენს კომპიუტერზე. შექმენით ცარიელი ფაილი /ჩატვირთვის /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- ში (იხ. სურათი).

შემდეგ, დაუკავშირეთ Raspberry Pi კლავიატურას (USB კონექტორის გამოყენებით) და მონიტორს (HDMI კონექტორის გამოყენებით … შეიძლება საჭირო გახდეს გადამყვანები).

დაბოლოს, ჩართეთ ძალა და დაელოდეთ მოწყობილობის ჩატვირთვას.

ნაბიჯი 4: ქსელის დაყენება

პირველი, გახსენით wpa-supplicant კონფიგურაციის ფაილი თქვენი საყვარელი რედაქტორის გამოყენებით (მაგ. ნანო).

$ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

გადადით ფაილის ბოლოს და დაამატეთ თქვენი ქსელი (მაგ.).

ქსელი = {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 ინტერფეისის დაყენებით Raspberry Pi– ზე, შეცვალოთ ფაილი /etc/dhcpcd.conf და შეიტანოთ ხაზები.

# სტატიკური IP კონფიგურაციის მაგალითი: ინტერფეისი wlan0static ip_address = 192.168.1.116/24static მარშრუტიზატორები = 192.168.1.1static domain_name_servers = 192.168.1.1 8.8.8.8

შეცვალეთ 192.168.1.1 თქვენი როუტერის ფაქტობრივი მისამართი და 192.168.1.116 ფაქტობრივი სტატიკური მისამართი, რომელიც გჭირდებათ თქვენი პროგრამისთვის.

* შეიძლება დაგჭირდეთ raspi-config პროგრამის გაშვება და რაიმე სახის კონფიგურაციის ცვლილება ამ ეტაპზე.

გადატვირთეთ დასრულების შემდეგ.

ნაბიჯი 6: დააინსტალირეთ LIRC

დააინსტალირეთ LIRC ბრძანების გამოყენებით.

$ sudo apt-get დააინსტალირეთ lirc

შეცვალეთ /etc /modules ფაილი; მაგალითად:

$ sudo nano /etc /მოდულები

და დაამატეთ ხაზები:

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 გაშვებისას ფაილი# START_LIRCMD = ყალბი ## არ დაიწყოთ irexec, თუნდაც კარგი კონფიგურაციის ფაილი არსებობდეს.# START_IREXEC = false ## სცადეთ ჩატვირთოთ შესაბამისი ბირთვის მოდულები LOAD_MODULES = true ## გაუშვით "lircd --driver = help" for a მხარდაჭერილი დრაივერების სია. DRIVER = "ნაგულისხმევი" ## ჩვეულებრივ/dev/lirc0 არის სწორი პარამეტრი udevDEVICE = "/dev/lirc0" MODULES = "lirc_rpi" ## თქვენი აპარატურის ნაგულისხმევი კონფიგურაციის ფაილები LIRCD_CONF = "" LIRCMD_CONF = "" შეცვალეთ /etc/lirc/lirc_options.conf ფაილი და შეცვალეთ ხაზები ქვემოთ: მძღოლი = ნაგულისხმევი მოწყობილობა =/dev/lirc0

შეინახეთ ფაილი და გადატვირთეთ lircd.

$ sudo systemctl გადატვირთეთ lircd

ნაბიჯი 8: მიმღების ტესტირება

შეიყვანეთ ბრძანებების შემდეგი თანმიმდევრობა LIRC დემონის შესაჩერებლად და მიმღების შესამოწმებლად.

$ sudo systemctl შეჩერება $ 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 შეჩერება lircd $ sudo შეხორცება -n ~/FILENAME.conf

-ან-

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

შეცვალეთ FILENAME დისტანციური მართვის ზოგიერთი კონფიგურაციის სახელით. ეს უკანასკნელი ბრძანება ქმნის "ნედლ" ფაილს და ეს ზოგჯერ საჭიროა დისტანციური მართვის მახასიათებლების მიხედვით, რომელსაც თქვენ იყენებთ. -N გადამრთველი გაძლევთ საშუალებას გამოიყენოთ ნებისმიერი სახელი, რომელიც მოგწონთ (ვიდრე არ შემოიფარგლოთ LIRC სახელების სივრცის სიით).

დაიმახსოვრეთ, რომ გადატვირთეთ lircd და გადატვირთეთ დასრულების შემდეგ.

$ sudo systemctl იწყება lircd $ sudo გადატვირთვა

ნაბიჯი 10: დაამატეთ დისტანციური მართვა - მეთოდი 2

მეთოდი 2 არ საჭიროებს ორიგინალ დისტანციურ გლობალურ ქეშს 200 000-ზე მეტი IR კოდის ღრუბელზე დაფუძნებული მონაცემთა ბაზის დაცვით. ნებისმიერს შეუძლია დარეგისტრირდეს და გადმოწეროს დღეში 5 -მდე კოდი. ეს კოდექსები შეიძლება გადაკეთდეს LIRC conf ფაილებში, AndyMOTE მეგობრული გზით, აქ აღწერილი gcConvert პროგრამის გამოყენებით.

ნაბიჯი 11: დააინსტალირეთ AndyMOTE სერვერის პროგრამა

დააინსტალირეთ ბიბლიოთეკები liblirc და libboost ქვემოთ აღწერილი:

$ sudo apt-მიიღეთ განახლება $ sudo apt-get დააინსტალირეთ liblirc-dev libboost-all-dev

შემდეგი, დააინსტალირეთ git, გადადით თქვენს მთავარ კატალოგში და დააკონფიგურირეთ andymoteserver საცავი

$ sudo apt დააინსტალირეთ git $ cd ~ $ git კლონი

შემდეგ შეადგინეთ წყარო

$ 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 შინაარსით, როგორც ნაჩვენებია ქვემოთ:

[ერთეული] აღწერა = გაუშვით AndyMOTE სერვერი როგორც სერვისი [სერვისი] ტიპი = მარტივიRemainAfterExit = falseRestart = ყოველთვისRestartSec = 30ExecStop =/bin/trueExecStart =/opt/andymoteserver/andymote [Install] WantedBy = multi-user.target

ჩართეთ და დაიწყეთ სერვისი

$ sudo systemctl ჩართვა andymote $ sudo systemctl დაწყება andymote

ნაბიჯი 12: და ბოლოს…

Და ბოლოს…
Და ბოლოს…

ზემოთ ნაჩვენები სურათი აჩვენებს ჩემს სერვერს მის საბოლოო პოზიციაში (მარცხნივ). ფოტოს მარჯვენა მხარეს არის ინფრაწითელი დისტანციური მართვის გამაძლიერებელი, ის იღებს სერვერის IR სიგნალებს და ხელახლა გადასცემს მათ 4 IR გადამცემებით (არ არის ნაჩვენები); ისინი დამონტაჟებულია ჩემს მედია მოწყობილობებზე (ტელევიზია, გამაძლიერებელი და ა.

იმედი მაქვს ისიამოვნებთ!

გირჩევთ: