İçindekiler:

Klavye Botu KiKi: 5 Adım
Klavye Botu KiKi: 5 Adım

Video: Klavye Botu KiKi: 5 Adım

Video: Klavye Botu KiKi: 5 Adım
Video: ANNE KARDEŞİM ALTINA SIÇTI ÇOK KOMİK #shorts 2024, Temmuz
Anonim
Klavye Botu KiKi
Klavye Botu KiKi

İşten bilgisayarıma sık sık bağlanmam gerekiyor, ancak onu her zaman açık bırakmaktan hoşlanmıyorum. Sorun şu ki eski bilgisayarım WOL'u desteklemiyor. Ancak klavyedeki güç tuşu ile uyku moduna alınabilir ve tekrar uyandırılabilir. Ancak evde onu hayata geçirecek köpekten başka kimse yok ve böylece…

KiKi KeyboardBot doğdu.

MQTT üzerinden ev asistanına bağlanacak ve ayrıca yerleşik çok basit bir bağımsız web sayfasına sahip olacak, hoş değil ama işi hallediyor.

Gereçler

3D YazıcıPLA Filamenti

Tel kesiciler

Tel Sıyırıcılar

Havya

Wemos D1 Mini

Mikro 9G Servo

Adım 1: Kasayı Kasayı ve Servo Korna Uzantısını Yazdırma

Kasayı, Kasayı ve Servo Korna Uzantısını Yazdırma
Kasayı, Kasayı ve Servo Korna Uzantısını Yazdırma

İlk önce kasayı yazdırarak başlayın, Sketchup'ta (Maker Edition) kurcalamak isterseniz SKP dosyasını sağlıyorum. Ayrıca devam edip dilimleyicinize yüklemek ve değiştirilmeden yazdırılmasını istiyorsanız STL dosyasını da paketledim.

Kasayı desteksiz yazdırdım, ilk yazdırdığım gibi, onları çıkarmak için bir hataydı, desteklerin olmaması iyi çalıştı, küçük bir sarkma vardı, ancak bir kez monte edildiğinde iyi oldu.

Kullandığım filament için önerilen yatak sıcaklığı 50 ve ekstrüder sıcaklığı 200 ile yazdırdım.

Servo korna için SKP ve STL dosyalarını da sağladığım durumda olduğu gibi, servo korna benim için düzgün yazdırmadı, sonunda sadece montaj halkasını kestim ve yapıştırdım, kabloyu orijinalinden birine bağladım Bunun işe yaraması için sabırsız olduğum için boynuzlar.

2. Adım: Montaj

toplantı
toplantı
toplantı
toplantı
toplantı
toplantı

Servo kablosunun ucundan 3 Pim başlığını çıkarın.

Lead'i kasadaki servo girintisinden ve yandaki çıkış deliğinden dışarı sokun.

Şimdi ucu dikkatlice servonun yan tarafına yatırın ve kasanın üzerine oturtun, böylece kurşun servo deliğinin içindeki girintiye otursun, ucu sıkıca çekin ve servoyu yavaşça itin, güzel olmalı rahat uyum.

Kabloyu kasanın dışındaki girintiye geçirin ve D1 Mini için girintiden geçirin. Kabloyu geri sarın ve çantada oldukça düzenli görünmesi için tekrar itin.

WiFi modülü üste gelecek şekilde D1 Mini'yi yuvasına kaydırın. Lead, modülün üstüne oturmalı ve ardından PCB'nin altına geri beslenmelidir.

Artık servo ucunu kabul edilebilir bir uzunlukta kesebilirsiniz.

PCB'nin karşı tarafından USB soketine doğru iterek D1 Mini'yi çıkarın.

Çıkarıldıktan sonra, lead'in üç telini ayırın, soyun ve kalaylayın.

Bunları aşağıdaki sırayla pcb'nin alt tarafına lehimleyin.

Kırmızı -> 5V

Kahverengi -> GND

Turuncu -> D4

Üç pimin tümü birbirine bitişiktir, bu nedenle lead'i düzenli tutmak kolaydır.

Şimdi tahtanın altındaki ucu, güzel ve düz tutarak merkeze doğru yavaşça katlayın, tahtanın üstünden geçirin ve tahtayı yavaşça yuvaya kaydırın. D1'i sonuna kadar itmeyin, USB kablosunu takmanın kolay olması ve sıfırlama düğmesine ulaşabilmeniz için yeterince dışarıda bırakın.

Kornayı servo üzerindeki ırgatın üzerine oturacak şekilde yazdırmayı başardıysanız, kornanın üst kısmı çalışma tezgahına az çok paralel olacak şekilde şimdi takın. Servo ile birlikte gelen küçük vida ile yerine sabitleyin.

Kornayı yazdıramazsanız, halkayı kesip verilen kornalardan birine sabitleyin, süper yapıştırıcı ve birkaç küçük kablo bağı işime yaradı.

3. Adım: Yanıp Sönme

İno dosyasını arduino proje dosyanıza KiKi adlı bir klasöre indirin.

Dosyayı Arduino IDE'de açın.

Aşağıdaki satırları Home Assistant kurulumunuza uyacak şekilde düzenleyin.

25 const PROGMEM uint16_t MQTT_SERVER_PORT = 1883; (varsayılan bağlantı noktasını değiştirdiyseniz)

26 const PROGMEM karakter* MQTT_CLIENT_ID = "Ana BilgisayarAdı";

27 const PROGMEM karakter* MQTT_USER = "MQTTUSER";

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

MQTT DEVLET ve KOMUT konuları için konum/cihaz/(durum/anahtar) sipariş etmeyi seviyorum ama istediğiniz kuralı kullanabilirsiniz.

29 const karakter* MQTT_ROBOT_STATE_TOPIC = "konum/bilgisayar/durum"; sabit karakter*

30 MQTT_ROBOT_COMMAND_TOPIC = "konum/pc/anahtar";

Şimdi cihazlarınızın ana bilgisayar adını ayarlamak için bu satırları düzenleyin.

159 wifi_station_set_hostname("HOSTNAME");

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

MQTT sunucunuzun Tam etki alanı adını ayarlayın.

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

D1 Mini'yi PC'nize takın ve takılı olduğu COM bağlantı noktasını seçin.

Seri Monitörü açın.

Dosyayı yükleyin.

Yükleme tamamlandıktan sonra seri monitörü kontrol edin.

Eğer yeni bir kart ise hiçbir ayar olmayacak ve oluşturduğu kablosuz AP'ye bağlanmanız gerekecek, ardından doğru Kablosuz ağı seçip şifreyi girin.

Ayrıntıları geri kaydettiğinizde, bunları cihaza yazar ve her yeniden başlatıldığında yeniden kullanır.

Artık kablosuz ağınıza bağlı, seri monitörde şuna benzer bir çizgi göreceksiniz…

192.168.1.xxx veya ağınızın menzili ne olursa olsun.

Buna bir tarayıcı ile bağlanırsanız, tıklandığında servo kolunu etkinleştirecek tek bir düğme ile çok basit bir web sayfası göreceksiniz.

Adım 4: Servo Ana Konumunu ve Etkinleştirilmiş Konumu Ayarlama

Kasanın alt tarafına büyük bir parça bluetack yapıştırıyorum ve ardından servo kornası basılacak anahtarın ortasına oturması için masaüstüme yerleştiriyorum.

Başlangıçta, her test ettiğimde bilgisayarı uyku moduna geçireceği için güç anahtarına değil, diğer tuşlardan birine sıraya giriyorum.

Klavyem Logitech K260 için ana konumu 135'e ayarladım ve bu, anahtarın hemen üzerindeki servo kornaya oturuyor.

Etkinleştirilmiş konumu, gerçekten etkinleştirildiğinden emin olmak için düğmeyi yeterince aşağı iten 120'ye ayarladım.

Açıkçası, klavyeniz için güzel bir şekilde kurulmaları için bu ayarlarla uğraşmanız gerekecek, bu sadece ilk önce ana konum ayarını yapmak, taslağı yüklemek ve göz küresi yapmakla ilgili bir durum.

Ana konumdan memnun kaldığınızda, devam edin ve sizi aktif konuma ayarlayın, klavyem için ana konumundan yaklaşık 15 derece aşağıda. Ana konumunuzu değiştirirseniz, her şeyden önce etkinleştirilmiş konumunuzu ana konuma ayarlamayı deneyin - 15. D1'e kod yükleyin ve nasıl çalıştığını görün. Bunu çözmek hiç de fazla zaman almıyor.

Bluetack'ı kullanmanın yararı, konumlarınızı doğru bir şekilde ayarladıktan sonra cihazı mükemmel bir şekilde yerinde tutmasıdır, ancak etkinleştirilen konum çok düşükse, cihazı masanızdan fırlatır ve herhangi bir zarar vermez.

Adım 5: Ev Asistanına Bağlama

Ev asistanı örneğinde, anahtar ayarlarınızı sakladığınız dosyayı açın ve aşağıdakileri ekleyin.

- platform: mqtt

isim: "CİHAZINIZ"

state_topic: "konum/cihaz/durum"

command_topic: "konum/cihaz/anahtar"

payload_on: "AÇIK"

payload_off: "KAPALI"

iyimser: yanlış

CİHAZINIZI uygun bir şekilde düzenlediğinizden ve durum/komut konularının önceki adımdaki ino kodunda ayarladığınız şeyle eşleştiğinden emin olun.

Şimdi cihazı, HA arayüzünde görünmesi için yapılandırmanıza eklemek isteyeceksiniz.

Tüm gruplarımı ve grup tanımlarını configuration.yaml'de listeliyorum, bu yüzden cihazı şu satırlar boyunca oraya ekleyin…

çalışma: isim: Çalışma

varlıklar:

- switch.study_pc

Girerek yapılandırmanızın güvenli olup olmadığını kontrol edin

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

Herhangi bir hata görmüyorsanız devam edin ve HA'yı yeniden başlatın

systemctl home-assistant@homeassistant'ı yeniden başlatın.

Her şey yüklendikten sonra, KiKi'nin büyüsü ile bilgisayarınızı açıp kapatacak olan HA arayüzünüzde yeni bir düğme görmelisiniz.

PS, ssh üzerinden bir makineye erişirseniz, KiKi'yi wget ile etkinleştirebilirsiniz…

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

veya bir bash komut dosyasına yapıştırın, komut dosyasını çağırın, argümanları hatırlamak zorunda kalmazsınız.

Önerilen: