Агуулгын хүснэгт:

Товчлуурын Servo Lock: 5 алхам
Товчлуурын Servo Lock: 5 алхам

Видео: Товчлуурын Servo Lock: 5 алхам

Видео: Товчлуурын Servo Lock: 5 алхам
Видео: Как работает центральный замок. Неисправности, ремонт. 2024, Долдугаар сарын
Anonim
Товчлуурын Servo Lock
Товчлуурын Servo Lock
Товчлуурын Servo Lock
Товчлуурын Servo Lock
Товчлуурын Servo Lock
Товчлуурын Servo Lock

Сайн байцгаана уу, энэ өдрийг сайхан өнгөрүүлээрэй гэж найдаж байна. Хэрэв тийм биш бол та энэ гарын авлага, эмчилгээний дуу хөгжимд нээлттэй хандана уу. Програмчлал нь төвөг учруулж болзошгүй юм. Аз болоход, энэ заавар нь тийм ч төвөгтэй зүйл биш тул та (хүчирхэг дуугаар) алдартай зүйлийг хийж чадна: ULTIMATE SERVO KEYPAD LOCK !!! Энэ бол үнэхээр миний танилцуулга, танд таалагдсан гэж найдаж байна. Ямар ч байсан бичих гэж хуруугаа дулаацуулъя. (Хөөрхөн дуу: чадах дуу (сонгодог хөгжим)).

Хангамж:

-Таны хуруунууд

-Таны гар ч бас чухал

-Arduino -д зориулсан USB кабель

-Ямар ч төрлийн ардуино байдаг (надад Arduino Mega байгаа)

- Матрицын товчлуур (товчлуур - ebay, товчлуур - amazon)

-Микро эсвэл стандарт servo (би микро servo ашиглаж байна)

-* Нэмэлт* Breadboard - дурын төрөл

-* Нэмэлт* Цахилгаан хангамж (5V)

Алхам 1: Схемийн цаг

Схемийн цаг!
Схемийн цаг!
Схемийн цаг!
Схемийн цаг!

Тэгэхээр, эхлээд юу хийх вэ? Arduino -г компьютерт холбоно уу. Дараа нь товчлуурыг холбоно уу. *Анхаарна уу - та товчлуурын сүүлчийн зүүгээс зүүг arduino дээрх анхны дижитал зүү болгон холбох хэрэгтэй. Тэгээд үүний дараа баруунаас зүүн тийш яв. Товчлуур нь arduino дээр 2-9 зүүтэй байдаг. Серво нь тоон дохио болгон 10 -р зүүтэй байдаг. Arduino, keypad, servo болон 5V -ийн суурийг уя. * Бас анхаарна уу - servo -ийг гадаад тэжээлийн эх үүсвэр эсвэл 5V (хананд залгах) адаптертай хамгийн сайн ашигладаг боловч энэ нь заавал биш юм. зүгээр л Arduino -аас servo руу утас холбох. Энэхүү схем нь эхлэгчдэд тус болохгүй тул товч тайлбарлахыг зөвшөөрнө үү. Үндсэндээ сүүлийн зүү нь 2, эхнийх нь 9, хоёр нь 8, гурав нь 7 гэх мэт. Зүүнээс баруун тийш 2 2.

Алхам 2: Кодлох цаг

Кодлох цаг!
Кодлох цаг!
Кодлох цаг!
Кодлох цаг!

За, одоо бид кодлох хэсэгт орлоо! Энд жинхэнэ ид шид тохиолддог! Тиймээс эхлээд товчлуур ба servo -ийг турших тест програм байдаг. Энд:

//www.elegoo.com//2016.12.9

/* @CustomKeypad.pde файл

|| @хувилбар 1.0 || @зохиогч Александр Бревиг || @холбоо барих [email protected] || || @тайлбар || | Товчлуурын хэмжээ болон түлхүүр утгыг өөрчилж байгааг харуулж байна. || # */ # оруулах

const байт ROWS = 4; // дөрвөн эгнээ

const байт COLS = 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 ангийн жишээг эхлүүлэх

Keypad customKeypad = Товчлуур (makeKeymap (hexaKeys), rowPins, colPins, ROWS, COLS);

хүчингүй тохиргоо () {

Цуваа эхлэх (9600); } void loop () {char customKey = customKeypad.getKey (); if (customKey) {Serial.println (customKey); }}

//www.elegoo.com//2016.12.08 #оруулах

Servo myservo; // servo хянахын тулд servo объект үүсгэх

// ихэнх самбар дээр арван хоёр servo объект үүсгэж болно

int pos = 0; // servo байрлалыг хадгалах хувьсагч

хүчингүй тохиргоо () {

myservo.attach (9); // 9 -р зүү дээрх servo -ийг servo объект руу хавсаргана}

void loop () {

for (pos = 0; pos = 0; pos -= 1) {// 180 градусаас 0 градус хүртэл явдаг myservo.write (pos); // servo -д 'pos' гэсэн хоцрогдолтой байрлалд шилжихийг хэл (15); // servo байрлалд хүрэх хүртэл 15ms хүлээнэ}}

Төслийн код энд байна (би чин сэтгэлээсээ хэлье, би тийм ч их зүйл хийгээгүй, зүгээр л servo хэсгийг нэмсэн, бүх кодыг хийсэн хүмүүст баярлалаа гэж хэлээрэй!):

#Нууц үгээ оруулна уу.h

#товчлуур оруулах

/*

|| Матрицын товчлуур ашиглан нууц үг оруулах || 4/5/2012 Шинэчлэлтүүд Натан Собиек: [email protected] || *

/* нь нууц үгээ баталгаажуулах явдал юм

//# бол нууц үгийг шинэчлэх оролдлого юм

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

#оруулах

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

Нууц үгийн нууц үг = Нууц үг ("1234");

Servo myservo; // servo хянахын тулд servo объект үүсгэх

#servoPin 10 -ийг тодорхойлох

const байт ROWS = 4; // Дөрвөн эгнээ

const байт COLS = 4; // багана // Keymap char товчлууруудыг тодорхойлох [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', ' 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 -р зүү дээрх servo -ийг servo объект руу хавсаргана

Цуваа эхлэх (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 ();

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

Serial.println ("Буруу");

myservo.write (0);

// ажиллахгүй бол ажиллуулах кодыг нэмнэ үү

}

}

Алхам 3: Энэ бүхэн юу гэсэн үг вэ?

Энэ бүхэн юу гэсэн үг вэ?
Энэ бүхэн юу гэсэн үг вэ?

Дээрх код (эхнийх нь) нь Servo -д "шүүрдэх" эсвэл 0 -ээс 180 градус хүртэл явах дохио өгөх болно. Эсвэл зүгээр л зүүнээс баруун тийш эсвэл баруун тийш зүүн тийш эргүүлэх хагас тойргийг хийж дуусгах. Хэрэв та кодын талаар илүү дэлгэрэнгүй мэдээлэл авахыг хүсвэл би танд хэлж чадна. Зүгээр л асуугаарай. Ямар ч хор хөнөөл учруулаагүй, зүгээр л энгийн асуулт. Алив, чи чаднаа! Ямартай ч дунд хэсэгт байгаа код товчлуурын товчлуур бүрийг шалгадаг. Кодын сүүлчийн хэсэг нь "1234" нууц үгийг оруулахдаа servo -ийг "нээдэг" гэж та товчлуурыг таамаглаж байсан.

Алхам 4: Алдааг олж засварлах

Алдааг олж засварлах
Алдааг олж засварлах

А: Миний товчлуур ажиллахгүй байна.

Хариулт: Эхний зүү 9 гэдгийг санаарай. Мөн arduino -г компьютерийн USB порт руу холбож, Arduino програмчлахаа мартуузай.

Асуулт: Servo ажиллахгүй байна.

Хариулт: Серво зүү нь 10 -р зүү бөгөөд танд нийтлэг ойлголт хэрэгтэй гэдгийг санаарай, хэрэв та Arduino -оос шууд холбогдож байгаа бол улбар шар зүү (микро servo дээрх) 10 -р зүү, улаан зүү нь 5V, хүрэн зүү нь GND зүү юм.

Асуулт: Arduino ажиллахгүй байна:

Х: Та үүнийг холбосон уу? Энэ нь хувь хүний асуудал шиг сонсогдож байна

Алхам 5: Хэрэв танд асуулт байвал коммент хэсэгт чөлөөтэй асууж, бүртгүүлэхээ мартуузай

Баяртай, миний хичээлийг үзсэнд баярлалаа. Хөгжилтэй байсан.

Зөвлөмж болгож буй: