Բովանդակություն:

KiKi ստեղնաշարի բոտ. 5 քայլ
KiKi ստեղնաշարի բոտ. 5 քայլ

Video: KiKi ստեղնաշարի բոտ. 5 քայլ

Video: KiKi ստեղնաշարի բոտ. 5 քայլ
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Հուլիսի
Anonim
KiKi ստեղնաշարի բոտ
KiKi ստեղնաշարի բոտ

Ես շատ հաճախ կարիք ունեմ համակարգչին միանալ աշխատանքից, բայց չեմ սիրում այն անընդհատ միացնել: Խնդիրն այն է, որ իմ հին համակարգիչը չի աջակցում WOL- ը: Այնուամենայնիվ, այն կարելի է քնել և նորից արթնացնել ՝ ստեղնաշարի միացման ստեղնով: Այնուամենայնիվ, տանը ոչ ոք չունենալով, բացի շնից, պետք է նրան կյանքի կոչի և այլն…

Kնվեց KiKi KeyboardBot- ը:

Այն կկապվի MQTT- ի միջոցով տնային օգնականի հետ և ունի նաև շատ պարզ ինքնուրույն վեբ էջ, որը գեղեցիկ չէ, բայց աշխատանքն ավարտված է:

Պարագաներ

3D տպիչ PLA թել

Մետաղական կտրիչներ

Մետաղալարեր

Sոդման երկաթ

Wemos D1 Mini

Միկրո 9G սերվո

Քայլ 1. Գործի պատյանը և Servo Horn ընդլայնումը տպելը:

Գործի գործը և Servo Horn Extension- ի տպագրում
Գործի գործը և Servo Horn Extension- ի տպագրում

Սկզբում գործը տպելով ՝ ես տրամադրում եմ SKP ֆայլը, եթե ցանկանում եք այն խառնել Sketchup- ում (Maker Edition): Ես նաև փաթեթավորեցի STL ֆայլը, եթե պարզապես ուզում եք առաջ գնալ և բեռնել այն ձեր կտրողի մեջ և տպել այն չփոփոխված:

Ես պատյանը տպեցի առանց հենարանների, քանի որ առաջինը, որ տպեցի, դրանք հեռացնելու սխալ էր, հենարանների բացակայությունը չնայած լավ էր աշխատում, կար մի փոքր ճեղքվածք, բայց միանգամից ամեն ինչ կարգին էր:

Ես տպել եմ մահճակալի ջերմաստիճանը 50 և էքստրուդերային ջերմաստիճանը `200, որը խորհուրդ էր տրվում օգտագործել իմ թելքի համար:

Ինչ վերաբերում է այն դեպքին, երբ ես նաև տրամադրում եմ SKP և STL ֆայլեր servo horn- ի համար, servo horn- ը ճիշտ չի տպել ինձ համար, ի վերջո ես պարզապես կտրեցի ամրացման լարը և պարզապես սոսնձեցի, մալուխը կապեց այն օրիգինալից մեկի վրա: եղջյուրներ, քանի որ ես անհամբեր էի, որ դա սկսեի աշխատել:

Քայլ 2: Հավաքում

Ժողով
Ժողով
Ժողով
Ժողով
Ժողով
Ժողով

Հեռացրեք 3 Pin վերնագիրը Servo կապարի վերջից:

Հեռացրեք կապարը պատյանում սերվոյի անցքի միջով և դուրս եկեք կողքի ելքի անցքով:

Այժմ զգուշորեն դրեք կապարը սերվոյի կողքին և տեղադրեք այն պատյանով, որպեսզի կապարը նստի սերվոյի անցքի ներսում գտնվող անցքի մեջ, ամուր քաշեք կապարը և նրբորեն հրեք սերվերը տուն, այն պետք է գեղեցիկ լինի: ամուր տեղավորել.

Կապարը պատյանի մեջ դրեք միջանցքի մեջ և ծակեք այն D1 Mini- ի անցքի միջով: Պտտեք մալուխը ետ և նորից ետ շպրտեք, որպեսզի պատյանում այն բավականին կոկիկ տեսք ունենա:

Սահեցրեք D1 Mini- ն իր պատյանով ՝ WiFi մոդուլը դեպի վերև: Կապը պետք է տեղադրվի մոդուլի վերևում, այնուհետև նորից սնվի PCB- ի տակ:

Այժմ կարող եք կտրել սերվոյի կապարը ընդունելի երկարությամբ:

Հեռացրեք D1 Mini- ն ՝ այն հրելով PCB- ի հակառակ կողմից դեպի USB վարդակից:

Երբ այն հեռացվում է, առանձնացրեք, հանեք և թիթեղացրեք կապարի երեք լարերը:

Տեղադրեք դրանք pcb- ի ներքևի մասում հետևյալ հաջորդականությամբ.

Կարմիր -> 5 Վ

Շագանակագույն -> GND

Նարնջագույն -> D4

Երեք կապումներն իրար կողքի են, այնպես որ հեշտ է կապարը կոկիկ պահել:

Այժմ նրբորեն ծալեք կապարը տախտակի տակ դեպի կենտրոն ՝ այն գեղեցիկ և հարթ պահելով, գլորեք այն տախտակի վերևով և նրբորեն սահեցրեք տախտակը դեպի տուն: Մի՛ մղեք D1- ը մինչև վերջ, թողեք այն բավականաչափ հեռու, այնպես որ հեշտ է միացնել USB մալուխը և կարող եք հասնել վերակայման կոճակին:

Եթե դուք կարողացաք այնպես անել, որ եղջյուրը տպվի այնպես, որ այն տեղավորվի սերվոյի գլխարկի վրա, ապա տեղադրեք այն հիմա, որպեսզի եղջյուրի գագաթը քիչ թե շատ զուգահեռ լինի աշխատանքային գագաթին: Այն ամրացրեք տեղում փոքրիկ պտուտակով, որն ուղեկցվել է սերվոյին:

Եթե չկարողացաք տպել եղջյուրը, կտրեք լաստանավը և ամրացրեք այն մատակարարված եղջյուրներից մեկին, գերծանրքաշային սոսինձը և մի քանի փոքր մալուխային կապերը ինձ համար գործ արեցին:

Քայլ 3: Flashրամեկուսացում

Ներբեռնեք ino ֆայլը ձեր arduino նախագծերի ֆայլում KiKi կոչվող թղթապանակի մեջ:

Բացեք ֆայլը Arduino IDE- ում:

Խմբագրեք հետևյալ տողերը ՝ ձեր տնային օգնականի կարգավորմանը համապատասխան:

25 const PROGMEM uint16_t MQTT_SERVER_PORT = 1883; (եթե դուք փոխել եք կանխադրված նավահանգիստը)

26 const PROGMEM char* MQTT_CLIENT_ID = "HostName";

27 const PROGMEM char* MQTT_USER = "MQTTUSER";

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

MQTT STATE և COMMAND թեմաների համար ինձ դուր է գալիս պատվիրել այն գտնվելու վայրը/սարքը/(կարգավիճակը/անջատիչը), բայց կարող եք օգտագործել ցանկացած պայմանականություն, որը Ձեզ դուր է գալիս:

29 const char* MQTT_ROBOT_STATE_TOPIC = "գտնվելու վայրը/հատ/կարգավիճակ"; const char*

30 MQTT_ROBOT_COMMAND_TOPIC = "տեղադրություն/համակարգիչ/անջատիչ";

Այժմ խմբագրեք այս հետագա տողերը ՝ ձեր սարքերի հյուրընկալողի անունը սահմանելու համար:

159 wifi_station_set_hostname («HOSTNAME»);

169 եթե (! WifiManager.autoConnect ("HOSTNAME")) {

Սահմանեք ձեր MQTT սերվերի լիովին որակավորված տիրույթի անունը:

175 WiFi.hostByName («MQTTSERVER», MQTT_SERVER_IP);

Միացրեք D1 Mini- ն ձեր համակարգչին և ընտրեք դրա վրա տեղադրված COM պորտը:

Բացեք Սերիայի մոնիտորը:

Վերբեռնեք ֆայլը:

Վերբեռնումն ավարտվելուց հետո ստուգեք սերիական մոնիտորը:

Եթե դա նոր տախտակ է, պարամետրեր չեն լինի, և դուք ստիպված կլինեք միանալ դրա ստեղծած անլար AP- ին, ապա ընտրեք ճիշտ անլար ցանցը և մուտքագրեք գաղտնաբառը:

Երբ մանրամասները հետ եք պահում, դրանք կգրվեն սարքի վրա և ամեն անգամ, երբ այն վերագործարկվի, դրանք նորից կօգտագործվեն:

Այժմ այն միացված է ձեր անլար ցանցին, սերիական մոնիտորի մեջ կտեսնեք մի գիծ, որը նման է…

192.168.1.xxx կամ ինչպիսին է ձեր ցանցի տիրույթը:

Եթե դրան միանաք դիտարկիչով, կտեսնեք շատ պարզ վեբ էջ մեկ կոճակով, որը կտտացնելիս կակտիվացնի սերվո թևը:

Քայլ 4. Կարգավորեք Servo Home- ը և ակտիվացված դիրքը

Ես կապույտի մի մեծ կտոր կպցնում եմ պատյանի ներքևի մասում, այնուհետև այն քսում եմ աշխատասեղանին, որպեսզի սերվո եղջյուրը նստած լինի սեղմման ստեղնի կենտրոնից վերև:

Սկզբում ես հերթ եմ կանգնում մյուս ստեղներից մեկի վրա, այլ ոչ թե հզորության, քանի որ ամեն անգամ փորձարկելիս այն քնում է համակարգչի վրա:

Իմ ստեղնաշարի համար Logitech K260- ը ես տան դիրքը դրեցի 135 -ի վրա, և սա նստում է սերվոյի եղջյուրը հենց բանալուց վերևում:

Ես ակտիվացված տեղը սահմանեցի 120 -ի վրա, որը բավականաչափ ներքև է սեղմում կոճակը `համոզվելու համար, որ այն իրականում ակտիվացված է:

Ակնհայտ է, որ դուք ստիպված կլինեք շոշափել այս պարամետրերը `դրանք ձեր ստեղնաշարի համար գեղեցիկ ձևավորելու համար: Դա պարզապես տան դիրքի կարգավորումը նախ ճշգրտելու, էսքիզը վերբեռնելու և աչք շոյելու դեպք է:

Երբ տնային դիրքով գոհ եք, առաջ շարժվեք և ակտիվացրեք ձեր դիրքը, քանի որ իմ ստեղնաշարի համար այն տնային դիրքից մոտ 15 աստիճան ցածր է: Եթե փոխում եք ձեր տնային դիրքը, առաջին հերթին փորձեք ձեր ակտիվացված դիրքը հարմարեցնել տնային դիրքի - 15. Վերբեռնեք ծածկագրին D1 և տեսեք, թե ինչպես է այն ստացվում: Մշակելն ընդհանրապես շատ ժամանակ չի պահանջում:

Կապույտ կապի օգտագործման առավելությունն այն է, որ այն սարքը կատարյալ կպահի ձեր դիրքերը ճիշտ կարգավորելուց հետո, բայց եթե ակտիվացված դիրքը չափազանց ցածր է, այն պարզապես սարքը կպահի ձեր գրասեղանից և ոչ մի վնաս չի հասցնի:

Քայլ 5: Միացրեք այն տնային օգնականին:

Տնային օգնականի օրինակով բացեք այն ֆայլը, որում պահում եք ձեր անջատիչի կարգավորումները և ավելացրեք հետևյալը.

- հարթակ ՝ mqtt

անուն ՝ "YOURDEVICE"

state_topic: "գտնվելու վայրը/սարքը/կարգավիճակը"

command_topic: "գտնվելու վայրը/սարքը/անջատիչը"

payload_on: "ON"

payload_off: "OFF"

լավատես: կեղծ

Համոզվեք, որ YOURDEVICE- ը խմբագրում եք ինչ -որ հարմար բանի, և որ կարգավիճակը/հրամանը թեմաները համընկնում են նախորդ քայլի ինո կոդի մեջ ձեր դրածի հետ:

Այժմ դուք կցանկանաք սարքը ավելացնել ձեր կազմաձևում, որպեսզի այն հայտնվի HA ինտերֆեյսում:

Ես թվարկում եմ իմ բոլոր խմբերը և խմբերի սահմանումները configuration.yaml- ում, այնպես որ պարզապես ավելացրեք սարքը այնտեղ…

ուսումնասիրություն: Անուն ՝ ուսումնասիրություն

սուբյեկտներ:

- switch.study_pc

Մուտքագրելով ՝ ստուգեք, որ ձեր կազմաձևն անվտանգ է

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

Եթե սխալներ չեք տեսնում, շարունակեք և վերագործարկեք HA- ն

systemctl վերագործարկել տուն-օգնական@homeassistant.

Ամեն ինչ բեռնելուց հետո դուք պետք է տեսնեք ձեր HA ինտերֆեյսի նոր կոճակը, որը ձեր համակարգիչը կմիացնի կամ անջատի KiKi- ի կախարդանքի միջոցով:

Հ. Գ., եթե դուք մուտք եք գործում մեքենա ssh- ով, կարող եք ակտիվացնել KiKi- ն wget- ով…

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

կամ կպցրեք այն bash սցենարի ֆայլում, զանգահարեք սցենար, փրկում է փաստարկները հիշելը:

Խորհուրդ ենք տալիս: