Với Arduino bạn có thể ứng dụng vào những mạch đơn giản như mạch cảmbiến ánh sáng bật tắt đèn, mạch điều kiển động cơ,… hoặc cao hơn nữa bạn có thểlàm những sản phẩm như: máy in 3D, Robo
Trang 1TRƯỜNG ĐẠI HỌC TÀI NGUYÊN VÀ MÔI TRƯỜNG HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO BÀI TẬP LỚN HỌC PHẦN XÂY DỰNG HỆ THỐNG NHÚNG
XÂY DỰNG HỆ THỐNG ĐO MỨC CHẤT LỎNG TRONG BÌNH CHỨA
SỬ DỤNG CẢM BIẾN SIÊU ÂM VÀ ĐO NHIỆT ĐỘ
TÊN HỌC PHẦN: XÂY DỰNG HỆ THỐNG NHÚNG
GIẢNG VIÊN HƯỚNG DẪN: NGUYỄN ĐỨC AN
Hà Nội, ngày 20 tháng 12 năm 2022
Trang 2MỤC LỤC
DANH MỤC HÌNH ẢNH 3
MỞ ĐẦU 1
CHƯƠNG 1: TỔNG QUAN VỀ VẤN ĐỀ NGHIÊN CỨU 4
1.1 Giới thiệu về hệ thống nhúng 4
1.1.1 Khái niệm 4
1.1.2 Đặc điểm của hệ thống nhúng 5
1.1.3 Ứng dụng và tầm quan trọng của hệ thống nhúng 6
1.2 Giới thiệu về board nhúng Arduino 6
1.2.1 Arduino là gì ? 6
1.2.2 Cấu tạo Arduino UNO 8
1.2.4 Ứng dụng Arduino 8
1.2.5 Phần mềm lập trình Arduino IDE 9
1.3 Linh kiện sử dụng trong đề tài 9
1.3.1 Kít Arduino R3 9
1.3.2 Module cảm biến siêu âm HC-SR04 13
1.3.3 Màn hình LCD 16x2 15
1.3.4 Nhiệt kế DS18B20 16
1.3.5 Điện trở 4,75k, 221k 17
1.3.6 Chiết áp 10k Ohms 18
1.3.7 Còi chíp, công tắc, đèn led 18
1.3.8 Board cắm, dây nối 20
CHƯƠNG 2: KẾ HOẠCH THỰC HIỆN, PHÂN TÍCH ĐÁNH GIÁ HỆ THỐNG .20
2.1 Bảng kế hoạch thực hiện 20
2.2 Xác định hệ thống được xây dựng 21
3.3 Phân tích hệ thống cần được xây dựng 22
CHƯƠNG 3: XÂY DỰNG HỆ THỐNG 23
Trang 33.1 Xây dựng hệ thống với các thiết bị vật lý 23
3.2 xây dựng phần mềm điều kiển hệ thống 23
3.2.1 Mô phỏng trên phần mềm protues 23
3.2.2 Thực hiện code trên IDE Arduino 24
3.3 Vận hành thử nghiệm hệ thống và kết quả thử nghiệm 26
3.3.1 Hệ thống hoạt động trên phần mềm protues 26
3.3.2 Hệ thống hoạt động trên thiết bị 27
KẾT LUẬN 29
Nội dung đã thực hiện: 29
Ứng dụng vào thực tiễn: 29
TÀI LIỆU THAM KHẢO 32
Trang 4DANH MỤC HÌNH ẢNH
Hình 1.1 Board nhúng Arduino UNO
Hình 1.2 Cấu tạo Arduino
Hình 1.3 Phần mềm IDE
Hình 1.4 Kit Arduino R3
Hình 1.5 Vi điều kiển Arduino R3
Hình 1.6 Các cổng vào ra
Hình 1.7 Module cảm biến siêu âm HC- SR04
Hình 1.8 Nguyên lý hoạt động của HC- SR04
Hình 3.2 Hệ thống đo mức nước đầy
Hình 3.4 Hệ thống đo mức nước thấp (hết)
Hình 3.10 Hệ thống hiển thị led xanh và nhiệt độHình 3.3 Cảm biến siêu âm đo mức nước
Trang 5MỞ ĐẦU
Tự động hóa quá trình công nghệ đã thực sự phát triển và ứng dụng mạnh
mẽ trong công nghiệp, là sự lựa chọn tối ưu cho mọi lĩnh vực nhằm tạo ra sảnphẩm chất lượng cao, tiết kiệm chi phí sản xuất tạo khả năng cạnh tranh mạnh mẽtrên thị trường
Khoa học kỹ thuật, cách mạng công nghệ đang từng bước phát triển vàchúng ta- những con người của kỹ thuật phải thay đổi tầm nhìn của mình để theokịp công nghệ hiện đại Trọng tâm của khoa học kỹ thuật trong nền văn minh côngnghiệp này đặt vào 5 lĩnh vực chính đó là công nghệ thông tin, công nghệ vật liệu,nguồn năng lượng, công nghệ sinh học và công nghệ kỹ thuật điều kiển tự động
Từ khi Arduino ra đời, nó đã tạo nên một bước ngoặc mới cho sự phát triển của tựđộng hóa trong công nghiệp Arduino là công cụ hỗ trợ đắc lực cho công việc lậptrình Điểm hấp dẫn ở Arduino với người đam mê lập trình là ngôn ngữ dễ học khágiống C/C++, các ngoại vi trên bo mạch đều đã được chuẩn hóa nên không cần biếtnhiều về điện tử, chúng ta có thể lập trình được những ứng dụng thú vị Thêm nữaArduino là một platform đã được chuẩn hóa nên có rất nhiều bo mạch mởrộng(shield) để cắm chồng lên bo mạch Arduino, có thể hình dung dễ hiểu là “library” của các ngôn ngữ lập trình
Với Arduino bạn có thể ứng dụng vào những mạch đơn giản như mạch cảmbiến ánh sáng bật tắt đèn, mạch điều kiển động cơ,… hoặc cao hơn nữa bạn có thểlàm những sản phẩm như: máy in 3D, Robot, khinh khí cầu, máy bay không ngườilái,… Chính vì sự tiện lợi và đơn giản cho con người sử dụng mà Arduino đã trởthành một hiện tượng trong ngành điện tử thế giới Những sản phẩm của cộng đồngngười dùng Arduino cũng như những thiết bị hỗ trợ Arduino lớn đến mức khôngthể thống kê được
Trang 6Arduino được cấu tạo từ phần cứng và phần mềm IDE Phần cứng hay tavẫn nghe một cái tên quen thuộc là vi điều kiển, board mạch mã nguồn mở.
Nhằm ứng dụng các kiến thức đã được trang bị trong quá trình học tập vàothực tế dựa trên cơ sở môn học” Xây dựng hệ thống nhúng” nhóm em đã lựa chọn
đề tài” Xây dựng hệ thống đo chất lỏng trong bình chứa sử dụng cảm biến siêu
âm và đo nhiệt độ”.
Thời gian thực hiện: Từ tháng 11 năm 2022 đến tháng 12 năm 2022
Trang 7PHÂN CÔNG CÔNG VIỆC
Đặng Văn Tự - Xây dựng hệ thống trên protues
- Code hệ thống trên IDENguyễn Thị Thu Hoài - Xây dựng tổng quan về vấn đề nghiên cứuNguyễn Thị Thùy - Xây dựng kế hoạch thực hiện
Tạ Văn Đức - Lắp ráp hệ thống
Lê Thúy Anh - Xây dựng kết luận, tài liệu tam khảo
Dương Việt Anh - Nghiên cứu code hệ thống
Giảng viên hướng dẫn: Nguyễn Đức An
Mục tiêu nghiên cứu:
- Tìm hiểu kỹ hơn về mạch điều kiển Arduino mô phỏng trên Protues vàcách kết nối với máy tính
- Nguyên cứu về nguyên lý hoạt động của cảm biến siêu âm ( HC-SR04 )thông qua các tài liệu trên internet
- Đưa ý tưởng về các thông số và giá trị được hiển thị trên thanh LCD,LED và loa cảnh báo
- Nghiên cứu các linh kiện trong bo mạch và các linh kiện bảo vệ
- Mô phỏng trên ứng dụng Protues
Trang 8CHƯƠNG 1: TỔNG QUAN VỀ VẤN ĐỀ NGHIÊN CỨU
1.1 Giới thiệu về hệ thống nhúng
1.1.1 Khái niệm
Hệ thống nhúng (tiếng anh embedded system) là một thuật ngữ để chỉ một
hệ thống có khả năng tự trị được nhúng vào trong một môi trường hay một hệthống mẹ Đó là các hệ thống tích hợp cả phần cứng và phần mềm phục vụ các bàitoán chuyên dụng trong nhiều lĩnh vực công nghiệp, tự động hoá điều khiển, quantrắc và truyền tin Đặc điểm của các hệ thống nhúng là hoạt động ổn định và cótính năng tự động hoá cao
Hệ thống nhúng thường được thiết kế để thực hiện một chức năng chuyênbiệt nào đó Một hệ thống nhúng chỉ thực hiện một hoặc một vài chức năng nhấtđịnh, thường đi kèm với những yêu cầu cụ thể và bao gồm một số thiết bị máy móc
và phần cứng chuyên dụng mà ta không tìm thấy trong một máy tính đa năng nóichung Vì hệ thống chỉ được xây dựng cho một số nhiệm vụ nhất định nên các nhàthiết kế có thể tối ưu hóa nó nhằm giảm thiểu kích thước và chi phí sản xuất Các
hệ thống nhúng thường được sản xuất hàng loạt với số lượng lớn Hệ thống nhúngrất đa dạng, phong phú về chủng loại Đó có thể là những thiết bị cầm tay nhỏ gọnnhư đồng hồ kĩ thuật số và máy chơi nhạc MP3, hoặc những sản phẩm lớn như đèngiao thông, bộ kiểm soát trong nhà máy hoặc hệ thống kiểm soát các máy nănglượng hạt nhân Xét về độ phức tạp, hệ thống nhúng có thể rất đơn giản với một viđiều khiển hoặc rất phức tạp với nhiều đơn vị, các thiết bị ngoại vi và mạng lướiđược nằm gọn trong một lớp vỏ máy lớn
Trang 91.1.2 Đặc điểm của hệ thống nhúng
Các hệ thống nhúng được thiết kế để thực hiện một số nhiệm vụ chuyêndụng chứ không phải đóng vai trò là các hệ thống máy tính đa chức năng Một số
hệ thống đòi hỏi ràng buộc về tính hoạt động thời gian thực để đảm bảo độ an toàn
và tính ứng dụng; một số hệ thống không đòi hỏi hoặc ràng buộc chặt chẽ, chophép đơn giản hóa hệ thống phần cứng để giảm thiểu chi phí sản xuất
Một hệ thống nhúng thường không phải là một khối riêng biệt mà là mộthệthống phức tạp nằm trong thiết bị mà nó điều khiển
Phần mềm được viết cho các hệ thống nhúng được gọi là firmware và đượclưu trữ trong các chip bộ nhớ ROM hoặc bộ nhớ flash chứ không phải là trong một
Yêu cầu chất lượng ổn định và độ tin cậy cao: Nhiều loại thiết bị nhúng cónhững yêu cầu rất cao về chất lượng, tính ổn định và độ tin cậy Lỗi của hệ thốngnhúng có thể gây ra tai nạn khủng khiếp, lỗi trên hệ thống nhúng có thể không sửađược Vì vậy việc phát triển hệ thống nhúng yêu cầu quy trình kiểm tra - kiểm thửrất cẩn thận
Trang 101.1.3 Ứng dụng và tầm quan trọng của hệ thống nhúng
Theo các nhà thống kê trên thế giới, thị trường hệ thống nhúng lớn gấp khoảng
100 lần thị trường PC, trong đó số chip xử lý trong các hệ thống nhúng chiếm tới 99% số chip được sử dụng
Hệ thống nhúng được ứng dụng tất cả các lĩnh vực trong cuộc sống chúng ta hiện nay:
Các thiết bị trong gia đình: tivi, tủ lạnh, nồi cơm điện,…
Các thiết bị trong công nghiệp: robot, dây chuyền,…
Giao thông vận tải: Ô tô, máy bay,…
Cùng với cuộc cách mạng khoa học – kĩ thuật, hệ thống nhúng được coi làlĩnh vực then chốt quyết định sự thành công cuộc cách mạng
1.2 Giới thiệu về board nhúng Arduino
1.2.1 Arduino là gì ?
Arduino là một bo mạch vi điều khiển do một nhóm giáo sư và sinh viênnước Ý thiết kế và đưa ra đầu tiên vào năm 2005 Mạch Arduino được sử dụng đểcảm nhận và điều khiển nhiều đối tượng khác nhau Nó có thể thực hiện nhiềunhiệm vụ lấy tín hiệu từ cảm biến đến điều khiển đèn, động cơ, và nhiều đối tượngkhác Ngoài ra mạch còn có khả năng liên kết với nhiều module khác nhau nhưmodule đọc thẻ từ, ethernet shield, sim900A, ….để tăng khả ứng dụng của mạch
Phần cứng bao gồm một board mạch nguồn mở được thiết kế trên nền tảng
vi xử lý AVR Atmel 8bit, hoặc ARM, Atmel 32-bit,… Hiện phần cứng củaArduino có tất cả 6 phiên bản, Tuy nhiên phiên bản thường được sử dụng nhiềunhất là Arduino Uno và Arduino Mega
Trang 11Hình 1.1 Board nhúng Arduino UNO
1.2.2 Cấu tạo Arduino UNO
Trang 12Hình 1.2 Cấu tạo Arduino
Arduino điều khiển thiết bị ánh sáng cảm biến tốt Là một trong những bộphần quan trọng trong cây đèn giao thông, các hiệu ứng đèn nháy được càiđặt làm nổi bật các biển quảng cáo
Arduino cũng được ứng dụng trong máy in 3D và nhiều ứng dụng khác tùythuộc vào khả năng sáng tạo của người sử dụng
Trang 13 Lập trình máy bay không người lái Có thể nói đây là ứng dụng có nhiều kìvọng trong tương lai.
Trang 14Hình 1.4 Kit Arduino R3
Điện áp hoạt động 5V DC (chỉ được cấp qua cổng USB)
Điện áp vào khuyên dùng 7-12V DC
Điện áp vào giới hạn 6-20V DC
Số chân Digital I/O 14 (6 chân hardware PWM)
Số chân Analog 6 (độ phân giải 10bit)
Dòng tối đa trên mỗi chân I/O 30 mA
Bộ nhớ flash 32 KB (ATmega328) với 0.5KB dùng bởi bootloader
Trang 15EEPROM 1 KB (ATmega328)
Thông số kỹ thuật
- Vi điều kiển
Hình 1.5 Vi điều kiển Arduino R3
- Vin: Chân Vin giúp cung cấp điện áp vào Arduino bằng cách sử dụngnguồn điện bên ngoài ngược với vôn từ kết nối USB hoặc RPS khác
- 5 Volts: RPS có thể tiếp cận từ điện áp đầu vào thông một bộ điều chỉnhbằng cách sử dụng để cung cấp năng lượng cho bộ vi điều khiển cũngnhư các thành phần sử dụng trên bảng Arduino
- 3,3V: Điện áp cung cấp 3,3V được tạo ra với bộ điều chỉnh trên bo mạch
và dòng rút cao nhất sẽ là 50 mA
- GND: Chân GND (nối đất)
- Bộ nhớ: Bộ nhớ của Arduino Uno R3 sử dụng ATmega328 gồm có 23KB
và bộ nhớ 0,5KB và bao gồm SRAM-2 KB cũng như EEPROM-1KB
- Đầu vào đầu ra: Gồm có 14 chân kỹ thuật số làm đầu vào hoặc đầu ra vớicác chức năng như pin Mode (), Digital Read () và Digital Write ()
Trang 16Hình 1.6 Các cổng vào ra
- Gim nối tiếp: Bao gồm chân chân TX (1) và RX (0) có thể sử dụng đểtruyền dữ liệu nối tiếp TTL, việc kết nối này cũng có thể thực hiện đượcvới các chân tương đương của ATmega8 U2 USB với chip TTL
- PWM Pins: Gồm chân 3, 5, 6, 9, 10, & 11, đưa ra đầu ra là PWM 8 bitvới hàm tương tự Write ()
- Chân SPI: Gồm có chân 10, 11, 12, 13 là SS, MOSI, MISO, SCK để duytrì giao tiếp SPI với sự trợ giúp của thư viện SPI
- Pin LED: Mạch điện được tích hợp sẵn với đèn LED sử dụng pin-13 kỹthuật số, đèn LED được phát sáng khi chân kỹ thuật số ở mức cao vàkhông phát sáng nếu chân kỹ thuật số ở mức thấp
- Chân TWI: Gồm SDA hoặc A4, & SCL hoặc A5 hỗ trợ giao tiếp TWIvới sự trợ giúp của thư viện Wire
- Pin AREF: Pin AREF hay còn gọi là chân tham chiếu tương tự, đây làđiện áp tham chiếu đến các đầu vào của i / ps tương tự
- Pin (RST) Reset: Pin (RST) Reset mang lại một dòng thấp để đặt lại bộ
vi điều khiển Chúng có ích cho việc sử dụng nút RST đối với các tấmchắn có thể chặn cái này trên bảng Arduino R3
- UART: Hai chân được sử dụng chính là bộ phát 1 và chân số 0 của bộthu Chủ yếu được sử dụng trong giao tiếp nối tiếp UART TTL
Trang 17- I2C: Bo mạch Arduino UNO sử dụng chân SDA hoặc chân A4 và chânA5 Nếu không thì chân SCL được sử dụng cho giao tiếp I2C với thưviện dây.
- MOSI (Pin12): Chân MISO là một CLK nối tiếp và xung CLK sẽ đồng
bộ hóa quá trình truyền của nó được tạo ra bởi chủ
1.3.2 Module cảm biến siêu âm HC-SR04
Cảm biến siêu âm HC-SR04 (Ultrasonic Sensor) được sử dụng rất phổ biến
để xác định khoảng cách vì RẺ và CHÍNH XÁC. Cảm biến HC-SR04 sử dụngsóng siêu âm và có thể đo khoảng cách trong khoảng từ 2 -> 300cm, với độ chínhxác gần như chỉ phụ thuộc vào cách lập trình
Hình 1.7 Module cảm biến siêu âm HC- SR04
Thông số kỹ thuật
- Model: HC-SR04
- Tần số: 40 KHZ
- Điện áp: 5V DC
Trang 18- Chân Trig: Chân digital output
- Chân Echo: Chân digital input
- Chân GND: Chân 0V
Nguyên lý hoạt động
- Để đo khoảng cách, ta sẽ phát 1 xung rất ngắn (5 microSeconds) từchân Trig. Sau đó, cảm biến siêu âm sẽ tạo ra 1 xung HIGH ởchân Echo cho đến khi nhận lại được sóng phản xạ ở pin này Chiều rộngcủa xung sẽ bằng với thời gian sóng siêu âm được phát từ cảm biển vàquay trở lại.
Trang 19Hình 1.8 Nguyên lý hoạt động của HC- SR04
Chức năng của từng chân LCD 1602:
- Chân số 1 - VSS : chân nối đất cho LCD được nối với GND của mạch điềukhiển
Trang 20- Chân số 2 - VDD : chân cấp nguồn cho LCD, được nối với VCC=5V củamạch điều khiển
- Chân số 3 - VE : điều chỉnh độ tương phản của LCD
- Chân số 4 - RS : chân chọn thanh ghi, được nối với logic "0" hoặc logic
- Chân số 15 - A : nguồn dương cho đèn nền
- Chân số 16 - K : nguồn âm cho đèn nền
1.3.4 Nhiệt kế DS18B20
DS18B20 là một loại cảm biến nhiệt độ và nó cung cấp số đọc nhiệt độ từ 9bit đến 12 bit Các giá trị này hiển thị nhiệt độ của một thiết bị cụ thể Giao tiếpcủa cảm biến này có thể được thực hiện thông qua một dây giao thức xe buýt sửdụng một dòng dữ liệu để giao tiếp với bộ vi xử lý
Trang 21Hình 1.10 Nhiệt kế DS18B20
Thông số kỹ thuật
- Phạm vi cung cấp điện là 3.0V - 5.5V
- Fahrenheit bằng từ -67 ° F đến + 257 ° F
- Độ chính xác của cảm biến này là ± 0,5 ° C
- Độ phân giải o / p sẽ từ 9 bit đến 12 bit
- Nó thay đổi nhiệt độ 12 bit thành từ kỹ thuật số trong thời gian 750 ms
- Nhiệt độ có thể được tính toán từ -55 ° C đến + 125 ° C
- Chúng có thể đạt được như SOP, To-92 và cũng như cảm biến chống thấm nước
1.3.5 Điện trở 4,75k, 221k
- Điện trở 4,75k dùng cho bộ chiết áp
Hình 1.11 Điện trở 4,75k
Trang 22- Điện trở 220k dùng cho đèn led
Hình 1.12 Điện trở 221k
1.3.6 Chiết áp 10k Ohms
- Dùng để điều kiển mức tín hiệu trong thiết bị
Hình 1.13 Chiết áp 3362p
1.3.7 Còi chíp, công tắc, đèn led
- Còi chíp để phát ra âm thanh từ hệ thống
Trang 24Hình 1.17 Board cắm, dây nối
CHƯƠNG 2: KẾ HOẠCH THỰC HIỆN, PHÂN TÍCH ĐÁNH GIÁ HỆ
THỐNG 2.1 Bảng kế hoạch thực hiện
Thời gian
thực hiện Nội dung thực hiện Tiến độ thực hiện Kết quả
03/11/2022 Thầy An giáo viên bộ
môn gợi ý những chủ đề
có thể thực hiện
Nhóm đã tìm hiểu những
dự án mà thầy gợi ý và tìm thêm ở ngoài
Hiểu hơn về những đề tài nhóm chuẩn bị thực hiện
24/11/2022 Cả nhóm thảo luận về đề
tài đã chọn Phân chia cho từng thành viên để tìm hiểu những nội
dung của đề tài
Đã tìm được nhiều nội dung để thực hiện đề tài
01/12/2022 Thực hiện báo cáo, đưa ra
những phương hướng thực hiện đồ án
Tìm hiểu những đồ án mẫu phương pháp thực hiện, hướng dẫn
Bản báo cáo đã lên ý tưởng thực hiện
Trang 25Bước đầu hệ thống vẫn còn lỗi không chạy được.
10/12/2022 Việt Anh xây dựng hệ
thống trên các thiết bị vật lý
Hệ thống với cấu tạo phức tạm khó kết nối được với nhau
Các thiết bị nối sai không hoạt động được
11/12/2022 Sửa kết nối lại các thiết bị
hệ thống Đã kết nối đúng các thiết bịvới nhau Hệ thống chạy và hiển thị.12/12/2022 Hoài, Thùy và Thúy Anh
nghiên cứu thực hiện bản báo cáo đồ án
Hoàn thiện với đầy đủ thông tin nhóm và những nội dung có trong đề tài
Thực hiện xong được 2/3 đồ án
16/12/2022 Cả nhóm xem lại hệ thống
đã thực hiện và bổ sung nội dung trong đồ án
Cả nhóm đã hoàn thiện tất
cả và đưa ra đồ án cuối cùng
Hoàn thành báo cáo đồ án
2.2 Xác định hệ thống được xây dựng.
Với yêu cầu của đề tài trên đối tượng đề tài thực hiện chính ở đây là hệ
thống cảm biến lượng nước trong bồn, hệ thống được hình thành với hệ thống cảm
biến để luôn biết được thông tin mức chất lỏng trong bồn còn hay không Để làm
được điều này, nó phải do chính xác được mức chất lỏng trong bồn để hiểu thị lên
màn hình Khi thấy mực nước giảm thì sẽ phát tín hiệu báo đèn, chất lỏng mà
xuống đến mức thấp nhất thì hệ thống thông báo kèm theo còi để cảnh báo.Trong
hệ thống cũng kèm theo đo nhiệt độ tại thời điểm đó là bao nhiêu và hiển thị lên
màn hình