
Lesley Fowler
0
1845
501
Tablice Arduino to jeden z najprostszych sposobów włamania się do hakowania sprzętowego dla programistów. Istnieje ogromna liczba projektów dla początkujących 15 Wielkich projektów Arduino dla początkujących 15 Wielkich projektów Arduino dla początkujących Zainteresowane projektami Arduino, ale nie wiesz, od czego zacząć? Te projekty dla początkujących nauczą Cię, jak zacząć. tam, aby zadowolić prawie każdego z doświadczeniem programistycznym. Mimo to rozpoczęcie pracy może wydawać się zniechęcające dla tych, którzy mają mało czasu.
Nauka zupełnie nowego języka Którego języka programowania powinieneś się nauczyć na przyszłość? Jakiego języka programowania powinieneś się nauczyć na przyszłość? Który język programowania jest najlepszy do nauki w przyszłości? Jeśli możesz wybrać tylko jeden język do nauki i opanowania na przyszłość, nie ma konkursu: musi to być JavaScript. po prostu wypróbowanie mikrokontrolera może wydawać się dużo pracy. Co zrobić, jeśli chcesz zacząć bawić się elektroniką do domowego parzenia w języku, który już znasz? Dobra wiadomość: możesz!
Pokazaliśmy już, jak kontrolować tablicę Arduino za pomocą Pythona Jak programować i kontrolować Arduino za pomocą Pythona Jak programować i kontrolować Arduino za pomocą Pythona Niestety nie można bezpośrednio programować Arduino w Pythonie, ale można nim sterować przez USB za pomocą programu Python. Oto jak. , a dziś pokażemy, jak to zrobić z JavaScript. Zamiast tylko najbardziej podstawowego samouczka z migającymi diodami LED, dzisiaj użyjemy frameworka Johnny-Five do sterowania serwomechanizmem za pomocą klawiatury komputera, wszystko zaprogramowane w JavaScript. Co to jest JavaScript i jak to działa? Co to jest JavaScript i jak działa? Co to jest Javascript? Jest to język programowania używany do ulepszania stron internetowych. Obejmuje dynamicznie aktualizowane strony internetowe, interfejsy użytkownika i wiele innych. Zobaczmy, o co chodzi w Javascript. .
Lista sprzętu
Do tego projektu potrzebujesz:
- Arduino Uno (lub kompatybilna tablica Poradnik kupujący Arduino: Którą deskę powinieneś dostać? Poradnik kupujący Arduino: Którą deskę powinieneś dostać? Jest tak wiele różnych rodzajów tablic Arduino, że możesz wybaczyć, że jesteś zdezorientowany. Które powinieneś kupić dla twojego projektu? Pozwól nam pomóc, korzystając z tego przewodnika zakupów Arduino!): 22 USD w oficjalnym sklepie, chociaż możesz uzyskać taniej 5 powodów, dla których nie chcesz używać oryginalnego Arduino w następnym projekcie 5 powodów, aby nie używać oryginalnego Arduino w Twój następny projekt Czy fundacja Arduino posunęła się za daleko? Dlaczego warto wydawać pieniądze na oryginalne produkty Arduino? Wyjaśniamy wszystko, co musisz wiedzieć. , płytki klonowania są dostępne za jedyne 3,20 USD w AliExpress.
- Hobby Servo: zrobi każde serwo kompatybilne z Arduino ze sklepu hobbystycznego, używam serwa 1,60 $ od AliExpress.
- Kilka kawałków drutu
- Kabel USB: Do podłączenia Arduino do komputera
Dzisiejszy samouczek będzie wykorzystywał tablicę Arduino Uno. Framework Johnny-Five, którego będziemy używać później w tym projekcie, obsługuje większość mikrokontrolerów kompatybilnych z Arduino, chociaż Twoja płyta będzie musiała mieć możliwość PWM, aby serw był szczęśliwy.
Konfiguracja obwodu
Przymocuj serwomechanizm do Arduino w ten sposób:
Krótko mówiąc, linia VCC (CZERWONY) łączy się ze stykiem 5 V Arduino, linią GND (CZARNY lub BRĄZOWY) łączy się ze stykiem GND Arduino i linią Pulse (Żółty lub Pomarańczowy) podłącz do styku 10 Arduino. Należy pamiętać, że chociaż nie trzeba podłączać go specjalnie do styku 10, musi on zostać podłączony do styku PWM, zwykle oznaczonego ~.
Dokładnie sprawdź, czy nie pomieszałeś żadnych przewodów, i podłącz Arduino do komputera. W tym projekcie będziemy używać systemu Windows 10. Wszystkie elementy tego projektu są dostępne również dla komputerów Mac i Linux, choć niektóre instrukcje instalacji mogą się nieco różnić.
Jeśli jeszcze tego nie zrobiłeś, pobierz Arduino IDE i wybierz swój Deska i Port z Przybory menu. Jeśli robisz to po raz pierwszy i jest to trochę tajemnica, nasz Przewodnik dla początkujących Arduino Rozpoczęcie pracy z Arduino: Przewodnik dla początkujących Rozpoczęcie pracy z Arduino: Przewodnik dla początkujących Arduino to platforma prototypowania elektroniki typu open source oparta na elastycznej, łatwy w użyciu sprzęt i oprogramowanie. Jest przeznaczony dla artystów, projektantów, hobbystów i wszystkich zainteresowanych tworzeniem interaktywnych obiektów lub środowisk. może pomóc w wykonaniu tych kroków.
Po nawiązaniu połączenia prześlij plik StandardFirmataPlus przykładowy szkic do tablicy. Możesz znaleźć ten szkic w Plik menu pod Przykłady> Firmata> StandardFirmataPlus. W ogóle nie trzeba modyfikować szkicu, po prostu ustawia Arduino, aby czekał na instrukcje zewnętrzne - które zapewnimy później.
JavaScript Robotics With Johnny-Five
Framework, którego będziemy używać do kontrolowania naszego Arduino za pomocą Javascript, nazywa się Johnny-Five. Jak można się było spodziewać, biorąc pod uwagę imiennik filmowy, projekt jest ukierunkowany na pracę z robotyką.
Zdjęcie: johnny-five.io
Aby zainstalować Johnny-Five, musimy najpierw zainstalować Node.js Co to jest Node.JS i dlaczego powinienem się przejmować? [Web Development] Co to jest Node.JS i dlaczego powinienem się tym przejmować? [Web Development] JavaScript to tylko język programowania po stronie klienta, który działa w przeglądarce, prawda? Nigdy więcej. Node.js to sposób na uruchomienie JavaScript na serwerze; ale to także o wiele więcej. Jeśli… . Możesz pobrać ich najnowszą wersję ze strony Node.js. Używamy zalecanego wydania, które w momencie pisania jest 8.9.4 LTS.
Otworzyć .msi plik i postępuj zgodnie z instrukcjami instalacji, upewniając się, że zostanie on dodany do twojego ŚCIEŻKA. Obecny instalator Node.js dodaje PATH w standardzie, chociaż warto to sprawdzić podczas instalacji, ponieważ jest to wymagane w naszym następnym kroku.
Po zakończeniu instalacji będziemy mieć dostęp do Menedżer pakietów węzłów Menedżer pakietów (NPM) z wiersza poleceń systemu Windows (CMD). Kliknij Początek i wpisz CMD. Zanim przejdziemy dalej, musimy zainicjować NPM, aby zapobiec możliwym błędom instalacji. Nie wymaga żadnej specjalistycznej wiedzy, wystarczy wpisać:
npm init
Postępuj zgodnie z instrukcjami wyświetlanymi na ekranie. W dzisiejszym projekcie nic nie musisz zmieniać, po prostu naciśnij Enter, aż wrócisz do wiersza poleceń, a następnie wpisz:
npm zainstaluj johnny-five
Spowoduje to zainstalowanie wszystkich ważnych pakietów, które będą rozmawiać z naszym Arduino. Potrzebujemy jeszcze jednej rzeczy, aby ten projekt działał, i to jest Naciśnięcie klawisza pakiet, który pozwoli nam odczytać naciśnięcia klawiszy z klawiatury.
Zainstaluj go, wprowadzając:
npm naciśnij klawisz instalacji
Po zainstalowaniu wszystkich tych pakietów jesteśmy gotowi do kodowania!
Jeśli podczas instalacji wystąpią jakiekolwiek problemy, spróbuj ponownie uruchomić instalację Johnny-Five po instalacja za pomocą naciśnięcia klawisza. Może to tylko dziwactwo zastosowanej tutaj wersji NPM, ale robienie tego teraz zapobiega problemowi, na który prawdopodobnie natkniesz się później, tak jak ja.
Kod
Użyjemy dzisiaj fragmentu przykładowego kodu zawartego w dokumentacji Johnny'ego Five, który pozwala kontrolować nasze serwomechanizmy za pomocą klawiszy strzałek na klawiaturze. Pełny kod jest dostępny na stronie johnny-five.io, ale przejrzymy go tutaj szczegółowo, aby w pełni zrozumieć, jak to działa.
Używamy Eclipse IDE 8 Skróty klawiaturowe Eclipse Essential dla początkujących 8 Skróty klawiaturowe Eclipse Essential dla początkujących Tak przyjazny dla początkujących, jak Eclipse IDE (interfejs), musisz się nauczyć tych skrótów klawiaturowych. do kodowania dzisiaj, chociaż możesz użyć dowolnego edytora IDE lub edytora tekstu. Edytory tekstu a IDE: Który z nich jest lepszy dla programistów? Edytory tekstu a IDE: Który z nich jest lepszy dla programistów? Wybór pomiędzy zaawansowanym IDE a prostszym edytorem tekstu może być trudny. Oferujemy wgląd, który pomoże Ci podjąć tę decyzję. dla tego projektu.
Utwórz nowy plik i nazwij go test.js, a następnie zapisz go w miejscu, do którego będziesz mieć później łatwy dostęp z wiersza poleceń. Skrypt rozpoczyna się od utworzenia zmiennych dla wymaganych bibliotek i zainicjowania pliku Naciśnięcie klawisza biblioteka do nasłuchiwania przychodzących danych wraz z wywoływaniem Deska() metoda konfiguracji tablicy.
var five = wymagają („johnny-five”); var keypress = wymagany („naciśnięcie klawisza”); keypress (process.stdin); var board = new five.Board ();
Zauważ, że konfiguracja płyty tutaj jest automatyczna, nie trzeba określać portów. Jeśli masz określoną konfigurację portu lub po prostu nie masz szczęścia z automatycznym wykrywaniem, może być konieczne jawne określenie portu.
Następnie chcemy “Obudź się” naszej tablicy i skonfiguruj ją do sterowania serwomechanizmem. The board.on połączenie czeka, aż piny Arduino będą gotowe, zanim przejdziesz dalej. Biblioteka johnny-five ma wbudowane wsparcie dla serwomechanizmów, a my dzwonimy Serwo ciągłe (10) na styku 10, aby umożliwić bezpośrednie sterowanie.
board.on („ready”, function () console.log („Użyj strzałek w górę i w dół odpowiednio dla CW i CCW. Spacja, aby zatrzymać.”); var servo = new five.Servo.Continuous (10); proces. stdin.resume (); process.stdin.setEncoding ("utf8"); process.stdin.setRawMode (true);
The process.stdin połączenia zapewniają, że wszystkie dane, które otrzymamy z klawiatury, będą przydatne w następnym bloku kodu. Teraz chcemy “słuchać” do naciśnięcia klawiszy i użyj ich, aby przesunąć nasze serwo zgodnie z ruchem wskazówek zegara (CW), przeciwnie do ruchu wskazówek zegara (CCW) lub zatrzymać się.
process.stdin.on ("naciśnięcie klawisza", funkcja (ch, klawisz) if (! klawisz) // jeśli nie zostanie naciśnięty żaden klawisz, zwróć, tzn. nic nie rób. return; if (key.name === "q" ) console.log („Wyjście”); process.exit (); else if (key.name === „up”) console.log („CW”); servo.cw (); else if (key.name === „down”) console.log („CCW”); servo.ccw (); else if (key.name === „spacja”) console.log („Zatrzymywanie”) ; servo.stop ();); );
Upewnij się, że umieściłeś tutaj wszystkie nawiasy zamykające u dołu i jeśli wystąpią jakiekolwiek błędy, zapoznaj się z całym blokiem kodu, do którego odsyłam powyżej. Zapisz ten skrypt i otwórz wiersz polecenia.
Macha Witam!
Teraz przejdź do katalogu, w którym zapisałeś skrypt, i uruchom go, wpisując:
węzeł test.js
Program powinien uruchomić się natychmiast z informacją o płycie, zanim poda instrukcje podane w kodzie. Spróbuj nacisnąć klawisze strzałek w górę i w dół, spację i Q zrezygnować. Ekran powinien wyglądać następująco:
I wszystko w porządku, serwo powinno tańczyć do twoich naciśnięć klawiszy! Spójrz na tę małą falę bestii!
Skromne początki
Pomimo podjęcia nieco bardziej ambitnego projektu niż zwykły samouczek z migającymi diodami LED dla początkujących, prawie nie dotknęliśmy pełnego zakresu tego, co można zrobić z płytami Arduino i podobnymi mikrokontrolerami.
Doświadczeni użytkownicy JavaScript powinni znaleźć pakiet Johnny-Five intuicyjny w obsłudze. Bibliotekę można również zainstalować natywnie na Raspberry Pi, co czyni ją idealnym pakietem dla początkujących robotów.
Wielką zaletą tej biblioteki jest to, że chociaż została zaprojektowana z myślą o robotach, te same dane wejściowe i wyjściowe można wykorzystać do tworzenia inteligentnych ustawień domowych DIY Inteligentne czujniki domowe DIY z Arduino, MySensors i OpenHAB DIY Inteligentne czujniki domowe z Arduino, MySensors a inteligentne czujniki domu OpenHAB kosztują absurdalnie dużo pieniędzy. Okablowanie całego domu to domena tych, którzy mają głupie kwoty do dyspozycji. Zbudujmy własne z MySensors. a nawet domowe systemy bezpieczeństwa DIY Inteligentny zamek z Arduino i RFID DIY Inteligentny zamek z Arduino i RFID Oto jak zbudować prosty inteligentny zamek oparty na RFID, używając Arduino jako szkieletu i kilku tanich komponentów. .
Komunikacja z mikrokontrolerami w ten sposób jest świetnym wprowadzeniem do świata sprzętu dla majsterkowiczów bez konieczności poświęcania czasu na naukę zupełnie nowego języka programowania. Baw się dobrze, a jeśli zdarzy ci się zbudować zabójczego robota, pamiętaj, jak pomogliśmy ci na początku.