Việc thiết kế mạch điều khiển cửa tự động kết hợp hiển thị nhiệt độ và độ ẩm qua màn hình LCD sẽ cần thực hiện các nội dung sau:Nội dung 1: Nghiên cứu tài liệu về Arduino và các phương t
Trang 1BỘ CÔNG THƯƠNG
KHOA CƠ KHÍ TRƯỜNG ĐẠI HỌC KINH TẾ - KỸ THUẬT
CÔNG NGHIỆP
BÁO CÁO ĐỒ ÁN MÔN HỌC
TÊN ĐỀ TÀI:
Mô hình cửa ra vào tự động kết hợp hiện thị nhiệt độ và độ ẩm
Giảng viên hướng dẫn: Nguyễn Tiến Dũng
Chủ nhiệm đề tài: Nguyễn Văn Thái Lớp: DHCD15A3HN Thành viên: 1.Nguyễn Bá Tiến Hải
2.Nguyễn Như Tiến Đạt 3.Phạm Thành Đạt
4 Phạm Xuân Trung
DHCD15A3HN DHCD15A3HN DHCD15A3HN DHCD15A3HN
HÀ NỘI, 5/2024
BỘ CÔNG THƯƠNG
KHOA CƠ KHÍ TRƯỜNG ĐẠI HỌC KINH TẾ - KỸ THUẬT
Trang 2CÔNG NGHIỆP
BÁO CÁO ĐỒ ÁN MÔN HỌC
TÊN ĐỀ TÀI:
Mô hình cửa ra vào tự động kết hợp hiện thị nhiệt độ và độ ẩm
Giảng viên hướng dẫn: Nguyễn Tiến Dũng
Chủ nhiệm đề tài: Nguyễn Văn Thái Lớp: DHCD15A3HN Thành viên: 1.Nguyễn Bá Tiến Hải
2.Nguyễn Như Tiến Đạt 3.Phạm Thành Đạt
4 Phạm Xuân Trung
DHCD15A3HN DHCD15A3HN DHCD15A3HN DHCD15A3HN
HÀ NỘI, 5/2024
Trang 3Mục lục
Chương I Tổng quan về đề tài
1 Giới thiệu chung về đề tài
1.1 Tên đề tài
1.2 Nội dung
1.3 Mục tiêu
1.4 Phạm vi ứng dụng
Chương II Cơ sở lý thuyết
2 Giới thiệu về mô hình
3.2.2.1 Thiết kế khối xử lý trung tâm
3.2.2.2 Khối ngõ ra công suất
Trang 44.2.1 Thực hiện lắp ráp và ghép nối các mạch và Module
4.3 Lập trình hệ thống
4.3.1 Lưu đồ giải thuật
4.3.2 Phần mềm lập trình cho vi điều khiển
4.3.3 Chương trình điều khiển
Trang 5Khoảng thời gian nghiên cứu được nhận sự hỗ trợ nhiệt tình từ các thầy cô vô cùng đáng trân trọng với em Vì vậy, em xin được gửi làm cảm ơn chân thành và sâu sắc nhất đến thầy Nguyễn Tiến Dũng - Giảng viên Bộ môn, người hướng dẫn trực tiếp giúp em vượt qua thử thách một cách tốt nhất.
Nhưng kiến thức là vô hạn trong khi khả năng, kinh nghiệm của bản thân có giới hạn; vì vậy, em không thể tránh được các sai sót trong quá trình thực hiện Theo
đó, em rất mong nhận được góp ý, đánh giá công tâm từ thầy cô để em hoàn thiện tiểu luận cũng như tiến xa hơn với đề tài độc đáo này trong tương lai.
Em xin chân thành cảm ơn!
CHƯƠNG I : Tổng quan về đề tài
Trang 61 Giới thiệu chung về đề tài
1.1 Tên đề tài.
Cửa đóng mở tự động bằng cảm biến chuyển động khi có người lại gần và hiển thị nhiệt độ, độ ẩm từ cảm biến DHT11 bằng arduino lên màn hình LCD
1.2 Nội dung của đề tài.
Việc thiết kế mạch điều khiển cửa tự động kết hợp hiển thị nhiệt độ
và độ ẩm qua màn hình LCD sẽ cần thực hiện các nội dung sau:Nội dung 1: Nghiên cứu tài liệu về Arduino và các phương thức kết nối
Nội dung 2: Tạo lập mô hình điều khiển
Nội dung 3 : Thiết kế và tính toán các mạch phần cứng cho
mô hình
Nội dung 4: Thi công và thử nghiệm cách thức hoạt động của
mô hình
1.3 Mục tiêu
-Tiếp nhận tín hiện từ các cảm biến và điều khiển các thiết bị
- Có thể thi công đồ án trên một ngôi nhà thực tế hoặc mô hình.1.4 Phạm vi ứng dụng
Tuy đề tài chỉ là mô hình thu nhỏ nhưng cũng có thể phát triển
để ứng dụng trong các cửa hàng,khách sạn,…
CHƯƠNG 2 : Cơ sơ lý thuyết
2 Giới thiệu về mô hình.
2.1 Cửa tự động.
Trang 7Để cửa tự động đóng mở, chúng ta sẽ sử dụng những bộ phận sau:
Động cơ DC giảm tốc vàng 2 trục 1:48
Cảm biến thân nhiệt chuyển động PIR HC-SR501
Công tắc hành trình công tắc Micro Switch 012-13.5-2
a Động cơ DC giảm tốc.
Động cơ DC giảm tốc vàng là mẫu động cơ được sử dụng rộng rãi trong thiết kế robot, mô hình DIY, phục vụ các bạn học sinh sinh viên nghiên cứu học tập chế tạo
HÌnh 1 Động cơ DC giảm tốc vàng 2 trục 1:48 Động cơ DC giảm tốc vàng 2 trục tỉ lệ 1:48 là một loại động cơ điện một chiều (DC) được thiết kế với hộp giảm tốc và có hai trục để truyền động
Cấu Trúc cảu động cơ DC giảm tốc:
Trang 8Hình 2 Cấu trúc Động cơ DC giảm tốc
Tỉ lệ giảm tốc 1:48 : tỉ lệ giảm tốc giúp tăng mô-men xoắn và giảm tốc độ quay của động cơ, số vòng quay của động cơ giảm
đi 48 lần, giúp cung cấp lực mạnh hơn ở đầu ra
Hai trục: có 2 trục ở đầu ra, thường là 1 trục chính và 1 trục phụ Điều này cho phép linh hoạt trong việc gắn kết và sử dụng động
cơ trong các ứng dụng khác nhau
Kích thước nhỏ gọn: phù hợp cho các ứng dụng cần tiết kiệm không gian
Trang 9Hình 3 Kích thước động cơ DC giảm tốc
Màu vàng: vỏ động cơ thường được sơn màu vàng, có thể giúp nhận diện và phân loại dễ dàng hơn
Thông số kỹ thuật:
Điện áp: 3-12 VDC, khuyến nghị ở giải điện áp (6-8VDC)
Dòng: 70mA (250mA Max) ở 3V
Trang 10Hình 5 Cảm biến PIR HC - SR501Cảm biến thân nhiệt chuyển động PIR HC-SR501 là một loại cảm biến hồng ngoại thụ động (PIR - Passive Infrared) được sử dụng rộng rãi để phát hiện chuyển động của con người và động vật trong một khu vực nhất định.
Cấu tạo của cảm biến PIR HC – SR501:
Cảm biến hồng ngoại thụ động (PIR Sensor): Nhận diện bức xạ hồng ngoại từ cơ thể người hoặc động vật
Mạch xử lý tín hiệu (Signal Processing Circuit): Khuếch đại và xử
lý tín hiệu từ cảm biến PIR
Mạch điều chỉnh (Adjustment Circuit): Điều chỉnh độ nhạy (Sensitivity) và thời gian trễ (Delay Time)
Lens Fresnel: Tăng cường khả năng phát hiện bằng cách tập trung bức xạ hồng ngoại lên cảm biến
Điện áp hoạt động: 5V đến 20VDC
Đầu ra: Tín hiệu số (Digital Output), cao (High) khi phát hiện chuyển động và thấp (Low) khi không phát hiện chuyển động
Trang 11Hình 6 Sơ đồ cảm biến HC – SR501
Sơ đồ đấu nối dây:
Hình 7 Sơ đồ đấu nối dây Thông số Kỹ thuật:
Sử dụng điện áp: 5V
Dòng tiêu thụ của cảm biến chuyển động SR501: 65mA
Trang 12 Đầu ra: 0 – 3.3V.
Thời gian trễ: điều chỉnh trong khoảng 5 – 300 s
Thời gian khóa: 0.2s
2 chế độ hoạt động:
(L) không lặp lại kích hoạt
(H) lặp lại kích hoạt
Phạm vi hoạt đô —ng: <120 độ C, trong vòng 7 mét
Nhiê —t đô —: -15 – 70 đô — C
Kích thước PCB: 32mm x 24mm
Hình 8 Kích thước cảm biến HC - Sr501
c Công tắc hành trình Micro Switch 012-13.5-2.
Công tắc hành trình hay công tắc (Micro Switch) model 012-13.5-2 là một loại công tắc cơ khí nhạy, được sử dụng rộng rãi trong nhiều ứng dụng công nghiệp và dân dụng
Trang 13Hình 9 công tắc hành trình Micro Switch 012-13.5-2Đặc điểm:
Kích thước nhỏ gọn: có kích thước nhỏ gọn, dễ dàng tích hợp vào các thiết bị điện tử và cơ khí
Độ nhạy cao: Micro Switch rất nhạy, có thể kích hoạt với lực nhấncực nhỏ, điều này giúp phát hiện chính xác các vị trí hoặc hành động mong muốn
Chất liệu và cấu trúc bền bỉ: thường được làm từ các vật liệu bền chắc như nhựa chịu nhiệt và kim loại chất lượng cao, giúp tăng tuổi thọ và độ tin cậy
Hình 10 kích thước Micro Switch 012-13.5-2
Trang 14sử dụng DHT11 vì nó tích hợp đo cả nhiệt độ và độ ẩm Cảm biến độ ẩm và nhiệt độ DHT11 là cảm biến rất thông dụng hiện nay vì chi phí rẻ và rất dễ lấy dữ liệu thông qua giao tiếp 1 wire (giao tiếp digital 1 dây truyền dữ liệu duy nhất).
Cảm biến nhiệt độ và độ ẩm DHT11 có bộ điều chỉnh nhiệt độ và
độ ẩm với đầu ra tín hiệu số được hiệu chuẩn qua bộ tiền xử lý tínhiệu tích hợp trong cảm biến giúp bạn có được dữ liệu chính xác
mà không phải qua bất kỳ tính toán nào Với việc sử dụng tín hiệu kỹ thuật cao nên cảm biến luôn cho độ tin cậy cao và ổn định trong thời gian dài Cảm biến này bao gồm một thành phần
đo độ ẩm kiểu điện trở và bộ phận giảm nhiệt độ NTC, và kết nối với bộ vi điều khiển 8 bit hiệu suất cao, cung cấp chất lượng tốt, phản ứng nhanh, chống nhiễu và hiệu quả về chi phí
Mỗi cảm biến DHT11 đều được hiệu chuẩn trong phòng thí nghiệm để có độ chính xác cao nhất Sự kết nối hệ thống nối tiếp một dây nhanh chóng và dễ dàng Kích thước nhỏ, tiêu thụ điện năng thấp và truyền tín hiệu lên đến 20m, đây lựa chọn tốt nhất cho các ứng dụng khác
Trang 15Cấu tạo của cảm biến DHT11:
Thân cảm biến: vỏ nhựa bảo vệ các linh kiện bên trong, thường có
lỗ thông gió để không khí tiếp xúc với các phần cảm biến
Cảm biến độ ẩm: một cảm biến điện dung (Capacitive humidity sensor) để đo độ ẩm Điện dung của cảm biến thay đổi khi độ ẩm của không khí thay đổi
Cảm biến nhiệt độ: một nhiệt điện trở (Thermistor) để đo nhiệt độ Điện trở của nhiệt điện trở thay đổi theo nhiệt độ
IC xử lý tín hiệu: Tích hợp mạch xử lý tín hiệu cà cung cấp đầu ra
số (Digtal Output) qua giao diện một dây (Single Wire)
Trang 16-Sơ đồ đấu dây:
Thông số kỹ thuật:
Nguồn: 3 - 5 VDC
Dòng sử dụng: 2.5mA max (khi truyền dữ liệu)
Khoảng đo độ ẩm: 20%-90% RH (sai số 5%RH)
Khoảng đo nhiệt độ: 0-50°C (sai số 2°C)
Tần số lấy mẫu tối đa: 1Hz (1 giây / lần)
Kích thước 15mm x 12mm x 5.5mm
Bộ điều khiển trung tâm.
Trang 17Hình 14 Arduino Uno R3
Arduino Uno R3 là một board mạch vi điều khiển được phát triển bởi Arduino.cc, mottj nền tảng điện tử mã nguồn mở chủ yếu dựa trên vi điều khiển AVR Atmega328P
Arduino Uno R3 được kết nối trực tiếp với máy tính thông qua USB để giao tiếp với phần mềm lập trình IDE, tương thích với windows, MAC hoặc Linux Systems tuy nhiên, windows thích hợp hơn để sử dụng Ngôn ngữ lập trình như C và C++ được sử dụng trong IDE
Thông số kỹ thuật:
Hình 15 Sơ đồ Arduino Uno R3
Vi điều khiển: Atmega328P
Nguồn cấp: 7 – 12V
Điện áp hoạt động: 5V (500mA)
Dòng diện DC cho chân 3.3V: 50mA
Dòng điện DC cho mỗi chân I/O: 30mA
14 chân Digital I/O (6 chân PWM)
6 chân Analog Inputs
Trang 18 Đèn LED: Arduino Uno đi kèm với đèn LED tích hợp được kết nốithông qua chân 13 Cung cấp mức logic HIGH tương ứng ON và LOW tương ứng tắt.
Vin: Đây là điện áp đầu vào được cung cấp cho board mạch Arduino Khác với 5V được cung cấp qua cổng USB Pin này được
sử dụng để cung cấp điện áp toàn mạch thông qua jack nguồn, thông thường khoảng 7-12VDC
5V : Chân 5V được sử dụng để cung cấp điện áp đầu ra Arduino được cấp nguồn bằng ba cách đó là USB, chân Vin của bo mạch hoặc giắc nguồn DC
USB : Hỗ trợ điện áp khoảng 5V trong khi Vin và Power Jack hỗ trợ dải điện áp trong khoảng từ 7V đến 20V
GND: Chân mát chung cho toàn mạch Arduino
Reset : Chân reset để thiết lập lại về ban đầu
IOREF : Chân này rất hữu ích để cung cấp tham chiếu điện áp cho Arduino
PWM : PWM được cung cấp bởi các chân 3,5,6,9,10, 11 Các chânnày được cấu hình để cung cấp PWM đầu ra 8 bit
SPI : Chân này được gọi là giao diện ngoại vi nối tiếp Các chân 10(SS), 11 (MOSI), 12 (MISO), 13 (SCK) cung cấp liên lạc SPI với
sự trợ giúp của thư viện SPI
AREF : Chân này được gọi là tham chiếu tương tự, được sử dụng
để cung cấp điện áp tham chiếu cho các đầu vào tương tự
TWI : Chân Giao tiếp TWI được truy cập thông qua thư viện dây Chân A4 và A5 được sử dụng cho mục đích này
Serial Communication :Giao tiếp nối tiếp được thực hiện thông quahai chân 0 (Rx) và 1 (Tx)
Rx : Chân này được sử dụng để nhận dữ liệu trong khi chân Tx được sử dụng để truyền dữ liệu
External Interrupts (Ngắt ngoài) : Chân 2 và 3 được sử dụng để cung cấp các ngắt ngoài
Trang 192.3 PHẦN MỀM
2.3.1 Giới thiệu phần mềm lập trình
Arduino IDE [15] là môi trường phát triển tích hợp mã nguồn mở, cho phép người dùng dễ dàng viết code và tải nó lên bo mạch Môi trường phát triển được viếtbằng Java dựa trên ngôn ngữ lập trình xử lý và phần mềm mã nguồn mở khác Phần mềm này có thể được sử dụng với bất kỳ
bo mạch Arduino nào Arduino IDE là một môi trường phát triển tích hợp đa nền tảng, làm việc cùng với một bộ điều khiển Arduino để viết, biên dịch và tải code lên bo mạch
Phần mềm này cung cấp sự hỗ trợ cho một loạt các bo mạch Arduino như Arduino Uno, Nano, Mega, Pro hay Pro Mini, Ngôn ngữ tổng quát cho Arduino C và C++, do đó phần mềm phù hợp cho những lập trình viên đã quen thuộc với cả 2 ngôn ngữ này Các tính năng như làm nổi bật cú pháp, thụt đầu dòng tự động, làm cho nó trở thành một sự thay thế hiện đại cho các IDE khác Arduino IDE có thư viện code mẫu quá phong phú, viết chương trình trên Arduino IDE khá dễ dàng cộng thêm OpenSource viết riêng cho Arduino thì ngày càng nhiều
Giao diện của phần mềm Arduino.
Trang 20hổ trợ miễn phí cho người dùng , với bản cập nhật mới nhất là Arduino 1.8.5 Sau khi tải về thì cần thêm thư viện để có thể sử dụng với module DHT11 và module Lyquidscytal I2C
Chương trình điều khiển:
Giao tiếp với cảm biến
Trang 21CHƯƠNG III TÍNH TOÁN VÀ THIẾT KẾ
3.1 Mô tả hoạt động của hệ thống
Trên mô hình hiện tại chúng em sử dụng cảm biến chuyển động để phát hiện người đi qua sau đó cảm biến gửi tín hiệu đến bộ điều khiển.Sau khi bộ xử lí trung tâm nhận tín hiệu qua đó phát tín hiệu điều khiển động cơ qua cơ cấu truyền động bánh đai, cửa sẽ mở ra sau 3 giây khi cảm biến không phát hiện vật thể sẽ gửi tín hiệu ngược lại bộ điều khiển Sau khi nhận được tín hiệu sẽ phát ra xung điều khiển động cơ đóng cửa lại
Hình 16 Cửa tự động
Ngoài ra nhóm còn sử dụng cảm biến nhiệt độ, độ ẩm giúp thu thập dữ liệu môi trường xung quanh, gửi dữ liệu đến vi điều khiển ,các giá trị nhiệt độ và độ ẩm được hiển thị trên màn hình LCD
Trang 22Hình 17 Sơ đồ cảm biến DHT11
Bộ xử lý trung tâm
- Điện áp 5VDC
- Kết nối với module L298N điều khiển động cơ
- Kết nối với module DHT11
- Ngõ ra nối các thiết bị
- Thiết kế nhỏ gọn, đảm bảo tính an toàn Nút điều khiển
- Nút có điều khiển trực tiếp các thiết bị
- Phản hồi nhanh, không trễ
3.2 TÍNH TOÁN VÀ THIẾT KẾ
3.2.1 Thiết kế sơ đồ khối hệ thống
Trang 23Sơ đồ khối hệ thống Chức năng từng khối
Khối xử lý trung tâm
Trung tâm điều khiển hoạt động của toàn bộ hệ thống Nhận tín hiệu từ cảm biến hoặc nút nhấn, xử lý sau đó chuyển tín hiệu điều khiển đến khối công suất thực thi điều khiển thiết bị hoạt động Khối cảm biến nhiệt độ sử dụng cảm biến DHT11 có khả năng đo cả 2 thông số nhiệt độ và độ ẩm
Khối nguồn:
Cấp nguồn cho toàn mạch, sử dụng nguồn 5VDC cấp cho khối xử lý trung tâm, mạch L298N và cảm biến
Khối ngõ ra công suất:
Đóng ngắt các tiếp điểm theo sự điều khiển của ngõ ra vi điều khiển, từ đó điều khiển các thiết bị như động cơ,công tắc hành trình Đồng thời cách ly giữa mạch công suất và mạch điều khiển
Khối cảm biến:
Trang 24Có chức năng nhận tín hiệu từ cảm biến phát hiện chuyển động truyền tín hiệu phát xung điều khiển động cơ.Có chức năng giám sát nhiệt độ và độ ẩm của môi trường
để đảm bảo tính an toàn cho hệ thống
Nút nhấn:
Gửi tín hiệu đến vi điều khiển để điều khiển ngõ ra của vi điều khiển Từ đó điều khiển trạng thái tắt bật của toàn mạch.
4 Thiết kế phần mềm.
4.1 Cảm biến thân nhiệt chuyển động PIR HC – SR501.
Gọi thư viện Arduino.h và lần lượt khai báo vị trí các chân kết nối với công tắc hành trình (ls1, ls2), các cảm biến (S1, S2), điều khiển tốc độ động cơ (e1, e2), điều khiển hướng động cơ (i1, i2) và giá trị điều chỉnh tốc độ động cơ (H)
Các hàm điều khiển động cơ:
Điều khiển động cơ tiến về phía trước
Trang 25 Điều khiển động cơ lùi lại.
Dừng động cơ
Trang 26Khai báo các chân tín hiệu đầu vào (Input) và các chân tín hiệu đầu ra (Output) và dùng lệnh INPUT_PULLUP để đọc trạng thái chính xác từ công tắc hành trình.
Trang 27Trạng thái của các công tắc hành trình và cảm biến được đọc
và các hành động tương ứng (tiến, lùi, dừng) được thực hiện dựa trên các điều kiện cụ thể
Trang 284.2 Đọc dữ liệu từ cảm biến nhiệt độ, độ ẩm DHT11.
Để có thể đo được nhiệt độ và độ ẩm bằng cảm biến DHT11, ta cần phải thiết kế code để nạp vào trong Arduino được kết nối với cảm biến theo sơ đồ nối dây ở phần trên Ở đây, chúng
ta sử dụng phần mềm Arduino IDE để có thể thiết kế, cũng như nạp code vào trong Arduino để thực hiện chương trình
Trang 29Đầu tiên, ta khai báo thư viện DHT.h, một thư viện từ Adafruit.Đây là một thư viện tích hợp để sử dụng cho cả 3 loại cảm biến bao gồm: DHT11, DHT21, DHT22 Để sử dụng thư viện này, ta cũng cần cài đặt thư viện Adafruit Unified Sensor Sau đó,
ta khai báo vị trí chân kết nối của chân Data của cảm biến nối với chân kỹ thuật số của Arduino (ở đây là chân số 2) và khai báo loại cảm biến được sử dụng trong chương trình này (DHT11)
Trong hàm setup(), ta khởi chạy baudrate (tốc độ truyền) là
9600 với mục đích gỡ lỗi và kết nối với database Và khởi tạo cảm biến DHT bằng phương thức begin()