Spisu treści:

Silnik serwo z ciągłym obrotem (CRS) ze sterowaniem telegramem: 8 kroków
Silnik serwo z ciągłym obrotem (CRS) ze sterowaniem telegramem: 8 kroków

Wideo: Silnik serwo z ciągłym obrotem (CRS) ze sterowaniem telegramem: 8 kroków

Wideo: Silnik serwo z ciągłym obrotem (CRS) ze sterowaniem telegramem: 8 kroków
Wideo: Silnik krokowy + enkoder + sterownik = Easy-Servo czyli prezentacja i omówienie produktów Leadshine 2024, Grudzień
Anonim
Silnik serwo o ciągłym obrocie (CRS) z kontrolą telegramu
Silnik serwo o ciągłym obrocie (CRS) z kontrolą telegramu

W tej instrukcji nauczę Cię, jak sterować CRS za pomocą telegramu. Do tego instruktażu będziesz potrzebować kilku rzeczy. Będę pracował nad NodeMCU 1.0 (moduł ESP-12E). To może działać na innych płytach Arduino, wystarczy znaleźć do tego odpowiednie dyski.

Oto środowisko konfiguracji modułu ESP-12E:

  • Okna 10
  • Arduino IE 1.8.7 (sklep Windows 1.8.15.0)

Poradnik dotyczący instalacji sterowników i podstawowych plików modułu ESP-12E można znaleźć tutaj:

Kiedy już to zrobisz. Jesteśmy gotowi!

Krok 1: Krok 1: Komponenty

Krok 1: Komponenty
Krok 1: Komponenty

Do tego samouczka będziesz potrzebować kilku komponentów:

  • Moduł ESP12-E (ESP8266)
  • Silnik serwo z ciągłym obrotem (to jest ten, którego użyłem)
  • Kabel Micro USB
  • Sieć Wi-Fi
  • Aplikacja Telegram
  • Botfather Bot (nie martw się, dotrzemy tam)

Krok 2: Krok 2: Podłącz serwomotor

Krok 2: Podłącz serwomotor
Krok 2: Podłącz serwomotor

Postępuj zgodnie z tym schematem, aby podłączyć silnik serwo.

  • Czarny: GND (ziemia)
  • Czerwony: 3,3 V lub 5 V (zasilanie)
  • Żółty lub biały: wyjście cyfrowe (sygnał)

Tak więc, jeśli używasz tego samego serwosilnika, którego użyłem i masz płytę arduino z wyższym napięciem (maks. 5 V), możesz tam przykleić kabel zasilający. Będzie to po prostu oznaczało, że serwomotor wytworzy większy moment obrotowy. Tak czy inaczej, 3,3 V lub 5 V są w porządku.

Krok 3: Krok 3: Trochę zrozumienia

Zanim zaczniemy testować kod i sprawdzimy, czy działa, jest coś, co musisz zrozumieć na temat tego serwosilnika. Ponieważ nie jest to konwencjonalny serwomotor, który obraca się pod określonymi kątami, kod, którego musisz użyć, jest nieco inny.

Nie polecam używania serwa z pełnym momentem obrotowym, ponieważ wytwarza dużo ciepła i może zużywać dużo czasu, który ma produkt. Staraj się pozostawać w okolicy [60, 120].

pusta pętla {

myservo.write(90); // oznacza to brak ruchu, serwomotor stoi nieruchomo delay(1000); myservo.write(0); //oznacza to pełne opóźnienie ruchu w kierunku przeciwnym do ruchu wskazówek zegara (1000); myservo.write(180); //oznacza to opóźnienie ruchu z pełną prędkością zgodnie z ruchem wskazówek zegara (1000); }

Krok 4: Krok 4: Dodaj kod, aby przetestować serwomotor

#włączać

Serwo myservo; void setup() { myservo.attach(D5); //załącz serwo na pin D5) } void loop() { myservo.write(85); //obraca silnik przeciwnie do ruchu wskazówek zegara z małą prędkością opóźnienia (1000); myservo.write(120); opóźnienie (1000); myservo.write(90); opóźnienie(5000); }

Krok 5: Krok 5: Przygotowanie do komunikacji

Aby móc komunikować się z Arduino, musisz naprawić kilka rzeczy. Są całkiem łatwe. Podzielimy to zadanie na dwie małe części.

Bot

  1. Zainstaluj Telegram na swoim telefonie komórkowym.
  2. Załóż konto w Telegramie.
  3. Wyszukaj użytkownika „Botfather”.
  4. Stwórz nowego bota za pomocą poleceń, które pokazuje (zapisz klucz, który ci daje).

Zadania Arduino

  1. Otwórz Arduino IE.
  2. Przejdź do „Menedżera biblioteki”.
  3. Dodaj bibliotekę „Universal Telegrambot”.
  4. Dodaj bibliotekę „ArduinoJson”.

    • Nie dodawaj wersji beta
    • Dodaj najnowszą wersję 5.x.

Krok 6: Krok 6: Testowanie komunikacji

Krok 6: Testowanie komunikacji
Krok 6: Testowanie komunikacji

Prawie jesteśmy na miejscu.

  1. Otwórz 'echobot' z biblioteki universaltelegrambot > esp8266.
  2. Zmień dane logowania do Wi-Fi, aby pasowały do Twojej sieci w miejscu, w którym się znajdujesz.
  3. Zmień BOTtoken, który dał ci Botfather.
  4. Dodaj ten wiersz kodu do pętli for znajdującej się w `void loop();`

Serial.println(bot.messages.text);

Teraz jesteśmy gotowi do testów.

Prześlij ten kod do swojego Arduino. Sprawdź na monitorze szeregowym, czy NodeMCU łączy się z siecią Wi-Fi. Gdy zobaczysz, że jest podłączony, wyślij wiadomość do swojego bota. Powinien odesłać dokładnie tę samą wiadomość.

Krok 7: Krok 7: Dodawanie poleceń

Więc zadziałało! Mamy połączenie między urządzeniami. Następnym krokiem jest dodawanie rzeczy razem. Dodamy więc polecenia do istniejącego kodu echobota. Dobrym pomysłem może być umieszczenie następnego kodu zamiast ostatniego, który ci podałem. Więc uniemożliwimy nam posiadanie bota, który zachowuje się jak papuga.

Ten następny fragment kodu musi znajdować się w pętli for, która przechodzi przez nowe komunikaty. W zależności od tego, jak umieścisz serwomotor, możesz chcieć zamienić polecenia „Otwórz” i „Zamknij”. Prześlij to na swój esp8266 i sprawdź, czy działa.

//polecenie, które chcesz

if(bot.messages.text == "Otwórz") {

// Odpowiedź, którą udzieli Ci Twój bot bot.sendMessage(bot.messages.chat_id, "Zasuwam Ci zasłony.");

// co zrobi płyta arduino

myservo.write(80); // serwomotor obraca się w kierunku przeciwnym do ruchu wskazówek zegara, aby otworzyć zasłony

}

if(bot.messages.text == "Stop") { // Odpowiedź, którą otrzymasz od bota bot.sendMessage(bot.messages.chat_id, "Zatrzymuj zasłony."); // co zrobi płyta arduino myservo.write(90); // serwomotor przestaje się obracać }

if(bot.messages.text == "Zamknij") { // Odpowiedź, którą otrzymasz od bota bot.sendMessage(bot.messages.chat_id, "Zasuwam dla ciebie zasłony."); // co zrobi płyta arduino myservo.write(80); // serwomotor obraca się zgodnie z ruchem wskazówek zegara, aby zamknąć zasłony }

Krok 8: Krok 8: Podłącz urządzenie do zasłon (nie jest to konieczne)

Krok 8: Podłącz urządzenie do zasłon (nie jest to konieczne)
Krok 8: Podłącz urządzenie do zasłon (nie jest to konieczne)

Yeeeey, gotowe!

Instrukcje dotyczyły podłączenia Telegrambota do Arduino, aby można było nim sterować na odległość. Ale stworzyłem ten specjalny układ, aby mieć sposób na rozpięcie zasłon w moim studio bez konieczności ich fizycznego otwierania. Więc jeśli chcesz zrobić to samo co ja, ostatnim krokiem jest podłączenie naszego małego urządzenia do zasłon i voila.

Zalecana: