Project
Project
HỒ CHÍ MINH
KHOA: Công Nghệ Thông Tin
ĐỀ TÀI 3: Thiết kế hệ thống báo động chống trộm bằng cảm biến PIR sử dụng
board Arduino
i
Mục Lục
Thành viên nhóm 3....................................................................................................2
I. Công nghệ IOT trong việc ứng dụng vào xe tự hành
1. Board Arduino là gì?.............................................................................................4
2. Minh họa xe tự hành sử dụng board Arduino.......................................................4
Ví dụ về xe tự hành
A. Xe tự hành điều khiển từ xa bằng điện thoại thông minh....................................4
B. Xe tự hành theo dõi vạch kẻ đường......................................................................5
C. Xe tự hành tránh chướng ngại vật........................................................................5
D. Xe tự hành đi theo động vật.................................................................................5
II. Adruino Project
1. Giới thiệu chủ đề: Hệ thống Báo động chống trộm bằng cảm biến PIR sử dụng
board Arduino...........................................................................................................5
2. Ý tưởng thực hiện..................................................................................................6
3. Yêu cầu phần cứng và công dụng từng thiết bị.....................................................6
4. Mạch kết nối (Circuit)...........................................................................................7
5. Mạch nguyên lý (Schematic)................................................................................8
6. Thuật toán..............................................................................................................9
7. Code....................................................................................................................10
8. Kết quả đạt được.................................................................................................11
9. Video Project.......................................................................................................12
1
Thành viên nhóm 3
STT MSSV Họ và tên Vai trò
Quay video và demo
1 SE182858 Võ Như Phong
sản phẩm
Code cho hệ thống
2 SE182888 Võ Thành Nhân
mạch
Lắp đặt hệ thống
3 SE182890 Hoàng Duy Giáp
mạch PIR
2
I.Công nghệ IOT trong việc ứng dụng vào xe tự hành
1. Board Arduino là gì?
Arduino là một loại board mạch vi điều khiển nguồn mở, thiết kế để xây dựng
các ứng dụng điện tử tương tác với nhau hoặc với môi trường được thuận lợi hơn. Nó
được sử dụng rộng rãi trong các dự án điện tử và tự động hóa.
Có một số loại board Arduino phổ biến, chẳng hạn như Arduino Uno, Arduino
Micro, Arduino Nano, Arduino Pro, Arduino Mega, Arduino Leonardo, và Arduino
LilyPad. Arduino Uno là loại board đơn giản nhất và rất phù hợp cho người mới bắt
đầu học điện tử.
Arduino được sử dụng với các phần mềm IDE để lập trình như Arduino IDE,
Programino IDE, Visual Studio Code,...và có tất cả 6 phiên bản khác nhau, trong đó
Arduino Uno và Arduino Mega là phiên bản thường được sử dụng nhiều nhất.
Internet vạn vật (IoT) là mạng lưới kết nối các thiết bị thông minh có khả năng
thu thập, chia sẻ dữ liệu qua internet. Nhờ tích hợp cảm biến và phần mềm, các thiết bị
này có thể giao tiếp và tương tác lẫn nhau, tạo nên nền tảng cho nhiều ứng dụng đột
phá trong lĩnh vực xe tự hành.
Xe tự hành là một loại phương tiện di động mà không cần sự can thiệp trực tiếp
từ người lái để điều khiển và thực hiện các chuyến đi. Thay vào đó, nó sử dụng các hệ
thống tự động hoặc tự lái để nhận diện môi trường xung quanh, phân tích thông tin, và
ra quyết định để điều hướng và vận hành phương tiện một cách an toàn và hiệu quả.
Xe tự hành đang là một lĩnh vực nghiên cứu và phát triển nhanh chóng, hứa hẹn
mang lại nhiều tiện ích trong việc tăng cường an toàn giao thông, giảm thiểu tai nạn và
tạo ra những trải nghiệm đi lại mới mẻ.
3
A. Xe tự hành điều khiển từ xa bằng điện thoại thông minh.
- Dự án này sử dụng board Arduino để điều khiển hướng di chuyển của xe tự lái
thông qua kết nối Bluetooth với điện thoại thông minh.
Hướng dẫn chi tiết minh họa: Arduino Bluetooth Car : 12 Steps (with Pictures) -
Instructables
B. Xe tự hành sử dụng Sensor.
4
- Sử dụng board Arduino, camera và cảm biến màu để theo dõi vạch kẻ đường và
điều khiển xe di chuyển theo đúng làn đường.
- Có thể lập trình để xe tự động điều chỉnh hướng di chuyển khi gặp vạch kẻ
đường cong hoặc ngã rẽ.
Hướng dẫn chi tiết minh họa: How to Build: Arduino Self-Driving Car : 7 Steps
(with Pictures) - Instructables
5
C. Xe tự hành tránh chướng ngại vật.
- Dự án này sử dụng board Arduino kết hợp với cảm biến siêu âm để phát hiện
chướng ngại vật và điều khiển xe tự lái tự động tránh va chạm.
Video Minh Họa: How To Make A DIY Arduino Obstacle Avoiding Car At
Home - YouTube
6
D. Xe tự hành đi theo.
- Dự án này sử dụng board Arduino cùng với Ultrasonic Sensor và Infrared Sensor
để đi theo con người hoặc động vật.
Video Minh Họa: How To Make Arduino Human Following Robot - YouTube
- Trong xã hội hiện đại, vấn đề an ninh luôn là mối quan tâm hàng đầu của mỗi
gia đình và doanh nghiệp. Trộm cắp, xâm nhập trái phép là những nguy cơ tiềm ẩn có
thể xảy ra bất cứ lúc nào. Để bảo vệ tài sản và con người, việc sử dụng các hệ thống
báo động chống trộm là vô cùng cần thiết.
7
- Là một giải pháp an ninh thế hệ mới, hệ thống Báo động chống trộm bằng cảm
biến PIR sử dụng board Arduino mang đến nhiều ưu điểm vượt trội so với các giải
pháp truyền thống do:
8
Cảm biến thu Nhận tín hiệu từ điều
3 1
hồng ngoại khiển từ xa IR
9
4. Mạch kết nối (Circuit)
Mạch mô phỏng:
10
5. Mạch nguyên lý (Schematic)
6. Thuật toán
- Khởi tạo:
+ Thiết lập kết nối serial để giao tiếp với máy tính.
+ Khởi tạo đối tượng IR receiver (irrecv) và cấu hình chân nhận tín hiệu
IR.
+ Đặt chế độ chân LED, cảm biến PIR và buzzer là INPUT hoặc
OUTPUT.
- Vòng lặp chính (loop):
+ Kiểm tra nếu có tín hiệu IR nhận được:
Nếu mã IR là 0xFF38C7 (ON), bật LED1 và in ra "PIR: ON".
11
Nếu mã IR là 0xFF18E7 (OFF), tắt LED1 và in ra "PIR: OFF".
+ Đọc trạng thái của cảm biến PIR.
+ Nếu LED1 đang bật (hệ thống đang được kích hoạt) và cảm biến PIR
phát hiện chuyển động:
+ Bật LED2 và LED3.
+ In ra "Motion Detected. Please check".
+ Gọi hàm playAlertSound() để phát âm thanh cảnh báo bằng buzzer.
+ Đợi 500ms.
+ Tắt LED2 và LED3.
- Hàm playNote(int note, int duration):
+ Hàm này được sử dụng để phát một nốt nhạc với tần số (note) và thời
lượng (duration) nhất định trên buzzer.
+ Tính toán khoảng thời gian trì hoãn (delayPeriod) dựa trên tần số nốt
nhạc.
+ Tính toán số chu kỳ cần phát dựa trên thời lượng nốt nhạc.
+ Trong vòng lặp, đảo trạng thái của buzzer (HIGH và LOW) với khoảng
thời gian trì hoãn delayPeriod để tạo ra âm thanh.
- Hàm playAlertSound():
+ Hàm này gọi hàm playNote() để phát một chuỗi ba nốt nhạc (A4, B4,
C5) với thời lượng 1000ms (1 giây) để tạo ra âm thanh cảnh báo trên buzzer.
7. Code
#include <IRremote.h>
#include "pitch.h"
int RECV_PIN = 2;
IRrecv irrecv(RECV_PIN);
decode_results results;
int led1 = 3;
int led2 = 4;
int led3 = 5;
int sensor = 7;
int val = 0;
int buzzerPin = 12;
void setup() {
Serial.begin(9600);
irrecv.enableIRIn();
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
12
pinMode(sensor, INPUT);
pinMode(buzzerPin, OUTPUT);
}
void playAlertSound() {
// Sửdụng hàm playNote đểphát âm thanh cảnh báo
playNote(NOTE_A4, 1000); // Nốt A4, thời lượng 200ms
delay(50);
playNote(NOTE_B4, 1000);
delay(50);
playNote(NOTE_C5, 1000);
}
void loop() {
if (irrecv.decode(&results)) {
irrecv.resume();
if (results.value == 0xFF38C7) {
digitalWrite(led1, HIGH);
Serial.println("PIR: ON");
} else if (results.value == 0xFF18E7) {
digitalWrite(led1, LOW);
Serial.println("PIR: OFF");
}
}
val = digitalRead(sensor);
if (digitalRead(led1) == HIGH && val == HIGH) {
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
Serial.println("Motion Detected. Please check");
playAlertSound();// Hú còi buzzer khi phát hiện chuyể
n động
delay(500); // Chờ 500ms
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
}
}
8. Kết quả đạt được
13
Khả năng phát hiện xâm nhập: Phát hiện chuyển động chính xác, giảm thiểu
báo động giả.
Hệ thống báo động hiệu quả: Kích hoạt báo động bằng âm thanh, đèn LED. Kết
nối với còi hú, chuông báo động và âm thanh báo động lớn, thu hút sự chú ý.
Dễ dàng sử dụng và quản lý: Cài đặt và sử dụng đơn giản (Điều khiển qua
board Arduino).
Tiết kiệm chi phí: Lắp đặt và vận hành thấp hơn so với giải pháp truyền thống
và sử dụng nguồn điện hiệu quả.
9. Video Project
Group 3 - IOT102 SE1862 - Hệ thống báo động chống trộm sử dụng cảm biến PIR.
14