Obsah:
- Krok 1: Veci, ktoré môžete potrebovať …
- Krok 2: Pripojte hardvér
- Krok 3: Naprogramujte Arduino
- Krok 4: Nainštalujte softvér
- Krok 5: Použite program rozhrania
- Krok 6: Buďte kreatívni
Video: Sériový ovládač na báze Arduino: 6 krokov
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 12:02
Jedná sa o jednoduchý sériový radič pre viac servo založených na Arduine. (aj môj prvý pokyn:))
Väčšina práce v tomto smere pochádzala z toho, že sa softvér porozprával s arduino a vytvoril protokol na prenos údajov. Čo sa týka hardvérového aspektu, všetko, čo som použil, boli dve servá (tu štandardné servo Parallax.) Sparkfun Arduino ProtoShield a Arduino Duemilanove s ATMEGA328, ale väčšinu týchto častí je možné nahradiť podobnými položkami. Tento projekt som vymyslel ako súčasť RC systému, ale nastavenie komunikácie trvalo veľa času. Ak má niekto nejaké vylepšenia, nápady alebo chyby, neváhajte sa vyjadriť. EDIT: Napísal som to pred chvíľou, práve som sa k publikovaniu dostal nedávno.
Krok 1: Veci, ktoré môžete potrebovať …
Niektoré veci, ktoré budete potrebovať na stavbu tohto. 1. Doska Arduino (vyberiete) 2. dve (alebo jedno) servo 3. prepojovacie vodiče 4. Visual Studio 2008 Express - prepojenie (voliteľné) 5. Arduino IDE - prepojenie Ospravedlňujeme sa fanúšikom Linuxu a Apple, môj program beží iba na Windows, ale stále môžete ručne odosielať sériové príkazy na arduino bez zmeny kódu.
Krok 2: Pripojte hardvér
V tomto kroku nie je nič zložité. Stačí pripojiť jedno servo k pinu 9 a druhé ku kolíku 10.
Krok 3: Naprogramujte Arduino
teraz môžete náčrt nahrať do arduina.
Tu je jednoduché rozdelenie kódu: #include Servo myservo; // vytvorenie objektu servo na ovládanie serva Servo myservo1; int incomingByte = 0, datacount = 0, counter = 0, ready = 0; // pre prichádzajúce sériové údaje char data [10]; const char verify [8] = "ma11hew"; príkaz char [3]; void setup () {myservo.attach (9); myservo1.attach (10); Serial.begin (38400); // otvára sériový port, nastavuje rýchlosť prenosu dát Serial.println („Ahoj Arduino tu!“); // pridané na identifikáciu sériového portu Týmto sa nastaví sériový port a serva. int i; pre (i = 0; i <180; i ++) {myservo.write (i); oneskorenie (15); } myservo.write (5); pre (i = 0; i <180; i ++) {myservo1.write (i); oneskorenie (15); } myservo1.write (5); } Jednoduchý pohyb zametania na overenie správneho fungovania serva. void loop () {pripravený = 0; počítadlo = 0; while (1 == 1) {if (Serial.read ()! = verify [counter]) {break; } if (counter == 6) {delay (20); príkaz [0] = Serial.read (); príkaz [1] = Serial.read (); // if (Serial.read () == ((príkaz [1] * 12) % 8)) // {ready = 1; //} Serial.println ("uložený príkaz"); } počítadlo ++; oneskorenie (2); } toto skontroluje, či je v sériovej vyrovnávacej pamäti správny autorizačný reťazec, a potom chytí dva bajty pre príkaz. komentovaný príkaz if umožňuje predbežný kontrolný súčet, ale sťažil by manuálne rozhranie. ready je možné nastaviť na 0, takže príkazy nebudú analyzované, ako napríklad v prípade poškodených údajov. // prehľadávanie príkazov if (ready == 1) {if (príkaz [0] == 'T') {príkaz [0] = 0; Serial.print ("ovládanie plynu na kolíku 9:"); Serial.println (mapa (príkaz [1], 32, 126, 2, 180), DEC); myservo.write (mapa (príkaz [1], 32, 126, 2, 180)); } if (príkaz [0] == 'S') {príkaz [0] = 0; Serial.print ("ovládanie plynu na kolíku 10 až:"); Serial.println (mapa (príkaz [1], 32, 126, 2, 180), DEC); myservo1.write (mapa (príkaz [1], 32, 126, 2, 180)); }}} zvyšok kódu je vyhľadať v príkaze platné príkazy (T alebo S.), ak sa zhodujú, vezme ďalší bajt a pošle ho na servo. viac na mape (príkaz [1], 32, 126, 2, 180) neskôr … kód tu je možné rozšíriť o čokoľvek, čo budete potrebovať (napr. svetlá, motory, IR atď.), tento kód by mal fungovať dobre bez úpravy.
Krok 4: Nainštalujte softvér
Mám dva spôsoby, ako nainštalovať tento … nsis inštalátor: Stiahnite si samorozbaľovací inštalátor nižšie a spustite ho. Počas inštalácie budete mať možnosť nainštalovať zdroje. inštalačný binárny balík nainštaluje základné c ++ dll, takže ho možno spustiť na počítači bez nainštalovaného vizuálneho c ++. Akonáhle sa inštalátor dokončí, môžete ho spustiť z pracovnej plochy alebo z ponuky Štart. spôsob zip (neoverený): Stiahnite a spustite, malo by to fungovať. možno. (Archív zip má rovnakú štruktúru priečinkov vytvorenú inštalátorom, bez zdrojov. Nemám počítač bez vizuálneho štúdia, na ktorom by som ho mohol otestovať, takže nemusí fungovať.)
Krok 5: Použite program rozhrania
Ak chcete program použiť, najskôr vyberte prenosovú rýchlosť definovanú v náčrte arduina. Nemodifikovaná skica má predvolenú hodnotu 38 400 baudov, ale môže byť zmenená tak, aby vyhovovala vašim potrebám napríklad v prípade pomalšieho rádiového spojenia. poznámka: prenosové rýchlosti vyššie ako 38400 neboli veľmi stabilné, myslím si, že je to kvôli tomu, že sa uart zapĺňa skôr, ako je možné údaje spracovať. Ďalej vyberte port COM, ktorý chcete použiť. program má predvolenú hodnotu COM4, určite ho zmeňte, inak sa program pokazí. Nakoniec kliknite na položku otvoriť. Ak všetko prebehlo dobre, program otvorí zvolený sériový port pri zvolenej prenosovej rýchlosti. Ak nie, program pravdepodobne zlyhá s neošetrenou výnimkou. skontrolujte, či je port správny, a skúste to znova. Pomocou textových polí odošlite arduino priame príkazy. „Mapa (príkaz [1], 32, 126, 2, 180)“mierkuje všetkých 94 možných príkazov, * priestor * až ~, čitateľné arduinom v ASCII na 2 až 180 pre servo. ľubovoľný bajt menší ako ASCII 32 (medzera) alebo viac ako 126 (~), predvolene 63 (?) Riadiace lišty poskytujú príjemnejšie rozhranie pre priame príkazy. každý krok posiela sériový príkaz arduino postupne.
Krok 6: Buďte kreatívni
Vymyslite skvelé veci, ktoré sa dajú pomocou tohto vyrobiť. Niekoľko nápadov: 1. Diaľkový plyn pre auto. 2. Držiak 3D kamery 3. podvodný rover Bavte sa !!
Odporúča:
Diaľkový ovládač na báze LoRa - Ovládajte spotrebiče z veľkých vzdialeností: 8 krokov
Diaľkový ovládač na báze LoRa | Ovládajte zariadenia na veľké vzdialenosti: Hej, čo sa deje, chlapci! Akarsh tu od CETech. V tomto projekte vytvoríme diaľkové ovládanie, ktoré bude možné použiť na ovládanie rôznych nástrojov, ako sú LED diódy, motory, alebo ak hovoríme o svojom každodennom živote, môžeme ovládať domáceho spotrebiteľa.
[Wearable Mouse] Ovládač nositeľnej myši na báze Bluetooth pre Windows 10 a Linux: 5 krokov
[Wearable Mouse] Ovládač nositeľnej myši s podporou Bluetooth pre Windows 10 a Linux: Vytvoril som ovládač myši na báze Bluetooth, ktorý je možné použiť na ovládanie ukazovateľa myši a vykonávanie operácií súvisiacich s počítačom s myšou za behu, bez toho, aby ste sa museli dotýkať akéhokoľvek povrchu. Elektronické obvody zabudované v rukavici je možné použiť na sledovanie
Prerobenie USB portu dosiek na báze SAMD21 na hardvérový sériový port !: 3 kroky
Vytvorenie USB portu dosiek na báze SAMD21 v hardvérovom sériovom porte!: V dnešnej dobe je štandardné používať ako emulovaný sériový port USB port na doske Arduino (alebo akúkoľvek inú kompatibilnú). To je veľmi užitočné pre ladenie, odosielanie a prijímanie údajov z našich obľúbených dosiek. Pracoval som na uChipwhen, prechádzal som údajom
DIY herný ovládač založený na Arduine - Herný ovládač Arduino PS2 - Hra Tekken s gamepadom DIY Arduino: 7 krokov
DIY herný ovládač založený na Arduine | Herný ovládač Arduino PS2 | Hranie Tekkenu s gamepadom pre domácich majstrov Arduino: Dobrý deň, chlapci, hranie hier je vždy zábavné, ale hranie s vlastným ovládačom pre vlastnú potrebu je zábavnejšie. Preto v tomto návode vytvoríme herný ovládač pomocou arduino pro micro
Štartovací ovládač DOL na báze IOT pre zavlažovaciu pumpu: 6 krokov
IOT Based DOL Starter Controller for Irrigation Pumpset: Dobrý deň, priatelia. Tento návod sa týka diaľkového monitorovania a ovládania súpravy zavlažovacieho čerpadla cez internet. Príbeh: Na svojej farme mám napájanie z miestnej siete iba asi 6 hodín denne. Načasovanie nie je pravidelné, dostupnosť po