INHOUDSOPGAWE:

AndyMOTE -bediener: 12 stappe
AndyMOTE -bediener: 12 stappe

Video: AndyMOTE -bediener: 12 stappe

Video: AndyMOTE -bediener: 12 stappe
Video: 220 В переменного тока от 12 В 90 А Автомобильный генератор переменного тока 1000 Вт DIY 2024, Junie
Anonim
AndyMOTE -bediener
AndyMOTE -bediener

Ek wou 'n universele afstandsbediening vir my man grot hê en het gedink ek moet dit kan doen met 'n app op my selfoon (om die gebruikerskoppelvlak te voorsien) en 'n Framboos PI om die Infra Red 'Blaster' te kan voorsien. Na 'n bietjie ondersoek het ek die LIRC -projek ontdek wat ideaal lyk vir die 'Blaster'. Ek het my eie Android -app (AndyMOTE) en 'n klein 'bediener' -program geskryf om 'n koppelvlak tussen die twee te bied.

Hierdie instruksies wys u hoe u die bediener kan bou

Die instruksies wat hier gegee word, moet met Raspian Jessie werk, dit werk nie met Raspian Buster nie, en op hierdie stadium verstaan ek dat Raspian nou vervang is met die Raspberry Pi OS, ek het 'n opgedateerde stel instruksies op my webwerf (sien skakel hieronder) wat werk met Raspian Stretch-Lite of Raspian Buster-Lite

Stap 1: Lys van items

  • FramboosPi Zero WH
  • Energenie ENER314-IR infrarooi kontroleerder
  • Micro SD -kaart (klas 10) (16 GB)
  • Raspberry Pi kragtoevoer
  • (Opsioneel) Behuizing (bv. Pibow Zero W)
  • (Opsioneel) Infrarooi afstandbeheerder* (1 ontvanger; 4 senders)

U benodig ook 'n monitor, 'n sleutelbord en kabels wat hierdie items aan u Raspberry Pi kan koppel

Stap 2: Berei u Framboos Pi voor

Laai Raspian Lite hier af en installeer dit dan op u SD -kaart (instruksies hier).

Sodra Raspian Lite op u SD -kaart geïnstalleer is en voordat u die kaart na u Raspberry Pi skuif; monteer die kaart op u rekenaar. Skep 'n leë lêer /boot /ssh (dit maak SHH moontlik op die bediener) en maak die volgende wysigings aan die lêer /boot/config.txt

# Stel HDMI in op normale uitvoerhdmi_drive = 2# Stel HDMI in DMT-modus (geskik vir monitors) hdmi_group = 2# Stel resolusie op 800x600 @ 60hzhdmi_mode = 9dtoverlay = lirc-rpi, gpio_in_pin = 18, gpio_out_pin = 17

(Sien hier vir leiding oor video -instellings)

Stap 3: Monteer die bediener

Monteer die bediener
Monteer die bediener

Plaas eers u vooraf voorbereide SD-kaart in die Raspberry Pi. Plaas die Raspberry Pi in die kas. Ek het 'n probleem ondervind dat die ENER314-IR infrarooi kontroleerder met die Pibow-behuising inmeng, sodat ek nie twee van die stukke gebruik het nie.

Koppel vervolgens die Energenie ENER314-IR Infra Red Controller in die Raspberry Pi (sien prentjie).

Koppel dan die Raspberry Pi aan die sleutelbord (met behulp van 'n USB -aansluiting) en die monitor (met behulp van 'n HDMI -aansluiting … Adapters kan nodig wees).

Laastens, skakel aan en wag totdat die eenheid begin.

Stap 4: Stel netwerk op

Maak eers die wpa-aanvullende konfigurasielêer oop met u gunsteling redakteur (bv. Nano).

$ sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Gaan na die einde van die lêer en voeg u netwerk by (bv.

netwerk = {ssid = "YOUR_SSID" psk = "YOUR_KEY" prioriteit = "1" id_str = "YOUR_SSID_NAME"}

Vervang YOUR_SSID, YOUR_KEY en YOUR_SSID_NAME soos toepaslik vir u netwerk.

Stoor die lêer, herbegin die WPA -versoeker en herlaai.

$ wpa_cli -i wlan0 herkonfigureer $ sudo herlaai

Stap 5: Stel 'n statiese IP -adres op

Dit word aanbeveel dat u bediener 'n vaste IP -adres het. U kan dit moontlik bereik deur u DHCP -bediener op die regte manier te konfigureer, of om die wlan0 -koppelvlak op 'n statiese adres op die Raspberry Pi te stel, die lêer /etc/dhcpcd.conf te wysig en die reëls op te neem.

# Voorbeeld statiese IP -opset: koppelvlak wlan0static ip_address = 192.168.1.116/24static routers = 192.168.1.1static domain_name_servers = 192.168.1.1 8.8.8.8

Verander 192.168.1.1 na die werklike adres van u router en 192.168.1.116 na die werklike statiese adres wat u benodig vir u toepassing.

* U kan die raspi-config-program wil uitvoer en op hierdie stadium enige konfigurasieveranderings aanbring.

Herlaai wanneer dit klaar is.

Stap 6: Installeer LIRC

Installeer LIRC met die opdrag.

$ sudo apt-get install lirc

Wysig die /etc /modules lêer; bv:

$ sudo nano /etc /modules

en voeg die lyne by:

lirc_devlirc_rpi gpio_in_pin = 18 gpio_out_pin = 17

Stoor die lêer en herlaai.

$ sudo herlaai

Stap 7: Stel LIRC op

Wysig die /etc/lirc/hardware.conf lêer, bv:

$ sudo nano /etc/lirc/hardware.conf

en laat dit so lyk:

#################################################### ####### /etc/lirc/hardware.conf## Argumente wat gebruik sal word wanneer lircdLIRCD_ARGS = "-uinput-listenen" begin word##Moenie lircmd begin nie, selfs al lyk dit asof daar 'n goeie konfigurasie is lêer# START_LIRCMD = false ## Moenie irexec begin nie, selfs al blyk 'n goeie konfigurasielêer te wees.# START_IREXEC = false ## Probeer om gepaste kernmodules te laaiLOAD_MODULES = true ## Run "lircd --driver = help" vir 'n lys van ondersteunde bestuurders. DRIVER = "standaard" ## gewoonlik/dev/lirc0 is die korrekte instelling vir stelsels met udevDEVICE = "/dev/lirc0" MODULES = "lirc_rpi" ## Standaard konfigurasie lêers vir u hardeware indien enigeLIRCD_CONF = "" LIRCMD_CONF = "" Wysig die /etc/lirc/lirc_options.conf lêer en verander lyne soos hieronder: driver = defaultdevice =/dev/lirc0

Stoor die lêer en herbegin lircd.

$ sudo systemctl herbegin lircd

Stap 8: Toets die ontvanger

Voer die volgende opdragreeks in om die LIRC Daemon te stop en die ontvanger te toets.

$ sudo systemctl stop lircd $ sudo mode2

Die mode2-program gee die merk-ruimte-verhouding van 'n IR-sein na die konsole. Wys 'n afstandsbediening na u IR -ontvanger en druk 'n paar knoppies. U behoort so iets te sien:

ruimte 16300puls 95space 28794puls 80space 19395puls 83space 402351

As u klaar is, druk op ctl-c en herbegin die LIRC Daemon met die volgende opdrag.

$ sudo systemctl begin lircd

Stap 9: Voeg afstandbeheer by - metode 1

LIRC gebruik konfigurasielêers wat data bevat met betrekking tot elke afstandbeheer wat deur LIRC nagevolg kan word. U moet hierdie konfigurasie lêers genereer of andersins verskaf sodat die LIRC -substelsel na wense kan werk.

Belangrik

U moet 'n individuele konfigurasielêer vir elke afstandsbediener wat moet naboots, verskaf. Die config -lêers moet in die gids /etc/lirc/lircd.conf.d gestoor word. Die keuse van die sleutelnaam is belangrik vir die beste AndyMOTE -ervaring; volg die riglyne hier by die keuse van name vir u sleutels. Config -lêers kan ook hier afgelaai word, maar pas op dat dit slegs een afstandskonfigurasie moet bevat as u dit gebruik. (Config -lêers is eenvoudige tekslêers en kan maklik geredigeer word indien nodig.

Metode 1 vereis die oorspronklike afstandsbediening met behulp van die volgende opdragte:

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

-OF-

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

Vervang FILENAME met 'n beskrywende naam vir die afstandbeheer wat u opstel. Laasgenoemde opdrag skep 'n 'rou' lêer, en dit is soms nodig, afhangende van die kenmerke van die afstandsbediening wat u gebruik. Met die -n -skakelaar kan u enige sleutelnaam gebruik wat u wil (eerder as om beperk te wees tot die LIRC -naamruimtelys).

Onthou om lircd weer te begin en weer te begin as u klaar is.

$ sudo systemctl begin lircd $ sudo herlaai

Stap 10: Voeg afstandbeheer by - metode 2

Metode 2 vereis nie dat die oorspronklike remoteGlobal-cache 'n wolkgebaseerde databasis van meer as 200 000 IR-kodes onderhou nie. Almal kan tot 5 kodesette per dag registreer en aflaai. Hierdie kodesette kan op 'n AndyMOTE -vriendelike manier omgeskakel word na LIRC conf -lêers, met behulp van die gcConvert -toepassing wat hier beskryf word.

Stap 11: Installeer die AndyMOTE -bedienerprogram

Installeer Libraries liblirc en libboost soos hieronder beskryf:

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

Installeer vervolgens git, gaan na u tuisgids en kloon die andymoteserver -bewaarplek

$ sudo apt installeer git $ cd ~ $ git kloon

stel dan die bron saam

$ cd en motorserver $ maak

Beweeg die resulterende lêer na 'n gerieflike plek; bv:

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

Ruim op

$ cd ~ $ rm -Rf andymoteserver

Ten slotte, om AndyMOTE Server as 'n diens uit te voer, skep die lêer /lib/systemd/system/andymote.service met die inhoud soos hieronder getoon:

[Eenheid] Beskrywing = voer AndyMOTE Server as 'n diens uit [Diens] Tipe = simpleRemainAfterExit = falseRestart = alwaysRestartSec = 30ExecStop =/bin/trueExecStart =/opt/andymoteserver/andymote [Installeer] WantedBy = multi-user.target

Aktiveer en begin die diens

$ sudo systemctl aktiveer andymote $ sudo systemctl begin andymote

Stap 12: En laastens …

En uiteindelik…
En uiteindelik…

Bogenoemde prent wys my bediener in sy finale posisie (links). Die toestel aan die regterkant van die foto is die infrarooi afstandbeheer-uitbreiding, dit ontvang die IR-seine van die bediener en stuur dit weer deur middel van 4 IR-senders (nie getoon nie); dit is gemonteer op my mediatoestelle (TV, versterker, ens.).

Ek hoop jy geniet!

Aanbeveel: