ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT ĐỒ ÁN HỆ THỐNG CƠ ĐIỆN TỬ Đề tài Hệ thống bãi giữ xe ứng dụng công nghệ RFID Giáo viên hướng dẫn TS Đoàn Lê Anh Sinh viên thực hiện Nguyễn Văn Khánh – 1.
Trang 1ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
Trang 2TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ
Giảng viên hướng dẫn: TS Đoàn Lê Anh
Sinh viên thực hiện: Nguyễn Văn Khánh Mã SV: 1811504410227
Nguyễn Lương Nhân Mã SV: 1811504410141Lưu Văn Phước Long Mã SV: 1811504410137
1 Tên đề tài: Hệ thống bãi giữ xe ứng dụng công nghệ RFID
2 Các số liệu, tài liệu ban đầu:
Arduino UNO R3, Module RFID RC522
3 Nội dung chính của đồ án:
- Tìm hiểu và phân tích ưu nhược điểm của các hệ thống giữ xe truyền thống để đưa
ra hướng giải quyết cho một hệ thống mới
Trang 3Lời Nói Đầu
Trong công cuộc công nghiệp hoá, hiện đại hoá của đất nước ta ngày càngđược đẩy mạnh, cùng với đó là tốc độ phát triển chóng mặt của Khoa học – Kỹthuật, ngày nay ở các trung tâm thành phố lớn có sự phát triển mật độ dân cư và xe
cộ ngày càng đông đúc, qua đó sinh ra nhu cầu về những bãi giữ xe tự động để tránhđược những vẫn đề như ùn tắc mất thời gian của con người…Để đáp ứng được nhucầu đó thì ngành công nghiệp tự động là một trong những ngành không thể thiếutrong nền công nghiệp hiện đại Đây là một ngành khoa học góp phần áp dụngnhững tiến bộ của khoa học công nghệ vào đời sống sinh hoạt cũng như làm việccủa con người nhằm nâng cao cuộc sống của con người Tạo điều kiện cho sự pháttriển của xã hội nâng cao trí thức của con người Qua đó, có thể giúp con người tiếpcận được khoa học công nghệ mới nhất và áp dụng vào trong cuộc sống nâng caochất lượng cuộc sống…
Là sinh viên của chuyên ngành cơ điện tử, sau thời gian học tập và rèn luyệntại Trường Đại Học Sư Phạm Kỹ Thuật Đà Nẵng, được sự giảng dạy tận tình củathầy Đoàn Lê Anh, chúng em được giao đề tài đồ án hệ thống cơ điện tử là “Hệthống bãi giữ xe sử dụng công nghệ RFID” Đến với đề tài chúng em nhận địnhđược đây là một đề tài rất là mới mẻ, đồng thời giúp chúng em tổng hợp lại đượctoàn bộ kiến thức đã được học và rèn luyện ở trường
Tuy chỉ có một khoảng thời gian ngắn nhưng với sự chỉ dẫn tận tình hướng dẫn của thầy Đoàn Lê Anh đã giúp cho chúng em hoàn thành tốt được đề tài của mình Nhờ đó mà chúng em cũng học được rất nhiều bài học và hành trang để bước
ra đời làm việc Em thấy việc làm đồ án môn học tại trường là rất cần thiết và bổ ích Tuy nhiên, với kiến thức còn hạn chế cũng như chưa có kinh nghiệm thực tế không nhiều, nên chắc chắn đồ án của chúng em không tránh khỏi những thiếu sót Chúng em rất mong nhận được sự chỉ bảo của thầy và các bạn để em được hoàn thiện hơn, góp phần cũng cố kiến thức lý thuyết
Trang 4MỤC LỤC
Chương 1 : TỔNG QUAN ĐỀ TÀI 6
1.1 Đặt vấn đề ấn đề ề 6t v n đ 1.2 N i dung nghiên c uội dung nghiên cứu ứu 6
1.3 Gi i h n đ tàiới hạn đề tài ạn đề tài ề 6
1.4 Ph m vi s d ngạn đề tài ử dụng ụng 6
Chương 2 : CƠ SỞ LÝ THUYẾT 7
2.1 Gi i thi u ph n c ngới hạn đề tài ệu phần cứng ần cứng ứu 7
2.1.1 Vi đi u khi nề ển 7
2.1.2 Công ngh RFID và Module MFRC522ệu phần cứng 8
2.1.3 LCD 16X2 và I2C 10
2.1.4 Module c m bi n h ng ngo iảm biến hồng ngoại ến hồng ngoại ồng ngoại ạn đề tài 13
2.1.5 Module c m bi n l aảm biến hồng ngoại ến hồng ngoại ử dụng 15
2.1.6 Buzzer 16
2.1.7 Đội dung nghiên cứung c servo SG90ơ servo SG90 16
2.2 Ph n m m Arduino IDEần cứng ề 17
2.3 Ph n m m MICROSOFT EXCEL và công c PARALLAX DATAần cứng ề ụng 18
2.3.1 Ph n m m Microsoft Excelần cứng ề 18
2.3.2 Công c Parallax Data Acquiltionụng 18
Chương 3 : THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG 20
3.1 Yêu c u và s đ kh i h th ngần cứng ơ servo SG90 ồng ngoại ối hệ thống ệu phần cứng ối hệ thống 20
3.1.1 Yêu c u c a h th ngần cứng ủa hệ thống ệu phần cứng ối hệ thống 20
3.1.2 S đ kh i và ch c n ng m i kh iơ servo SG90 ồng ngoại ối hệ thống ứu ăng mỗi khối ỗi khối ối hệ thống 20
3.1.3 Ho t đ ng c a h th ngạn đề tài ội dung nghiên cứu ủa hệ thống ệu phần cứng ối hệ thống 21
3.2 Gi i thi u m t s hàm s d ng trong Arduinoới hạn đề tài ệu phần cứng ội dung nghiên cứu ối hệ thống ử dụng ụng 21
3.3 Tính toán và thi t k h th ng ph n c ngến hồng ngoại ến hồng ngoại ệu phần cứng ối hệ thống ần cứng ứu 22
3.3.1 Kh i c m bi n l aối hệ thống ảm biến hồng ngoại ến hồng ngoại ử dụng 22
3.3.2 Kh i c m bi n v t c nối hệ thống ảm biến hồng ngoại ến hồng ngoại ật cản ảm biến hồng ngoại 24
3.3.3 Kh i đ ng c Servo SG90ối hệ thống ội dung nghiên cứu ơ servo SG90 25
Trang 53.3.4 Kh i báo hi u Buzzerối hệ thống ệu phần cứng 28
3.3.5 Kh i hi n th LCD-I2Cối hệ thống ển ị LCD-I2C 29
3.3.6 Kh i RFID RC522ối hệ thống 31
3.3.7 Kh i x lý trung tâmối hệ thống ử dụng 34
3.3.8 Kh i ngu nối hệ thống ồng ngoại 34
3.4 L u đ gi i thu t h th ngưu đồ giải thuật hệ thống ồng ngoại ảm biến hồng ngoại ật cản ệu phần cứng ối hệ thống 35
3.4.1 L u đ gi i thu t ch ng trình chínhưu đồ giải thuật hệ thống ồng ngoại ảm biến hồng ngoại ật cản ưu đồ giải thuật hệ thốngơ servo SG90 35
3.4.3 L u đ gi i thu t ch ng trình con RFIDưu đồ giải thuật hệ thống ồng ngoại ảm biến hồng ngoại ật cản ưu đồ giải thuật hệ thốngơ servo SG90 37
3.5 Code t ng c a h th ngổng của hệ thống ủa hệ thống ệu phần cứng ối hệ thống 38
Chương 4 : KẾT QUẢ THỰC NGHIỆM 46
4.1 K t qu th c nghi mến hồng ngoại ảm biến hồng ngoại ực nghiệm ệu phần cứng 46
Trang 6Lời Cảm Ơn
Lời đầu tiên em xin gửi lời cảm ơn chân thành đến thầy cô giáo trong trườngĐại Học Sư Phạm Kỹ Thuật đã giảng dạy hết tất cả tâm huyết, truyền dạy tất cảnhững tri thức của cuộc đời mình đến những lứa học sinh chúng em
Tiếp theo em xin cảm ơn thầy Đoàn Lê Anh là giảng viên hướng dẫn đề tàicủa chúng em, thầy đã tận tình giúp đỡ và chỉ bảo chúng em trong suốt quá trìnhthực hiện đề tài và hướng dẫn chi tiết tận tình để chúng em hoàn thành được bàithuyết minh này
Lời cuối cùng em xin gửi lời cảm ơn sâu sắc nhất và chúc thầy cô luôn dồi dàosức khỏe, tiếp tục giảng dạy hết tâm huyết của mình cho những lứa học trò sau này
để đất nước ta ngày càng có nhiều nhân tài, những người giỏi trong các doanhnghiệp, xây dựng đất nước phát triển hơn nữa
Em xin chân thành cảm ơn!
Trang 7Chương 1 : TỔNG QUAN ĐỀ TÀI1.1 Đặt vấn đề
Hiện nước ta đang phát triển theo hướng công nghiệp hóa hiện đại hóa, nhu cầu của con người về sự thuận lợi trong cuộc sống ngày càng tăng, ngày mật độ dân cư
và xe cộ càng ngày càng đông Đặc biệt là sự gia tăng về số lượng xe, song song vớivấn đề đó, người ta đặt vấn đề là xây dựng những bãi giữ xe để phục vụ cho người dân trong công việc cũng như trong việc đi lại của họ
Việt Nam là một nước có hệ thống bảo mật, tự động trong các hệ thống quản lí còn thô sơ trong khi đó các nước phát triển đã tiến hành tự động hóa nhằm giảm lựclượng lao động, tăng hiệu quả công việc một cách tối đa Điển hình là trong một hình thức giữ xe truyền thống, theo phương thức cũ người dân phải bỏ ra nhiều công sức, nhân công lao động để điều hành một hệ thống giữ xe, điều này dẫn đến việc bỏ ra nhiều chi phí cho nhân công và quản lí Trong khi xã hội ngày càng tiến
bộ, kỹ thuật ngày càng tiên tiến hơn, thì nhu cầu đòi hỏi về những thiết bị ứng dụng thông minh, tự động càng nhiều hơn Và với mong muốn ứng dụng công nghệ RFIDvào việc bảo mật và các cảm biến để thực hiện các tác vụ một cách tự động, tiết
kiệm sức lao động và đạt được hiệu quả cao, em đã chọn đề tài: “Thiết kế hệ thống bãi giữ xe ứng dụng công nghệ RFID” để thực hiện.
1.2 Nội dung nghiên cứu
- Xác định mục tiêu và giới hạn đề tài
- Nghiên cứu tài liệu về Arduino UNO R3
- Thiết kế khối cảm biến, khối hiển thị trên LCD, khối nguồn, Reader và bộ xử
lí trung tâm
- Thiết kế, tính toán và thi công cho phần cứng
- Viết code cho Arduino Uno R3
- Lắp rắp và kết nối giữa khối xử lí trung tâm và các khối khác
- Hiển thị dữ liệu lên LCD
- Chạy thử nghiệm hệ thống
- Chỉnh sửa các lỗi điều khiển, lỗi lập trình và lỗi của các thiết bị
- Viết báo cáo đồ án
1.3 Giới hạn đề tài
- Sử dụng Arduino Uno R3
- Sử dụng các nền tảng đã có sẵn và thư viện mở để phát triển sản phẩm
- Sử dụng các module có sẵn như: servo, module LCD I2C, MFRC522…
1.4 Phạm vi sử dụng
Đề tài là một mô hình nhỏ phục vụ cho việc nghiên cứu và phát triển trong quy
mô phòng học và phòng thực tập
Trang 8Chương 2 : CƠ SỞ LÝ THUYẾT2.1 Giới thiệu phần cứng
2.1.1 Vi điều khiển
Giới thiệu về Arduino UNO R3
Arduino là một nền tảng mã nguồn mở bao gồm phần cứng và phần mềm Phần cứng chính là các board mạch vi xử lý và nhiều linh kiện kết hợp lại với nhau tạo thành một board mạch lập trình được và tương tác được với nhiều cơ cấu chấp hành như động cơ, đèn led, cảm biến… Arduino thường được sử dụng để nghiên cứu trong các dự án nhỏ và trong các trường đại học
Bảng 2.1 Thông số kỹ thuật Arduino UNO R3
Trang 9 Arduino UNO R3 có 6 thành phần cơ bản
1 Cổng USB (loại B): đây là cổng giao tiếp để ta upload code từ PC lên vi
điều khiển Đồng thời nó cũng là giao tiếp serial để truyền dữ liệu giữa vi điểu khiển với máy tính
2 Jack nguồn: để chạy Arduino thì có thể lấy nguồn từ cổng USB ở trên,
nhưng không phải lúc nào cũng có thể cắm với máy tính được Lúc đó, ta cần một nguồn 9V đến 12V
3 Hàng Header: đánh số từ 0 đến 13 là hàng digital pwm, nhận vào hoặc
xuất ra các tín hiệu số Ngoài ra có một pin đất (GND) và pin điện áp tham chiếu (AREF)
4 Hàng header thứ hai: chủ yếu liên quan đến điện áp đất, nguồn.
5 Hàng header thứ ba: các chân để nhận vào hoặc xuất ra các tín hiệu
analog Ví dụ như đọc thông tin của các thiết bị cảm biến
6 Vi điều khiển AVR: đây là bộ xử lý trung tâm của toàn bo mạch Với
mỗi mẫu Arduino khác nhau thì con chip này khác nhau
Nguồn sử dụng
Arduino có thể được cấp nguồn thông qua cổng USB hoặc cấp nguồn ngoàithông qua jack cắm 2.1mm, cũng có thể sử dụng 2 chân Vin và GND để cấpnguồn cho Arduino
Chức năng các chân
- Chân 5V và chân 3.3V: các chân này dùng để lấy nguồn ra tương ứng 5V
và 3.3V
- Vin: Cấp nguồn cho Arduino
- GND: chân n iối hệ thống mass
- Reset: chân thiết lập lại hoạt động từ đầu cho board khi nhận tín hiệu
2.1.2 Công nghệ RFID và Module MFRC522
Giới thiệu công nghệ RFID
Công nghệ RFID là công nghệ nhận dạng đối tượng băng sóng vô tuyến.Công nghệ này cho phép nhận biết các đối tượng thông qua hệ thống thu phát sóngradio, từ đó có thể giám sát, quan lý từng đối tượng
Một thiết bị hay một hệ thống RFID được cấu tạo bời hai thành phân chính là
thiết bị đọc (reader) và thiết bị phát mã RFID có gắn chip Thiết bị đọc được gắnanten để thu - phát sóng điện từ, thiết bị phát mã RFID được gắn với vật cản nhậndạng, mỗi thiết bị RFID chứa một mã số nhất định và không trùng lặp nhau
Hình 2.2 Cấu trúc RFID và hệ thống RFID cơ bản
Trang 10 Các tần số thường được sử dụng trong hệ thống RFID:
- LF: 125 kHz – 34.2 kHz (low frequencies): ứng dụng nhiều cho hệ thốngquan lý nhân sự, chấm công, cửa bào mật, bãi giữ xe
hàng hóa, vận chuyển hàng hóa, cửa bảo mật, bãi giữ xe
- UHF: 860 MHz - 960 MHz (ultra high frequencies): ứng dụng nhiều trongcác hệ thống kiểm soát như thu phí đường bộ tự động, kiểm kê kho hàng,kiểm soát đường đi của hàng hóa
- SHF: 2.45 GHz: (super high frequencies): ứng dụng nhiều trong các hệ
thống kiểm soát như thu phí đường bộ tự động, kiếm soát lưu thông hànghóa, kiểm soát hàng hóa, kiểm kê kho hàng
Phương án chọn phần cứng: Với các ứng RFID người ta sẽ thường chọn
các module đầu đọc thẻ có sẳn với các tần số khác nhau như 13.56Mhz,433Mhz…
- SDA: kết nối với chân SPI_SDA của vi điều khiển để lựa chọn chip khi
giao tiếp SPI (Kích hoạt ờ mức thấp)
- SCK: Kết nối với chân SPI_SDA của vi điều khiển để tạo xung trong chế
độ truyền SPI
- MISO: Kết nối với chân SPI _M1SO của vi diêu khiển có chức năng
Master Data Out- Slave In trong chế độ giao tiếp SPI
- MOSI: Kết nối với chân SPI_MOS1 của vi diều khiển có chức năng Master
Data In- Slave Out trong chế độ giao tiêp SPI
- IRQ: Chân ngắt.
- GND: Chân nối mass.
Trang 11- RST: Chân Reset.
- VCC: Chân cấp nguồn.
2.1.3 LCD 16X2 và I2C
Giới thiệu LCD 16x2
LCD (Liquid Crystal Display) được sử dụng trong rất nhiều các ứng dụng của
Vi Điều Khiển LCD có rất nhiều ưu điểm so với các dạng hiển thị khác Nó có khả năng hiển thị kí tự đa dạng, trực quan (chữ, số và kí tự đồ họa), dễ dàng đưa vào mạch ứng dụng theo nhiều giao thức giao tiếp khác nhau, tốn rất ít tài nguyên
Trang 12Bảng 2.5 Sơ đồ chân LCD 16x2
Trang 131 Vss Chân nối đất cho LCD, khi thiết kế mạch ta nối chân này
với GND của mạch điều khiển
2 VDD Chân cấp nguồn cho LCD, khi thiết kế mạch ta nối chân
này với VCC=5V của mạch điều khiển
3 VEE Điều chỉnh độ tương phản của LCD
4 RS Chân chọn thanh ghi (Register select) Nối chân RS với
logic “0” (GND) hoặc logic “1” (VCC) để chọn thanh ghi.+ Logic “0”: Bus DB0-DB7 sẽ nối với thanh ghi lệnh IR của LCD (ở chế độ “ghi” - write) hoặc nối với bộ đếm địa chỉ của LCD (ở chế độ “đọc” - read)
+ Logic “1”: Bus DB0-DB7 sẽ nối với thanh ghi dữ liệu
DR bên trong LCD
5 R/W Chân chọn chế độ đọc/ghi (Read/Write) Nối chân R/W với
logic “0” để LCD hoạt động ở chế độ ghi, hoặc nối với logic “1” để LCD ở chế độ đọc
6 E Chân cho phép (Enable) Sau khi các tín hiệu được đặt lên
bus DB0-DB7, các lệnh chỉ được chấp nhận khi có 1 xung cho phép của chân E
+ Ở chế độ ghi: Dữ liệu ở bus sẽ được LCD chuyển vào(chấp nhận) thanh ghi bên trong nó khi phát hiện một xung (high-to-low transition) của tín hiệu chân E
+ Ở chế độ đọc: Dữ liệu sẽ được LCD xuất ra DB0-DB7 khi phát hiện cạnh lên (low-to-high transition) ở chân E và được LCD giữ ở bus đến khi nào chân E xuống mức thấp
7 – 14 DB0
-DB7 Tám đường của bus dữ liệu dùng để trao đổi thông tin với MPU Có 2 chế độ sử dụng 8 đường bus này :
+ Chế độ 8 bit : Dữ liệu được truyền trên cả 8 đường, với bit MSB là bit DB7
+ Chế độ 4 bit : Dữ liệu được truyền trên 4 đường từ DB4 tới DB7, bit MSB là DB7
Trang 14 Module I2C
Bằng việc sử dụng giao tiếp I2C, việc điều khiển trực tiếp màn hình được chuyển sang cho IC xử lý nằm trên mạch Chỉ cần việc gửi mã lệnh cùng nội dung hiển thị, do vậy giúp vi điều khiển có nhiều thời gian xử lý các tiến trình phức tạp khác
I2C sử dụng hai đường truyền tín hiệu: một đường xung nhịp đồng hồ (SCL)
và một đường tín hiệu (SDA) SCL và SDA luôn được kéo lên nguồn bằng một điệntrở kéo lên có giá trị xấp xỉ 4.7 KΩ
Hình 2.7 Module I2C Hình 2.8 Sơ đồ các chân I2C
Bảng 2.7 Thông số kỹ thuật Module I2C
Ưu điểm của việc sử dụng Module giao tiếp I2C
- Giao tiếp I2C chỉ sử dụng duy nhất 2 dây tín hiệu: SDA và SCL giúp tiếtkiệm chân trên vi điều khiển
- Tốc độ truyền dữ liệu lên đến 400Kbps
- Dữ liệu truyền nhận đảm bảo tính toàn vẹn vì sử dụng cơ chế phản hồi(ACK) trên mỗi byte dữ liệu
- Có khả năng kết nối nhiều thiết bị với nhau: trên mạch có sẵn các mốihàn
- A0, A1, A2 để thay đối địa chỉ của module
- Địa chỉ mặc định: 0x27, có thể mắc vào I2C bus tối đa 8 module
2.1.4 Module cảm biến hồng ngoại
Giới thiệu module cảm biến hồng ngoại FC-51
Khi phát hiện vật cản, tín hiệu đầu ra OUT ở mức thấp và đèn led màu xanhsáng Có thể điều chỉnh được khoảng cách bằng biến trở Chỉnh chiết áp để tăngkhoảng cách theo chiều kim đồng hồ, và ngược lại để giảm khoảng cách
Trang 15Hình 2.9 Module cảm biến hồng ngoại Hình 2.10 Sơ đồ chân
Thông số kỹ thuật
Bảng 2.8 Thông số kỹ thuật Module cảm biến hồng ngoại
Chức năng các chân
- Chân VCC: chân cấp nguồn
- Chân GND: chân nối mass
- Chân OUT: chân tín hiệu ngõ ra (mức ‘0’ có vật cản, mức ‘1’ không có vật cản).
Trang 162.1.5 Module cảm biến lửa
Giới thiệu module cảm biến lửa
Cảm biến phát hiện lửa (flame sensor) thường được sử dụng cho các ứng dụng phát hiện lửa như: xe robot chữa cháy, cảm biến lửa, Tầm phát hiện của cảm biến trong khoảng 80cm, góc quét là 60 độ, có thể phát hiện lửa tốt nhất là loại có bước sóng từ 760nm - 1100nm
Cảm biến phát hiện lửa (flame sensor) có hai ngõ ra tín hiệu là Digital và Analog rất dễ dử dụng
Các cảm biến ngọn lửa được thiết kế để chỉ phát hiện đám cháy, nhưng nókhông phải là chống cháy Khi sử dụng nó, hãy giữ một khoảng cách an toàn tránh
hư hỏng Có thể điều chỉnh cường độ phát hiện tia lửa bằng biến trở gắn trên cảmbiến
Hình 2.11 Module cảm biến lửa Hình 2.12 Kí hiệu module cảm biến lửa
- Chân VCC: Kết nối nguồn 3.3V ~ 5.3V
- Chân GND: Nối mass chung
- Chân AO: Analog output
- Chân DO: Digital output
Trang 172.1.6 Buzzer
Giới thiệu về Buzzer
Hình 2.13 Buzzer Hình 2.14 Kí hiệu Buzzer
Bảng 2.9 Thông số kỹ thuật Buzzer
2.1.7 Động cơ servo SG90
Giới thiệu servo SG90
Servo là một dạng động cơ điện đặc biệt Không giống như động cơ thông thường cứ cắm điện vào là quay liên tục, servo chỉ quay khi được điều khiển
(bằng xung PPM) với góc quay nằm trong khoảng bất kì từ 0o - 180o Mỗi loại servo
có kích thước, khối lượng và cấu tạo khác nhau
Hình 2.15 Servo SG90 Hình 2.16 Sơ đồ chân Servo SG90
Trang 18 Giới thiệu phần mềm Arduino IDE
Với mục tiêu của đề tài là sử dụng Arduino Uno R3 nên phần mềm để viếtchương trình điều khiển là phần mềm Arduino IDE
Arduino IDE (Arduino Integrated Development Environment) là một trình soạnthảo văn bản giúp viết code để nạp vào bo mạch arduino Arduino có thể chạy trênWindows, MAC OS và Linux
Một chương trình viết bởi Arduino IDE được gọi là sketch, sketch được lưudưới định dạng ino
Sau khi khơi động Arđuino IDE, ta được giao diện như hình sau:
Hình 2.17 Giao diện lập trình Arduino IDE
Chương trình Arduino được viết bằng C hoặc C++ Arduino IDE đi kèm với
một thư viện phần mềm được gọi là " Wiring’’ Người sử dụng chì cần định nghĩa
hai hàm để thực hiện một chương trình:
Setup () : hàm chạy một lần duy nhất vào lúc bắt đầu của một chương trình
dùng đê khởi tạo các thiết lập
Loop () : hàm được gọi lặp lại liên tục cho đến khi bo mạch được tắt đi.
Trang 19Arduino IDE được phát triển và có thể chạy trên Windows, MAC OS X và
Linux
2.3 Phần mềm MICROSOFT EXCEL và công cụ PARALLAX DATA
ACQUISLTION (PLX-DAQ)
2.3.1 Phần mềm Microsoft Excel
Giới thiệu phần mềm Microsoft Excel
Microsoft Excel là một ứng dụng bảng tính thuộc bộ Microsoft Office, côngdụng chính của nó là giúp người dùng tính toán nhanh và chính xác với số lượng dữliệu lớn Excel là một tập hợp các hàng và cột được kết hợp với nhau tạo ra mộtbảng tính lớn Các hàng thường được ký hiệu lần lượt bằng các chữ cái như: A, B,
C, D, E,… còn các cột thì được ký hiệu bằng các con số từ 1, 2, 3 cho đến n… Mộtcột và một hàng gộp lại với nhau sẽ trở thành một ô tính Địa chỉ của ô sẽ được xácđịnh bởi chữ cái đại diện cho cột và số đại diện cho hàng
Cấu trúc của Excel:
Bảng tính – Sheet: Sheet là bảng tính trong Excel Mỗi bảng tính có tới
hơn 4 triệu ô dữ liệu, người dùng có thể thoải mái sử dụng chúng để tính toán, lậpbiểu mẫu, phân tích dữ liệu…
Sổ tay – Workbook: một Workbook thường có từ 1 – 255 sheet riêng biệt.
Workbook thường được sử dụng để tập hợp những loại bảng tính, đồ thị… có sựliên hệ với nhau Excel không giới hạn số lượng Workbook nhưng việc mở đượcbao nhiêu Workbook sẽ tùy thuộc vào bộ nhớ máy tính
Cột – Column: Cột là tập hợp của các ô tính theo chiều dọc Độ rộng mặc
định của mỗi cột là 9 ký tự (có thể thay đổi trị số này từ 0 – 255 ký tự) Một bảngtính Excel có tới 256 cột, mỗi cột được gán một chữ cái khác nhau như: A, B, C, E,
F, G, H…
Dòng – Row: Dòng là tập hợp của các ô tính theo chiều ngang Chiều cao
mặc định của dòng là là 12.75 chấm điểm (có thể thay đổi trị số này từ 0 – 409).Một bảng tính Excel có ít nhất 16384 dòng, mỗi dòng được gán một chữ số như: 1,
2, 3, 4, 5…
Ô – Cell: Ô là điểm giao nhau của dòng và cột Tọa độ của một ô được xác
định bởi ký hiệu số thứ tự của dòng và chữ cái ký hiệu của cột
Vùng – Range: Vùng thường là tập hợp của nhiều ô lân cận nhau, nó
thường được xác định bởi toạ độ ô đầu và toạ độ ô cuối Vùng có thể là một ô, mộtnhóm ô hay là toàn bộ bảng tính, có thể làm việc với nhiều vùng khác nhau cùngmột lúc
2.3.2 Công cụ Parallax Data Acquiltion
Giới thiệu Công cụ Parallax Data Acquiltion
PLX-DAQ là một công cụ bổ trợ thu thập dữ liệu vi điều khiển Parallax dànhcho Microsoft Excel Bất kỳ bộ vi điều khiển nào của chúng tôi được kết nối với bất
kỳ cảm biến nào và cổng nối tiếp của PC hiện có thể gửi dữ liệu trực tiếp vào Excel.Phần mềm bổ trợ thu thập tới 26 kênh dữ liệu từ bất kỳ bộ vi điều khiển thị sai nào
và đưa các số vào cột khi chúng đến PLX-DAQ cung cấp khả năng phân tích bảngtính dễ dàng đối với dữ liệu được thu thập tại hiện trường, phân tích các cảm biếntrong phòng thí nghiệm và giám sát thiết bị theo thời gian thực
Trang 20 PLX-DAQ có các tính năng sau:
- Dữ liệu đồ thị hoặc đồ thị khi nó đến trong thời gian thực bằng Microsoft Excel
- Ghi lên đến 26 cột dữ liệu
- Đánh dấu dữ liệu bằng thời gian thực (hh: mm: ss) hoặc giây kể từ khi đặtlại
- Đọc / Ghi bất kỳ ô nào trên trang tính
- Đọc / Đặt bất kỳ trong 4 hộp kiểm trên điều khiển giao diện
- Tốc độ truyền lên đến 128K Hỗ trợ Com1-15 yêu cầu hệ thống
Ở trang tính Excel với PLX-DAQ đã được kích hoạt, cửa sổ Data
Acquisation for Excel như hình dưới đây sẽ xuất hiện:
Hình 2.18 Giao diện kết nối giữa Arduino và ExcelCần thực hiện lựa chọn cổng giao tiếp (Port) và tốc độ truyền (Baud) tương ứngvới kết nối của arduino, sau đó kết nối (Connect) để PLX-DAQ bắt đầu thực hiệnviệc nhận dữ liệu
Khi hoàn tất, dữ liệu sẽ được cập nhật vào các Cell tương ứng do Arduino địnhtrước trong Sheet đầu tiên của file Excel Việc hiển thị dữ liệu này lên các dạng đồthị hoặc sơ đồ là khá đơn giản, tùy theo ý đồ và trình Excel của người sử dụng
Trang 21Chương 3 : THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG
3.1 Yêu cầu và sơ đồ khối hệ thống
3.1.1 Yêu cầu của hệ thống
Hệ thống có các chức năng sau:
Hiển thị LCD trạng thái vị trí bãi xe còn trống, hiển thị lời chào ra vào
Dùng thẻ RFID để kích hoạt đóng mở cổng
Báo hiệu bằng còi, cửa tự mở, khi phát hiện thẻ hoặc có lửa, cháy
Lưu thời gian, thông tin người dùng, trạng thái ra vào bãi xe ở file Excel
3.1.2 Sơ đồ khối và chức năng mỗi khối
Hình 3.1 Sơ đồ khối của hệ thống
Chức năng từng khối:
Khối xử lý trung tâm: Truyền dữ liệu để cập nhật cơ sở dữ liệu hiển thị lên
LCD, đồng thời truyền dữ liệu đến khối chấp hành và nhận tín hiệu từ khốicảm biến và đầu đọc reader, gửi dữ liệu lên máy tính
Khối hiển thị: Nhận dữ liệu từ khối xử lý trung tâm để hiển thị ra LCD lời
Giao diện Excel trên máy tính: Nhận thông tin ID, tên, thời gian, trạng thái
ra vào từ khối xử lí trung tâm qua cổng USB
Trang 223.1.3 Hoạt động của hệ thống
Khi hệ thống được cấp nguồn hệ thống sẽ hoạt động theo trình tự như sau:
Bước 1: Khi được cấp nguồn toàn bộ hệ thống sẽ khởi động, các khối như
khối hiển thị và khối chấp hành thực sẽ đợi tín hiệu từ khối xử lý trung tâm,khối cảm biến thực hiện việc thu thập thông tin
Bước 2: Khối xử lý trung tâm sẽ bắt đầu nhận dữ liệu từ khối cảm biến và
reader sau khi được cấp nguồn hoạt động
Bước 3: Tín hiệu từ khối cảm biến và reader (MFRC522, cảm biến hồng
ngoại, lửa) truyền tới khối xử lý trung tâm để xử lí, truyền dữ liệu đến máy tính và đưa ra yêu cầu thực thi cho khối chấp hành thực hiện
3.2 Giới thiệu một số hàm sử dụng trong Arduino
Serial.begin( );
- Dùng thiết lập giao tiếp nối tiếp giữa bo Arduino và một thiết bị khác
- Ví dụ: Serial.begin(9600); //thiết lập giao tiếp nối tiếp với máy tính 9600 bitmỗi giây
pinMode( );
- Định cấu hình chân được chỉ định để hoạt động như một đầu vào hoặc một đầu
ra
- Cú pháp: pinMode(pin, mode);
pin: số chân Arduino để đặt chế độ
mode: chế độ INPUT, OUTPUT
- Ghi giá trị CAO hoặc THẤP vào chân kỹ thuật số
- Cú pháp: digitalWrite (pin, giá trị);
pin: số chân Arduino
giá trị: HIGH hoặc LOW
Trang 23- cú pháp: myservo.attach(pin);
myservo: biến được khai báo là kiểu servo
pin: một chân digital/analog bất kỳ được nối tới servo
Một số hàm thông dụng sử dụng cho LCD kết hợp với I2C
- lcd.init() : Khởi tạo màn hình lcd
- lcd.clear() : Xóa màn hình, đưa con trỏ về vị trí 0,0
- lcd.home() : Đưa con trỏ về vị trí 0
- lcd.setCursor(x,y) : Đưa con trỏ về vị trí cột thứ x, hàng thứ y
- lcd.noDisplay() : Không hiển thị gì trên màn hình cả
- lcd.display() : Hiển thị lên màn hình
- lcd.noBlink() : Không nhấp nháy con trỏ
- lcd.blink() : Nhấp nháy con trỏ
- lcd.scrollDisplayLeft() : Cuộn màn hình bên trái
- lcd.scrollDisplayRight() : Cuộn màn hình bên phải
- lcd.leftToRight() : Kí tự sẽ hiển thị từ phía bên trái sang phải
- lcd.rightToLeft() : Kí tự sẽ hiển thị từ phía phải sang trái
- lcd.noBacklight() : Tắt đèn nền
- lcd.backlight() : Có đèn nền
- lcd.write(x) : Lcd sẽ in ra kí tự thứ x trong ô nhớ từ 0-7 của CGRAM
- lcd.createChar(location,charmap[]) : Hiển thị một kí tự charmap[] bất kì
Sơ đồ kết nối cảm biến lửa với board ArduinoUno được kết nối như sau:
Kết nối cảm biến lửa với Ardunio:
Trang 24Hình 3.2 Kết nối cảm biến lửa với Arduino Uno R3
Chân VCC: kết nối nguồn 5V
Chân GND: nối mass chung
Chân D0 : kết nối với chân A2 của Arduino UNO R3
Code test cảm biến lửa
int cambien = 5; //Chân cảm biến nối chân số 5 Arduino