Sadržaj:

KiKi tipkovnički bot: 5 koraka
KiKi tipkovnički bot: 5 koraka

Video: KiKi tipkovnički bot: 5 koraka

Video: KiKi tipkovnički bot: 5 koraka
Video: хоррор в чикен ган! 😱 2024, Srpanj
Anonim
KiKi tipkovnički bot
KiKi tipkovnički bot

Često se moram povezati s računalom s posla, ali ne volim ga stalno ostavljati uključenog. Problem je u tome što moj stari računar ne podržava WOL. Međutim, može se uspavati i probuditi pomoću tipke za uključivanje na tipkovnici. Međutim, nema nikoga kod kuće osim psa koji će ga pokrenuti u život i tako …

KiKi rođen je KeyboardBot.

Povezat će se s kućnim pomoćnikom preko MQTT -a, a ima i vrlo jednostavnu samostalnu web stranicu, nije lijepa, ali obavi posao.

Pribor

3D pisačPLA filament

Rezači žice

Skidači žica

Lemilica

Wemos D1 Mini

Micro 9G servo

Korak 1: Ispis kućišta kućišta i proširenja servo trube

Ispis kućišta Kućište i proširenje servo trube
Ispis kućišta Kućište i proširenje servo trube

Za početak počnite ispisivanjem kućišta, ja vam dostavljam SKP datoteku ako želite s njom petljati u Sketchupu (Maker Edition). Također sam upakirao STL datoteku ako samo želite nastaviti i učitati je u svoj rezač i ispisati je bez izmjena.

Ispisao sam kućište bez oslonaca jer je prvi koji sam ispisao bio bugger za njihovo uklanjanje, nedostatak oslonaca ipak je dobro funkcionirao, bilo je sitnog ulegnuća, ali kad se sve dobro popelo.

Tiskao sam s temperaturom kreveta od 50 i temperaturom ekstrudera od 200 što je bila preporuka za filament koji sam koristio.

Kao i u slučaju da također isporučujem SKP i STL datoteke za servo -trubu, servo -truba mi se nije ispravno ispisala, na kraju sam samo odrezao montažnu cijev i samo je zalijepio, kabel pričvrstio na jednu od originalnih rogovi jer sam bio nestrpljiv da ovo uspije.

Korak 2: Montaža

Skupština
Skupština
Skupština
Skupština
Skupština
Skupština

Uklonite zaglavlje s 3 pina s kraja servo kabela.

Provucite elektrodu kroz servo udubljenje u kućištu i van kroz izlaznu rupu sa strane.

Sada pažljivo položite elektrodu sa strane serva i postavite je preko kućišta tako da će elektroda sjediti u udubljenju unutar rupe za servo, čvrsto povući elektrodu i lagano gurnuti servo kućište, trebalo bi biti lijepo pripijeno.

Obucite olovo u udubljenje na vanjskoj strani kućišta i probodite ga kroz udubljenje za D1 Mini. Zarolajte kabel i vratite ga natrag tako da u kućištu izgleda prilično uredno.

Gurnite D1 Mini u njegovo kućište s WiFi modulom na vrhu. Elektroda bi trebala sjediti preko vrha modula, a zatim se vratiti nazad ispod PCB -a.

Sada možete izrezati servo kabel na prihvatljivu duljinu.

Uklonite D1 Mini gurajući ga sa suprotne strane PCB -a do USB utičnice.

Nakon što ga uklonite, odvojite, ogolite i oplemenite tri žice elektrode.

Lemite ih na donju stranu tiskane ploče sljedećim redoslijedom.

Crvena -> 5V

Smeđa -> GND

Narančasta -> D4

Sve tri igle su jedna uz drugu pa je lako održavati vodilicu urednom.

Sada nježno preklopite elektrodu ispod ploče prema sredini držeći je lijepom i ravnom, prevrnite je po vrhu ploče i nježno gurnite ploču prema kući. Ne gurajte D1 do kraja, ostavite ga da viri dovoljno daleko kako biste lako priključili USB kabel i mogli biste doći do gumba za resetiranje.

Ako ste uspjeli otisnuti trubu tako da stane preko čepa na servo, sada je postavite tako da vrh trube bude više -manje paralelan s radnom površinom. Popravite ga malim vijkom koji ste dobili uz servo.

Ako niste mogli ispisati trubu, odrežite uložak i pričvrstite ga na jednu od isporučenih sirena, super ljepilo i nekoliko malih kabelskih vezica odradili su posao umjesto mene.

Korak 3: Treperi

Učitajte ino datoteku u datoteku svojih arduino projekata u mapu zvanu KiKi.

Otvorite datoteku u Arduino IDE -u.

Uredite sljedeće retke prema postavkama kućnog pomoćnika.

25 const PROGMEM uint16_t MQTT_SERVER_PORT = 1883; (ako ste promijenili zadani port)

26 const PROGMEM char* MQTT_CLIENT_ID = "Ime hosta";

27 const PROGMEM char* MQTT_USER = "MQTTUSER";

28 const PROGMEM char* 28 MQTT_PASSWORD = "MQTTPASS";

Za teme MQTT STATE i COMMAND volim naručiti lokaciju/uređaj/(status/prekidač), ali možete koristiti bilo koju konvenciju koja vam se sviđa.

29 const char* MQTT_ROBOT_STATE_TOPIC = "lokacija/kom/status"; const char*

30 MQTT_ROBOT_COMMAND_TOPIC = "lokacija/kom/prekidač";

Sada uredite ove daljnje retke kako biste postavili naziv hosta svojih uređaja.

159 wifi_station_set_hostname ("HOSTNAME");

169 if (! WifiManager.autoConnect ("HOSTNAME")) {

Postavite Potpuno kvalificirano ime domene vašeg MQTT poslužitelja.

175 WiFi.hostByName ("MQTTSERVER", MQTT_SERVER_IP);

Priključite D1 Mini u računalo i odaberite COM priključak na koji je montiran.

Otvorite serijski monitor.

Učitajte datoteku.

Nakon što je prijenos dovršen, provjerite serijski monitor.

Ako se radi o novoj ploči, neće biti postavki i morat ćete se povezati s bežičnom pristupnom točkom koju stvara, zatim odaberite ispravnu bežičnu mrežu i unesite lozinku.

Kada spremite pojedinosti natrag, zapisat će ih na uređaj i ponovno ih koristiti svaki put pri ponovnom pokretanju.

Sada je spojen na vašu bežičnu mrežu, vidjet ćete na serijskom monitoru liniju sličnu …

192.168.1.xxx ili bilo koji domet vaše mreže.

Ako se na to povežete preglednikom, vidjet ćete vrlo jednostavnu web stranicu s jednim gumbom koja će, kada se pritisne, aktivirati servo krak.

Korak 4: Prilagođavanje početnog i aktiviranog položaja servo upravljača

Zalijepim veliki komad bluetacka na donju stranu kućišta, a zatim ga izbacujem na radnu površinu tako da servo truba sjedi iznad središta tipke koju treba pritisnuti.

U početku poredam na jednu od drugih tipki, a ne na tipku za napajanje jer će svaki put kad testiram prebaciti računalo u stanje mirovanja.

Za moju tipkovnicu Logitech K260 postavio sam početni položaj na 135, a ovaj se nalazi servo trubom neposredno iznad tipke.

Aktivirano mjesto postavio sam na 120, čime se gumb gura dovoljno dolje da provjeri je li doista aktiviran.

Očito ćete se morati petljati s ovim postavkama kako biste ih lijepo postavili na tipkovnici, samo je slučaj da prvo prilagodite postavku početnog položaja, prenesete skicu i pogledate je.

Kad ste zadovoljni početnim položajem, nastavite s aktiviranim položajem, jer se moja tipkovnica otprilike 15 stupnjeva spušta od početnog položaja. Ako promijenite svoj početni položaj, pokušajte prije svega podesiti aktivirani položaj u početni položaj - 15. Prenesite u kod na D1 i pogledajte kako to funkcionira. Uopće ne treba puno vremena da se to riješi.

Prednost korištenja bluetacka je u tome što će uređaj savršeno držati na mjestu nakon što ste pravilno namjestili svoje položaje, ali ako je aktivirani položaj prenisko, jednostavno će izvaditi uređaj sa vašeg stola i neće nanijeti štetu.

Korak 5: Povežite ga s kućnim pomoćnikom

Na instanci kućnog pomoćnika otvorite datoteku u koju pohranjujete postavke prekidača i dodajte sljedeće.

- platforma: mqtt

naziv: "VAŠ UREĐAJ"

state_topic: "lokacija/uređaj/status"

command_topic: "lokacija/uređaj/prekidač"

payload_on: "UKLJUČENO"

payload_off: "OFF"

optimističan: lažno

Pobrinite se da uredite SVOJ UREĐAJ u nešto prikladno i da se stanje/teme naredbi podudaraju s onim što ste postavili u ino kodu iz prethodnog koraka.

Sada ćete htjeti dodati uređaj u svoju konfiguraciju tako da se pojavi na HA sučelju.

Popisujem sve svoje grupe i njihove definicije u configuration.yaml pa jednostavno dodajte uređaj tamo u skladu s…

studija: naziv: Studija

entiteti:

- switch.study_pc

Upisom provjerite je li vaša konfiguracija sigurna

/srv/homeassistant/bin/hass --script check_config -c /home/homeassistant/.homeassistant/

Ako ne vidite greške, nastavite i ponovo pokrenite HA

systemctl restart home-assistant@homeassistant.

Nakon što se sve učitalo, trebali biste vidjeti novo dugme na vašem HA sučelju koje će uključiti ili isključiti vaše računalo pomoću čarolije KiKi -a.

PS, ako stroju pristupate putem ssh -a, možete aktivirati KiKi pomoću wget -a …

wget -qO- https:// ip od kiki/? Req = 1>/dev/null

ili ga zalijepite u datoteku bash skripte koja naziva skriptu, sprema se zapamtiti argumente.

Preporučeni: