Mündəricat:

KiKi Klaviatura Botu: 5 addım
KiKi Klaviatura Botu: 5 addım

Video: KiKi Klaviatura Botu: 5 addım

Video: KiKi Klaviatura Botu: 5 addım
Video: Meeting #5 - 4/29/2022 | ETF team meeting and dialogue 2024, Iyul
Anonim
KiKi Klaviatura Botu
KiKi Klaviatura Botu

İşdən kompüterimə tez -tez bağlanmalıyam, amma həmişə onu tərk etməyi sevmirəm. Problem köhnə kompüterimin WOL -u dəstəkləməməsidir. Bununla birlikdə klaviaturadakı güc düyməsi ilə yuxuya verilə və oyandırıla bilər. Ancaq evdə itdən başqa heç kim yoxdur ki, onu həyata keçirsin …

KiKi KeyboardBot anadan olub.

MQTT üzərindən ev köməkçisinə keçəcək və çox sadə bir müstəqil veb səhifəsi də var, çox da gözəl deyil, amma işi tamamlayır.

Təchizat

3D Yazıçı Filamenti

Tel kəsicilər

Tel çıxarıcılar

Lehimleme dəmir

Wemos D1 Mini

Micro 9G Servo

Addım 1: Kassanın Kassasını və Servo Horn Uzantısını çap edin

Kassanın Çantasının və Servo Buynuz Uzantısının Çap edilməsi
Kassanın Çantasının və Servo Buynuz Uzantısının Çap edilməsi

Kassanı çap etməklə əvvəlcə, Sketchup (Maker Edition) ilə işləmək istəsəniz, SKP faylını təqdim edirəm. Yalnız irəli getmək və dilimləyicinizə yükləmək və dəyişdirilmədən çap etmək istəyirsinizsə, STL faylını da paketlədim.

Çantanı dayaqsız çap etdim, ilk çap etdiyim kimi onları çıxarmaq bir səhv idi, dəstəklərin olmaması yaxşı işləyirdi, kiçik bir sarkma var idi, amma hamısı öz cəriməsini qaldırdıqdan sonra.

İstifadə etdiyim filament üçün tövsiyə olunan yataq temperaturu 50 və ekstruder istiliyi 200 ilə çap etdim.

SKP və STL sənədlərini servo buynuzu üçün təqdim etdiyim kimi, servo buynuzu mənim üçün düzgün çap etmədi, sonunda montaj halqasını kəsdim və sadəcə yapışdırdım, kabel orijinaldan birinə bağladı buynuzları işə salmaq üçün səbirsizdim.

Addım 2: Quraşdırma

Məclis
Məclis
Məclis
Məclis
Məclis
Məclis

3 Pin başlığını Servo ucunun ucundan çıxarın.

Qutunu servo girintisindən keçirin və yan tərəfdəki çıxış çuxurundan çıxarın.

İndi ucu ehtiyatla servonun yan tərəfinə qoyun və korpusun üstünə oturun ki, qurğuş servonun çuxurunun içərisindəki girintiyə otursun, qurğunu sıxın və servonu yumşaq bir şəkildə evə itələsin, çox gözəl olmalıdır. rahat uyğunluq.

Qutunu korpusun kənarındakı boşluğa geyin və D1 Mini üçün girintidən keçirin. Kabeli geri çevirin və yenidən itələyin ki, bu halda olduqca səliqəli görünsün.

WiFi modulu yuxarıya doğru D1 Mini -ni yuvasına sürüşdürün. Qurğuşun modulun üstündə oturması və sonra PCB -nin altına girməsi lazımdır.

İndi servo ucunu məqbul uzunluğa qədər kəsə bilərsiniz.

D1 Mini -ni PCB -nin əks tərəfindən USB yuvasına itələyərək çıxarın.

Çıxarıldıqdan sonra qurğunun üç telini ayırın, soyun və qalaylayın.

Onları aşağıdakı ardıcıllıqla pcb alt tərəfinə lehimləyin.

Qırmızı -> 5V

Qəhvəyi -> GND

Narıncı -> D4

Üç sancağın hamısı bir -birinə bitişikdir, buna görə də qurğunu səliqəli saxlamaq asandır.

İndi lövhənin altındakı qurğunu yumşaq bir şəkildə mərkəzə doğru bükün, lövhənin üstünə yuvarlayın və lövhəni evə sürüşdürün. D1 -i sonuna qədər itələməyin, USB kabelini asanlıqla bağlamaq üçün sıfırlama düyməsinə keçə biləcəyiniz qədər uzaqlaşdırın.

Buynuzu servoda olan kapstanın üstünə sığdıracaq şəkildə çap etdirməyi bacarmısınızsa, buynuzun üst hissəsi iş çubuğuna az -çox paralel olması üçün indi yerləşdirin. Servo ilə gələn kiçik vida ilə düzəldin.

Buynuzu çap etdirə bilmirsinizsə, halqanı kəsin və təchiz edilmiş buynuzlardan birinə düzəldin, super yapışqan və bir neçə kiçik kabel bağlaması mənim üçün iş gördü.

Addım 3: Yanıp sönmə

Ino faylını arduino layihələr faylınıza KiKi qovluğuna yükləyin.

Arduino IDE -də faylı açın.

Aşağıdakı sətirləri Home Assistant quruluşunuza uyğun olaraq düzəldin.

25 const PROGMEM uint16_t MQTT_SERVER_PORT = 1883; (standart portu dəyişdirmisinizsə)

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 və COMMAND mövzuları üçün yeri/cihazı/(status/açarı) sifariş etməyi sevirəm, ancaq istədiyiniz konvensiyadan istifadə edə bilərsiniz.

29 const char* MQTT_ROBOT_STATE_TOPIC = "yer/pc/status"; const char*

30 MQTT_ROBOT_COMMAND_TOPIC = "yer/pc/keçid";

Cihazlarınızın ev sahibi adını təyin etmək üçün bu əlavə sətirləri düzəldin.

159 wifi_station_set_hostname ("HOSTNAME");

169 əgər (! WifiManager.autoConnect ("HOSTNAME")) {

MQTT serverinizin tam ixtisaslı domen adını təyin edin.

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

D1 Mini -ni kompüterinizə qoşun və quraşdırılmış COM portunu seçin.

Serial Monitoru açın.

Faylı yükləyin.

Yükləmə tamamlandıqdan sonra serial monitorunu yoxlayın.

Yeni bir lövhədirsə, heç bir parametr olmayacaq və yaratdığı simsiz AP -yə qoşulmalısınız, sonra düzgün Simsiz şəbəkəni seçin və şifrənizi daxil edin.

Detalları geri saxladığınız zaman cihaza yazacaq və hər dəfə yenidən başladıqda yenidən istifadə edəcək.

İndi simsiz şəbəkənizə qoşulub, serial monitorunda oxşar bir xətt görəcəksiniz …

192.168.1.xxx və ya şəbəkəniz nə qədərdirsə.

Buna bir brauzerlə qoşulsanız, bir düyməyə malik çox sadə bir veb səhifəsi görəcəksiniz ki, bu düyməni basdıqda servo qolu işə salınacaq.

Addım 4: Servo Evi və Aktivləşdirilmiş Mövqeyi Ayarlayın

Kassanın alt tərəfinə böyük bir bluetack yapışdırıram və sonra onu masaüstümə yuvarlayıram ki, servo buynuzu basılacaq düymənin mərkəzinin üstündə olsun.

Başlanğıcda kompüteri hər dəfə sınadığım kimi güc düyməsini deyil, digər düymələrdən birini sıralayıram.

Klaviaturam üçün Logitech K260 ev mövqeyini 135 olaraq təyin etdim və bu servo buynuzu düymənin üstündədir.

Aktivləşdirilmiş yeri 120 olaraq təyin etdim ki, bu da düyməni həqiqətən aktivləşdirdiyinə əmin olmaq üçün kifayət qədər aşağıya doğru itələyir.

Aydındır ki, klaviatura üçün gözəl bir şəkildə qurulmasını təmin etmək üçün bu parametrləri nəzərdən keçirməli olacaqsınız, bu yalnız əvvəlcə ev mövqeyini düzəltmək, eskizi yükləmək və gözdən keçirməkdir.

Ev mövqeyindən məmnun olduqdan sonra işə salın və aktivləşdirilmiş mövqeyi təyin edin, klaviaturam üçün ev mövqeyindən təxminən 15 dərəcə aşağı. Ev mövqeyinizi dəyişdirirsinizsə, ilk növbədə aktivləşdirilmiş mövqeyinizi ev mövqeyinə uyğunlaşdırmağa çalışın - 15. D1 -ə kodu yükləyin və bunun necə işlədiyini görün. İşləmək çox vaxt çəkmir.

Bluetack istifadə etmənin faydası, mövqelərinizi düzgün bir şəkildə düzəltdikdən sonra cihazı mükəmməl şəkildə yerində saxlayacaq, ancaq aktivləşdirilmiş mövqe çox aşağı olarsa cihazı sadəcə masanızdan atacaq və heç bir zərər verməyəcəkdir.

Addım 5: Ev köməkçisinə bağlayın

Ev köməkçisi nümunənizdə keçid parametrlərinizi saxladığınız faylı açın və aşağıdakıları əlavə edin.

- platforma: mqtt

adı: "YOURDEVICE"

state_topic: "yer/cihaz/status"

command_topic: "yer/cihaz/keçid"

payload_on: "ON"

payload_off: "OFF"

optimist: yalançı

YOURDEVICE cihazınızı uyğun bir şeyə düzəltdiyinizə və vəziyyət/əmr mövzularının əvvəlki addımdakı ino kodunda təyin etdiyinizlə uyğunlaşdığından əmin olun.

İndi cihazı konfiqurasiyanıza əlavə etmək istəyəcəksiniz ki, HA interfeysində görünsün.

Bütün qruplarımı və qrup təriflərini konfiqurasiya.yaml -da sadalayıram, buna görə cihazı sadəcə xətlər boyunca oraya əlavə edin …

təhsil: adı: Təhsil

varlıqlar:

- switch.study_pc

Daxil edərək konfiqurasiyanızın təhlükəsiz olduğunu yoxlayın

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

Heç bir səhv görmürsənsə, davam edin və HA -nı yenidən başladın

systemctl home-assistant@homeassistant'ı yenidən başladın.

Hər şey yükləndikdən sonra kompüterinizi KiKi sehrindən açacaq və ya söndürəcək HA interfeysində yeni bir düymə görməlisiniz.

PS, ssh üzərindən bir maşına daxil olsanız, wi -fi ilə KiKi -ni aktivləşdirə bilərsiniz …

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

və ya bash skript faylına yapışdıraraq skriptə zəng edin, arqumentləri xatırlamaq məcburiyyətində qalır.

Tövsiyə: