Báo cáo đồ án Ứng dựng giám sát, điều khiển nhiệt độ, độ ẩm và khí gas trong nhà

19 16 0
Báo cáo đồ án Ứng dựng giám sát, điều khiển nhiệt độ, độ ẩm và khí gas trong nhà

Đ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

Báo cáo Đồ án docx 1 MỤC LỤC I Đặt vấn đề 1 1 Tình trạng cháy nổ thực tế hiện nay 1 2 Mục tiêu 1 II Thiết kế 1 1 Sơ đồ nguyên lý 1 2 Thiết kế phần cứng 2 a) Tổng quan 2 b) Khối điều khiển 2 c) Khối cả.Ứng dựng giám sát, điều khiển nhiệt độ, độ ẩm và khí gas trong nhàỨng dựng giám sát, điều khiển nhiệt độ, độ ẩm và khí gas trong nhàỨng dựng giám sát, điều khiển nhiệt độ, độ ẩm và khí gas trong nhà

1 MỤC LỤC I Đặt vấn đề 1 Tình trạng cháy nổ thực tế Mục tiêu II Thiết kế 1 Sơ đồ nguyên lý Thiết kế phần cứng a) Tổng quan b) Khối điều khiển c) Khối cảm biến d) Cơ cấu chấp hành 3 Thiết kế phần mềm ứng dụng Android 4 Cấu trúc liệu Firebase III Một số đoạn code quan trọng Lập trình App Lập trình Raspberry Pi IV Sản phẩm V Kết luận 11 11 Kết đạt 11 Hạn chế 12 Hướng phát triền 12 Danh mục hình ảnh 13 Tài liệu tham Khảo 13 I Đặt vấn đề Tình trạng cháy nổ thực tế Hiện với phát triển nước ta với tiện ích cơng nghệ phần giúp cho nhu cầu người người đáp ứng tốt song song theo chúng ta khơng tránh nguy ngồi ý muốn, đặc biệt vấn đề cháy nổ Có thể chúng ta chưa có phịng phịng tránh kịp thời đúng lúc để làm giảm phần thiệt hại tài sản, điển việc cháy nổ đáng tiếc quán karaoke năm 2022 Từ lý nên nhóm chọn đề tài “Ứng dựng giám sát, điều khiển nhiệt độ, độ ẩm khí gas nhà” Mục tiêu • Giám sát nhiệt độ, độ ẩm nồng độ khí gây cháy nổ phịng • Hiển thị thơng số lên App điện thoại • Có thể điều khiển thiết bị quạt thơng gió, điều hồ hệ thống chữa cháy từ ứng dụng điện thoại • II Tự động bật chế độ chữa cháy nhiệt độ vượt ngưỡng cho phép Thiết kế Sơ đồ nguyên lý Thiết kế phần cứng a) Tổng quan Hệ thống gồm cảm biến nhiệt độ, độ ẩm cảm biến khí gas lắp đặt cho phòng b) Khối điều khiển Với chức nhận xử thông tin thu từ cảm biến chuyển liệu vào sở liệu, với điều khiển cấu chấp hành Raspberry Pi phù hợp để làm khối điều khiển Hình Raspberry Pi Thơng số kỹ thuật chi tiết: ● Vi xử lý: Broadcom BCM2837B0, quad-core A53 (ARMv8) 64-bit SoC @1.4GHz ● RAM: 1GB LPDDR2 SDRAM ● Kết nối: 2.4GHz and 5GHz IEEE 802.11 b/g/n/ac wireless LAN, Bluetooth 4.2, BLE, Gigabit Ethernet over USB 2.0 (Tối đa 300Mbps) ● Cổng USB: x 2.0 ● Mở rộng: 40-pin GPIO ● Video âm thanh: cổng full-sized HDMI, Cổng MIPI DSI Display, cổng MIPI CSI Camera, cổng stereo output composite video chân ● Multimedia: H.264, MPEG-4 decode (1080p30), H.264 encode (1080p30); OpenGL ES 1.1, 2.0 graphics ● Lưu trữ: MicroSD ● Nguồn điện sử dụng: 5V/2.5A DC cổng microUSB, 5V DC chân GPIO, Power over Ethernet (PoE)  (yêu cầu thêm PoE HAT) Sơ đồ chân GPIO Raspberry Pi c) Khối cảm biến Mục tiêu cảm biến xác định nhiệt độ, độ ẩm nồng độ khí gas phòng nhằm gửi cho khối điều khiển Trong báo cáo này, ta sử dụng cảm biến DHT-11 cho việc đo nhiệt độ độ ẩm phòng cảm biến khí gas MQ-2 Hình Cảm biến nhiệt độ, độ ẩm DHT-11 Cảm biến độ ẩm nhiệt độ DHT11 Temperature Humidity Sensor là cảm biến thông dụng chi phí rẻ dễ lấy liệu thông qua giao tiếp wire (giao tiếp digital dây truyền liệu nhất) Bộ tiền xử lý tín hiệu tích hợp cảm biến giúp bạn có liệu xác mà khơng phải qua tính tốn So với cảm biến đời DHT22 DHT11 cho khoảng đo độ xác nhiều Thơng tin kỹ thuật: ● Nguồn: -> VDC ● Dòng sử dụng: 2.5mA max (khi truyền 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 ● Tín hiệu đầu kỹ thuật số ● Phạm vi nhiệt độ từ 0ºC đến 50ºC ● Độ xác để đo nhiệt độ 25ºC, dao động khoảng 2ºC ● Độ phân giải để đo nhiệt độ 8-bit, 1ºC ● Độ ẩm đo từ 20% RH đến 90% RH ● Độ ẩm xác 5% RH cho nhiệt độ từ 0-50ºC ● Độ phân giải 1% RH, khơng thể nhận biến thể mức Hình Cảm biến Khí Gas MQ-2 Thơng số kĩ thuật : ● Điện áp hoạt động: 3.3V-5V ● Kích thước PCB: 3cm * 1.6cm ● Led đỏ báo nguồn vào, Led xanh báo gas ● IC so sánh : LM393 ● VCC: 3.3V-5V ● GND: 0V ● DO: Đầu tín hiệu số (0 1) ● AO: Đầu Analog (Tín hiệu tương tự) ● Cấu tạo từ chất dẫn Sno2 ● Có  2 dạng tín hiệu: Analog( AO)  và Digital (DO) ● Dạng tín hiệu : TTL đầu 100mA ( Có thể sử dụng trực tiếp Relay, Cịi cơng suất nhỏ ) ● Điều chỉnh độ nhạy biến trở ● Sử dụng LM393 để chuyển AO > DO d) Cơ cấu chấp hành Sử dụng quạt động DC làm đại diện cho cấu chấp hành như: quạt thơng gió, hệ thống báo cháy,… Từ ta kiểm tra hoạt động điều khiển hệ thống Hình Quạt Hình Động DC Động Cơ Giảm Tốc Vàng 3V-9V là mẫu động sử dung nhiều để thiết kế loại robot mơ hình Phục vụ cho sinh viên học tập nghiên cứu chế tạo Với giá thành rẻ, dễ sử dụng mang tính ưu việt nên động sử dụng nhiều với sinh viên nghành kĩ thuật Thông số kỹ thuật động giảm tốc Vàng: ● Điện áp hoạt động:3V~ 9V DC (Hoạt động tốt từ - 8V)  ● Mômen xoắn cực đại: 800gf cm 1:48 (3V)  ● Tốc độ không tải: 125 Vòng/ Phút (3V)  ● (Với bánh 66mm: 26m/1p)  ● 208 Vòng/ Phút (5V)  ● (Với bánh 66mm: 44m/1p) ● Dịng khơng tải động cơ: 70mA (250mA MAX) Thiết kế phần mềm ứng dụng Android Giao diện App danh sách phòng cần lấy thơng số nhiệt độ, độ ẩm nồng độ khí gas Các chức chính: ● Hiển thị danh sách phịng ● Thêm phịng ● Xố phịng: Bằng cách giữ vào tên phịng cần xố, hiển thị hộp thoại xác nhận xố hay khơng Hình Giao diện Khi muốn vào xem thơng tin phịng, kick vào tên phịng danh sách, hình chuyển đến giao diện hiển thị thơng số phịng: Hình Giao diện hiển thị thơng tin phịng Để điều khiển thiết bị phịng ứng với thơng số, từ hình thơng tin phịng, chọn vào thơng số, hình chuyển đến giao diện để điều khiển: Hình Giao diện điều khiển theo thông số cảm biến Cấu trúc liệu Firebase Hình Cấu trúc database Thơng tin phịng lưu theo số thứ tự phòng tạo App, lầ tạo phòng App tạo nhánh Key Value sở liệu Các phòng có tập hợp Key giống nhau, Value tương ứng với Key phòng cập nhật data nhận từ cảm biến App đọc thông tin từ sở liệu hiển thị lên hình Về phần điều khiển, từ App gửi trạng thái ON OFF ghi vào sở liệu, Raspberry Pi đọc trạng thái để khởi động hay dừng hoạt động cấu chấp hành III Một số đoạn code quan trọng Lập trình App ● Hàm nhận data từ Firebase public void ReceiveFirebase(String room, String key, GifTextView gtv) { mData = FirebaseDatabase.getInstance().getReference(); mData.child(String.valueOf(room)).child(key).addValueEventListener(new ValueEventListener() { @Override public void onDataChange(@NonNull DataSnapshot snapshot) { gtv.setText(String.valueOf(snapshot.getValue())); } @Override public void onCancelled(@NonNull DatabaseError error) { } }); } ● Hàm gửi data lên Firebase public void PushFirebase(String room, String key, String value) { mData = FirebaseDatabase.getInstance().getReference(); mData.child(room).child(key).setValue(value); } public void PushFirebase(String key, Object value) { mData = FirebaseDatabase.getInstance().getReference(); mData.child(key).setValue(value); } ● Hàm gửi trạng thái ON-OFF lên Firebase để điều khiển cấu chấp hành public void setBtnTurnOnFan(String roomNumber) { btnTurnOnFan.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { pushOrReceiveFirebase.PushFirebase(roomNumber, "fan", "ON"); } }); } public void setBtnTurnOffFan(String roomNumber) { btnTurnOffFan.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { pushOrReceiveFirebase.PushFirebase(roomNumber,"fan", "OFF"); } }); } Lập trình Raspberry Pi ● Hàm set địa chân Raspberry Pi def init (self,Pin_dht,Pin_MQ2,kt,ENA,IN1,IN2,check): self.PIN_DHT=Pin_dht self.PIN_MQ2=Pin_MQ2 self.ENA=ENA self.IN1=IN1 self.IN2=IN2 self.kt=kt self.check=check GPIO.setup(self.ENA,GPIO.OUT) GPIO.setup(self.IN1,GPIO.OUT) GPIO.setup(self.IN2,GPIO.OUT) GPIO.output(self.IN1,GPIO.LOW) GPIO.output(self.IN2,GPIO.LOW) self.p=GPIO.PWM(self.ENA,1000) self.p.start(25) ● Hàm đọc tín hiệu từ cảm biến gửi data lên Firebase điều khiển cáua chấp hành def READ(self): GPIO.setup(self.PIN_MQ2,GPIO.IN) instance = dht11.DHT11(pin=self.PIN_DHT) dht = instance.read() if dht.is_valid(): print("Temp: %d C" % dht.temperature +' '+"Humid: %d %%" % dht.humidity) s=str(dht.temperature)+'°C' s1=str(dht.humidity)+'%' result = firebase.put(str(self.kt),'temperature',s) result = firebase.put(str(self.kt),'humidity',s1) if GPIO.input(self.PIN_MQ2)==0: result = firebase.put(str(self.kt),'gas','HIGH') else: result = firebase.put(str(self.kt),'gas','LOW') a = firebase.get(str(self.kt),'fan') a=str(a) print(a) if dht.temperature>30: if a=="OFF" and self.check=="ON" : GPIO.output(self.IN1,GPIO.LOW) GPIO.output(self.IN2,GPIO.LOW) self.check="ON" else: GPIO.output(self.IN1,GPIO.HIGH) GPIO.output(self.IN2,GPIO.LOW) result = firebase.put(str(self.kt),'fan','ON') self.check=a if a=="ON": GPIO.output(self.IN1,GPIO.HIGH) GPIO.output(self.IN2,GPIO.LOW) if a=="OFF": GPIO.output(self.IN1,GPIO.LOW) GPIO.output(self.IN2,GPIO.LOW) ● Kết nối Pi với database Firebase firebase = firebase.FirebaseApplication('https://monitor-temperature-gas-default-rtdb.firebaseio.com', None) IV Sản phẩm Hình 10 Sản phẩm thực ● cặp cảm biến DHT11 – MQ2 đại diện cho phòng ● động đại diện cho quạt phòng điều khiển từ App ● Pin cấp nguồn cho động thông qua module điều khiển V Kết luận Kết đạt Sau thời gian học tập, tìm hiểu, đồ án học phần hồn thành đúng thời hạn quy định, giải yêu cầu đặt ban đầu Hệ thống hoạt động ổn định, App nhận thông tin từ cảm biến gửi lên nhanh điều khiển cấu chấp hành ý muốn Hạn chế ● Bị giới hạn số phịng đặt số chân Raspberry Pi có hạn ● Mơ hình rườm rà, đấu nối chưa đẹp ● Đôi lúc bị delay tốc độ truyền mạng Hướng phát triền ● Tích hợp thêm cảm biến, cấu chấp hành để giám sát nhiều thơng tin phịng ● Thay nối trực tiếp cảm biến vào Raspberry Pi, dùng Arduino để nối cảm biến cho Arduino giao tiếp với Raspberry Pi qua chuẩn truyền thông không dây, từ tiết kiện nhiều chân Pi Pi làm việc với nhiều phịng Danh mục hình ảnh Hình Raspberry Pi Hình Cảm biến DHT11 Hình Cảm biến MQ-2 Hình Quạt Hình Động DC Hình Giao diện Hình Giao diện hiển thị thơng tin phịng Hình Giao diện điều khiển theo thơng số cảm biến Hình Cấu trúc database Hình 10 Sản phẩm thực Tài liệu tham Khảo [1] https://docs.python.org/3/tutorial/classes.html [2] https://firebase.google.com/docs/auth/android/start?hl=be [3] https://developer.android.com/guide/components/services [4] https://www.mysensors.org/build/humidity [5] https://www.mysensors.org/build/gas [6] https://www.mysensors.org/build/raspberry 4 5 13 ... việc cháy nổ đáng tiếc quán karaoke năm 2022 Từ lý nên nhóm chọn đề tài ? ?Ứng dựng giám sát, điều khiển nhiệt độ, độ ẩm khí gas nhà? ?? Mục tiêu • Giám sát nhiệt độ, độ ẩm nồng độ khí gây cháy nổ... này, ta sử dụng cảm biến DHT-11 cho việc đo nhiệt độ độ ẩm phòng cảm biến khí gas MQ-2 Hình Cảm biến nhiệt độ, độ ẩm DHT-11 Cảm biến độ ẩm nhiệt độ DHT11 Temperature Humidity Sensor là cảm biến... Phạm vi nhiệt độ từ 0ºC đến 50ºC ● Độ xác để đo nhiệt độ 25ºC, dao động khoảng 2ºC ● Độ phân giải để đo nhiệt độ 8-bit, 1ºC ● Độ ẩm đo từ 20% RH đến 90% RH ● Độ ẩm xác 5% RH cho nhiệt độ từ 0-50ºC

Ngày đăng: 22/11/2022, 20:29

Tài liệu cùng người dùng

Tài liệu liên quan