Spisu treści:
- Krok 1: Tworzenie serwera na MKR
- Krok 2: Tworzenie klienta do wysyłania żądań na serwer
- Krok 3: Przetestuj to
- Krok 4: Rozwiązywanie problemów
Wideo: Komunikacja klient/serwer MKR1000 IoT: 4 kroki
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:31
Ten projekt opisuje, jak skonfigurować dwa urządzenia Arduino/Genuino MKR1000 jako serwer i klient.
Klient MKR1000 połączy się z lokalnym Wi-Fi i nasłuchuje dwóch wejść fizycznie podłączonych do klienta; jeden z przycisku, a drugi z czujnika wibracji.
Po wykryciu danych wejściowych klient MKR wysyła żądanie GET do serwera MKR. Po otrzymaniu żądania GET serwer MKR jest skonfigurowany do włączania/wyłączania wbudowanej diody LED (wyzwalanej przez przycisk klienta) oraz do zwiększania i zmniejszania podłączonej diody LED (wyzwalanej przez czujnik wibracji)
Krok 1: Tworzenie serwera na MKR
Ustaw MKR i płytkę prototypową jak na obrazku.
Czerwona dioda LED jest podłączona przez rezystor 1K Ohm do styku #5. W MKR jest to cyfrowy pin z modulacją szerokości impulsu (PWM), który pozwala nam ustawić zmienną dla jasności czerwonej diody LED. Druga strona diody LED jest podłączona do masy.
Druga dioda LED zastosowana w tym projekcie to zintegrowana dioda MKR. Jest to oznaczone „L” i jest to zielona dioda LED umieszczona w pobliżu styku VCC.
Teraz pobierz (lub po prostu skopiuj) kod dla serwera MKR stąd:
github.com/TonyCanning/MKR1000-IoT - nazwa szkicu Arduino to "MKRServerLED.ino"
Edytuj to, aby uwzględnić dane logowania do sieci Wi-Fi i prześlij je do swojego MKR1000.
Po przesłaniu otwórz monitor szeregowy. (Zobacz obrazek dla opisów danych wyjściowych) Początkowo pokaże ci niewiele więcej niż adres IP serwera. Zanotuj ten adres, ponieważ musisz go również uwzględnić w kodzie klienta.
W tym momencie serwer działa - skonfigurujemy drugi MKR1000 jako klienta tego serwera. Jednak ponieważ jest to serwer, będziesz mógł połączyć się z nim z dowolnego urządzenia w sieci, wpisując podany adres https://192.168.*.* w dowolnej przeglądarce.
Wypróbuj to i zauważ, że podana strona ma klikalne adresy, aby zmienić stan diod LED na serwerze MKR10000. Należy również zauważyć, że szczegółowe aktualizacje monitora szeregowego potwierdzają te żądania GET odebrane przez serwer.
Uwaga: istnieją biblioteki, które możesz potrzebować zainstalować, jestem prawie pewien, że będziesz musiał zainstalować przynajmniej bibliotekę Wifi101. Majstrując przez długi czas, nie jestem pewien, czego będziesz potrzebować, a czego nie będziesz potrzebować od nowej instalacji. Zapoznaj się z bogactwem dostępnych informacji na temat instalowania bibliotek lub wszelkich innych problemów, które możesz mieć z łączeniem/przesyłaniem itp.
Krok 2: Tworzenie klienta do wysyłania żądań na serwer
Ponownie skonfiguruj płytkę prototypową, jak pokazano na obrazku.
W tym przypadku przycisk jest podłączony do styku 9, a czujnik wibracji do styku 8. Styki botów są stykami cyfrowymi, ponieważ stany obu tych wejść są binarne.
Po zakończeniu możesz pobrać (lub skopiować i wkleić) kod klienta stąd:
github.com/TonyCanning/MKR1000-IoT - nazwa pliku to „MKRClientGET.ino”
W tym momencie zalecam odłączenie serwera MKR od komputera, ponieważ nie zobaczysz żadnej różnicy w nazewnictwie po wybraniu portu COM.
Edytuj kod, aby podać poświadczenia sieci Wi-Fi i adres IP serwera MKR. Upewnij się, że szukasz każdego wystąpienia „192” i zmień adres IP serwera. Prześlij kod do klienta MKR i otwórz monitor szeregowy.
Zobacz obraz wyjścia monitora szeregowego i spróbuj nacisnąć przycisk i uruchomić czujnik wibracji.
Krok 3: Przetestuj to
Powinieneś skończyć….
W tym momencie możesz zapewnić zasilanie każdemu MKR1000 (jakkolwiek chcesz to zrobić). Daj im około 10 sekund i spróbuj wyzwolić wejścia klienta, aby zobaczyć wyjścia na serwerze MKR.
Krok 4: Rozwiązywanie problemów
Zanim przejdziesz do rozwiązywania problemów - sprawdź podstawy. Czy zapewniasz zasilanie obu MKR? Czy na pewno kod serwera znajduje się na serwerze MKR, a kod klienta na kliencie MKR?
Możliwe problemy i rozwiązania:
1. C:\Users\tony\Documents\Arduino\MKRClientGET\MKRClientGET.ino:11:18: błąd krytyczny: 1234.h: Brak takiego pliku lub katalogu #include
^
kompilacja zakończona.
Jest to problem z biblioteką, której nie zainstalowałeś. Jak wspomniano w poprzednich krokach, istnieje wiele informacji na ten temat.
2. Serwer lub klient nie nawiązuje połączenia z Wi-Fi; prawdopodobnie nie podałeś swoich danych logowania do Wi-Fi.
3. Monitor szeregowy klienta pokazujący zmiany stanu, ale brak reakcji na serwerze; prawdopodobnie spowodowane nie podaniem adresu IP serwera w kodzie klienta.
4. Przycisk nie pokazuje stanu zmiany w monitorze szeregowym; sprawdź kontakty na płytce prototypowej.
Zalecana:
Komunikacja bezprzewodowa SmartHome: ekstremalne podstawy MQTT: 3 kroki
Komunikacja bezprzewodowa SmartHome: Ekstremalne podstawy MQTT: Podstawy MQTT: **Będę robił serię automatyki domowej, będę przechodził przez kroki, które podjąłem, aby dowiedzieć się wszystkiego, co zrobiłem w przyszłości. Ten Instructable jest podstawą konfiguracji MQTT do użytku w moich przyszłych Instructables. Jednak
KOMUNIKACJA CZUJNIKA PRZEZ USB: 3 kroki
KOMUNIKACJA CZUJNIKA PRZEZ USB: Ten samouczek pokazuje, jak używać izolowanej płytki nośnej USB EZO do interakcji z obwodami EZO. W kilku prostych krokach będziesz mógł kalibrować i debugować obwody, a nawet monitorować w czasie rzeczywistym dany parametr.ZALETY:
Komunikacja Modbus TCP między Arduino a urządzeniami przemysłowymi: 3 kroki
Komunikacja Modbus TCP między Arduino a urządzeniami przemysłowymi: przemysłowy sposób sterowania płytą Arduino za pomocą przemysłowego interfejsu HMI i połączenia jej z siecią przemysłową za pomocą komunikacji Modbus TCP
Komunikacja Arduino z węzłem: 4 kroki
Komunikacja Arduino z węzłem: Ta instrukcja służy wyłącznie do bardzo podstawowej demonstracji, jak wysyłać i odbierać dane przez UART (szeregowy) między dwiema płytami kompatybilnymi z Arduino
Zawsze włączony serwer DLNA Raspberry Pi i klient Torrent z diodami LED stanu: 6 kroków
Zawsze włączony serwer DLNA Raspberry Pi i klient Torrent z diodami LED stanu: Próbowałem zrobić jeden dla siebie i działa idealnie. Jest w stanie przesyłać strumieniowo filmy HD bez opóźnień, a diody LED stanu pokazują mi szybki stan. Poniżej dodałem kroki, które podjąłem, aby je złożyć. Przejrzyj to, jeśli jesteś zainteresowany