Мазмұны:

Перво тақтасы Servo Lock: 5 қадам
Перво тақтасы Servo Lock: 5 қадам

Бейне: Перво тақтасы Servo Lock: 5 қадам

Бейне: Перво тақтасы Servo Lock: 5 қадам
Бейне: 🧨 Мұнда Volvo XC90-ның барлық әлсіз жақтары мен мәселелері жинақталған. Субтитрлер! 2024, Шілде
Anonim
Серво құлпы пернетақтасы
Серво құлпы пернетақтасы
Серво құлпы пернетақтасы
Серво құлпы пернетақтасы
Серво құлпы пернетақтасы
Серво құлпы пернетақтасы

Бәріне сәлем, күндеріңіз сәтті өтті деп сенемін. Егер жоқ болса, сіз бұл оқулыққа және емдік музыкаға ашық көзқараспен қарай аласыз. Бағдарламалау қиын болуы мүмкін. Бақытымызға орай, бұл оқу құралы қиын емес, сондықтан сіз әйгілі нәрсені жасай аласыз (күшті дауыспен): ULTIMATE SERVO KEYPAD LOCK !!! Бұл менің кіріспем ғана, сізге ұнады деп үміттенемін. Қалай болғанда да, теру үшін саусақтарымызды жылытып алайық. (Керемет ән: мүмкін болатын ән (классикалық музыка)).

Жабдықтар:

-саусақтарыңыз

-Сіздің қолыңыз да маңызды

-Arduino үшін USB кабелі

-Ардуиноның кез келген түрі бар (менде Arduino Mega бар)

Матрицалық пернетақта (пернетақта - ebay, пернетақта - амазонка)

-Микро немесе стандартты серво (мен микросерваны қолданамын)

-* Қосымша* Нан тақтасы - кез келген түрі

-* Қосымша* Қуат көзі (5В)

1 -қадам: схемалық уақыт

Схемалық уақыт!
Схемалық уақыт!
Схемалық уақыт!
Схемалық уақыт!

Сонымен, алдымен не істеу керек? Arduino -ны компьютерге қосыңыз. Келесіде пернетақтаны қосыңыз. *Ескерту - түйреуіштерді пернетақтаның соңғы түйреуішінен ардуинодағы бірінші цифрлық түйреуіш ретінде қосу керек. Содан кейін оңнан солға қарай жүріңіз*. Пернетақтада arduino-да 2-9 түйреуіштері бар. Сервода цифрлық сигналдар ретінде түйреуіш 10 бар. Ардуино, пернетақта, серво мен 5V негіздерін байлаңыз. * Сондай -ақ назар аударыңыз - серво сыртқы қуат көзімен немесе 5В (қабырғаға қосылатын) адаптермен жақсы қолданылады, бірақ ол әлі де міндетті емес. Ардуинодан сервоға сым қосу үшін. Бұл схема жаңадан бастаушыларға көмектеспейді, сондықтан қысқаша түсіндіруге рұқсат етіңіз. Негізінде, соңғы түйреуіш - 2 және біріншісі - 9, екеуі - 8, үшеуі - 7 және т.б. Солдан оңға қарай 2 2.

2 -қадам: кодтау уақыты

Кодтау уақыты!
Кодтау уақыты!
Кодтау уақыты!
Кодтау уақыты!

Жарайды, енді біз кодтау бөліміне келеміз! Міне нағыз сиқыр осында болады! Сонымен, алдымен пернетақта мен сервоприводты тексеруге арналған тест бағдарламасы бар. Мұнда:

//www.elegoo.com//2016.12.9

/* @File CustomKeypad.pde

|| @version 1.0 || @авторы Александр Бревиг || @contact [email protected] || || @сипаттамасы || | Пернетақта өлшемі мен кілт мәндерінің өзгеруін көрсетеді. || # */ # қосу

const байт ROWS = 4; // төрт қатар

COLS const байт = 4; // төрт баған // пернетақтадағы символдарды анықтайды char hexaKeys [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5 ',' 6 ',' B '}, {' 7 ',' 8 ',' 9 ',' C '}, {'*',' 0 ','#',' D '}}; байт rowPins [ROWS] = {9, 8, 7, 6}; // colPins байт пернетақтасының жол түйіндеріне қосылу [COLS] = {5, 4, 3, 2}; // пернетақтаның бағаналық түйреуіштеріне қосылыңыз

// NewKeypad класының данасын инициализациялау

CustomKeypad пернетақтасы = Пернетақта (makeKeymap (hexaKeys), rowPins, colPins, ROWS, COLS);

жарамсыз орнату () {

Serial.begin (9600); } void loop () {char customKey = customKeypad.getKey (); if (customKey) {Serial.println (customKey); }}

//www.elegoo.com//2016.12.08 #қосу

Сервистік қызмет; // серводы басқару үшін серво объектісін жасау

// көптеген тақталарда он екі серво объектісін жасауға болады

int pos = 0; // servo орнын сақтауға арналған айнымалы

жарамсыз орнату () {

myservo.attach (9); // сервоприводқа түйреуішті түйреуіш 9 -да бекітеді}

void loop () {

for (pos = 0; pos = 0; pos -= 1) {// 180 градустан 0 градусқа дейін ауысады myservo.write (pos); // servo -ға «pos» кідірісіндегі позицияға өтуін айт (15); // серво позицияға жеткенше 15 м күтеді}}

Міне, жоба коды (мен сізге шынымды айтамын, мен көп нәрсе істемедім, тек қана серво бөлігін қостым, барлық кодты жасаған адамдарға рахмет!):

#Құпия сөзді қосыңыз.h

#пернетақтаны қосыңыз

/*

|| Матрицалық пернетақта көмегімен құпия сөзді қарапайым енгізу || 5.04.2012 Жаңартулар Натан Собиек: [email protected] || *

/* - құпия сөзді растау

//# - құпия сөзді қалпына келтіру әрекеті

/////////////////////////////////////////////////////////////////

#қосу

//https://www.arduino.cc/playground/uploads/Code/Password.zip #include //https://www.arduino.cc/playground/uploads/Code/Keypad.zip

Құпия сөз = Құпия сөз («1234»);

Сервистік қызмет; // серводы басқару үшін серво объектісін жасау

#servoPin 10 анықтаңыз

const байт ROWS = 4; // Төрт қатар

COLS const байт = 4; // бағандар // [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', 'пернелер картасының char пернелерін анықтаңыз. B '}, {' 7 ',' 8 ',' 9 ',' C '}, {'*',' 0 ','#',' D '}};

байт rowPins [ROWS] = {9, 8, 7, 6}; // ROW0, ROW1, ROW2 және ROW3 пернетақтасын осы Arduino түйреуіштеріне қосыңыз.

байт colPins [COLS] = {5, 4, 3, 2,}; // COL0, COL1 және COL2 пернетақтасын осы Arduino түйреуіштеріне қосыңыз.

// Пернетақтаны құру

Пернетақта пернетақтасы = Пернетақта (makeKeymap (пернелер), rowPins, colPins, ROWS, COLS);

жарамсыз орнату () {

myservo.attach (servoPin); // сервоприводқа түйреуішті 9 түйреуішке бекітеді

Serial.begin (9600);

keypad.addEventListener (keypadEvent); // осы пернетақтаға оқиға тыңдаушысын қосыңыз

myservo.write (0);

}

void loop () {

keypad.getKey ();

}

// кейбір ерекше оқиғаларға қамқорлық жасаңыз

void keypadEvent (KeypadEvent eKey) {switch (keypad.getState ()) {case PRESSED: switch (eKey) {case '*': checkPassword (); үзіліс; әдепкі: password.append (eKey); }}}

жарамсыз checkPassword () {

if (password.evaluate () == true) {Serial.println («Табыс»); // Егер ол жұмыс істесе кодты іске қосыңыз

myservo.write (180);

кешіктіру (3000);

myservo.write (0);

password.reset ();

} else if (password.evaluate () == false) {

Serial.println («Қате»);

myservo.write (0);

// егер ол жұмыс істемесе, іске қосу үшін кодты қосыңыз

}

}

3 -қадам: Мұның бәрі нені білдіреді?

Мұның бәрі нені білдіреді?
Мұның бәрі нені білдіреді?

Жоғарыдағы код (біріншісі) Сервоға «сыпыру» немесе 0 -ден 180 градусқа дейін өту сигналын береді. Немесе сол жақтан оңға немесе оңнан солға айналудың жарты шеңберін аяқтаңыз. Егер сіз код туралы толығырақ ақпарат алғыңыз келсе, мен сізге айта аламын. Тек сұраңыз. Ешқандай зиян жоқ, қарапайым сұрақ. Келіңіз, сіз жасай аласыз! Қалай болғанда да, ортадағы код пернетақтаның әр түймесін тексереді. Ал кодтың соңғысы «1234» кілтін енгізгенде, сервопрокатпен «ашылады», сіз түсіндіңіз, пернетақта.

4 -қадам: ақауларды жою

Ақаулық себебін іздеу және түзету
Ақаулық себебін іздеу және түзету

Сұрақ: Менің пернетақта жұмыс істемейді.

Ж: Есіңізде болсын, бірінші түйреуіш 9 болады, сондықтан сол жерден төмен түсіңіз. Сондай -ақ, arduino -ны компьютердің USB портына қосып, Arduino -ны бағдарламалаңыз.

С: Серво жұмыс істемейді.

Ж: Серво түйреуіші 10 -түйреуіш екенін және сізге ортақ жер қажет екенін ұмытпаңыз, егер сіз Arduino -дан тікелей қосылсаңыз, қызғылт сары түйреуіш (микросервода) түйреуіш 10, қызыл түйреуіш 5В, ал қоңыр түйреуіш - GND түйреуіші.

Q: Arduino жұмыс істемейді:

Ж: Сіз оны қостыңыз ба? Бұл жеке мәселе сияқты

5 -қадам: Егер сізде сұрақтар туындаса, түсініктеме бөлімінде сұраудан тартынбаңыз және жазылуды ұмытпаңыз

Қош бол, менің оқулығымды көргеніңізге рахмет. Көңілді болды.

Ұсынылған: