Satura rādītājs:

KiKi tastatūras robots: 5 soļi
KiKi tastatūras robots: 5 soļi

Video: KiKi tastatūras robots: 5 soļi

Video: KiKi tastatūras robots: 5 soļi
Video: 😱BLACK LADYBUG -TIKKI AKUMATIZED 10! 🔴LADYBUG MIRACULOUS 4|🐞 Ladybug and Cat Noir/ Леди Баг(FanMade) 2024, Jūlijs
Anonim
KiKi tastatūras robots
KiKi tastatūras robots

Man diezgan bieži jāpievieno datoram no darba, bet man nepatīk to visu laiku ieslēgt. Problēma ir tā, ka mans vecais dators neatbalsta WOL. Tomēr to var iemidzināt un atkal pamodināt, izmantojot tastatūras ieslēgšanas / izslēgšanas taustiņu. Tomēr, ja mājās nav neviena, izņemot suni, lai to iedvesmotu dzīvē, un tā…

Dzimis KiKi KeyboardBot.

Tas izveidos saiti uz mājas palīgu, izmantojot MQTT, un tajā ir iebūvēta arī ļoti vienkārša atsevišķa tīmekļa lapa, tā nav skaista, bet paveic darbu.

Piegādes

3D PrinterPLA kvēldiegs

Stiepļu griezēji

Stiepļu noņēmēji

Lodāmurs

Wemos D1 Mini

Mikro 9G servo

1. darbība. Korpusa un servoparga pagarinājuma drukāšana

Korpusa un servoparga pagarinājuma drukāšana
Korpusa un servoparga pagarinājuma drukāšana

Vispirms sāciet ar korpusa drukāšanu. Es piedāvāju SKP failu, ja vēlaties to izmantot Sketchup (Maker Edition). Es arī esmu iepakojis STL failu, ja vēlaties turpināt darbu un ielādēt to savā griezējā un izdrukāt to bez izmaiņām.

Es izdrukāju lietu bez balstiem, jo pirmais, ko izdrukāju, bija bugger, lai tos noņemtu, balstu trūkums strādāja labi, lai gan bija neliels sagums, bet pēc tam, kad tas viss tika uzstādīts.

Es drukāju ar gultas temperatūru 50 un ekstrūdera temperatūru 200, kas bija ieteicamā kvēldiegam, kuru izmantoju.

Tāpat kā gadījumā, es arī sniedzu SKP un STL failus servo signāltaurei, servo signāls man nedrukāja pareizi, galu galā es vienkārši nogriezu stiprinājuma skavu un vienkārši pielīmēju, kabeli piestiprinot pie viena no oriģinālajiem ragi, jo es biju nepacietīgs, lai tas darbotos.

2. solis: montāža

Montāža
Montāža
Montāža
Montāža
Montāža
Montāža

Noņemiet 3 kontaktu galviņu no Servo vadu gala.

Izbīdiet vadu caur servo padziļinājumu korpusā un izvelciet caur izejas atveri sānos.

Tagad uzmanīgi novietojiet vadu uz servo sāniem un novietojiet to virs korpusa tā, lai vads sēdētu padziļinājumā servo atveres iekšpusē, cieši pavelciet vadu un viegli pavirziet servo uz mājām, tas būtu jauki cieši pieguļošs.

Ietiniet vadu korpusa ārpuses padziļinājumā un izbīdiet to caur D1 Mini padziļinājumu. Pagrieziet kabeli atpakaļ un atkal iebīdiet to atpakaļ, lai tas izskatītos diezgan kārtīgs korpusā.

Ievietojiet D1 Mini korpusā ar WiFi moduli uz augšu. Vadam vajadzētu sēdēt virs moduļa augšpuses un pēc tam atgriezties zem PCB.

Tagad jūs varat nogriezt servo vadu līdz pieņemamam garumam.

Noņemiet D1 Mini, piespiežot to no PCB pretējās puses uz USB ligzdu.

Kad tas ir noņemts, atdaliet, noņemiet un tiniet trīs svina vadus.

Lodējiet tos pie PCB apakšas šādā secībā.

Sarkans -> 5V

Brūns -> GND

Oranžs -> D4

Visi trīs tapas atrodas blakus viens otram, tāpēc ir viegli uzturēt vadu kārtībā.

Tagad viegli salieciet vadu zem dēļa uz centru, saglabājot to jauku un plakanu, pārvelciet to virs tāfeles un viegli pavirziet dēli mājās. Nespiediet D1 līdz galam, atstājiet to pietiekami tālu ārā, lai būtu viegli pievienot USB kabeli un jūs varētu nokļūt atiestatīšanas pogai.

Ja jums izdevās izdrukāt ragu tā, lai tas ietilptu virs servopiedziņas, uzstādiet to tagad tā, lai raga augšdaļa būtu vairāk vai mazāk paralēla darba virsmai. Piestipriniet to vietā ar mazo skrūvi, kas pievienota servo.

Ja jums neizdevās izdrukāt ragu, nogrieziet uzmavu un piestipriniet to pie viena no komplektā iekļautajiem ragiem, superlīme un pāris mazas kabeļu saites man paveica darbu.

3. darbība: mirgo

Lejupielādējiet ino failu arduino projektu failā mapē calle KiKi.

Atveriet failu Arduino IDE.

Rediģējiet šīs rindas, lai tās atbilstu jūsu mājas palīga iestatījumiem.

25 const PROGMĒMA uint16_t MQTT_SERVER_PORT = 1883; (ja esat mainījis noklusējuma portu)

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 un COMMAND tēmām man patīk pasūtīt atrašanās vietu/ierīci/(statuss/slēdzis), bet jūs varat izmantot jebkuru konvenciju, kas jums patīk.

29 const char* MQTT_ROBOT_STATE_TOPIC = "vieta/dators/statuss"; const char*

30 MQTT_ROBOT_COMMAND_TOPIC = "vieta/dators/slēdzis";

Tagad rediģējiet šīs turpmākās rindas, lai iestatītu savu ierīču resursdatora nosaukumu.

159 wifi_station_set_hostname ("HOSTNAME");

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

Iestatiet MQTT servera pilnībā kvalificētu domēna nosaukumu.

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

Pievienojiet D1 Mini datoram un izvēlieties COM portu, kurā tas ir uzstādīts.

Atveriet sērijas monitoru.

Augšupielādējiet failu.

Kad augšupielāde ir pabeigta, pārbaudiet sērijas monitoru.

Ja tā ir jauna tāfele, iestatījumu nebūs, un jums būs jāizveido savienojums ar izveidoto bezvadu piekļuves punktu, pēc tam atlasiet pareizo bezvadu tīklu un ievadiet paroli.

Saglabājot informāciju atpakaļ, tā to ierakstīs ierīcē un izmantos katru reizi, kad tā tiks restartēta.

Tagad tas ir savienots ar jūsu bezvadu tīklu, sērijas monitorā redzēsit līniju, kas līdzīga…

192.168.1.xxx vai kāds ir jūsu tīkla diapazons.

Ja izveidojat savienojumu ar šo pārlūkprogrammu, jūs redzēsit ļoti vienkāršu tīmekļa lapu ar vienu pogu, kas, noklikšķinot, aktivizēs servo.

4. solis: Servo sākuma un aktivizētās pozīcijas pielāgošana

Es pielīmēju lielu blūza gabalu korpusa apakšpusē un pēc tam pievelku to pie sava darbvirsmas, lai servo signāltaure atrodas virs nospiežamās atslēgas centra.

Sākumā es ierindojos vienā no citiem taustiņiem, nevis jaudai, jo katru reizi, kad to pārbaudīšu, dators tiks iemidzināts.

Manai tastatūrai Logitech K260 es iestatīju sākuma pozīciju uz 135, un tas atrodas servo signāltaurī tieši virs taustiņa.

Es iestatīju aktivizēto atrašanās vietu uz 120, kas nospiež pogu pietiekami tālu uz leju, lai pārliecinātos, ka tā faktiski ir aktivizēta.

Acīmredzot jums būs jāpielāgojas šiem iestatījumiem, lai tie būtu labi iestatīti tastatūrai, vispirms ir tikai jāpielāgo sākuma pozīcijas iestatījums, jāielādē skice un jāpārbauda.

Kad esat apmierināts ar mājas stāvokli, dodieties uz priekšu un iestatiet aktivizēto pozīciju, manai tastatūrai tā ir aptuveni par 15 grādiem lejup no sākuma stāvokļa. Ja maināt savu sākuma pozīciju, vispirms mēģiniet pielāgot aktivizēto pozīciju sākuma pozīcijai - 15. Augšupielādējiet kodu uz D1 un redziet, kā tas darbojas. Lai to atrisinātu, nav nepieciešams daudz laika.

Bluetack izmantošanas priekšrocība ir tāda, ka tā saglabās ierīci perfekti vietā, kad būsiet pareizi noregulējis savas pozīcijas, bet, ja aktivizētā pozīcija ir pārāk zema, tā vienkārši izkritīs no galda un nesabojās.

5. darbība: pievienojiet to mājas palīgam

Mājas palīga instancē atveriet failu, kurā saglabājat slēdža iestatījumus, un pievienojiet tālāk norādīto.

- platforma: mqtt

nosaukums: "YOURDEVICE"

state_topic: "atrašanās vieta/ierīce/statuss"

command_topic: "atrašanās vieta/ierīce/slēdzis"

payload_on: "IESLĒGTS"

payload_off: "IZSLĒGTS"

optimistisks: nepatiess

Pārliecinieties, vai rediģējat YOURDEVICE uz kaut ko piemērotu un ka stāvokļa/komandu tēmas atbilst iepriekšējā darbībā norādītajam kodam.

Tagad jūs vēlaties pievienot ierīci konfigurācijai, lai tā tiktu parādīta HA saskarnē.

Es uzskaitīju visas savas grupas un konfigurācijas definīcijas. Yaml, tāpēc vienkārši pievienojiet ierīci tur atbilstoši…

pētījums: nosaukums: pētījums

entītijas:

- slēdzis.study_pc

Ievadot, pārbaudiet, vai konfigurācija ir droša

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

Ja neredzat kļūdas, turpiniet un restartējiet HA

systemctl restart home-asistents@homeassistant.

Kad viss ir ielādēts, jums HA saskarnē vajadzētu redzēt jaunu pogu, kas ieslēgs vai izslēgs jūsu datoru, izmantojot KiKi burvību.

PS, ja piekļūstat mašīnai, izmantojot ssh, varat aktivizēt KiKi ar wget…

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

vai ielīmējiet to bash skripta failā, izsaucot skriptu, ietaupa nepieciešamību atcerēties argumentus.

Ieteicams: