Spisu treści:
- Kieszonkowe dzieci
- Krok 1: Drukowanie obudowy obudowy i rozszerzenia Servo Horn
- Krok 2: Montaż
- Krok 3: miganie
- Krok 4: Regulacja położenia głównego serwomechanizmu i pozycji aktywacji
- Krok 5: Podłączanie go do Home Assistant
Wideo: KiKi the Keyboard Bot: 5 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:29
Dość często muszę podłączać się do komputera z pracy, ale nie lubię zostawiać go cały czas włączony. Problem polega na tym, że mój stary komputer nie obsługuje WOL. Można go jednak uśpić i obudzić za pomocą klawisza zasilania na klawiaturze. Jednak z nikim w domu poza psem, który wprowadzi go do życia i tak…
Narodził się KiKi the KeyboardBot.
Będzie łączyć się z asystentem domowym przez MQTT i ma wbudowaną bardzo prostą samodzielną stronę internetową, nie jest ładna, ale wykonuje swoją pracę.
Kieszonkowe dzieci
Drukarka 3D PLA Filament
Nożyce do drutu
Narzędzia do ściągania izolacji
Lutownica
Wemos D1 Mini
Serwo mikro 9G
Krok 1: Drukowanie obudowy obudowy i rozszerzenia Servo Horn
Najpierw zacznij od wydrukowania sprawy, dostarczam plik SKP, jeśli chcesz majstrować przy nim w programie Sketchup (Maker Edition). Spakowałem również plik STL, jeśli chcesz po prostu załadować go do swojej krajalnicy i wydrukować bez modyfikacji.
Wydrukowałem obudowę bez podpór, ponieważ jako pierwszy wydrukowałem to był błąd, aby je usunąć, brak podpór działał jednak dobrze, było trochę ugięcia, ale gdy wszystko się zamontowało, było dobrze.
Drukowałem z temp. stołu 50 i temp. ekstrudera 200, która była zalecana dla używanego przeze mnie filamentu.
Podobnie jak w przypadku dostarczam również pliki SKP i STL do tuby serwa, tuba serwa nie wydrukowała mi się poprawnie, w końcu po prostu odciąłem tulejkę montażową i po prostu przykleiłem, przywiązałem kabel do jednego z oryginalnych rogi, ponieważ nie mogłem się doczekać, aby to zadziałało.
Krok 2: Montaż
Usuń 3-pinowy nagłówek z końca przewodu serwomechanizmu.
Przełóż ciężarek przez wgłębienie serwomechanizmu w obudowie i wyjmij go przez otwór wyjściowy z boku.
Teraz ostrożnie połóż przewód z boku serwomechanizmu i posadź go nad obudową tak, aby przewód wszedł we wgłębienie w otworze na serwo, naciągnij przewód i delikatnie wepchnij serwo do domu, powinno być ładnie dopasowanie do.
Umieść ołów we wgłębieniu na zewnątrz obudowy i przełóż go przez wgłębienie na D1 Mini. Zwiń kabel z powrotem i wepchnij go z powrotem, aby wyglądał dość schludnie w etui.
Wsuń D1 Mini do obudowy z modułem WiFi do góry. Przewód powinien znajdować się na górze modułu, a następnie wracać pod płytkę drukowaną.
Możesz teraz przyciąć przewód serwa do akceptowalnej długości.
Usuń D1 Mini, naciskając go z przeciwnej strony płytki drukowanej do gniazda USB.
Po wyjęciu oddzielić, oddzielić i ocynować trzy przewody przewodu.
Przylutuj je do spodu płytki PCB w następującej kolejności.
Czerwony -> 5V
Brązowy -> GND
Pomarańczowy -> D4
Wszystkie trzy kołki przylegają do siebie, dzięki czemu łatwo jest utrzymać ciężarek w czystości.
Teraz delikatnie złóż ciężarek pod deską w kierunku środka, trzymając go ładnie i płasko, nawiń go na wierzch deski i delikatnie wsuń deskę do domu. Nie wciskaj D1 do końca, zostaw go na tyle daleko, aby łatwo było podłączyć kabel USB i dostać się do przycisku resetowania.
Jeśli udało Ci się wydrukować klakson tak, aby pasował do kabestanu na serwo, zamontuj go teraz tak, aby górna część tuby była mniej więcej równoległa do blatu roboczego. Zamocuj go za pomocą małej śruby dostarczonej z serwomechanizmem.
Jeśli nie udało Ci się wydrukować klaksonu, odetnij skuwkę i przymocuj ją do jednego z dostarczonych rogów, super klej i kilka małych opasek zaciskowych zrobiło to za mnie.
Krok 3: miganie
Pobierz plik ino do pliku projektów arduino do folderu o nazwie KiKi.
Otwórz plik w Arduino IDE.
Edytuj następujące wiersze, aby dopasować je do konfiguracji Asystenta domu..
25 const PROGMEM uint16_t MQTT_SERVER_PORT = 1883; (jeśli zmieniłeś domyślny port)
26 const PROGMEM char* MQTT_CLIENT_ID = "Nazwa hosta";
27 const PROGMEM char* MQTT_USER = "MQTTUSER";
28 const PROGMEM char* 28 MQTT_PASSWORD = "MQTTPASS";
W przypadku tematów MQTT STATE i COMMAND lubię zamówić lokalizację/urządzenie/(stan/przełącznik), ale możesz użyć dowolnej konwencji.
29 const char* MQTT_ROBOT_STATE_TOPIC = "lokalizacja/komputer/stan"; stały znak*
30 MQTT_ROBOT_COMMAND_TOPIC = "lokalizacja/komputer/przełącznik";
Teraz edytuj te kolejne wiersze, aby ustawić nazwę hosta urządzenia.
159 wifi_station_set_hostname("NAZWA HOSTA");
169 if (!wifiManager.autoConnect("NAZWA HOSTA")) {
Ustaw w pełni kwalifikowaną nazwę domeny serwera MQTT.
175 WiFi.hostByName("MQTTSERVER", MQTT_SERVER_IP);
Podłącz D1 Mini do komputera i wybierz port COM, na którym jest zamontowany.
Otwórz monitor szeregowy.
Prześlij plik.
Po zakończeniu przesyłania sprawdź monitor szeregowy.
Jeśli jest to nowa płyta, nie będzie żadnych ustawień i będziesz musiał połączyć się z bezprzewodowym AP, który utworzy, a następnie wybierz odpowiednią sieć bezprzewodową i wprowadź hasło.
Gdy zapiszesz dane z powrotem, zapisze je na urządzeniu i użyje ponownie przy każdym ponownym uruchomieniu.
Teraz jest podłączony do Twojej sieci bezprzewodowej, zobaczysz na monitorze szeregowym linię podobną do…
192.168.1.xxx lub jakikolwiek zasięg Twojej sieci.
Jeśli połączysz się z tym za pomocą przeglądarki, zobaczysz bardzo prostą stronę internetową z jednym przyciskiem, który po kliknięciu aktywuje ramię serwa.
Krok 4: Regulacja położenia głównego serwomechanizmu i pozycji aktywacji
Przyklejam dużą bryłę niebieskiej pinezki do spodu obudowy, a następnie przyklejam ją do mojego pulpitu, aby klakson serwa znajdował się nad środkiem klawisza, który ma być wciśnięty.
Początkowo ustawiam się w kolejce na jednym z pozostałych klawiszy, a nie na klawiszu zasilania, ponieważ za każdym razem, gdy go testuję, usypia komputer.
Dla mojej klawiatury Logitech K260 ustawiłem pozycję wyjściową na 135, a klakson serwomechanizmu znajduje się tuż nad klawiszem.
Ustawiłem aktywowaną lokalizację na 120, co wciska przycisk wystarczająco głęboko, aby upewnić się, że jest faktycznie aktywowany.
Oczywiście będziesz musiał majstrować przy tych ustawieniach, aby dobrze je skonfigurować na klawiaturze, to tylko przypadek dostosowania najpierw ustawienia pozycji domowej, przesłania szkicu i przyjrzenia mu się.
Gdy będziesz zadowolony z pozycji wyjściowej, idź dalej i ustaw aktywowaną pozycję, ponieważ moja klawiatura jest około 15 stopni w dół od pozycji wyjściowej. Jeśli zmienisz pozycję wyjściową, spróbuj najpierw dostosować aktywowaną pozycję do pozycji wyjściowej - 15. Prześlij kod do D1 i zobacz, jak to działa. Rozpracowanie tego nie zajmuje dużo czasu.
Zaletą korzystania z bluetack jest to, że utrzyma urządzenie w idealnym miejscu po prawidłowym ustawieniu pozycji, ale jeśli aktywowana pozycja jest zbyt niska, po prostu zrzuci urządzenie z biurka i nie spowoduje żadnych uszkodzeń.
Krok 5: Podłączanie go do Home Assistant
W instancji asystenta domowego otwórz plik, w którym przechowujesz ustawienia przełącznika, i dodaj następujące elementy.
- platforma: mqtt
nazwa: "TWOJEURZĄDZENIE"
state_topic: "lokalizacja/urządzenie/stan"
command_topic: "lokalizacja/urządzenie/przełącznik"
payload_on: "WŁ"
payload_off: "WYŁĄCZONY"
optymistyczny: fałszywy
Upewnij się, że edytujesz TWOJE URZĄDZENIE do czegoś odpowiedniego i że tematy stanu/polecenia pasują do tego, co ustawiłeś w kodzie ino z poprzedniego kroku.
Teraz będziesz chciał dodać urządzenie do swojej konfiguracji, aby pojawiło się w interfejsie HA.
Wypisuję wszystkie moje grupy i definicje grup w pliku configuration.yaml, więc po prostu dodaj tam urządzenie zgodnie z…
badanie: nazwa: Badanie
podmioty:
- przełącznik.study_pc
Sprawdź, czy Twoja konfiguracja jest bezpieczna, wpisując
/srv/homeassistant/bin/hass --script check_config -c /home/homeassistant/.homeassistant/
Jeśli nie widzisz żadnych błędów, zrestartuj HA
systemctl uruchom ponownie home-assistant@homeassistant.
Po załadowaniu wszystkiego powinieneś zobaczyć nowy przycisk na interfejsie HA, który włącza lub wyłącza komputer za pomocą magii KiKi.
PS, jeśli masz dostęp do maszyny przez ssh, możesz aktywować KiKi za pomocą wget…
wget -qO- https://ip kiki/?Req=1 > /dev/null
lub umieść go w pliku skryptu bash, wywołaj skrypt, oszczędzając konieczności zapamiętywania argumentów.
Zalecana:
Arduino Keyboard Joystick Extender Box i kontroler dźwięku Rzecz za pomocą Deej: 8 kroków
Arduino Keyboard Joystick Extender Box and Sound Controller Thing Using Deej: WhyOd jakiegoś czasu chciałem dodać mały joystick do mojej klawiatury, aby sterować elementami interfejsu lub innymi mniejszymi zadaniami w grach i symulatorach (MS Flight Sim, Elite: Dangerous, Gwiezdne wojny: eskadry itp.). Ponadto w przypadku Elite: Dangerous byłem
HID Keyboard Controller dla Project Diva Aracade Future Tone: 5 kroków
Kontroler klawiatury HID dla Project Diva Aracade Future Tone: V-USB to rozwiązanie biblioteki USB o niskiej prędkości dla mikrokontrolerów AVR. Umożliwia nam tworzenie urządzeń HID (klawiatura, mysz, gamepad itp.) za pomocą mikrokontrolerów AVR. Implementacja klawiatury HID oparta jest na HID 1.11. Obsługuje maksymalnie 6 naciśnięć klawiszy
Keyboard Cap Micro Watercolor Bots: 12 kroków (ze zdjęciami)
Keyboard Cap Micro Watercolor Bots: Te małe roboty wywodzą się z ulubionego osobistego wyzwania projektowego: zbadania minimalnej ilości materiałów i narzędzi niezbędnych do zrobienia czegoś. W tym przypadku coś, co jest i/lub tworzy „sztukę”. Ściśle związane z tym celem jest moje pragnienie
ThinkPad Classic Keyboard Mod: 7 kroków (ze zdjęciami)
ThinkPad Classic Keyboard Mod: Jeśli masz Lenovo ThinkPad T430, T430s lub X230 i chcesz zamienić standardową 6-rzędową klawiaturę w stylu chiclet na klasyczną 7-rzędową klawiaturę T410/T420, ten przewodnik pokaże Ci, jak to zrobić. Powinno to również działać w przypadku serii X230t, T530 i W530.xx30 Pomyśl
Trash Built Bot do rysowania linii BT - My Bot: 13 kroków (ze zdjęciami)
Trash Built BT Line Drawing Bot - My Bot: Przyjaciele Hai po długiej przerwie około 6 miesięcy, przyszedłem z nowym projektem. Do czasu ukończenia Cute Drawing Buddy V1, SCARA Robot - Arduino planuję kolejnego bota do rysowania, którego głównym celem jest pokrycie dużej przestrzeni do rysowania. Tak naprawiono ramiona robota c