- Nghiên cứu nguyên l hoý ạt động cảm biến siêu âm HC-SR04 - Thiết kế được một chiếc thùng rác c khả năng nhận biết được rác đầy trong thùng - Kết nối được cơ sở dữ liệu Firebase sử dụn
TỔNG QUAN
Giới thiệ u
Một trong những mối quan tâm chính đố ới môi trười v ng của chúng ta là qu n lý ả chất th i rả ắn ảnh hưởng đến sức khỏe và môi trường c a xã hủ ội Việc phát hi n, giám ệ sát và quản lý ch t th i là m t trong nh ng vấ ả ộ ữ ấn đềchính c a thủ ời đại hi n nay ệ Phương thức cũ là giám sát thủ công chất thải trong các thùng chứa là một quá trình nặng nhọc, s dử ụng quá nhi u công sề ức, thời gian và chi phí của con người mà có thể dễ dàng tránh được với các công ngh hi n nay cệ ệ ủa chúng ta Mô hình thùng rác thông minh có thể đưa dữ liệu lên internet giúp con người có thể kiểm soát một cách hoàn toàn tự động, tiết kiệm rất nhiều th i gian mà còn mang lờ ại hiệu qu rả ất cao Chính vì lí do này nhm chúng em đã chọn đề tài “ Smart-Garbage Bin gửi dữ u lên liệ firebase”.
m ục tiêu đề tài
- Nghiên cứu nguyên l hoý ạt động cảm biến siêu âm HC-SR04
- Thiết kế được một chiếc thùng rác c khả năng nhận biết được rác đầy trong thùng
- Kết nối được cơ sở dữ liệu Firebase sử dụng Raspberry Pi để người dùng c thể nắm bắt thông tin về lượng rác thải trong thùng.
ĐỐ I TƯ NG VÀ PH M VI NGHIÊN C U 1 Ạ Ứ
- 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ụng sng siêu âm và c thể đo khoảng cách trong khoảng từ 2 -> 300cm, với độ chính xác gần như chỉ phụ thuộc vào cách lập trình
Nội dung quyển báo cáo được chia thành 5 chương :
Chương 1: T ng quan: Trình bày t ng quan vổ ổ ề đề tài
Chương 2: Cơ sở lý thuyết: Trình bày v c m bi n HC-SR04, Raspberry Pi 4 ề ả ế
Chương 3: Thiết kế ệ h thống : Sơ đồkhối, chức năng từng khối, lưu đồ ải thu t, gi ậ code lập trình
Chương 4: Kết quả : Kết quả thi công c a hủ ệ thống
Chương 5: Kết luận và hướng phát triền : Ưu nhược điểm của hệ thống, hướng phát triển đề tài
CHƯƠNG 2 CƠ SỞ LÝ THUYẾT
2.1 C M BI N SIÊU ÂẢ Ế M V ƯU NHƯC ĐIỂM CỦA SÓNG SIÊU ÂM 2.1.1 C m bi n siêu âm ả ế
Cảm biến siêu âm là thiế ị điện tt b ử đo khoảng cách của một đ i tưố ợng mục tiêu bằng cách phát ra sng siêu âm, sau đ âm thanh phản xạ được chuyển đổi thành tín hiệu điện Theo đ, bộ phát c a củ ảm biến có khả năng tạo ra âm thanh nh s d ng ờ ử ụ tinh thể áp điện Còn bộ thu có vai trò tiếp nhận âm thanh đến và đi từcác vịtrí khác nhau
Cảm biến siêu âm có nguyên lý hoạt động d a trên quá trình cho và nh n, có ự ậ nghĩa là hệ thống cảm biến sẽ liên tục phát ra các sóng âm thanh ngắn với tần số cao hơn mức mà con người có thể nghe và có tốc độ lan truyền mạnh Khi các sóng âm này g p phặ ải v t cậ ản là chất rắn hay chất lỏng thì s tẽ ạo ra các bước sóng ph n hả ồi Sau cùng, thiết bị ả c m bi n sế ẽ tiếp nhận, phân tích và xác định chính xác kho ng cách ả từ cảm biến đến vật cản
2.1.2 Ưu nhược điểm của sóng siêu âm
Sng siêu âm giúp người sử dụng c thể đo khoảng cách từ điểm phát đến vật thể mà không cần phải tiếp xúc Do đ, thiết bị này rất hữu dụng, dùng để đo các chất lỏng c độ ăn mòn cao, nguy cơ gây hại đến cơ thể
Ngoài chất lỏng, các sng siêu âm còn c thể lan truyền trong nhiều môi trường khác như: không khí, chất rắn, để phát hiện và đo khoảng cách giữa các vật thể
Hệ thống cảm biến siêu âm còn c độ nhạy cao nên thời gian phản hồi nhanh, độ chính xác gần như tuyệt đối khi sai số chỉ rơi vào khoảng trung bình là 0,15% trong khoảng cách 2m
Hệ thống cảm biến siêu âm c thể bị nhiễu tín hiệu nếu không được lắp đặt đúng cách
Do đ, người dùng nên đọc kỹ hướng dẫn của nhà sản xuất để lắp đặt chính xác Ngoài ra, chi phí cho một thiết bị cảm biến thường khá cao
2.2 CẢM BI N SIÊU ÂM HC-Ế SR04
HC-SR04 là cảm biến siêu âm chủ yếu được sử dụng để xác định khoảng cách của đối tượng mục tiêu
N đo khoảng cách chính xác bằng công nghệ không tiếp xúc, tức là không c tiếp xúc vật lý giữa cảm biến và vật thể
Bộ phát và bộ thu là hai bộ phận chính của cảm biến, bộ phát chuyển đổi tín hiệu điện thành sóng siêu âm, còn bộ thu chuyển đổi tín hiệu siêu âm đ trở lại thành tín hiệu điện
Các sng siêu âm này là các tín hiệu âm thanh c thể được đo và hiển thị ở đầu nhận N cung cấp các chi tiết đo lường chính xác và đi kèm với độ phân giải khoảng 3mm, c thể c sự khác biệt nhỏ về khoảng cách tính toán từ đối tượng và khoảng cách thực tế
Hình 2a: C m bi n siêu âm HC-ả ế SR04
- Khoảng cách đo thực tế: 2cm đến 80cm
Sơ đồ chân HC-SR04
1 Vcc Chân Vcc cấp nguồn cho cảm biến, thường là + 5V
2 Trigger Chân trigger là chân đầu vào Chân này phải được giữ ở mức cao trong 10us để khởi tạo phép đo bằng cách gửi sng siêu âm
3 Echo Chân Echo là chân đầu ra Chân này tăng cao trong một khoảng thời gian bằng với thời gian để sng siêu âm quay trở lại cảm biến
4 Ground Chân này được nối đất
Cảm biến HC-SR04 là module 4 chân, c tên chân tương ứng là Vcc, Trigger, Echo và Ground Cảm biến này là một cảm biến rất phổ biến được sử dụng trong nhiều ứng dụng cần đo khoảng cách hoặc cảm biến đối tượng Module c hai mắt ở phía trước tạo thành bộ phát siêu âm và bộ thu Cảm biến hoạt động với công thức đơn giản
Khoảng cách = Tốc độ × Thời gian
Bộ phát sng siêu âm truyền một sng siêu âm, sng này truyền trong không khí và khi n bị bất kỳ vật liệu nào cản trở n sẽ bị phản xạ trở lại cảm biến, sng phản xạ này được quan sát bởi module bộ thu siêu âm như hình bên dưới
Bây giờ, để tính khoảng cách bằng cách sử dụng các công thức trên cần biết tốc độ và thời gian Vì chúng ta đang sử dụng sng siêu âm nên tốc độ phổ quát của sng siêu âm ở điều kiện phòng là 330m / s Mạch điện tích hợp sẵn trên module sẽ tính toán thời gian cần thiết để sng siêu âm quay trở lại và bật chân echo ở mức cao trong cùng một khoảng thời gian cụ thể, bằng cách này chúng ta cũng c thể biết được thời gian đã thực hiện Bây giờ chỉ cần tính toán khoảng cách bằng vi điều khiển hoặc bộ vi xử lý
Cách sử dụng cảm biến siêu âm HC-SR04
Cảm biến khoảng cách HC SR04 thường được sử dụng với cả nền tảng vi điều - khiển và vi xử lý như Arduino, ARM, PIC, Raspberry Pie, Hướng dẫn sau sẽ dùng chung cho bất kể loại thiết bị tính toán nào được sử dụng
Cấp nguồn cho cảm biến bằng cách sử dụng nguồn + 5V được điều chỉnh thông qua các chân nối đất và Vcc của cảm biến Dòng điện được tiêu thụ bởi cảm biến nhỏ hơn 15mA và do đ c thể được cấp nguồn trực tiếp bằng các chân 5V trên bo mạch (nếu c) Các chân Trigger và Echo đều là các chân I / O và do đ c thể được kết nối với các chân I / O của vi điều khiển Để bắt đầu đo, chân trigger phải được đặt ở mức cao 10uS và sau đ tắt Hoạt động này sẽ kích hoạt một sng siêu âm ở tần số 40Hz từ bộ phát và bộ thu sẽ đợi sng quay trở lại Khi sng được trả lại sau khi n bị phản xạ bởi bất kỳ đối tượng nào, chân Echo sẽ tăng cao trong một khoảng thời gian cụ thể bằng với thời gian cần thiết để sng quay trở lại cảm biến
Khoảng thời gian mà chân Echo vẫn ở mức cao được đo bởi vi xử lý hoặc vi điều khiển vì n cung cấp thông tin về thời gian cần thiết để sng quay trở lại cảm biến Sử dụng thông tin này để tính khoảng cách được đo
Raspberry Pi 4 là m t máy tính bộ ảng đơn, màn hình kép (được giới thi u vào ngày ệ
C M BI Ả ẾN SIÊU ÂM và ƯU NHƯC ĐIỂM CỦ A SÓNG SIÊU ÂM
2.1 C M BI N SIÊU ÂẢ Ế M V ƯU NHƯC ĐIỂM CỦA SÓNG SIÊU ÂM 2.1.1 C m bi n siêu âm ả ế
Cảm biến siêu âm là thiế ị điện tt b ử đo khoảng cách của một đ i tưố ợng mục tiêu bằng cách phát ra sng siêu âm, sau đ âm thanh phản xạ được chuyển đổi thành tín hiệu điện Theo đ, bộ phát c a củ ảm biến có khả năng tạo ra âm thanh nh s d ng ờ ử ụ tinh thể áp điện Còn bộ thu có vai trò tiếp nhận âm thanh đến và đi từcác vịtrí khác nhau
Cảm biến siêu âm có nguyên lý hoạt động d a trên quá trình cho và nh n, có ự ậ nghĩa là hệ thống cảm biến sẽ liên tục phát ra các sóng âm thanh ngắn với tần số cao hơn mức mà con người có thể nghe và có tốc độ lan truyền mạnh Khi các sóng âm này g p phặ ải v t cậ ản là chất rắn hay chất lỏng thì s tẽ ạo ra các bước sóng ph n hả ồi Sau cùng, thiết bị ả c m bi n sế ẽ tiếp nhận, phân tích và xác định chính xác kho ng cách ả từ cảm biến đến vật cản
2.1.2 Ưu nhược điểm của sóng siêu âm
Sng siêu âm giúp người sử dụng c thể đo khoảng cách từ điểm phát đến vật thể mà không cần phải tiếp xúc Do đ, thiết bị này rất hữu dụng, dùng để đo các chất lỏng c độ ăn mòn cao, nguy cơ gây hại đến cơ thể
Ngoài chất lỏng, các sng siêu âm còn c thể lan truyền trong nhiều môi trường khác như: không khí, chất rắn, để phát hiện và đo khoảng cách giữa các vật thể
Hệ thống cảm biến siêu âm còn c độ nhạy cao nên thời gian phản hồi nhanh, độ chính xác gần như tuyệt đối khi sai số chỉ rơi vào khoảng trung bình là 0,15% trong khoảng cách 2m
Hệ thống cảm biến siêu âm c thể bị nhiễu tín hiệu nếu không được lắp đặt đúng cách
Do đ, người dùng nên đọc kỹ hướng dẫn của nhà sản xuất để lắp đặt chính xác Ngoài ra, chi phí cho một thiết bị cảm biến thường khá cao
2.2 CẢM BI N SIÊU ÂM HC-Ế SR04
HC-SR04 là cảm biến siêu âm chủ yếu được sử dụng để xác định khoảng cách của đối tượng mục tiêu
N đo khoảng cách chính xác bằng công nghệ không tiếp xúc, tức là không c tiếp xúc vật lý giữa cảm biến và vật thể
Bộ phát và bộ thu là hai bộ phận chính của cảm biến, bộ phát chuyển đổi tín hiệu điện thành sóng siêu âm, còn bộ thu chuyển đổi tín hiệu siêu âm đ trở lại thành tín hiệu điện
Các sng siêu âm này là các tín hiệu âm thanh c thể được đo và hiển thị ở đầu nhận N cung cấp các chi tiết đo lường chính xác và đi kèm với độ phân giải khoảng 3mm, c thể c sự khác biệt nhỏ về khoảng cách tính toán từ đối tượng và khoảng cách thực tế
Hình 2a: C m bi n siêu âm HC-ả ế SR04
- Khoảng cách đo thực tế: 2cm đến 80cm
Sơ đồ chân HC-SR04
1 Vcc Chân Vcc cấp nguồn cho cảm biến, thường là + 5V
2 Trigger Chân trigger là chân đầu vào Chân này phải được giữ ở mức cao trong 10us để khởi tạo phép đo bằng cách gửi sng siêu âm
3 Echo Chân Echo là chân đầu ra Chân này tăng cao trong một khoảng thời gian bằng với thời gian để sng siêu âm quay trở lại cảm biến
4 Ground Chân này được nối đất
Cảm biến HC-SR04 là module 4 chân, c tên chân tương ứng là Vcc, Trigger, Echo và Ground Cảm biến này là một cảm biến rất phổ biến được sử dụng trong nhiều ứng dụng cần đo khoảng cách hoặc cảm biến đối tượng Module c hai mắt ở phía trước tạo thành bộ phát siêu âm và bộ thu Cảm biến hoạt động với công thức đơn giản
Khoảng cách = Tốc độ × Thời gian
Bộ phát sng siêu âm truyền một sng siêu âm, sng này truyền trong không khí và khi n bị bất kỳ vật liệu nào cản trở n sẽ bị phản xạ trở lại cảm biến, sng phản xạ này được quan sát bởi module bộ thu siêu âm như hình bên dưới
Bây giờ, để tính khoảng cách bằng cách sử dụng các công thức trên cần biết tốc độ và thời gian Vì chúng ta đang sử dụng sng siêu âm nên tốc độ phổ quát của sng siêu âm ở điều kiện phòng là 330m / s Mạch điện tích hợp sẵn trên module sẽ tính toán thời gian cần thiết để sng siêu âm quay trở lại và bật chân echo ở mức cao trong cùng một khoảng thời gian cụ thể, bằng cách này chúng ta cũng c thể biết được thời gian đã thực hiện Bây giờ chỉ cần tính toán khoảng cách bằng vi điều khiển hoặc bộ vi xử lý
Cách sử dụng cảm biến siêu âm HC-SR04
Cảm biến khoảng cách HC SR04 thường được sử dụng với cả nền tảng vi điều - khiển và vi xử lý như Arduino, ARM, PIC, Raspberry Pie, Hướng dẫn sau sẽ dùng chung cho bất kể loại thiết bị tính toán nào được sử dụng
Cấp nguồn cho cảm biến bằng cách sử dụng nguồn + 5V được điều chỉnh thông qua các chân nối đất và Vcc của cảm biến Dòng điện được tiêu thụ bởi cảm biến nhỏ hơn 15mA và do đ c thể được cấp nguồn trực tiếp bằng các chân 5V trên bo mạch (nếu c) Các chân Trigger và Echo đều là các chân I / O và do đ c thể được kết nối với các chân I / O của vi điều khiển Để bắt đầu đo, chân trigger phải được đặt ở mức cao 10uS và sau đ tắt Hoạt động này sẽ kích hoạt một sng siêu âm ở tần số 40Hz từ bộ phát và bộ thu sẽ đợi sng quay trở lại Khi sng được trả lại sau khi n bị phản xạ bởi bất kỳ đối tượng nào, chân Echo sẽ tăng cao trong một khoảng thời gian cụ thể bằng với thời gian cần thiết để sng quay trở lại cảm biến
Khoảng thời gian mà chân Echo vẫn ở mức cao được đo bởi vi xử lý hoặc vi điều khiển vì n cung cấp thông tin về thời gian cần thiết để sng quay trở lại cảm biến Sử dụng thông tin này để tính khoảng cách được đo
Raspberry Pi 4 là m t máy tính bộ ảng đơn, màn hình kép (được giới thi u vào ngày ệ
24 tháng 6 năm 2019) và được sử dụng rộng rãi trong tự động hóa và robot Nó có tính kinh t ế cao và vượt trội so v i các mô-ớ đun trước đ về ốc độ t và hi u suệ ất Mô-đun này rất nhỏ, m nh m và có th phù h p vạ ẽ ể ợ ới những nơi kh tiếp c n ậ N được gắn với các chân GPIO và có thể đượ ử d ng cho mc s ụ ột số hoạt động máy tính điển hình, tức là lướt web, viết chương trình và soạn tài liệu, v.v Raspberry Pi 4 có Gigabit Ethernet, kết hợp v i Bluetooth và m ng không dây tích h p Thiớ ạ ợ ế ị t b này được tích hợp bộ vi x ửlý lõi tứ 1.5GHz m nh m và hi u quạ ẽ ệ ả được coi là b não cộ ủa thiết b ị này Nó có mọi thứ ầ c n thiế ểt đ x lý tử hông tin đầu vào và lưu trữ CPU này thực hiện một số l nh bao gệ ồm một chương trình máy tính.
Raspberry Pi 4
Raspberry Pi 4 là m t máy tính bộ ảng đơn, màn hình kép (được giới thi u vào ngày ệ
24 tháng 6 năm 2019) và được sử dụng rộng rãi trong tự động hóa và robot Nó có tính kinh t ế cao và vượt trội so v i các mô-ớ đun trước đ về ốc độ t và hi u suệ ất Mô-đun này rất nhỏ, m nh m và có th phù h p vạ ẽ ể ợ ới những nơi kh tiếp c n ậ N được gắn với các chân GPIO và có thể đượ ử d ng cho mc s ụ ột số hoạt động máy tính điển hình, tức là lướt web, viết chương trình và soạn tài liệu, v.v Raspberry Pi 4 có Gigabit Ethernet, kết hợp v i Bluetooth và m ng không dây tích h p Thiớ ạ ợ ế ị t b này được tích hợp bộ vi x ửlý lõi tứ 1.5GHz m nh m và hi u quạ ẽ ệ ả được coi là b não cộ ủa thiết b ị này Nó có mọi thứ ầ c n thiế ểt đ x lý tử hông tin đầu vào và lưu trữ CPU này thực hiện một số l nh bao gệ ồm một chương trình máy tính.
Mô-đun này c sẵn với các biến thể RAM bao gồm 1GB, 2GB, 4GB và 8GB mà bạn có th l a chể ự ọn dựa trên yêu cầu của mình RAM tạm thời lưu trữ thông tin và với việc loại bỏ nguồn điện khỏi mô-đun, bộ nhớ này cũng bị xóa sạch, lý do n được gọi là bộ nh dớ ễ bay hơi.
Hai cổng HDMI mini có s n trên bo m ch Các cẵ ạ ổng này được sử ụng để d truyền tín hiệu âm thanh và hình nh gi a các thiả ữ ế ị t b
Máy này hỗ trợ các giao thức truyền thông khác nhau bao g m I2C, SPI và UART ồ được sử dụng để ố trí giao tiếp v i các thiết b bên ngoài b ớ ị
Raspberry Pi 4 đi kèm với ba cổng USB, trong đ một cổng là cổng nguồn USB-
C được sử dụng để ấp nguồ c n cho mô-đun Trong khi các loại khác là cổng USB 2.0 và USB 3.0
Trong các cổng USB này, b n có th kạ ể ết nối các thiết bị ngoại vi bên ngoài như chuột, webcam và bàn phím để có thêm chức năng.
Sử d ng máy tính nh bé này, b n có th ụ ỏ ạ ểthực hiện m t loộ ạt các dự án nhúng Chỉ cần kết nối mô-đun này với máy tính thông qua c ng USB và bổ ắt đầu chơi với nó tùy thích
Raspberry Pi 4 thường được sử dụng trong các dự án Robotics, IoT và Embedded
- Đi kèm với bộ xử lý Broadcom BCM2711, Quad-core Cortex-A72 (ARM v8) 64-bit SoC 1.5GHz
- 4 GHz và 5,0 GHz IEEE 802.11ac không dây, Bluetooth 5.0, BLE
- Mang Gigabit Ethernet để kết nối các máy tính trong không gian vật lý
- RAM c sẵn với các bộ nhớ khác nhau Chọn từ 2GB, 4GB hoặc 8GB LPDDR4-3200 SDRAM (tùy thuộc vào kiểu máy)
- Cổng hiển thị MIPI DSI 2 làn
- Cổng camera MIPI CSI 2 làn
- Một cổng USB 3.0; Một cổng USB 2.0 và một cổng nguồn USB-C
- 2 cổng micro HDMI c thể hỗ trợ hiển thị 4K -
- Cổng video tổng hợp và âm thanh stereo 4 cực
- H264 (giải mã 1080p60, mã ha 1080p30), H.265 (giải mã 4kp60)
- Đầu cắm GPIO 40 chân tiêu chuẩn Raspberry Pi (tương thích với các mô- đun trước đ)
- Chứa khe cắm thẻ nhớ Micro SD để tải hệ điều hành và lưu trữ dữ liệu -
- 5V DC qua đầu cắm GPIO (tối thiểu 3A *)
- Bật nguồn qua Ethernet (PoE) (yêu cầu PoE HAT riêng biệt)
- Nhiệt độ hoạt động: 0-50 độ C môi trường xung quanh
- 5V DC qua đầu nối USB-C (tối thiểu 3A *)
Hình 2c Sơ đồ chân Raspberry Pi 4
• Hiệu quả: t i thiố ểu 81%(dòng đầu ra t 100%, 75%, 50%, 25%) từ ối thiểu 72% 10% t i ở ả
• Chuẩn k t nế ối đầu ra: USB Type-C Đầu vào
• Khoảng hiệu điện th : 100-240Vac ế
• Công suất tiêu th (không tụ ải): tối đa 0.075W
• Nhiệt độ hoạ ột đ ng 0 40°C (32 to 104°F) –
Firebase của Google cung cấp hai loại cơ sở dữ liệu NoSQL cho người dùng c thể lưu trữ cơ sở dữ liệu đám mây và là giải pháp cho các ứng dụng di động với dữ liệu được đồng bộ hoá theo thời gian thực - Realtime Database và Cloud Firestore
Giải pháp cho xây dựng ứng dụng không Server
• Realtime : Firebase sử dụng đồng bộ hoá dữ liệu ,mỗi khi dữ liệu thay đổi mọi thiết bị kết nối sẽ nhận được thay đổi lập tức
• Offline : Ứng dụng sử dụng Firebase vẫn khả dụng khi ngoại tuyến vì Firebase Realtime Database SDK vẫn lưu dữ liệu của bạn trên local Khi kết nối được thiết lập lại, thiết bị sẽ được cập nhật thay đổi nào đã bỏ lỡ và đồng bộ ha dữ liệu hiện tại với máy chủ
• Sử dụng cho nhiều thiết bị : Firebase Realtime Database c thể được truy cập trực tiếp từ thiết bị di động hoặc trình duyệt web
• Khả năng mở rộng thông qua kết hợp cơ sở dữ liệu : Với Firebase Realtime Database trên gi Blaze (bản trả phí) cho phép mở rộng qua việc sử dụng kết hợp nhiều database trong cùng một Firebase project
Firebase Realtime Database cho phép bạn xây dựng các ứng dụng dễ dàng, đa dạng ,an toàn với cơ sở dữ liệu trực tiếp từ client Dữ liệu được duy trì cục bộ và ngay cả khi offline, các sự kiện thời gian thực vẫn sẽ được tiếp tục khi thiết bị lấy lại kết nối, Realtime Database sẽ đồng bộ ha các thay đổi dữ liệu cục bộ với các dữ liệu từ máy chủ và tự động hợp nhất mọi xung đột
Firebase Realtime database còn cung cấp một quy tắc bảo mật để xác định cách cấu trúc dữ liệu và quyền đọc ghi dữ liệu thường kết hợp với Authentication Firebase
Realtime Database là một cơ sở dữ liệu NoQuery và do đ c các tối ưu ha chức năng so với cơ sở dữ liệu quan hệ Realtime Database được thiết kế cho việc thực hiện nhanh chng Điều này cho phép bạn xây dựng trải nghiệm thời gian thực tuyệt vời c thể phục vụ hàng triệu người dùng mà không cần suy nghĩ đến khả năng đáp ứng.
B NGU N 10 Ộ Ồ 2.5 FIREBASE FIREBASE REALTIME DATABASE
3.1.1 Yêu cầu của hệ thống
H ệthống có các chức năng sau :
- o khoĐ ảng cách để xác định lượng rác trong thùng
- Hiển th d ị ữliệu lên web firebase
Thông qua việc gửi dữliệ ừu t Raspberry Pi 4 với cơ sở ữ liệ d u th i gian thờ ực Firebase mà người dùng sẽ biết được lượng rác trong thùng để xử lý một cách nhanh chóng
3.1.2 Sơ đồ khối và chức năng mỗi khối
3.1.2.1 Sơ đồ khối của hệ thống
THIẾT KẾ HỆ THỐNG
M CH N I DÂY 15 Ạ Ố 3.3 THI ẾT KẾ VÀ TÍNH TOÁN H Ệ THỐNG
Từ sơ đồ khối và các linh kiện đã chọn, ta tiến hành nối các linh kiện lạ ới nhau: i v
3.3 THI T K VÀ TÍNH TOÁN H Ế Ế ỆTHỐNG
3.3.1 Khối cảm bi n (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ổ ến để bi xác định khoảng cách vì rẻ và chính xác
- Có thể đo khoảng cách trong kho ng t 2 -> 300cm, vả ừ ớ ội đ chính xác gần như chỉ ph thuộc vào cách l p trình.ụ ậ
3.3.2 Khối xử lí trung tâm –Raspberry Pi 4
- Đây là một trong những vi điều khi n có r t nhi u chể ấ ề ức năng
- Đứng đầu danh sách các tùy ch n ph n cọ ầ ứng
- Và điều quan trọng Raspberry Pi 4 đang là vi điều khiển được tìm hi u nhể ất trong học ph n ầ thực tập thiế ế h t k ệthống nhúng trong công nghi p ệ
- Xây dựng ứng dụng nhanh chng mà không tốn thời gian, nhân lực để quản lý hệ thống và cơ sơ sở hạ tầng phía sau: Firebase cung cấp cho bạn chức năng như phân tích, cơ sở dữ liệu, báo cáo hoạt động và báo cáo các sự cố lỗi để bạn c thể dễ dàng phát triển, định hướng ứng dụng của mình vào người sử dụng nhằm đem lại các trải nghiệm tốt nhất cho họ
- Uy tín chất lượng đảm bảo từ Google: Firebase được google hỗ trợ và cung cấp trên nền tảng phần cứng với quy mô rộng khắp thế giới, được các tập đoàn lớn và các ưng dụng với triệu lượt sử dụng từ người dùng
- Quản lý cấu hình và trải nghiệm các ứng dụng của Firebase tập trung trong một giao diện website đơn giản, các ứng dụng này hoạt động độc lập nhưng liên kết dữ liệu phân tích chặt chẽ b Ph n mầ ềm :
Mô ph ng quá trình ỏ
+ Chương trình chính : import RPi.GPIO as GPIO #Import GPIO library import time import requests import json import serial
# Firebase Configuration firebase_url = 'https://smart-garbage-f33c7-default-rtdb.firebaseio.com/'
GPIO.setmode(GPIO.BCM) #Set GPIO pin numbering
TRIG = 23 #Associate pin 23 to TRIG
ECHO = 24 #Associate pin 24 to ECHO print("Distance measurement in progress")
GPIO.setup(TRIG,GPIO.OUT) #Set pin as GPIO out
GPIO.setup(ECHO,GPIO.IN) #Set pin as GPIO in time_hhmmss = time.strftime('%H:%M:%S') date_mmddyyyy = time.strftime('%d/%m/%Y') location = 'VIT'; while True:
GPIO.output(TRIG, False) #Set TRIG as LOW print("Waitng For Sensor To Settle") time.sleep(2) #Delay of 2 seconds
GPIO.output(TRIG, True) #Set TRIG as HIGH time.sleep(0.00001) #Delay of 0.00001 seconds
GPIO.output(TRIG, False) #Set TRIG as LOW while GPIO.input(ECHO)==0: #Check whether the ECHO is LOW start = time.time() #Saves the last known time of LOW pulse while GPIO.input(ECHO)==1: #Check whether the ECHO is HIGH stop = time.time() #Saves the last known time of HIGH pulse pulse_duration = stop – start # Th i gian t lúc gờ ừ ửi tín hiêu distance = pulse_duration * 34000 get distance distance = distance /2 if distance > 4 and distance < 16: #Check whether the distance is within range print("Distance:",distance - 0.5,"cm")#Print distance with 0.5 cm calibration
#adding data to firebase data = {'date' : date_mmddyyyy, 'time' : time_hhmmss, 'Distance' : distance} result = requests.post(firebase_url + '/' + location + '/location.json',data json.dumps(data)) if distance < 4: print("Out Of Range") #display out of range
4.1 K T QU MÔ HÌNH THI CÔNG Ế Ả
Hình 4a Khi chưa có rác
Cảm biến sẽ chờ hoạt động
Hình 4b Khi bỏ rác vào
Cảm biến sẽ nhận giá trị và trả về là khoảng cách giữa rác đến nắp thùng
Khi rác đầy hoặc khoảng cách giữa v t th đến cảm bi n thuộc giá trậ ể ế ị đã lập trình cần đi đổrác
Lúc này màn hình sẽ báo rác đầy và cần đi đổ rác
Hình 4c Giao diện trên firebase
CHƯƠNG 5: KẾT LUẬN V HƯỚNG PHÁT TRIỂN
Quá trình tìm hiểu và nghiên cứu để hoàn thành đề tàiđã gp phần c ng c lủ ố ại kiến thức đã được h c và mọ ở rộng thêm nhi u ki n thề ế ức mới, đồng thời có dịp cọ xát với thực tế và rút ra được nhiều kinh nghi m bệ ổ ích Dướ ự hưới s ng d n c a GVHD ẫ ủ Nguyễn Thanh Nghĩa đã giúp chúng em hoàn thiện đề tài “ Smart-Garbage Bin gửi dữ liệu lên Firebase” một cách hoàn ch nh ỉ
Sau nhi u tu n tích cề ầ ực tìm hiểu và n lỗ ực th c hiự ện, đề tài đã hoàn thành gần đúng theo yêu cầu và thời gian quy định Dưới đây là những kết quả đã đạt được cũng như ưu điểm của mạch đềtài:
- Lập trình xác định khoảng cách cho cảm biến siêu âm HC-SR04 khá chính xác
- Làm được một hệ thống tương đối hoàn chỉnh.
- Hiển thị được các thông tin về khoảng cách ngày tháng lên Firebase của google
- Chưa c biện pháp ch ng nhi u c ố ễ ụthể
- Chưa c tính năng hiển th lên màn hình hi n th ị ể ị trong trường h p không s d ng ợ ử ụ mạng để vào firebase
- Chưa tạo được app giao diện trên điện thoại giúp người dùng quan sát d ễ hơn.
- C thể phát triển cho phép hiển thị trên màn hình LCD phòng trường hợp bản thân không mang điện thoại hoặc không c mạng internet
- Thiết kế giao diện điện thoại giúp người dùng quan sát dễ hơn và nắm bắt được thông tin của hệ thống rõ hơn
- Nâng cấp thùng rác thêm chức năng tự mở nắp khi c người đến.
- Thêm hệ thống chuông báo khi rác đầy sẽ báo cho người dùng đi xử lý.