
Peter Holmes
0
5199
687
Desky Arduino jsou jedním z nejjednodušších způsobů, jak se dostat do hardwarového hackování programátorů. Existuje velké množství projektů pro začátečníky 15 velkých projektů Arduino pro začátečníky 15 velkých projektů Arduino pro začátečníky Zajímáte se o projekty Arduino, ale nejste si jisti, kde začít? Tyto začátečníky vás naučí, jak začít. tam, aby vyhovoval téměř každému, kdo má programové zázemí. I přesto se může zdát, že začátek může být pro ty, kteří jsou načas, skličující.
Učíme se úplně nový jazyk Který programovací jazyk byste se měli učit pro budoucnost? Jaký programovací jazyk byste se měli učit pro budoucnost? Jaký je nejlepší programovací jazyk pro budoucnost? Pokud byste si mohli vybrat pouze jeden jazyk, který se chcete učit a ovládat pro budoucnost, neexistuje žádná soutěž: musí to být JavaScript. jen vyzkoušet mikrokontrolér se může zdát jako hodně práce. Co když chcete začít hrát s domácí elektronikou v programovém jazyce, který již znáte? Dobrá zpráva: můžete!
Už jsme vám ukázali, jak ovládat desku Arduino s Pythonem Jak programovat a ovládat Arduino s Pythonem Jak programovat a ovládat Arduino s Pythonem Bohužel je nemožné přímo naprogramovat Arduino v Pythonu, ale můžete jej ovládat přes USB pomocí programu Python. Zde je návod. , a dnes vám ukážeme, jak s JavaScriptem dělat to samé. Spíše než jen nejzákladnější blikající LED kurz, dnes budeme používat rámec Johnny-Five k ovládání servo pomocí klávesnice počítače, vše naprogramované v JavaScriptu Co je JavaScript a jak to funguje? Co je to JavaScript a jak to funguje? Co je Javascript? Je to programovací jazyk používaný k vylepšení webových stránek. Zahrnuje dynamickou aktualizaci webových stránek, uživatelských rozhraní a další. Pojďme se ponořit do toho, o čem je Javascript. .
Seznam hardwaru
Pro tento projekt budete potřebovat:
- Arduino Uno (nebo kompatibilní deska Arduino Buying Guide: Kterou desku byste měli získat? Arduino Buying Guide: Kterou desku byste měli získat? Existuje tolik různých druhů desek Arduino venku, měli byste být odpuštěni za zmatení. Kupte si pro svůj projekt? Pomozte nám s tímto průvodcem nákupem Arduino!): 22 $ z oficiálního obchodu, ale můžete je získat levnější 5 důvodů, proč nepoužívat originální Arduino ve vašem dalším projektu 5 důvodů, proč nepoužívat originální Arduino v Váš další projekt Šla nadace Arduino příliš daleko? Proč byste měli utrácet peníze za originální produkty Arduino? Vysvětlujeme vše, co potřebujete vědět. , klonové desky jsou k dispozici za pouhých 3,20 $ na AliExpress.
- Hobby Servo: Bude fungovat každé servo kompatibilní s Arduino z hobby shopu, používám servo 1,60 $ od AliExpress.
- Pár kousků drátu
- Kabel USB: Pro připojení Arduino k počítači
Dnešní kurz bude používat desku Arduino Uno. Rámec Johnny-Five, který budeme používat později v tomto projektu, podporuje většinu mikrokontrolérů kompatibilních s Arduino, i když vaše deska bude muset mít schopnost PWM, aby byl servo spokojený.
Nastavení obvodu
Připojte své servo k Arduinu takto:
Stručně řečeno, linka VCC (ČERVENÉ) se připojí na 5V pin Arduino, GND line (ČERNÁ nebo HNĚDÝ) se připojí na GND pin Arduino a Pulse line (Žlutá nebo oranžový) připojte se na pin 10 Arduino. Všimněte si, že ačkoliv jej nemusíte připojovat konkrétně na pin 10, musíte se připojit na pin PWM, obvykle označený jako ~.
Zkontrolujte, zda jste nezměnili žádné dráty, a připojte Arduino k počítači. Pro tento projekt budeme používat Windows 10. Všechny prvky tohoto projektu jsou k dispozici také pro Mac a Linux, i když některé pokyny k instalaci se mohou mírně lišit.
Pokud jste tak dosud neučinili, stáhněte si Arduino IDE a vyberte si Prkno a Přístav z Nástroje Jídelní lístek. Pokud to děláte poprvé a je to trochu záhada, náš průvodce Arduino pro začátečníky Začínáme s Arduino: Průvodce pro začátečníky Začínáme s Arduino: Průvodce pro začátečníky Arduino je platforma s otevřeným zdrojovým kódem elektroniky založená na flexibilním, snadno použitelný hardware a software. Je určen pro umělce, designéry, fandy a kohokoli, kdo má zájem o vytváření interaktivních objektů nebo prostředí. vám může pomoci při provádění těchto kroků.
Jakmile se připojíte, nahrajte StandardFirmataPlus příklad skica na tabuli. Tuto skicu najdete v Soubor menu pod Příklady> Firmata> StandardFirmataPlus. Nemusíte vůbec upravovat skicu, v podstatě pouze nastavuje Arduino, aby čekal na vnější instrukce - které si sami poskytneme později.
JavaScript Robotics With Johnny-Five
Rámec, který použijeme k ovládání našeho Arduina pomocí Javascriptu, se nazývá Johnny-Five. Není překvapením, že vzhledem k jmenovce filmu je projekt zaměřen na práci s robotikou.
Image Credit: johnny-five.io
Chcete-li nainstalovat Johnny-Five, musíme nejprve nainstalovat Node.js. Co je Node.JS a proč by mě to mělo zajímat? [Vývoj webu] Co je Node.JS a proč bych se měl starat? [Vývoj webu] JavaScript je programovací jazyk na straně klienta, který běží v prohlížeči, že? Už ne. Node.js je způsob spouštění JavaScriptu na serveru; ale je to mnohem víc. Pokud… Jejich nejnovější verzi si můžete stáhnout z webu Node.js. Používáme doporučené vydání, které je v době psaní 8,9,4 LTS.
Otevři .msi soubor a postupujte podle pokynů k instalaci, ujistěte se, že bude přidán do vašeho CESTA. Aktuální instalační program Node.js přidává PATH jako standard, i když to během instalace stojí za kontrolu, protože je to nutné pro náš další krok.
Po dokončení instalace budeme mít přístup k internetu Správce balíčků uzlů (NPM) správce balíčků z příkazového řádku systému Windows (CMD). Klikněte na Start a zadejte CMD. Než budeme pokračovat, musíme inicializovat NPM, abychom zabránili možným chybám při instalaci. Nevyžaduje žádné speciální znalosti, stačí napsat:
npm init
Postupujte podle pokynů na obrazovce. U dnešního projektu nemusíte nic měnit, stačí stisknout klávesu Enter, dokud se nevrátíte na příkazový řádek, a pak zadejte:
npm nainstalujte johnny-five
Tím nainstalujete všechny důležité balíčky, které budou hovořit s naším Arduino. Aby tento projekt fungoval, potřebujeme ještě jednu věc, a to je Stiskněte klávesu balíček, který nám umožní číst stisky kláves z klávesnice.
Nainstalujte jej zadáním:
npm install keypress
Po instalaci všech těchto balíčků jsme připraveni kódovat!
Pokud během instalace narazíte na nějaké problémy, zkuste znovu spustit instalaci johnny-five po instalace stisknutí klávesy. Může to být jen výstřednost použité verze NPM, ale tím se zabrání problému, s nímž se pravděpodobně setkáte později, jako jsem to udělal já..
Kód
Dnes použijeme ukázkový kód uvedený v dokumentaci johnny-5, který umožňuje ovládání našeho serva pomocí kláves se šipkami na klávesnici. Celý kód je k dispozici na adrese johnny-five.io, ale podrobně ho projdeme zde, abychom plně porozuměli, jak to funguje..
Používáme klávesové zkratky Eclipse IDE 8 Eclipse Essential pro začátečníky 8 Klávesové zkratky Eclipse Essential pro začátečníky Vzhledem k tomu, že je Eclipse IDE (rozhraní) pro začátečníky přátelské, dlužíte se naučit tyto klávesové zkratky. pro kódování dnes, i když můžete použít libovolný IDE nebo textový editor Textové editory vs. IDE: Který z nich je pro programátory lepší? Textové editory vs. IDE: Který z nich je pro programátory lepší? Výběr mezi pokročilým IDE a jednodušším textovým editorem může být obtížný. Nabízíme několik poznatků, které vám pomohou učinit toto rozhodnutí. pro tento projekt.
Vytvořte nový soubor a pojmenujte ho test.js a uložte jej někde, ke kterému budete později mít snadný přístup z příkazového řádku. Skript začíná vytvořením proměnných pro požadované knihovny a inicializací Stiskněte klávesu knihovna pro poslech příchozích dat, spolu s voláním Prkno() způsob nastavení desky.
var pět = vyžadovat ("johnny-pět"); var keypress = vyžadovat ("keypress"); keypress (process.stdin); var board = new five.Board ();
Nezapomeňte, že nastavení desky je automatické, není nutné specifikovat porty. Pokud máte konkrétní nastavení portu nebo jen s automatickou detekcí nemáte štěstí, možná budete muset port explicitně specifikovat.
Dále chceme “vzbudit” naše deska a nastavit ji pro ovládání serv. board.on volání čeká, než budou Arduino kolíky připraveny, než se rozjedou. Knihovna johnny-pět má vestavěnou podporu pro serva a my voláme Servo.Continuous (10) na kolíku 10 pro přímé ovládání.
board.on ("ready", function () console.log ("Použijte šipky nahoru a dolů pro CW a CCW, respektive mezerník."); var servo = new five.Servo.Continuous (10); process. stdin.resume (); process.stdin.setEncoding ("utf8"); process.stdin.setRawMode (true);
process.stdin volání zajistí, že všechna data, která přijímáme z klávesnice, budou použitelná v dalším bloku kódu. Teď to chceme “poslouchat” pro stisknutí kláves a použijte je k pohybu našeho serva ve směru hodinových ručiček (CW), proti směru hodinových ručiček (CCW) nebo k zastavení v jeho stopách.
process.stdin.on ("keypress", function (ch, key) if (!!) // pokud není stisknuto žádné tlačítko, vraťte tj. nedělejte nic. return; if (key.name === "q" ) console.log ("Quiting"); process.exit (); else if (key.name === "up") console.log ("CW"); servo.cw (); jinde, pokud (key.name === "down") console.log ("CCW"); servo.ccw (); else if (key.name === "space") console.log ("Stopping") ; servo.stop ();); );
Nezapomeňte zde uvést všechny uzavírací závorky dole a v případě jakýchkoli chyb odkazovat na celý blok kódu jako výše uvedený. Uložte tento skript a otevřete příkazový řádek.
Mávám ahoj!
Nyní přejděte do adresáře, do kterého jste skript uložili, a spusťte jej zadáním:
uzel test.js
Program by se měl spustit okamžitě s informacemi o hrací desce, než vám dá pokyny uvedené v kódu. Zkuste stisknout klávesy se šipkami nahoru a dolů a mezerník a Q ukončit. Obrazovka by měla vypadat takto:
A když je vše v pořádku, servo by mělo tančit podle vašich úhozů! Podívejte se na tu malou vlnu bestie!
Skromné začátky
Přestože jsme přijali poněkud ambicióznější projekt než obvykle začátečník blikající LED tutoriál, téměř jsme se nedotkli plného rozsahu toho, co lze udělat s deskami Arduino a podobnými mikrokontroléry.
Zkušeným uživatelům JavaScriptu by měl balíček Johnny-Five najít intuitivní práci. Knihovnu lze nativně nainstalovat na Raspberry Pi, což z ní činí ideální balíček pro začínající výrobce robotů.
Skvělá věc na této knihovně je, že ačkoli je navržena s ohledem na roboty, stejná vstupní a výstupní data lze použít k vytvoření inteligentního domácího nastavení pro kutily DIY inteligentní domácí senzory s Arduino, MySensors a OpenHAB DIY inteligentní domácí senzory s Arduino, MySensors a OpenHAB Smart domácí senzory stojí směšné peníze. Zapojení celého domu je doménou těch, kteří mají hloupé částky disponibilního příjmu. Vytvořme si vlastní MySensors. a dokonce i domácí bezpečnostní systémy DIY Smart Lock s Arduino a RFID DIY Smart Lock s Arduino a RFID Zde je návod, jak vytvořit jednoduchý inteligentní zámek založený na RFID pomocí Arduino jako páteře a několika levných komponent. .
Komunikace s mikrokontroléry tímto způsobem je skvělým úvodem do světa hardware pro kutily, aniž byste museli věnovat čas učení se zcela novému programovacímu jazyku. Bavte se venku a pokud náhodou postavíte zabijáckého robota, nezapomeňte, jak jsme vám v prvních dnech pomáhali.