Để góp phần làm sáng tỏ hiệu quả của những ứng dụng trong thực tế của ngành kỹ thuật điện tử, sau một thời gian học tập được quý thầy cô trong viện giảng dạy về các kiến thức chuyên ngàn
Trang 1TRƯỜNG ĐẠI HỌC BÀ RỊA-VŨNG TÀU
Trang 2NHIỆM VỤ ĐỀ TÀI NGHIÊN CỨU
Họ và tên sinh viên: Nguyễn Hoàng Dũng MSSV: 13030682
Ngày, tháng, năm sinh: 24/06/1996 Nơi sinh: Vũng Tàu
Chuyên Ngành: Tự động hóa
I TÊN ĐỀ TÀI: Thiết kế và chế tạo hệ thống chống trộm cho xe máy
II NHIỆM VỤ VÀ NỘI DUNG:
· Tìm hiểu về Mạch Arduino UNO R3
· Đưa ra các phương án nghiên cứu
· Thiết kế và chế tạo hệ thống chống trộm cho xe máy
· Kiểm tra, đánh giá tính ứng dụng của đề tài
III NGÀY GIAO NHIỆM VỤ ĐỀ TÀI: 01/11/2018
IV NGÀY HOÀN THÀNH ĐỀ TÀI: 31/03/2019
V HỌ TÊN CÁN BỘ HƯỚNG DẪN: Th.S Phạm Chí Hiếu
CÁN BỘ HƯỚNG DẪN
(Ký và ghi rõ họ tên)
ThS Phạm Chí Hiếu
Bà Rịa - Vũng Tàu, Ngày… tháng …năm 2019
SINH VIÊN THỰC HIỆN CHÍNH
Trang 3SVTH: Nguyễn Hoàng Dũng
LỜI CAM ĐOAN
Tôi xin cam đoan đề tài nghiên cứu khoa học này tổng quát lại kết quả quá trình nghiên cứu của tôi Các số liệu, hình ảnh, thông tin trong đề tài đều trung thực, do tôi tìm hiểu, tham khảo từ nhiều nguồn tư liệu Đề tài này không sao chép các đề tài đã có
từ trước
Nếu phát hiện có bất kỳ sự gian lận nào tôi xin hoàn toàn chịu trách nhiệm về nội dung đề tài của mình Trường đại học BÀ RỊA-VŨNG TÀU không liên quan đến những vi phạm tác quyền, bản quyền do tôi gây ra trong quá trình thực hiện (nếu có)
Vũng Tàu, ngày … tháng … năm 2019
Người cam đoan
Trang 4đó ngày càng được khẳng định thêm Những thành tựu của nó đã có thể biến được những cái tưởng chừng như không thể thành những cái có thể, góp phần nâng cao đời sống vật chất và tinh thần cho con người
Để góp phần làm sáng tỏ hiệu quả của những ứng dụng trong thực tế của ngành
kỹ thuật điện tử, sau một thời gian học tập được quý thầy cô trong viện giảng dạy về các kiến thức chuyên ngành, đồng thời được sự giúp đỡ nhiệt tình của các thầy cô trong ngành Điện-Điện tử, cùng với sự nổ lực của bản thân, em đã nghiên cứu đề tài
“thiết kế và chế tạo hệ thống chống trộm cho xe máy“ nhưng do thời gian, kiến thức
và kinh nghiệm của em còn có hạn nên sẽ không thể tránh khỏi những sai sót Em rất mong được sự giúp đỡ và tham khảo ý kiến của thầy cô và các bạn nhằm đóng góp phát triển thêm đề tài
Trang 5SVTH: Nguyễn Hoàng Dũng
LỜI CẢM ƠN
Trước khi bắt đầu nghiên cứu khoa học, với lòng biết ơn sâu sắc nhất, em xin cảm ơn quý thầy cô ngành Điện-Điện tử đã tận tình truyền đạt kiến thức cũng như giúp
đỡ em trong quá trình học tập tại trường
Đặc biệt, em xin ghi nhớ sự nhiệt tình của thầy Phạm Chí Hiếu, người trực tiếp hướng dẫn và đã giúp em hoàn thành đề tài này
Sau cùng, em cũng xin cảm ơn những người bạn đã đóng góp ý kiến và hỗ trợ thông tin để em hoàn thiện đề tài
Vũng tàu, ngày …… tháng….… năm 2019
Sinh viên thực hiện chính
(Ký và ghi rõ họ tên)
Nguyễn Hoàng Dũng
Trang 6SVTH: Nguyễn Hoàng Dũng
MỤC LỤC
Đề mục Trang
NHIỆM VỤ ĐỀ TÀI
LỜI CAM ĐOAN
MỞ ĐẦU
LỜI CẢM ƠN
MỤC LỤC
CHƯƠNG 1 TỔNG QUAN 01
1.1 Nhu cầu tự động hóa ở Việt Nam 01
1.2 Mục tiêu của đề tài ……….………… 01
1.3 Tính tối ưu của đề tài 01
CHƯƠNG 2 THIẾT BỊ VÀ CÁC GIẢI PHÁP CÔNG NGHỆ 02
2.1 Giới thiệu về mạch Arduino UNO R3 …….………… ……… 02
2.1.1 Nguồn sử dụng …….……… ……….… 03
2.1.2 Các chân năng lượng……… ……… 03
2.1.3 Bộ nhớ sử dụng…….……… … 04
2.1.4 Các cổng vào/ra trên Arduino board ……… ………… ……….… 04
2.1.5 Lập trình cho Arduino ……… ……… ……….… 05
2.2 Module SIM800A ……….……… 06
2.2.1 Kết nối Module SIM800A ……….……….……… 06
2.2.2 Thông số kỹ thuật của module Sim800A mini V1………….……… 07
2.2.3 Chức năng các chân của module……….…….……… 08
2.3 Giới thiệu về module GPS GY-NEO 6M V2……… 08
2.3.1 Thông số kỹ thuật của module GPS ……… 09
2.3.2 Chức năng các chân của module……….……… 09
2.3.3 Sơ lược về GPS……… …… ….……… 10
2.3.4 Sự hoạt động của GPS……… …… 11
2.3.5 Các thành phần của GPS ……… ……….……… 12
2.3.6 Tín hiệu GPS…… ……….……… ………….………… 13
Trang 7SVTH: Nguyễn Hoàng Dũng
CHƯƠNG 3 THIẾT KẾ MẠCH VÀ CHƯƠNG TRÌNH…… 14
3.1 Sơ đồ nguyên lý……… ……… …… ….……… 14
3.2 Sơ đồ mạch in……… ……… …… … ….……… …… 14
3.3 Mô hình thực tế……… ……… ……….……… 15
3.4 Chương trình……… ……… ……….……….……… 15
CHƯƠNG 4 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI… 21
4.1 Kết luận… ……… ……… ……… ….……… 21
4.1.1 Ưu điểm của đề tài …….……… ……… …… … … ……… 21
4.1.2 Nhược điểm của đề tài……….………… ………….……… 21
4.2 Hướng phát triển…… ……… ……… ….……… 21
TÀI LIỆU THAM KHẢO ……… 22
Trang 8SVTH: Nguyễn Hoàng Dũng 1
CHƯƠNG 1
TỔNG QUAN
1.1 Nhu cầu tự động hóa ở Việt Nam
Tự động hóa là một lĩnh vực công nghệ rất quan trọng trong sự phát triển của mỗi quốc gia Khi ngành này phát triển và được ứng dụng rộng rãi thì nó sẽ góp phần cải thiện đáng kể trong mọi lĩnh vực của đời sống Nhưng hiện tại ở nước ta ngành này vẫn còn rất thiếu và yếu về quy mô hình lẫn năng lực làm chủ công nghệ Điều đó làm hạn chế rất lớn đến sự phát triển của đất nước Nhưng nhìn về mặt tích cực thì đó cũng
là cơ hội để ngành này khai thác nhu cầu rất lớn từ nhiều vấn đề
Và một nhu cầu cấp thiết mà hàng ngày vẫn thường xuyên xảy ra ở nước ta đó là phòng tránh nạn trộm cắp xe gắn máy Việc có một thiết bị giúp chúng ta có thể điều khiển bật tắt xe máy từ xa nhằm nâng cao khả năng bảo vệ tài sản của mình, đồng thời
có thể định vị được chiếc xe mọi lúc mọi nơi là rất cần thiết
1.2 Mục tiêu của đề tài
- Nghiên cứu mô hình chống trộm và định vị xe máy thông qua sóng điện thoại
- Nghiên cứu cơ sở lý thuyết để xây dựng mô hình dựa trên các kiến thức đã học
về lập trình
- Ứng dụng các công nghệ gần gũi với cuộc sống con người để xây dựng lên hệ thống điều khiển từ xa
1.3 Tính tối ưu của đề tài
- Tạo tính tư duy cho sinh viên trong quá trình nghiên cứu
- Có tính linh động và mở rộng cho sinh viên thiết kế mô hình dựa trên cơ sở thực tế
- Mô hình đơn giản nhưng rất hữu ích
Trang 9SVTH: Nguyễn Hoàng Dũng 2
CHƯƠNG 2
THIẾT BỊ VÀ CÁC GIẢI PHÁP CÔNG NGHỆ
2.1 Giới thiệu về Mạch Arduino NANO
Arduino NANO là dòng mạch Arduino phổ biến, sự tiện dụng, đơn giản, có thể lập trình trực tiếp bằng máy tính (như Arduino Uno) và đặc biệt hơn cả đó là kích thước của nó Kích thước của Arduino Nano cực kì nhỏ gọn (1.85cm x 4.3cm), rất thích hợp cho các newbie, vì giá rẻ hơn Arduino Uno nhưng dùng được tất cả các thư việt của mạch này
Hình 2.1 Board mạch Arduino NANO
Hình 2.2 Chip Atmega 328
Arduino NANO sử dụng vi điều khiển chính là: ATmega328 (tương tự Board
Arduino Uno r3) Bộ não này có thể xử lí những tác vụ đơn giản như điều khiển đèn
LED nhấp nháy, xử lí tín hiệu cho xe điều khiển từ xa, điều khiển động cơ bước, điều khiển động cơ servo, làm một trạm đo nhiệt độ–độ ẩm và hiển thị lên màn hình
LCD,… hay những ứng dụng khác
Trang 10SVTH: Nguyễn Hoàng Dũng 3
2.1.1 Nguồn sử dụng
Arduino UNO R3 có thể được cấp nguồn 5V thông qua cổng USB hoặc cấp nguồn ngoài với điện áp khuyên dùng là 7-12VDC hoặc điện áp giới hạn là 6-20V Thường thì cấp nguồn bằng pin 9V là hợp lí nhất nếu bạn không có sẵn nguồn từ cổng USB Nếu cấp nguồn vượt quá ngưỡng giới hạn trên, bạn sẽ làm hỏng Arduino UNO
2.1.2 Các chân năng lượng
GND (Ground): Cực âm của nguồn điện cấp cho Arduino NANO Khi bạn dùng
các thiết bị sử dụng những nguồn điện riêng biệt thì những chân này phải được nối với nhau
5V: Cấp điện áp 5V đầu ra Dòng tối đa cho phép ở chân này là 500mA
3.3V: Cấp điện áp 3.3V đầu ra Dòng tối đa cho phép ở chân này là 50mA
Vin (Voltage Input): Để cấp nguồn ngoài cho Arduino NANO, bạn nối cực
dương của nguồn với chân này và cực âm của nguồn với chân GND
IOREF: Điện áp hoạt động của vi điều khiển trên Arduino Nano có thể được đo ở
chân này Và dĩ nhiên nó luôn là 5V Mặc dù vậy bạn không được lấy nguồn 5V từ chân này để sử dụng bởi chức năng của nó không phải là cấp nguồn
RESET: Việc nhấn nút Reset trên board để reset vi điều khiển tương đương với
việc chân RESET được nối với GND qua 1 điện trở 10KΩ
Lưu ý:
Arduino NANO không có bảo vệ cắm ngược nguồn vào Do đó bạn phải hết sức cẩn thận, kiểm tra các cực âm–dương của nguồn trước khi cấp cho Arduino UNO Việc làm chập mạch nguồn vào của Arduino NANO sẽ biến nó thành một miếng nhựa chặn giấy, khuyên bạn nên dùng nguồn từ cổng USB nếu có thể
Các chân 3.3V và 5V trên Arduino là các chân dùng để cấp nguồn ra cho các thiết bị khác, không phải là các chân cấp nguồn vào Việc cấp nguồn sai vị trí có thể làm hỏng board Điều này không được nhà sản xuất khuyến khích
Cấp nguồn ngoài không qua cổng USB cho Arduino NANO với điện áp dưới 6V
Trang 11Khi sử dụng mạch Arduino, đặc biệt một số bạn mới bắt đầu tiếp xúc, làm quen thì việc cấp nguồn nên thận trọng Theo mình thì nên sử dụng nguồn 5V chuẩn qua USB, hoặc sử dụng nguồn 9v cấp cho cổng đầu vào mạch Arduino Tránh trường hợp hỏng mạch Arduino
2.1.3 Bộ nhớ sử dụng
Vi điều khiển Atmega328 tiêu chuẩn sử dụng trên Arduino NANO có:
32KB bộ nhớ Flash: Những đoạn lệnh bạn lập trình sẽ được lưu trữ trong bộ nhớ
Flash của vi điều khiển Thường thì sẽ có khoảng vài KB trong số này sẽ được dùng cho bootloader nhưng đừng lo, bạn hiếm khi nào cần quá 20KB bộ nhớ này đâu
2KB cho SRAM (Static Random Access Memory): Giá trị các biến bạn khai báo khi lập trình sẽ lưu ở đây Bạn khai báo càng nhiều biến thì càng cần nhiều bộ nhớ RAM Tuy vậy, thực sự thì cũng hiếm khi nào bộ nhớ RAM lại trở thành thứ mà bạn phải bận tâm Khi mất điện, dữ liệu trên SRAM sẽ bị mất
1KB cho EEPROM (Electrically Eraseble Programmable Read Only Memory):
Đây giống như một chiếc ổ cứng mini–nơi bạn có thể đọc và ghi dữ liệu của mình vào đây mà không phải lo bị mất khi cúp điện giống như dữ liệu trên SRAM
2.1.4 Các cổng vào/ra trên Arduino Board
Hình 2.3 Các cổng ra/vào
Trang 12SVTH: Nguyễn Hoàng Dũng 5
Mạch Arduino NANO có 14 chân digital dùng để đọc hoặc xuất tín hiệu Chúng
chỉ có 2 mức điện áp là 0V và 5V với dòng vào/ra tối đa trên mỗi chân là 40mA Ở mỗi chân đều có các điện trở pull-up từ được cài đặt ngay trong vi điều khiển ATmega328 (mặc định thì các điện trở này không được kết nối)
Một số chân digital có các chức năng đặc biệt như sau:
2 chân Serial: 0 (RX) và 1 (TX): Dùng để gửi (transmit–TX) và nhận (receive –
RX) dữ liệu TTL Serial Arduino Uno có thể giao tiếp với thiết bị khác thông qua 2 chân này Kết nối bluetooth thường thấy nói nôm na chính là kết nối Serial không dây Nếu không cần giao tiếp Serial, bạn không nên sử dụng 2 chân này nếu không cần thiết
Chân PWM (~): 3, 5, 6, 9, 10, và 11: cho phép bạn xuất ra xung PWM với độ
phân giải 8bit (giá trị từ 0 → 28-1 tương ứng với 0V → 5V) bằng hàm analog Write() Nói một cách đơn giản, bạn có thể điều chỉnh được điện áp ra ở chân này từ mức 0V đến 5V thay vì chỉ cố định ở mức 0V và 5V như những chân khác
Chân giao tiếp SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK) Ngoài các chức năng thông thường, 4 chân này còn dùng để truyền phát dữ liệu bằng giao thức SPI với các thiết bị khác
LED 13: trên Arduino NANO có 1 đèn led màu cam (kí hiệu chữ L) Khi bấm
nút Reset, bạn sẽ thấy đèn này nhấp nháy để báo hiệu Nó được nối với chân số 13 Khi chân này được người dùng sử dụng, LED sẽ sáng
Arduino NANO Broad có 8 chân analog (A0 → A7) cung cấp độ phân giải tín
hiệu 10bit (0 → 210-1) để đọc giá trị điện áp trong khoảng 0V → 5V Với chân AREF trên board, bạn có thể để đưa vào điện áp tham chiếu khi sử dụng các chân analog Tức là nếu bạn cấp điện áp 2.5V vào chân này thì bạn có thể dùng các chân analog để đo điện áp trong khoảng từ 0V → 2.5V với độ phân giải vẫn là 10bit
Đặc biệt, Arduino NANO có 2 chân A4 (SDA) và A5 (SCL) hỗ trợ giao tiếp I2C/TWI với các thiết bị khác
2.1.5 Lập trình cho Arduino
Các thiết bị dựa trên nền tảng Arduino được lập trình bằng ngôn ngữ riêng Ngôn ngữ này dựa trên ngôn ngữ Wiring được viết cho phần cứng nói chung Và Wiring lại
là một biến thể của C/C++ Một số người gọi nó là Wiring, một số khác thì gọi là C
hay C/C++ Riêng mình thì gọi nó là “ngôn ngữ Arduino”, và đội ngũ phát triển
Arduino cũng gọi như vậy Ngôn ngữ Arduino bắt nguồn từ C/C++ phổ biến hiện nay
Trang 13SVTH: Nguyễn Hoàng Dũng 6
do đó rất dễ học, dễ hiểu Nếu học tốt chương trình tin học thì việc lập trình Arduino
sẽ rất dễ thở đối với bạn
Để lập trình cho Mạch Arduino, nhà phát triển cung cấp một môi trường lập trình
Arduino được gọi là Arduino IDE (Intergrated Development Environment) như hình
dưới đây
Hình 2.4 Giao diện lập trình
2.2 Module SIM800A
Hình 2.5 Module SIM800A Mini
Module sim800 mini sử dụng nguồn khoảng 3.7V ~ 5V DC, có thể dùng pin lithium nhưng không được quá 5V nếu không các linh kiện điện tử sẽ bị cháy
2.2.1 Kết nối Module SIM800A
Trang 14SVTH: Nguyễn Hoàng Dũng 7
Module này sử dụng giao diện TTL, có thể được kết nối trực tiếp với MCU, ARM, mà không cần thiết bị chuyển đổi và không sử dụng các liên kết máy tính như cổng USB, RS232, RS485 và liên kết nối tiếp khác, module sẽ bị cháy
2.2.2 Thông số kỹ thuật của module Sim800A mini V1
· IC chính: Module GSM GPRS Sim800A
· Nguồn cấp: 4.5-5V, có thể sử dụng với nguồn dòng thấp từ 500mAh trở lên (như cổng USB, nguồn từ Board Arduino) Khuyên dùng nguồn 2A để đảm bảo hiệu suất hoạt động của SIM
· Tích hợp Khe Micro Sim
· Tích hợp led báo trạng thái Sim800A
· Tích hợp tụ bù điện dung cao và Diode giảm áp để có thể cấp 5VDC và nguồn dòng thấp
· Dòng khi ở chế độ chờ: 10 mA
· Dòng khi hoạt động: 100 mA đến 2A
· Kích thước: 2.5 cm x 3.1 cm
Hình 2.6 Mặt trước Module sim800A Mini
Hình 2.7 Mặt sau Mudule sim800A Mini
Trang 15SVTH: Nguyễn Hoàng Dũng 8
Hình 2.8 Các chân của Modile sim800A mini
2.2.3 Chức năng các chân của module:
· GND: Chân Mass, cấp 0V
· 5V: Nguồn dương cấp 4.5~5VDC nuôi Module Sim800A hoạt động
· BAT: Nếu sử dụng pin Lion 3.7VDC thì dùng chân này để cấp nguồn
· DTR: Chân chức năng của Module SIM800A, có thể không sử dụng
· TXD: Chân truyền Uart TX
· RXD: Chân nhận Uart RX
· LL: Chân Linein_L của Sim800, có thể không sử dụng
· LR: Chân Linein_R của Sim800, có thể không sử dụng
· McN: Chân Mic_N của Sim800, có thể không sử dụng
· McP: Chân Mic_P của Sim800, có thể không sử dụng
2.3 Giới thiệu về module GPS GY-NEO 6M V2
Hình 2.9 Module GPS NEO 6M V2
Mạch GPS Ublox Neo6 sử dụng module NEO-6M-0-001 của hãng Blox Mạch GPS Ublox với hiệu suất bắt sóng cao kèm theo 1 anten GPS gốm Module có tích hợp sẵn EEPROM, tất cả các thông tin cấu hình có thể được lưu trữ
Trang 16U-SVTH: Nguyễn Hoàng Dũng 9
trong EEPROM Trên mạch có tích hợp 1 pin dự phòng, khi nguồn chính ngắt, pin dự
phòng có thể duy trì trong 30 phút cho dữ liệu GPS được lưu trữ
2.3.1 Thông số kỹ thuật của module GPS
· Module GPS: Neo-6M-0-001 của hãng U-Blox
Hình 2.10 Các chân của Module gps neo 6m v2
2.3.2 Chức năng các chân của module
· GND: Chân Mass, cấp 0V
· 5V: Nguồn dương cấp 4.5~5VDC nuôi Module GPS NEO 6M V2 hoạt động
· BAT: Nếu sử dụng pin Lion 3.7VDC thì dùng chân này để cấp nguồn
· PPS: Chân chức năng của Module GPS NEO 6M V2, sau gần 1s sẽ xuất 1 xung ra
(có thể kết nối với led)
· TXD: Chân truyền Uart TX
· RXD: Chân nhận Uart RX
Để sử dụng với Arduino Cần kết nối chân theo bảng sau:
NEO-6M Arduino
VCC 5V GND GND
RX TX
TX RX