Съдържание:
- Стъпка 1: Събиране на компоненти
- Стъпка 2: ИЗПИТВАНЕ НА ПРОТЕЙ
- Стъпка 3: Изработка на печатни платки
- Стъпка 4: Запояване на компоненти
- Стъпка 5: Програмиране на RTC IC PCF8583
- Стъпка 6: Програмиране на PIC18F4550
- Стъпка 7: Последна стъпка и ОКОНЧАТЕЛЕН ТЕСТ …
Видео: Електронна система за сигурност с RTC и дефиниран от потребителя пин код: 7 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:50
Здравейте, момчета!
Това е проект, който направих с помощта на микроконтролер pic, неговата електронна система за защита на PIN кода с часовник в реално време и потребителски функции за дефиниране на пин код, тази страница съдържа всички подробности, за да си направите сами.
НЕГОВАТА РАБОТА И КОНЦЕПЦИЯ:
Е, като включите системата за сигурност, тя ще поиска PINKODE за отваряне на портата (140595), ако я въведете правилно, вратата ще се отвори. Вратата се отваря само за 1 минута, след което се затваря отново. Ако въведете неправилен пин код, Системата за сигурност ще ви даде още 3 шанса, ако всички шансове бъдат пропилени, тя включва зумера и иска алтернативен код, за да спре зумера, ако този алтернативен код (т.е. 1984 г.) е въведен правилно:
1) Спира зумера
2) Нулира първоначалния код, който беше 140595
3) Иска нов код да замени оригиналния код, който беше 140595 (не повече от 6 цифри)
сега портата ще бъде отворена с този нов код.
Да предположим, че е вмъкнат грешен алтернативен код, след което системата иска да изчака отброяването от 1 минута, през което всички бутони са деактивирани и зумерът продължава да звъни.
ВИДЕО:
www.youtube.com/watch?v=O0lYVIN-CJY&t=5s
Добре, нека да направим едно …
Преди да започнем, предполагам, че вече имате основни познания по език C и преди сте работили по MikroC pro и че знаете как да светите светодиод, как да взаимодействате с LCD с PIC микроконтролер. Добре, нека започнем!
Стъпка 1: Събиране на компоненти
ЗА ПРОЕКТ: S. No. | КОЛИЧЕСТВО | КОМПОНЕНТ | ИНФОРМАЦИЯ
1) 1 16x2 LCD ПИН 14 към ПИН 1, след това ПИН 15 и 16 ПИН пакет.
2) 1 PIC18F4550 Микроконтролер
3) 1 PCF8583 Часовник в реално време (RTC) IC
4) 14 бутона за нулиране Вместо клавиатура използвах бутони за нулиране
5) 1 9v батерия Основно захранване.
6) 1 10K Ohm Pot За настройка на контраста на LCD
7) 2 3,5 мм аудио жака за външно свързване на зумера и портата
8) 1 100uF кондензатор Церемична капачка за използване с щифт 1 на контролера.
9) 1 32,682kHz кристал за PCF8583 IC
10) 1 DC DC жак Ако използвате проект с DC адаптер
11) 1 IC7805 За преобразуване на 9V в 5V
12) 1 1K Ohm резистор за използване с pin1 на контролера.
13) 3 10K Ohm резистор за използване с pin1 на контролера и RTC IC
14) 13 220 ома резистор всеки бутон ще използва 1 220 ома ще обясня по -късно
15) 1 3V клетка за използване с RTC IC
16) 1 Превключвател TICK TICK
17) 1 платка за печатни платки по ваш избор, ако ви е удобно във верро е добре.
18) 1 8 -пинов DIP за RTC IC
19) 1 40 пинов DIP за PIC184550 или можете да закопчаете гнездо с цип, ако желаете
20) 1 3V клетъчен държач
21) 1 9V държач за батерия
22) 1 мъжка глава за запояване с LCD
23) 1 женска глава за запояване на печатна платка или verro, където ще бъде поставен LCD.
ДРУГИ ЧАСТИ:
20) Платформа за тестване
21) Поялник
22) Тел за запояване
23) PIC програмист (или PICKIT2)
24) Разтвор за офорт (за печатни платки)
25) Свредло за печатни платки
26) Мултицет
Човек си мисли, че ще забележите, че не съм включил кристал за PIC микроконтролер, нали? Е, това е така, защото използвах вътрешен осцилатор на PIC18F4550
ТОВА Е ВСИЧКО…! СЕГА ДА ГО НАПРАВИМ …!
Стъпка 2: ИЗПИТВАНЕ НА ПРОТЕЙ
Можете да тествате веригата на протеус, за да получите представа за проекта.
Защитният файл ще изисква шестнадесетичен файл за микроконтролер PIC.
И двата файла са предоставени.
Стъпка 3: Изработка на печатни платки
Ще ви препоръчам да изградите този проект на печатни платки, не използвайте verroboard.
Отпечатайте тази печатна платка, тя е проектирана на Cadsoft Eagle от мен. Ако имате инсталиран cadsoft eagle, отворете brd файл (изтеглете по -долу) и генерирайте файл според вашите изисквания за размера на страницата.
Иначе съм прикачил два файла на А4, а другият е А5, отпечатайте и проверете компонентите на мястото, след което отпечатайте вашата печатна платка. Питам това, защото може да има фактор за мащабиране на страницата.
ЗАБЕЛЕЖКА: Можете да захранвате проекта чрез батерия, която трябва да бъде свързана към конектора близо до 7805, внимавайте за полярността. ИЛИ можете да включите проекта чрез адаптер през жака за DC захранване. Източниците на захранване могат да се превключват с бутона за отметка, когато бутонът е вкаран във вътрешността на веригата, която се захранва от външен източник чрез конектор, когато бутонът е натиснат извън захранването на веригата от жака за постоянен ток.
Стъпка 4: Запояване на компоненти
Запояйте всички компоненти, вижте приложените снимки.
Нещо, което трябва да ви кажа, тъй като proteus е идеален, затова бутоните са свързани директно към щифта на микроконтролера без резистор.
Но в реалния живот съществува фактор на шума.
Подобно да предположим, че в този проект, ако натиснете един път бутон 4, на proteus ще получите 4 на LCD, но ако го натиснете в реалния живот, ще получите 44444444 на LCD поради шум. За да премахнете това, печатната платка съдържа 220 ома резистор с всеки бутон.
Стъпка 5: Програмиране на RTC IC PCF8583
Добре, това е малко сложно нещо, но тъй като кодът е предоставен, няма да е толкова сложен. Не съм дал.hex файл за програмиране на RTC IC, тъй като трябва да го генерирате, за да зададете необходимото време, а годината е зададена на 2015, не е нужно да го настройвате.
Отворете mikroC Pro от PIC и изберете PIC18F4550, копирайте и поставете кода по -долу:
// Връзки с LCD модулssbit LCD_RS при RB2_bit;
sbit LCD_EN при RB3_bit;
sbit LCD_D4 при RB4_bit;
sbit LCD_D5 при RB5_bit;
sbit LCD_D6 при RB6_bit;
sbit LCD_D7 при RB7_bit;
sbit LCD_RS_Direction при TRISB2_bit;
sbit LCD_EN_Посока при TRISB3_bit;
sbit LCD_D4_Direction при TRISB4_bit;
sbit LCD_D5_Direction при TRISB5_bit;
sbit LCD_D6_Посока при TRISB6_bit;
sbit LCD_D7_Посока при TRISB7_bit;
// Прекратяване на връзките на LCD модула
void main () {
ADCON1 = 0x0F;
CMCON | = 7; // Деактивиране на сравнителите
OSCCON = 0b01111111; // Използване на вътрешен осцилатор @ 8MHz
TRISB = 0x00; // PORTB за изход (LCD)
LATB = 0xFF; // PORTC за въвеждане
LATC = 0xFF; // PORTD за въвеждане
TRISA. RA2 = 0; // RA2 за изход
TRISA. RA3 = 0; // RA3 за изход
UCON. USBEN = 0; // Деактивирайте usb UCFG. UTRDIS = 1;
TRISD = 0xF9; // PORTD изход
Lcd_Init (); // Инициализиране на LCD
Lcd_Cmd (_LCD_CLEAR); // Изчистване на дисплея
Lcd_Cmd (_LCD_CURSOR_OFF); // Курсорът е изключен
Lcd_Out (1, 1, "Настройване на времето …");
Забавяне_ms (1000);
I2C1_Init (100000); // инициализира пълен главен режим
I2C1_Start (); // издава стартов сигнал
I2C1_Wr (0xA0); // адрес PCF8583
I2C1_Wr (0); // започва от дума на адрес 0 (конфигурационна дума)
I2C1_Wr (0x80); // напишете $ 80 за конфигуриране. (брояч на паузи …)
I2C1_Wr (0); // напишете 0 до цента дума
I2C1_Wr (0); // записва дума от 0 до секунди
I2C1_Wr (0x10); // ПРОМЕНЕТЕ ТОЗИ 10 на минутите, които искате да зададете
I2C1_Wr (0x17); // ПРОМЕНЕТЕ ТОЗИ 17 на всеки час, който искате да зададете
I2C1_Wr (0x23); // ПРОМЕНЕТЕ ТОЗИ 23 на всяка дата, която искате да зададете
I2C1_Wr (0x2); // ПРОМЕНЕТЕ ТОЗИ 2 на всеки месец, който искате да зададете
I2C1_Stop (); // издава сигнал за спиране
I2C1_Start (); // издава стартов сигнал
I2C1_Wr (0xA0); // адрес PCF8530
I2C1_Wr (0); // започва от дума на адрес 0
I2C1_Wr (0); // напишете 0, за да конфигурирате дума (активирайте броенето)
I2C1_Stop (); // издава сигнал за спиране
Lcd_Cmd (_LCD_CLEAR);
Lcd_Out (1, 1, "Време зададено.!");
Забавяне_ms (500);
}
_END КОД _
Генерирайте шестнадесетичен файл от Mikroc Pro за PIC след компилиране на горния код, след което го запишете на снимка микроконтролер PIC18F4550
Поставете го върху печатната платка, запоена с всички компоненти, включете го. LCD дисплеят трябва да показва "Setting Time …", след това когато показва "Time Set!" изключете захранването. Премахнете PIC микроконтролера от DIP, успешно сте програмирали PCF8583 RTC IC.:)
Стъпка 6: Програмиране на PIC18F4550
Е, шестнадесетичният файл вече е предоставен в Стъпка 2, можете да го запишете на вашия PIC18F4550 чрез PIC програмист.
Стъпка 7: Последна стъпка и ОКОНЧАТЕЛЕН ТЕСТ …
Прикрепете светодиод към долния десен 3,5 мм аудио жак и зумер към горния десен 3,5 мм жак. Поставете програмирания си PIC18F4550 на печатна платка и включете захранването.
Когато е въведен правилен код, той дава логика 1 на долния светодиод, предположих, че когато давам логика 1 на светодиода, той отваря портата.
Вашата електронна система за сигурност трябва да е готова сега …! И ако сте направили всичко правилно, трябва да работи добре.
Моля, харесайте и следвайте страницата ми във Facebook:
www.facebook.com/pg/ElectronicProjectsbySh…
Моят блог сайт:
epshahrukh.blogspot.com/
Препоръчано:
Домашна система за сигурност, използваща сензорен синтез: 5 стъпки
Домашна система за сигурност, използваща Sensor Fusion: Идеята зад този проект е да се създаде евтин и лесен за изработка сензор за сигурност, който може да се използва, за да ви предупреди, когато някой го е прекосил. Първоначалната цел беше да създам нещо, което да ме уведоми, когато някой се качи по стълбите, но аз също
Arduino Bluetooth RC Car W/ Електронна спирачна система: 4 стъпки (със снимки)
Arduino Bluetooth RC Car W/ Електронна спирачна система: Ето как да направите RC кола за около 40 $ (27 $ w/ uno clone)
Електронна система за контрол на очите, част 2: 3 стъпки
Електронна очна система за сигурност, част 2: Хей момчета! Ако не сте виждали Част 1 Щракнете ТУК. В този проект ще видим просто приложение за домашна сигурност, наречено Електронна система за контрол на очите, използваща LDR като основен сензор и няколко други компонента. Електронното око също се нарича
Електронна система за сигурност с контрол на очите: 5 стъпки
Електронна система за сигурност, контролирана от очи: Здравейте момчета! В този проект ще видим просто приложение за домашна сигурност, наречено Electronic Eye Controlled Security System, използващо LDR като основен сензор и няколко други компонента. Електронното око се нарича още вълшебно око. Тъй като автоматизацията се появява
Система за присъствие със съхранение на данни в електронна таблица на Google с помощта на RFID и Arduino Ethernet Shield: 6 стъпки
Система за присъствие със съхраняване на данни в електронна таблица на Google с помощта на RFID и Arduino Ethernet Shield: Здравейте момчета, Тук идваме с много вълнуващ проект и ето как да изпращаме rfid данни до електронна таблица на Google с помощта на Arduino. Накратко, ние ще направим система за посещаемост, базирана на rfid четец, която ще запише данните за посещаемостта в реално време, за да се потърси