INHOUDSOPGAWE:

KiKi die sleutelbordbot: 5 stappe
KiKi die sleutelbordbot: 5 stappe

Video: KiKi die sleutelbordbot: 5 stappe

Video: KiKi die sleutelbordbot: 5 stappe
Video: САМАЯ СТРАШНАЯ УСАДЬБА / ЭТО ВИДЕО МОГЛО СТАТЬ ПОСЛЕДНИМ НА КАНАЛЕ TOPPI 2024, Julie
Anonim
KiKi die sleutelbord bot
KiKi die sleutelbord bot

Ek moet gereeld van die werk af aan my rekenaar koppel, maar ek hou nie daarvan om dit altyd aan te hou nie. Die probleem is dat my ou rekenaar nie WOL ondersteun nie. Dit kan egter aan die slaap geraak word en weer met die aan / uit -toets op die sleutelbord wakker gemaak word. Maar niemand tuis nie, maar die hond om dit in die lewe aan te wakker, en so …

KiKi die KeyboardBot is gebore.

Dit skakel na die huisassistent via MQTT en het ook 'n baie selfstandige webblad, wat ook nie mooi is nie, maar dit werk.

Voorrade

3D PrinterPLA filament

Draadknipper

Draadstroppers

Soldeerbout

Wemos D1 Mini

Micro 9G servo

Stap 1: Druk die omhulsel en die servohoring -uitbreiding uit

Druk die omhulsel en die servohoorn -uitbreiding
Druk die omhulsel en die servohoorn -uitbreiding

Eerstens, deur die saak te druk, verskaf ek die SKP -lêer as u daarmee in Sketchup (Maker Edition) wil dink. Ek het ook die STL -lêer verpak as u net in die snyer wil laai en dit onveranderd laat druk.

Ek het die omhulsel sonder steun afgedruk, aangesien die eerste een wat ek gedruk het, 'n fout was om dit te verwyder, maar 'n gebrek aan ondersteuners het goed gewerk, maar daar was 'n klein bietjie sak, maar sodra dit klaar was.

Ek het gedruk met 'n bedtemperatuur van 50 en 'n ekstrudertemperatuur van 200, wat die aanbevole was vir die filament wat ek gebruik het.

Soos met die geval, verskaf ek ook die SKP- en STL -lêers vir die servohoring, die servohoring het nie behoorlik vir my gedruk nie. horings, want ek was ongeduldig om dit te laat werk.

Stap 2: Montering

Vergadering
Vergadering
Vergadering
Vergadering
Vergadering
Vergadering

Verwyder die 3 -pen -kop van die einde van die Servo -kabel.

Steek die lood deur die servo -uitsparing in die omhulsel en deur die uitgangsgat in die sy.

Plaas nou die lood versigtig langs die servo en sit dit oor die omhulsel sodat die lood in die gat in die gat vir die servo sit, trek die leiding styf en druk die servo versigtig huis toe, dit moet lekker wees stewige pas.

Trek die lood in die uitsparing aan die buitekant van die omhulsel en steek dit deur die uitsparing vir die D1 Mini. Rol die kabel terug en steek dit weer terug sodat dit behoorlik netjies lyk.

Skuif die D1 Mini in die behuizing met die WiFi -module na bo. Die kabel moet bo -aan die module sit en dan onder die printplaat terugvoer.

U kan nou die servokabel tot 'n aanvaarbare lengte sny.

Verwyder die D1 Mini deur dit van die teenoorgestelde kant van die PCB na die USB -aansluiting te druk.

Sodra dit verwyder is, skei dit af en trek die drie drade van die lood af.

Soldeer hulle aan die onderkant van die PCB in die volgende volgorde.

Rooi -> 5V

Bruin -> GND

Oranje -> D4

Die drie penne is almal langs mekaar, so dit is maklik om die lood netjies te hou.

Vou nou die lood onder die bord na die middel toe en hou dit lekker plat, rol dit bo -oor die bord en skuif die bord saggies huis toe. Moenie die D1 heeltemal in druk nie, laat dit ver genoeg steek sodat dit maklik is om die USB -kabel aan te sluit en u kan by die reset -knoppie kom.

As u dit reggekry het om die horing af te druk sodat dit oor die kapstan op die servo pas, pas dit nou sodat die bokant van die horing min of meer ewewydig met die werkblad is. Maak dit vas met die klein skroefie wat by die servo gekom het.

As u nie die horing kon laat druk nie, sny die haksel af en maak dit vas aan een van die horings, supergom en 'n paar klein kabelbinders het die werk vir my gedoen.

Stap 3: Flits

Laai die ino -lêer na u arduino -projeklêer in 'n map calle KiKi.

Maak die lêer oop in die Arduino IDE.

Wysig die volgende reëls om by u huisassistentopstelling te pas..

25 const PROGMEM uint16_t MQTT_SERVER_PORT = 1883; (as u die standaardpoort verander het)

26 const PROGMEM char* MQTT_CLIENT_ID = "Gasheernaam";

27 const PROGMEM char* MQTT_USER = "MQTTUSER";

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

Vir die MQTT STATE- en COMMAND -onderwerpe bestel ek dit graag op die plek/toestel/(status/skakelaar), maar u kan die konvensie gebruik wat u wil.

29 const char* MQTT_ROBOT_STATE_TOPIC = "ligging/rekenaar/status"; konst char*

30 MQTT_ROBOT_COMMAND_TOPIC = "ligging/rekenaar/skakelaar";

Wysig nou hierdie verdere reëls om die gasheernaam van u toestelle in te stel.

159 wifi_station_set_hostname ("HOSTNAME");

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

Stel die volledig gekwalifiseerde domeinnaam van u MQTT -bediener in.

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

Koppel die D1 Mini aan op u rekenaar en kies die COM -poort waarop dit gemonteer is.

Maak die Serial Monitor oop.

Laai die lêer op.

As die oplaai voltooi is, kyk na die seriële monitor.

As dit 'n nuwe bord is, sal daar geen instellings wees nie, en u moet aansluit by die draadlose AP wat dit skep, kies dan die korrekte draadlose netwerk en voer die wagwoord in.

As u die besonderhede terugstoor, word dit op die toestel geskryf en hergebruik elke keer as dit weer begin.

As dit nou aan u draadlose netwerk gekoppel is, sien u 'n lyn soortgelyk aan die seriële monitor …

192.168.1.xxx of wat die omvang van u netwerk is.

As u hiermee 'n blaaier verbind, sien u 'n baie eenvoudige webblad met 'n enkele knoppie, wat die servo -arm sal aktiveer as u daarop klik.

Stap 4: Pas die servo -huis en geaktiveerde posisie aan

Ek plak 'n groot klontjie bloutak aan die onderkant van die omhulsel en druk dit dan op my lessenaar sodat die servohoring bo die middel van die sleutel sit om ingedruk te word.

Aanvanklik staan ek op een van die ander sleutels, nie die krag nie, want elke keer as ek dit toets, sal die rekenaar aan die slaap raak.

Vir my sleutelbord, die Logitech K260, stel ek die tuisposisie op 135 en dit sit op die servohoring net bokant die sleutel.

Ek stel die geaktiveerde plek op 120, wat die knoppie ver genoeg druk om seker te maak dat dit werklik geaktiveer is.

Uiteraard sal u aan hierdie instellings moet dink om dit vir u sleutelbord goed op te stel; dit is slegs 'n geval om eers die tuisposisie aan te pas, die skets op te laai en dit met die oog te sien.

Sodra u tevrede is met die tuisposisie, stel u die geaktiveerde posisie in, want my sleutelbord is ongeveer 15 grade laer as die tuisposisie. As u u tuisposisie verander, probeer eers om u geaktiveerde posisie na tuisposisie te verander - 15. Laai op na kode na die D1 en kyk hoe dit werk. Dit neem glad nie veel tyd om dit uit te werk nie.

Die voordeel van die gebruik van die bluetack is dat dit die toestel perfek op sy plek hou sodra u u posisies behoorlik aangepas het, maar as die geaktiveerde posisie te laag is, sal dit die toestel eenvoudig van u lessenaar af laat val en geen skade aanrig nie.

Stap 5: Sluit dit aan by die huisassistent

Open in u huisassistent die lêer waarin u die skakelaarinstellings stoor en voeg die volgende by.

- platform: mqtt

naam: "YOURDEVICE"

state_topic: "ligging/toestel/status"

command_topic: "ligging/toestel/skakelaar"

payload_on: "AAN"

payload_off: "OFF"

optimisties: vals

Maak seker dat u U TOESTEL na iets geskik wysig, en dat die onderwerpe oor die toestand/bevel ooreenstem met wat u in die vorige stap in die kode ingestel het.

U wil nou die toestel by u konfigurasie voeg sodat dit op die HA -koppelvlak verskyn.

Ek lys al my groepe en groepsdefinisies in configuration.yaml, so voeg die toestel eenvoudig daarby in op die volgorde van …

studie: naam: Studie

entiteite:

- skakel.studie_pk

Kontroleer of u konfigurasie veilig is deur in te voer

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

As u geen foute sien nie, begin HA weer

systemctl herbegin huisassistent@tuisassistent.

Sodra alles gelaai is, moet u 'n nuwe knoppie op u HA -koppelvlak sien wat u rekenaar aan- of uitskakel via die magie van KiKi.

PS, as u toegang tot 'n masjien kry via ssh, kan u KiKi aktiveer met wget …

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

of plak dit in 'n bash script -lêer, noem die script, sodat u nie die argumente moet onthou nie.

Aanbeveel: