1. Trang chủ
  2. » Luận Văn - Báo Cáo

sử dụng board mạch nhúng mã nguồn mở arduino raspberrypi v v có khả năng kết nối internet và các thiết bị cảm biến giám sát hãy xây dựng hệ thống nhúng có chức năng giám sát cảnh báo cháy nổ

19 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Sử dụng board mạch nhúng mã nguồn mở (Arduino, RaspberryPi v.v…) có khả năng kết nối Internet và các thiết bị cảm biến giám sát, hãy xây dựng hệ thống nhúng có chức năng giám sát, cảnh báo cháy nổ
Tác giả Nguyễn Duy Chiến
Người hướng dẫn Nguyễn Văn Hách
Trường học Trường Đại Học Tài Nguyên Và Môi Trường Hà Nội
Chuyên ngành Công Nghệ Thông Tin
Thể loại Bài tập lớn
Năm xuất bản 2022
Thành phố Hà Nội
Định dạng
Số trang 19
Dung lượng 913,74 KB

Nội dung

Do đó em đã chọn đề tài: “Sử dụng board mạch nhúng mã nguồn mở Arduino, RaspberryPi v.v… có khả năng kết nối Internet và các thiết bị cảm biến giám sát, hãy xây dựng hệ thống nhúng có ch

Trang 1

TRƯỜNG ĐẠI HỌC TÀI NGUYÊN VÀ MÔI TRƯỜNG HÀ NỘI



KHOA CÔNG NGHỆ THÔNG TIN

KỲ THI KẾT THÚC HỌC PHẦN HỌC KỲ I

NĂM HỌC 2022 -2023

Chủ đề bài tập lớn:

Sử dụng board mạch nhúng mã nguồn mở (Arduino, RaspberryPi v.v…) có khả năng kết nối Internet và các thiết bị cảm biến giám sát, hãy xây dựng hệ

thống nhúng có chức năng giám sát, cảnh báo cháy nổ

< Đề Số 05 >

Họ và tên sinh viên: Nguyễn Duy Chiến

Mã học viên/ sinh viên: 20111064061

Trang 2

Giảng viên hướng dẫn: Nguyễn Văn Hách

Hà Nội, ngày 18 tháng 12 năm 2022

Trang 3

MỤC LỤC

LỜI MỞ ĐẦU 2

CHƯƠNG 1 TỔNG QUAN VỀ ĐỀ TÀI NGHIÊN CỨU 3

1.1 Giới thiệu bài toán 3

1.2 Giải quyết bài toán 3

1.2.1 Board mạch nhúng mã nguồn mở Arduino 3

1.2.2 Các linh kiện sử dụng 4

1.2.3 Các phần mềm hỗ trợ 6

CHƯƠNG 2 THIẾT KẾ VÀ XÂY DỰNG MODULE HỆ THỐNG NHÚNG CÓ CHỨC NĂNG GIÁM SÁT, CẢNH BÁO CHÁY NỔ 8

2.1 Thiết kế mô phỏng hệ thống 8

2.2 Lập trình cho hệ thống 9

CHƯƠNG 3 DEMO CHƯƠNG TRÌNH 13

3.1 Khi không phát hiện cháy nổ 13

3.2 Khi phát hiện cháy nổ 13

KẾT LUẬN 15

DANH MỤC TÀI LIỆU THAM KHẢO 17

Trang 4

Lời mở đầu

Hỏa hoạn luôn là một nguy cơ tiềm ẩn nhiều rủi ro trong sản xuất và sinh hoạt hàng ngày Mặc dù đã có nhiều biện pháp và hệ thống được đưa

ra để phát hiện và cảnh báo cháy nhưng nhiều thảm họa do cháy vẫn xảy

ra, gây nhiều thiệt hại về người và của

Ngày nay, khi khoa học công nghệ phát triển một cách mạnh mẽ, việc ứng dụng các thiết bị điện tử vào đời sống cũng ngày càng phổ biến hơn, nhất là với thời đại mà các hệ thống nhúng đang lên ngôi Từ những ứng dụng đơn như đồng hồ kĩ thuật số, máy nghe nhạc đến những ứng dụng cho xã hội như đèn giao thông, bộ kiểm soát trong nhà máy, cửa tự

động cho đến những ứng dụng mang tính quy mô, tầm cỡ như robot, phi thuyền không người lái, kiểm soát nhà máy hạt nhân ,…

Với những kiến thức đã được học và tìm hiểu từ trường học và khoa học công nghệ của cuộc sống hiện đại, em cũng có mong muốn góp thêm phần nào sự phát triển xã hội bằng cách học hỏi và đưa ra những sản

phẩm có ích cho cuộc sống Do đó em đã chọn đề tài: “Sử dụng board mạch nhúng mã nguồn mở (Arduino, RaspberryPi v.v…) có khả năng kết nối Internet và các thiết bị cảm biến giám sát, hãy xây dựng hệ thống nhúng có chức năng giám sát, cảnh báo cháy nổ ” để có một cơ

hội học hỏi Mặc dù đề tài này cũng rất sâu và rộng nhưng bản thân em lại cảm thấy rất hứng thú và say mê khi được giao làm về đề tài này Tuy nhiên do sự hiểu biết còn hạn chế , thời gian làm bài lại có hạn nên bài làm còn có rất nhiều sai sót, em kính mong thầy, cô giúp đỡ em hoàn thành bài làm tốt hơn

Em xin chân thành cảm ơn !

Trang 5

CHƯƠNG 1 : TỔNG QUAN VỀ ĐỀ TÀI NGHIÊN CỨU

1 GIỚI THIỆU BÀI TOÁN

1.1 Mô tả bài toán

Yêu cầu chính của hệ thống này là phát hiện hỏa hoạn, cháy, nổ Chúng sẽ lấy thông tin từ khu vực xung quanh thông qua các cảm biến Một số thiết bị cảm biến được sử dụng để phát hiện cháy, nổ như cảm biến lửa, cảm biến khí gas,… Trong đó cảm biến lửa là phù hợp nhất để phát hiện cháy,nổ , nó có giá thành thấp và khả năng ứng dụng cao

Bài toán đặt ra là xây dựng hệ thống nhúng có chức năng giám sát, cảnh báo cháy nổ.Bao gồm các thiết bị cảm biến giám sát.Bằng cách sử dụng các board mạch nhúng mã nguồn mở để thiết kế và xây dựng hệ thống nhúng cho bài toán này

1.2 Giải quyết bài toán

Từ mô tả, yêu cầu của bài toán em phân tích và định hướng giải quyết bài toán bằng các công nghệ, thiết bị và phần mềm như sau:

1.2.1 Board mạch nhúng mã nguồn mở Arduino

Arduino là một nền tảng mã nguồn mở được sử dụng để 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

Arduino giống như một máy tính nhỏ để người dùng có thể lập trình

và thực hiện các dự án điện tử mà không cần phải có các công cụ chuyên biệt để phục vụ việc nạp code Phần cứng và phần mềm của Arduino đều

là nguồn mở - các sơ đồ đều được public trực tuyến nên bạn hoàn toàn có thể mua linh kiện về và tự làm lấy Arduino là một công cụ học tập, sáng tạo tuyệt vời giúp thực hiện bất cứ dự án nào một cách

dễ dàng Ta có thể truy cập vào trang web chính thức của Arduino để tìm hiểu thêm thông tin và các hướng dẫn lập trình cơ bản

Trang 6

Hình 1.1 Mô hình Simulino Uno

1.2.2 Các linh kiện sử dụng

-Cảm biến lửa (Flame Sensor) :là một thiết bị điện tử có khả năng phát

hiện và cảnh báo tia lửa trong môi trường xung quanh Cảm biến phát hiện lửa 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

Hình 1.2 Mô hình cảm biến lửa -Bóng đèn led đỏ (Led Red) : là bóng đèn phát sáng màu đỏ.

Trang 7

1.3 Mô hình bóng đèn led

- LCD (16x2) là một màn hình nhiều điểm ảnh để hiển thị thông tin một

cách dễ dàng hơn Có nhiều loại LCD, trong bài này chúng ta dùng loại đơn giản 16×2

1.4 Linh kiện LCD

- Mạch mở rộng chân I/O Expander PCF8574: Được sử dụng để mở

rộng chân giao tiếp I/O của Vi điều khiển qua giao tiếp I2C, mạch có khả năng mở rộng 8 I/O giúp bạn giao tiếp được với nhiều thiết bị chỉ qua một vài bước thiết đặt đơn giản, mạch tích hợp DIP Switch giúp dễ dàng thay đổi địa chỉ I2C

Trang 8

Hình 1.5 Linh kiện PCF8574 -Loa (Speaker): Loa là thiết bị phát ra âm thanh, loa được ứng dụng

khá nhiều trong cuộc sống, loa xuất hiện trong dàn âm thanh chuyên nghiệp, loa còn dùng cho dàn âm thanh gia đình

Hình 1.6 Linh kiện speaker

1.2.3 Các phần mềm hỗ trợ

-Proteus là phần mềm thiết kế có sự hỗ trợ của máy tính được sử

dụng cho kỹ thuật điện và điện tử Proteus có thể được sử dụng để tạo chất bán dẫn, mạch tích hợp, bảng dây in, thiết kế mô-đun điện áp cao Trong bài toán này, phần mềm sẽ giúp xây dựng mô phỏng module hệ thống hỗ trợ phát hiện cảnh báo cháy,nổ

- Arduino IDE là một chương trình phần mềm mã nguồn mở cho phép

người dùng viết và tải lên mã trong một môi trường làm việc thời gian thực Vì mã này sau đó sẽ được lưu trữ trong đám mây, nó thường được

sử dụng bởi những người đã tìm kiếm thêm một mức dư thừa Hệ thống này hoàn toàn tương thích với bất kỳ bo mạch phần mềm Arduino nào

Trang 9

Arduino IDE có thể được triển khai trong các hệ điều hành Windows, Mac và Linux Phần lớn các thành phần của nó được viết bằng JavaScript

để chỉnh sửa và biên dịch dễ dàng Mặc dù ý định chính của nó là dựa trên các mã viết, có một số tính năng đáng chú ý khác Nó đã được trang

bị một phương tiện để dễ dàng chia sẻ bất kỳ chi tiết nào với các bên liên quan dự án khác Người dùng có thể sửa đổi bố trí nội bộ và sơ đồ khi cần thiết Có hướng dẫn trợ giúp chuyên sâu sẽ hữu ích trong quá trình cài đặt ban đầu Các hướng dẫn cũng có sẵn cho những ai có thể không có nhiều kinh nghiệm với khung công tác Arduino Phần mềm giúp soạn thảo mã nguồn, biên dịch để nhúng vào các bo mạch, các thiết bị của hệ thống hỗ trợ cảnh báo phát hiện cháy,nổ

Trang 10

CHƯƠNG 2: THIẾT KẾ VÀ XÂY DỰNG MODULE HỆ THỐNG

NHÚNG CÓ CHỨC NĂNG GIÁM SÁT , CẢNH BÁO

CHÁY NỔ

2.1 Thiết kế mô phỏng hệ thống

Em sử dụng phần mềm Proteus để thiết kế mô phỏng sơ đồ module hệ thống cảnh báo cháy, nổ Đầu tiên em lựa chọn các linh kiện cần thiết trong phần mềm như sau:

Hình 2.1 Các linh kiện cần thiết

Sau đó, bằng cách sử dụng các linh kiện cần thiết cùng một số linh kiện khá và kết nối các linh kiện đó một cách hợp lý, chính xác Em thiết

kế được sơ đồ mô phòng hệ thống cảnh báo cháy, nổ như sau:

Trang 11

Hình 2.2 Sơ đồ mô phỏng hệ thống

2.2 Lập trình cho hệ thống

Bằng cách sự dụng phần mềm Arduino IDE để soạn thảo mã nguồn cho các thiết bị, board mạch arduino trong hệ thống Em có mã nguồn cụ thể như sau:

Hình 2.3 Mã nguồn Arduino của hệ thống

Trang 12

hằng là lamp, speaker, sensor và gán cho giá trị là giá trị của chân kết nối của linh kiện đèn và loa với bo mạch

Hình 2.4 Mã nguồn Arduino của hệ thống

Tại hình 2.4 là mã nguồn của phần setup() trong nội dung mã nguồn Những lệnh trong setup() sẽ được chạy khi chương trình của bạn khởi động Hệ thống sẽ bắt đầu khởi tạo LCD ,dịch con trỏ tới hàng 0, cột 0 sau đó in ra màn hình dòng chữ “Thiet bi”, tiếp theo dịch con trỏ tới hàng

0 ,cột 1 ,rồi in ra dòng chữ “Canh bao chay”

Sau khi setup() chạy xong, những lệnh trong loop() được chạy Chúng

sẽ lặp đi lặp lại liên tục cho tới khi nào bạn ngắt nguồn của board

Arduino mới thôi

Trang 13

Hình 2.5 Mã nguồn Arduino của hệ thống

Bắt đầu trong phương thức loop(), ta khai báo biến và sử dụng câu điều kiện if để kiểm tra điều kiện khi đọc dữ liệu từ cảm biến nếu cảm biến chuyền về giá trị 1 thì sẽ thực hiện các câu lệnh bên trong câu điều kiện và hiển thị dòng chữ “Gia Tri Value” Tiếp đó hệ thống sẽ dịch con trỏ tới hàng 0, cột 1 và hiển thị “Co chay” trên màn hình LCD Cùng lúc

đó hệ thống đèn và loa sẽ được bật phát cảnh báo có cháy

Hình 2.6 Mã nguồn Arduino của hệ thống

Trang 14

Tại hình 2.7 nếu cảm biến báo về giá trị 0 thì sẽ thực hiện các câu lệnh này Các câu lệnh như hiển thị dòng chữ “Gia Tri Value” và “Binh Thuong” lên màn hình LCD.Cùng đó hệ thống đèn và loa sẽ tắt

Sau khi đã soạn thảo xong mã nguồn, em tiến hành biên dịch mã nguồn sang file HEX và nhúng vào Board mạch của hệ thống

Trang 15

CHƯƠNG 3 : DEMO CHƯƠNG TRÌNH

3.1 Khi không phát hiện cháy, nổ

Khi không phát hiện tia lửa hay khi giá trị logic mà cảm biến lửa truyền

về mang giá trị 0

Hình 3.1 Tổng quan sơ đồ hệ thống khi không phát hiện cháy, nổ

Tại hình 3.1 ta có thể thấy khi ta thiết lập giá trị nhận được của cảm biến hồng ngoại là 0 thì mà hình LCD hiển thị dòng chữ “Binh Thuong”

3.2 Khi phát hiện cháy,nổ

Trang 16

Hình 3.2 Tổng quan sơ đồ hệ thống khi phát hiện cháy, nổ

Ta có thấy dễ dàng nhận thấy , khi giá trị cảm biến lửa thay đổi là 1 thì lập tức đèn báo sẽ đc bật, loa sẽ phát ra tiếng cảnh báo và màn hình LCD

sẽ hiển thị dòng chữ “ Co chay”

Qua đó, em nhận định hệ thống mô phỏng đã nhận mã nguồn mà em soạn thảo Chạy đúng theo những gì đã thiết kế cho bài toán, tiếp nhận và

xử lý các thông tin thu nhận về được từ các cảm biến tốt, đáp ứng được việc cảnh báo phát hiện tia lửa từ đó đưa ra những hành động xử lý tiếp theo cho hệ thống báo cháy

Trang 17

KẾT LUẬN

Từ việc phân tích và thực hiện việc giải quyết bài toán bằng việc sử dụng các kiến thức đã học và tìm hiểu thêm các tài liệu tham khảo em thu được những kiến thức và kỹ năng như sau:

Về kiến thức: Phân tích và trình bày được những nguyên lý cơ bản, các đặc trưng và các kiến thức nền tảng về vi xử lý, vi điều khiển Trình bày được mô hình tổng quát của hệ thống nhúng Trình bày được các thành phần phần cứng và phần mềm của các hệ thống nhúng Trình bày được các phương pháp thiết kế, cài đặt và kiểm thử các hệ thống nhúng Trình bày được phương pháp thiết kế hệ thống nhúng với phần mềm Proteus Có khả năng lập trình Arduino và sử dụng các phần mềm hỗ trợ

Về kỹ năng: Có kỹ năng lập trình xây dựng trình điều khiển cho vi điều khiển, hệ thống nhúng Vận dụng kiến thức để thiết kế hệ thống nhúng với bộ xử lý FPGA - Phân tích, thiết kế hệ thống vi xử lý, vi điều khiển, lắp ráp và kết nối các thành phần hệ thống Thiết kế một hệ thống nhúng ứng dụng cụ thể trong thực tế

Năng lực tự chủ và trách nhiệm: Có năng lực dẫn dắt về chuyên môn phục vụ nghiệp vụ về quản lý dự án về công nghệ thông tin; có sáng kiến trong quá trình thực hiện nhiệm vụ được giao; có khả năng tự định

hướng, thích nghi với các môi trường làm việc khác nhau; tự học tập, tích lũy kiến thức, kinh nghiệm để nâng cao trình độ chuyên môn nghiệp vụ

về công nghệ thông tin; có khả năng đưa ra được kết luận về các vấn đề chuyên môn, nghiệp vụ về công nghệ thông tin; có năng lực lập kế hoạch, điều phối, phát huy trí tuệ tập thể; có năng lực đánh giá và cải tiến các hoạt động chuyên môn nghiệp vụ về công nghệ thông tin

Việc phân tích và trình bày bài toán có thể còn nhiều sai sót, em rất mong nhận được những ý kiến đóng góp của thầy cô bài làm của em được tốt và kiến thức được hoàn thiệt hơn

Trang 18

DANH MỤC TÀI LIỆU THAM KHẢO

Trang 19

Tiếng Việt

[1] Huỳnh Thúc Cước, 2010, Bài giảng XD hệ thống nhúng, HV Công nghệ BC-VT, 2010

[2] Văn Thế Minh (1997), Kỹ thuật Vi xử lý, NXB Giáo dục

Tiếng Anh

[3] Edward Lee and Sanjit Seshia, Introduction to Embedded Systems, A Cyber Physical Systems Approach, 2011

[4] Marilyn Wolf, Computers as Components, Third Edition: Principles

of Embedded Computing System Design, 3nd ed Morgan Kaufmann, 2012

Ngày đăng: 14/05/2024, 16:25

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w