Tartalomjegyzék:
- 1. lépés: Csatlakoztassa a billentyűzetet
- 2. lépés: Adja hozzá a Micro Servot
- 3. lépés: Módosítsa a kódot a szervo billentyűzetének használatához
Videó: Szervo pozicionálás billentyűzettel: 3 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:43
Ebben az utasításban egy olyan projektet hozunk létre, amely egy Micro-Servo vezérlését fogja végezni, Arduino Uno billentyűzettel.
Felhasznált anyagok:
Arduino Uno
Kenyeretábla
4x4 -es billentyűzet
Mikroszervó
1. lépés: Csatlakoztassa a billentyűzetet
A legelső gondolat, amit meg kell tennie, az Arduino -ról be kell vezetni a tápkábelt és a földelő sínt a kenyérszekrényre.
- Csatlakoztassa az 5 V -os csatlakozót a tápegységhez (piros)
- Csatlakoztasson egy földelőcsapot (GND) a földelő sínhez (kék)
Most, hogy a kenyértáblának van áramellátása és földelve van, elkezdhetjük az alkatrészek bekötését.
A billentyűzet bekötése egyszerű, de figyelembe kell vennie a billentyűzet és az arduino csapjait. Hasznos lesz, ha figyelmünket a kódunkra fordítjuk.
Ne felejtse el balról kezdeni a vezetékek használatakor!
- Az első csap 13 -ra megy
- A második csap 12 -re megy
- A harmadik csap 11 -re megy
- A negyedik csap 10 -re megy
- Ötödik csap 9 -ig
- Hatodik tű 8 -ig
- Hetedik tű 7 -ig
- Nyolcadik tű 6 -ig
A billentyűzet bekötésekor ne felejtse el nyitva tartani a digitális pwm -tűt. Szükségünk lesz rá a mikroszervóhoz
Mielőtt rátérnénk a kódra, győződjön meg arról, hogy telepítette a Billentyűzet könyvtárat. Ez megtalálható a vázlatában, majd a vázlat fülön, beleértve a könyvtárat. Enélkül nem tudja használni a billentyűzetet.
Most forduljunk a kódhoz, és győződjünk meg arról, hogy a billentyűzet működik, és megadja a figyelt értékeket
Gyors megjegyzések: Győződjön meg róla, hogy rendelkezik az if utasítással a billentyűzet ellenőrzéséhez, különben nem fog működni. Vigyázzon a késésekre is, mert zavarni fogják a billentyűzetről regisztrált gombokat
#befoglalni
const bájtsorok = 4; // négy sor, mivel a billentyűzet megtelt
const bájt oszlopok = 4; // négy oszlop, ugyanaz, mint fent
char gombok [sorok] [oszlopok] = {
{'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', ' C '}, {'*',' 0 ','#',' D '}};
bájtos sorP [sorok] = {13, 12, 11, 10}; // a billentyűzet sorcsapjai
bájt oszlopokP [oszlopok] = {9, 8, 7, 6}; // a billentyűzet oszlopcsapjai
Kezelőpad = billentyűzet (makeKeymap (gombok), sorP, oszlopP, sorok, oszlopok); // billentyűzet létrehozása
void setup () {
Sorozat.kezdet (9600); }
void loop () {
char gomb Lenyomva = pad.getKey (); // szerezze be a karaktert a billentyűzetről, ha (buttonPressed) // mutassa meg, melyik gombot nyomta meg a billentyűzeten {Serial.println (buttonPressed); }}
2. lépés: Adja hozzá a Micro Servot
Most adjuk hozzá a szervomotort. Ezt nagyon könnyű hozzáadni a jelenlegi projektünkhöz, mivel a mikroszerveren csak három vezeték van.
- A barna huzal a kenyértáblán lévő földelő sínhez megy
- Piros a Power sínre megy
- Narancssárga az Arduino 3 -as csapjához megy. Ne feledje, hogy a mikroszervernek rendelkeznie kell PWM tűvel az Arduino -n. Ennek oka a TIMER2 -t használó szervó
Most csak győződjünk meg arról, hogy a mikroszervót megfelelően bekötöttük, és hogy mozog
#befoglalni #befoglalni a "Servo.h" -t
const bájtsorok = 4; // négy sor, mivel a billentyűzet megtelt
const bájt oszlopok = 4; // négy oszlop, ugyanaz, mint fent
char gombok [sorok] [oszlopok] = {
{'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', ' C '}, {'*',' 0 ','#',' D '}};
bájtos sorP [sorok] = {13, 12, 11, 10}; // a billentyűzet sorcsapjai
bájt oszlopokP [oszlopok] = {9, 8, 7, 6}; // a billentyűzet oszlopcsapjai
Kezelőpad = billentyűzet (makeKeymap (gombok), sorP, oszlopP, sorok, oszlopok); // billentyűzet létrehozása
SzervoáramServo; // szervo objektum létrehozása a szervó vezérlésére
// a legtöbb táblán tizenkét szervo objektum hozható létre
int pos = 0; // változó a szervo pozíció tárolására
void setup () {
Sorozat.kezdet (9600); currentServo.attach (3); // a 9 -es csap szervóját a szervo -objektumhoz rögzíti
}
void loop () {
char gomb Lenyomva = pad.getKey (); // szerezze be a karaktert a billentyűzetről, ha (buttonPressed) // mutassa meg, melyik gombot nyomta meg a billentyűzeten {Serial.println (buttonPressed); }
currentServo.write (95);
}
3. lépés: Módosítsa a kódot a szervo billentyűzetének használatához
Tudja, hogy módosítani fogjuk a kódunkat, hogy amikor megnyomunk egy adott gombot a billentyűzeten, a szervó egy adott pozícióba kerül. Először egy fontos dolog. A szervo helyzet 0 -ra furcsa volt. Mivel folyamatosan forgó szervóm volt, valahányszor 0 közelébe került, a szervó csak elkezdett forogni. A kód, amit beírtam, olyan alacsony volt, amennyire csak tudtam, anélkül, hogy ez megtörténne. Egyébként itt a végső kódom:
#befoglalni #befoglalni
const bájtsorok = 4; // négy sor, mivel a billentyűzet megtelt
const bájt oszlopok = 4; // négy oszlop, ugyanaz, mint fent
char gombok [sorok] [oszlopok] = {
{'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', ' C '}, {'*',' 0 ','#',' D '}};
bájtos sorP [sorok] = {13, 12, 11, 10}; // a billentyűzet sorcsapjai
bájt oszlopokP [oszlopok] = {9, 8, 7, 6}; // a billentyűzet oszlopcsapjai
Kezelőpad = billentyűzet (makeKeymap (gombok), sorP, oszlopP, sorok, oszlopok); // billentyűzet létrehozása
Szervo myServo; //
void setup () {
Sorozat.kezdet (9600); myServo.attach (5); // a szervót a 9 -es tűn rögzíti a szervo -objektumhoz}
void loop () {
char gomb = pad.getKey (); // lekérheti a karaktert a billentyűzetről, ha (kulcs == '0') {myServo.write (11); Serial.println ("0"); késleltetés (15); } if (kulcs == '1') {myServo.write (12); Serial.println ("1"); késleltetés (15); } if (kulcs == '2') {myServo.write (24); Serial.println ("2"); késleltetés (15); } if (kulcs == '3') {myServo.write (36); Serial.println ("3"); késleltetés (15); }
ha (kulcs == '4')
{myServo.write (48); Serial.println ("4"); késleltetés (15); }
ha (kulcs == '5')
{myServo.write (60); Serial.println ("5"); késleltetés (15); }
ha (kulcs == '6')
{myServo.write (72); Serial.println ("6"); késleltetés (15); }
ha (kulcs == '7')
{myServo.write (84); Serial.println ("7"); késleltetés (15); }
ha (kulcs == '8')
{myServo.write (96); Serial.println ("8"); késleltetés (15); }
ha (kulcs == '9')
{myServo.write (108); Serial.println ("9"); késleltetés (15); }
ha (kulcs == '*')
{myServo.write (120); Serial.println ("*"); késleltetés (15); }
ha (kulcs == '#')
{myServo.write (132); Serial.println ("#"); késleltetés (15); }
ha (kulcs == 'A')
{myServo.write (146); Serial.println ("A"); késleltetés (15); }
ha (kulcs == 'B')
{myServo.write (158); Serial.println ("B"); késleltetés (15); }
ha (kulcs == 'C')
{myServo.write (170); Soros.println ("C"); késleltetés (15); }
ha (kulcs == 'D')
{myServo.write (180); Serial.println ("D"); késleltetés (15); }}
Ajánlott:
Arduino számológép 4X4 billentyűzettel: 4 lépés (képekkel)
Arduino számológép 4X4 billentyűzet használatával: Ebben az oktatóanyagban saját számológépünket építjük fel Arduino segítségével. Az értékeket billentyűzeten (4 × 4 billentyűzet) keresztül lehet elküldeni, és az eredményt LCD -képernyőn tekintheti meg. Ez a számológép olyan egyszerű műveleteket hajthat végre, mint az összeadás, a kivonás, a szorzás
Irányítsa modellvonat -elrendezését a BILLENTYŰZETTEL !: 12 lépés
Irányítsd a vonatmodell elrendezését a BILLENTYŰZETTEL! A frissített verziót itt is megtekintheti. Ebben az utasításban megmutatom, hogyan vezérelheti a vonatmodell elrendezését billentyűzettel
Billentyűzettel vezérelt vasúti modell elrendezés V2.5 - PS/2 interfész: 12 lépés
Billentyűzettel vezérelt vasúti modell elrendezés V2.5 | PS/2 interfész: Az Arduino mikrokontrollerek használatával sokféle módon lehet szabályozni a vasúti modell elrendezését. A billentyűzetnek nagy előnye, hogy sok billentyűvel rendelkezik, és sok funkciót ad hozzá. Lássuk, hogyan kezdhetünk egy egyszerű elrendezéssel a mozdonnyal
Modern és új és egyszerűbb példa a szekrényre az Arduino Matrix billentyűzettel 4x4: 3 lépés
Modern és új és egyszerűbb példa az Arduino Matrix 4x4 billentyűzettel rendelkező szekrényre: Egy másik példa a 4x4 -es LCD billentyűzet mátrix I2C áramkörrel történő használatára
DoReMiQuencer - Programozható MIDI szekvenszer billentyűzettel: 7 lépés
DoReMiQuencer - Programozható MIDI szekvenszer billentyűzettel: Ezt az eszközt a VCVRack, a VCV által létrehozott virtuális moduláris szintetizátorral való használatra hozták létre, de általános célú MIDI vezérlőként is szolgálhat. MIDI szekvenszerként vagy billentyűzetként szolgál a kiválasztott módtól függően. A MIDI jegyzetek hozzárendelve a billentyűzethez