Оглавление:

Сервоблокировка клавиатуры: 5 шагов
Сервоблокировка клавиатуры: 5 шагов

Видео: Сервоблокировка клавиатуры: 5 шагов

Видео: Сервоблокировка клавиатуры: 5 шагов
Видео: #ESP Block - Клавиатура на дисплее DWIN + LED + SERVO + STEPPER + PASS 2024, Июль
Anonim
Блокировка сервопривода клавиатуры
Блокировка сервопривода клавиатуры
Блокировка сервопривода клавиатуры
Блокировка сервопривода клавиатуры
Блокировка сервопривода клавиатуры
Блокировка сервопривода клавиатуры

Всем привет, надеюсь, у вас был хороший день. Если нет, надеюсь, вы можете просто перемотать назад с некоторой открытостью к этому уроку и немного терапевтической музыки. Программирование может быть проблемой. К счастью, это руководство не доставляет хлопот, поэтому вы, возможно, сможете выполнить популярную вещь под названием (громким голосом): ПОЛНАЯ БЛОКИРОВКА СЕРВОКЛАВИАТУРЫ !!! Это действительно только мое введение, надеюсь, вам понравилось. В любом случае, давайте разогреем пальцы для набора текста. (Классная песня: песня канкан (классическая музыка)).

Запасы:

-Ваши пальцы

-Ваши руки тоже, это важно

-USB кабель для Arduino

- Доступен любой тип Arduino (у меня Arduino Mega)

-Matrix Keypad (клавиатура - ebay, клавиатура - amazon)

-Микро или стандартный сервопривод (я использую микро сервопривод)

- * Дополнительно * Макетная плата - любого типа

- * Дополнительно * Источник питания (5 В)

Шаг 1: Схема времени

Схема времени!
Схема времени!
Схема времени!
Схема времени!

Итак, что делать в первую очередь? Подключите Arduino к компьютеру. Затем подключите клавиатуру. * Примечание - вам необходимо подключить контакты последнего контакта на клавиатуре в качестве первого цифрового контакта на Arduino. И после этого идите справа налево *. Клавиатура имеет контакты 2-9 на Arduino. Сервопривод имеет вывод 10 для цифровых сигналов. Свяжите основания Arduino, клавиатуры, сервопривода и 5V тоже. * Также обратите внимание - сервопривод лучше всего использовать с внешним источником питания или адаптером на 5 В (настенная розетка), но это все еще необязательно. * Вам не нужно связывать заземление и 5 В физически, я имею в виду чтобы просто прикрепить провод от Arduino к сервоприводу. Эта схема не поможет новичкам, поэтому позвольте мне объяснить вкратце. Обычно последний вывод - 2, первый - 9, два - 8, три - 7 и так далее. Идите слева направо 2 2.

Шаг 2: Время кодирования

Время кодирования!
Время кодирования!
Время кодирования!
Время кодирования!

Итак, теперь мы переходим к кодированию! Вот где происходит настоящее волшебство! Итак, есть тестовая программа для первого тестирования клавиатуры и сервопривода. Здесь:

//www.elegoo.com//2016.12.9

/ * @ файл CustomKeypad.pde

|| @version 1.0 || @author Александр Бревиг || @contact [email protected] || || @description || | Демонстрирует изменение размера клавиатуры и ключевых значений. || # */ #включают

const byte ROWS = 4; // четыре строки

константный байт COLS = 4; // четыре столбца // определяют символы на кнопках клавиатуры char hexaKeys [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5 ',' 6 ',' B '}, {' 7 ',' 8 ',' 9 ',' C '}, {' * ',' 0 ',' # ',' D '}}; byte rowPins [ROWS] = {9, 8, 7, 6}; // подключаемся к выводам строки байта клавиатуры colPins [COLS] = {5, 4, 3, 2}; // подключаемся к распиновке колонки клавиатуры

// инициализируем экземпляр класса NewKeypad

CustomKeypad = клавиатура (makeKeymap (hexaKeys), rowPins, colPins, ROWS, COLS);

void setup () {

Serial.begin (9600); } void loop () {char customKey = customKeypad.getKey (); если (customKey) {Serial.println (customKey); }}

//www.elegoo.com//2016.12.08 #include

Сервомашинный резервуар; // создаем сервообъект для управления сервоприводом

// на большинстве плат можно создать двенадцать сервообъектов

int pos = 0; // переменная для хранения положения сервопривода

void setup () {

myservo.attach (9); // присоединяет сервопривод на выводе 9 к сервообъекту}

void loop () {

for (pos = 0; pos = 0; pos - = 1) {// изменяется от 180 градусов до 0 градусов myservo.write (pos); // указываем сервоприводу перейти в позицию в переменной 'pos' delay (15); // ждем 15 мс, пока сервопривод достигнет позиции}}

Вот код проекта (буду честен с вами, я мало что сделал, я просто добавил серво-часть, спасибо людям, которые сделали весь код!):

#include Password.h

#include Keypad

/*

|| Простой ввод пароля с помощью матричной клавиатуры || 5 апреля 2012 г. Обновления Натан Собик: [email protected] || *

/ * это проверка пароля

// # это попытка сброса пароля

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

#включают

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

Пароль password = Пароль («1234»);

Сервомашина; // создаем сервообъект для управления сервоприводом

#define servoPin 10

const byte ROWS = 4; // Четыре строки

константный байт COLS = 4; // столбцы // Определите символьные ключи Keymap [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', ' B '}, {' 7 ',' 8 ',' 9 ',' C '}, {' * ',' 0 ',' # ',' D '}};

byte rowPins [ROWS] = {9, 8, 7, 6}; // Подключите клавиатуру ROW0, ROW1, ROW2 и ROW3 к этим контактам Arduino.

byte colPins [COLS] = {5, 4, 3, 2,}; // Подключите клавиатуру COL0, COL1 и COL2 к этим контактам Arduino.

// Создаем клавиатуру

Keypad keypad = Keypad (makeKeymap (keys), rowPins, colPins, ROWS, COLS);

void setup () {

myservo.attach (сервопин); // присоединяет сервопривод на выводе 9 к сервообъекту

Serial.begin (9600);

keypad.addEventListener (keypadEvent); // добавляем прослушиватель событий для этой клавиатуры

myservo.write (0);

}

void loop () {

keypad.getKey ();

}

// позаботимся о некоторых особых событиях

void keypadEvent (KeypadEvent eKey) {переключатель (keypad.getState ()) {НАЖАТИЙ регистр: переключатель (eKey) {case '*': checkPassword (); перерыв; по умолчанию: password.append (eKey); }}}

void checkPassword () {

if (password.evaluate () == true) {Serial.println ("Успех"); // Добавляем код для запуска, если он работает

myservo.write (180);

задержка (3000);

myservo.write (0);

восстановление пароля();

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

Serial.println («Неправильно»);

myservo.write (0);

// добавляем код для запуска, если он не сработал

}

}

Шаг 3. Что все это значит?

Что все это значит?
Что все это значит?

Приведенный выше код (первый) подаст сигнал серво «развернуть» или просто перейти от 0 до 180 градусов. Или просто выполните полукруга вращения слева направо или справа налево. Если вам нужны более подробные сведения о коде, я могу вам сказать. Просто спросите. Никакого вреда, просто небольшой вопрос. Давай, ты справишься! Во всяком случае, код посередине проверяет каждую кнопку клавиатуры. И последний код просто «разблокируется» сервоприводом, когда вы вводите пароль «1234», как вы догадались, на клавиатуре.

Шаг 4. Устранение неполадок

Исправление проблем
Исправление проблем

В: Моя клавиатура не работает.

A: Помните, что первая булавка - 9, так что спускайтесь оттуда. Также не забудьте подключить Arduino к USB-порту компьютера и запрограммировать Arduino.

В: Сервопривод не работает.

A: Помните, что серво вывод - это 10 и что вам нужно общее заземление, если вы подключаетесь прямо от Arduino, помните, что оранжевый вывод (на микросерво) - это вывод 10, красный вывод - 5 В, а коричневый контакт - это контакт GND.

В: Arduino не работает:

A: Вы его вообще подключили? Это похоже на личную проблему

Шаг 5: Если у вас есть какие-либо вопросы, не стесняйтесь задавать их в разделе комментариев и не забудьте подписаться

Пока, спасибо за просмотр моего учебника. Это было весело.

Рекомендуемые: