Sử Dụng Arduino ESP8266 đo mực nước hiển thị lên màn hình LCD rồi gửi mail 30 phút 1 lần và có nút ấn để đo mức nước đột xuất gửi về mail đã được cài đặt sẵn. ESP8266 là esp được tích hợp wifi có cảm biến siêu âm đo khoảng cách dễ sử dụng
Mở đầu
Giới thiệu chung tổng quan đề tài
Hiện nay, việc quản lý và giám sát ngập lụt tự động theo thời gian thực tại các đô thị và đồng bằng ngập lũ trở nên cấp thiết Điều này nhằm ứng phó hiệu quả với hiện tượng mưa lớn, triều cường và lũ lụt, đặc biệt trong bối cảnh thiên tai ngày càng diễn ra một cách cực đoan và bất thường.
Hiện nay, thách thức lớn nhất trong việc giám sát và cảnh báo ngập lụt là thiếu thiết bị và giải pháp phù hợp Các thiết bị đo mực nước tự động chủ yếu sử dụng cảm biến siêu âm, radar và áp suất, nhưng chỉ thích hợp cho việc đo mực nước tĩnh ở độ sâu lớn như ao hồ và sông suối, không thể đo được độ sâu ngập lụt nhỏ từ vài chục cm đến vài mét Hơn nữa, các cảm biến này thường bị ảnh hưởng bởi hoạt động của con người như giao thông, đi lại Ngoài ra, hầu hết các thiết bị đo mực nước hiện nay đều là hàng nhập khẩu, dẫn đến giá thành cao và khó làm chủ công nghệ Các yêu cầu về lắp đặt và kết nối thiết bị cũng phức tạp, khiến cho việc vận hành không ổn định.
Simple Mail Transfer Protocol (SMTP) là giao thức truyền thông dùng để gửi thư điện tử Là một tiêu chuẩn Internet, SMTP lần đầu tiên được định nghĩa vào năm 1982 qua RFC 821 và đã được cập nhật vào năm 2008 thông qua RFC mới.
SMTP, hay Giao thức chuyển thư đơn giản, là một giao thức phổ biến được sử dụng rộng rãi hiện nay để gửi và nhận email Các máy chủ thư và các tác nhân chuyển thư khác áp dụng SMTP trong quá trình này Dù các hệ thống độc quyền như Microsoft Exchange, IBM Notes và các dịch vụ email trên web như Outlook.com, Gmail, Yahoo! Thư có thể sử dụng các giao thức không chuẩn trong nội bộ, nhưng khi gửi hoặc nhận email từ bên ngoài, tất cả đều dựa vào SMTP Thông thường, máy chủ SMTP hoạt động qua cổng số 25.
Hệ thống quan sát mực nước qua mạng viễn thông sử dụng cảm biến siêu âm để đo khoảng cách mực nước và gửi dữ liệu về địa chỉ email Điều này giúp chúng ta dễ dàng kiểm soát mực nước một cách hiệu quả hơn.
Hệ thống quan sát mức nước qua mạng viễn thông cho phép kiểm tra tình hình từ xa, với thông tin được cập nhật thường xuyên và kịp thời.
1 Khái niệm cảm biến đo khoảng cách
Cảm biến đo khoảng cách là thiết bị chuyên dụng được thiết kế để đo lường khoảng cách với độ chính xác và tin cậy cao, có thể đạt từ vài cm đến 3000m Chúng thường được sử dụng rộng rãi trong ngành công nghiệp, đặc biệt là tại các trạm dầu khí.
2 Phân loại cảm biến đo khoảng cách
Trên thị trường hiện nay, có nhiều loại cảm biến để đo khoảng cách, bao gồm cảm biến quang, cảm biến siêu âm, và cảm biến hồng ngoại Mỗi loại cảm biến được thiết kế phù hợp với nhu cầu về độ chính xác, giá thành, mục đích sử dụng và điều kiện môi trường khác nhau Do đó, cảm biến đo khoảng cách thường được phân thành bốn loại chính.
Cảm biến đo khoảng cách có nhiều loại khác nhau, mỗi loại có những công dụng và đặc điểm riêng Việc hiểu rõ về từng loại cảm biến sẽ giúp chúng ta ứng dụng hiệu quả trong các lĩnh vực khác nhau.
Hình 1.1: Cảm biến Laser
Cảm biến Laser là thiết bị lý tưởng để đo khoảng cách, được ưa chuộng nhờ khả năng hoạt động trong nhiều điều kiện môi trường khác nhau Loại cảm biến này rất phổ biến do độ chính xác cao, cho phép đo đạc trên phạm vi rộng với sai số rất nhỏ.
Hình 1.2: Cảm biến siêu âm
Cảm biến siêu âm là thiết bị đo khoảng cách với độ chính xác cao, được ứng dụng rộng rãi trong nhiều lĩnh vực công nghiệp Một số ứng dụng phổ biến của cảm biến siêu âm bao gồm đo mức chất lỏng, phát hiện vật cản, và kiểm soát quy trình sản xuất.
- Đo khoảng cách mức nước thải của nhà máy
- Đo khoảng cách từ miệng của bể chứa đến dung môi trong bể chứa
(thường là xăng, dầu,…)
Hình 1.3: Cảm biến tư
Dòng điện xoay chiều được sinh ra trong cảm biến từ (Autonics, Omron) có khả năng phát hiện các vật thể bằng kim loại.
Do đó, cảm biến từ chỉ được sử dụng để xác định khoảng cách của các vật thể được cấu thành bởi kim loại.
Hình 1.4: cảm biến Encoder
Cảm biến Encoder không phổ biến như ba loại cảm biến đo khoảng cách khác do giá thành cao và ứng dụng hạn chế Tuy nhiên, cảm biến này lại rất phù hợp cho một số ứng dụng đặc thù trong ngành công nghiệp nặng.
4 Ứng dụng cảm biến đo khoảng cách
Cảm biến đo khoảng cách được ứng dụng phổ biến tại cảng biển và các khu công nghiệp, nhờ vào sự đa dạng về thiết bị, khoảng cách phát hiện và giá thành Chúng phục vụ nhiều mục đích đặc biệt, giúp tối ưu hóa quy trình vận hành.
- Tránh va chạm cho các hệ thống (cần cẩu Gantry)
- Đo khoảng cách (Ports, hệ thống docking)
- Đo mức xi măng, mực chất rắn trong bồn chứa, tháp cao (lưu trữ xi măng)
- Phát hiện vị trí (Lưu trữ tôn thép)
- Định vị container trong khu vực cần cẩu (Cảng container)
Giới thiệu về cảm biến siêu âm
1 Cảm biến siêu âm là gì ?
Hình 2.1: Tần số của sóng siêu âm
Siêu âm là âm thanh có tần số cao hơn nhiều so với âm thanh mà tai người có thể nghe được Tần số âm thanh được phân loại thành ba loại chính: hạ âm (dưới 20Hz), âm thanh mà con người nghe được (từ 20Hz đến 20kHz) và siêu âm (trên 20kHz).
Sóng siêu âm là âm thanh có tần số trên 20kHz, không thể nghe thấy bằng tai người Nó có khả năng lan truyền qua các môi trường như khí, lỏng và rắn Trong cùng một môi trường, tần số càng cao thì bước sóng càng ngắn, được thể hiện qua công thức λ = c/f.
Bước sóng (λ) tỷ lệ nghịch với tần số, cho phép sóng siêu âm phát hiện vật thể nhỏ đến vài milimet Nhờ vào những ưu điểm này, sóng siêu âm được ứng dụng rộng rãi trong y khoa, đo khoảng cách giữa chất lỏng và chất rắn, làm sạch bằng sóng siêu âm, cũng như trong máy hàn siêu âm.
Cảm biến siêu âm là thiết bị điện tử hoạt động dựa trên nguyên lý sóng siêu âm, có chức năng đo đạc, phát hiện vật thể, đo khoảng cách và xác định mức chất lỏng, chất rắn.
*Ưu nhược điểm của cảm biến siêu âm:
Tiếp theo ta sẽ cùng tìm hiểu về những ưu điểm cũng như nhược điểm của cảm biến siêu âm: Ưu điểm:
Độ chính xác cao, đo được khoảng cách xa Đối với cảm biến siêu âm đo mức nước Dinel thì đo được tới 20m.
Không cần tiếp xúc mà vẫn cảm biến được nên được dùng nhiều trong nhà máy.
Các loại cảm biến này thường có khả năng chịu được nhiệt độ và áp suất không cao.
Khoảng cách mà cảm biến siêu âm không thể đo được được gọi là vùng mù của cảm biến siêu âm Vùng mù này thường nằm phía dưới bộ phận phát sóng và có thể thay đổi tùy thuộc vào nhà sản xuất, có thể là khoảng cách xa hoặc gần.
Giá thành khá cao.
2 Nguyên lý hoạt động của Ultrasonic Sensor
Nguyên lý hoạt động của cảm biến siêu âm liên quan đến việc sử dụng sóng siêu âm để đo đạc và phát hiện khoảng cách Trước đó, chúng ta đã tìm hiểu về khái niệm siêu âm, và trong phần này, chúng ta sẽ đi sâu vào cách thức hoạt động của sóng siêu âm, cũng như ứng dụng cụ thể của cảm biến siêu âm trong thực tiễn.
Cảm biến siêu âm hoạt động dựa trên nguyên lý đơn giản của việc truyền và nhận sóng siêu âm Khi được cấp nguồn, thiết bị phát sóng siêu âm ra không gian Khi sóng này gặp vật cản, chúng sẽ phản xạ trở lại thiết bị Cảm biến thu lại sóng phản xạ và tính toán thời gian từ khi phát đi đến khi nhận lại, từ đó xác định khoảng cách đến vật cản tính bằng milimet.
Cảm biến siêu âm hoạt động dựa trên nguyên lý phát ra sóng âm và đo thời gian phản hồi để xác định khoảng cách Nguyên lý này cho phép cảm biến siêu âm được ứng dụng hiệu quả trong việc đo lường chất lỏng, chất rắn và phát hiện vật cản.
3 Ứng dụng của cảm biến siêu âm đo khoảng cách trong công nghiệp
Hình 3.1: Cảm biến siêu âm dùng đo mực nước trong công nghiệp
Cảm biến siêu âm được ưa chuộng trong ngành công nghiệp tự động hóa nhờ độ chính xác cao, dễ sử dụng và giá thành hợp lý Chúng chủ yếu được chia thành hai nhóm ứng dụng: đo liên tục và đo ON/OFF Mỗi phương pháp đo đều có những ưu điểm riêng, vì vậy việc lựa chọn phương pháp phù hợp phụ thuộc vào mục đích sử dụng cụ thể Cảm biến siêu âm cũng thường được sử dụng để báo mức trong bể chứa nước.
Sử dụng để đo liên tục
Giám sát liên tục mức nước trong bồn bằng cảm biến siêu âm là một ứng dụng quan trọng trong việc đo mức chất lỏng và chất rắn trong các tank chứa Cảm biến này cung cấp tín hiệu liên tục 4-20mA hoặc 0-10V, thường được sử dụng để kết nối với PLC nhằm điều khiển máy bơm hoặc biến tần Độ chính xác của cảm biến siêu âm phụ thuộc vào vị trí lắp đặt, vì vậy cần xác định rõ khoảng cách đo và các thông số kỹ thuật cơ bản để đảm bảo độ chính xác tối ưu.
Sử dụng để đo ON/OFF
Hình 3.3:Sử dụng sóng siêu âm để phát hiện vật cản
Cảm biến siêu âm có ứng dụng quan trọng trong việc đo ON/OFF và phát hiện sản phẩm lỗi, giúp cảnh báo kịp thời cho dây chuyền sản xuất hoặc hệ thống có nguy cơ gặp sự cố Điều này không chỉ giảm thiểu thiệt hại cho nhà máy mà còn đảm bảo quy trình sản xuất diễn ra suôn sẻ Tất cả ngõ ra của cảm biến siêu âm này đều ở dạng PNP hoặc NPN, cho phép chúng ta dễ dàng sử dụng để đóng ngắt relay hoặc thiết bị mong muốn.
Giới thiệu Esp8226
ESP8266 là một hệ thống trên chip (SoC) do công ty Espressif của Trung Quốc sản xuất, bao gồm bộ vi điều khiển Tensilica L106 32-bit và bộ thu phát Wi-Fi Chip này có 11 chân GPIO và một đầu vào analog, cho phép lập trình giống như Arduino hoặc các vi điều khiển khác Mặc dù ESP8266 có tổng cộng 17 chân GPIO, nhưng 6 chân (6-11) được sử dụng để giao tiếp với chip nhớ flash trên bo mạch Với khả năng kết nối Wi-Fi, ESP8266 có thể kết nối với mạng Wi-Fi, Internet, lưu trữ máy chủ web và tương tác với điện thoại thông minh, lý do khiến nó trở thành thiết bị IoT phổ biến nhất hiện nay.
Chip ESP8266 12-E được trang bị 17 chân GPIO, tuy nhiên không phải tất cả các chân này đều được sử dụng trên các bo mạch ESP8266 Một số chân GPIO không được khuyến khích sử dụng, trong khi những chân khác lại có các chức năng rất cụ thể.
Trong phần này, bạn sẽ học cách sử dụng đúng các GPIO của ESP8266.
* Sơ đồ chân chip ESP8266 12-E
Sơ đồ chân của chip ESP8266 12-E dưới đây rất hữu ích cho những ai đang sử dụng chip ESP8266 trong các mạch điện của mình.
Hình 4.1: Sơ đồ chân chip esp8266 12-E
Hiện nay, có nhiều loại bo phát triển với chip ESP8266, mỗi loại có sự khác biệt về số lượng GPIO, kích thước và hình thức thiết kế.
Các bo mạch ESP8266 được sử dụng rộng rãi nhất là ESP-01, ESP8266-12E NodeMCU Kit và Wemos D1 Mini.
Nếu đang sử dụng bo mạch ESP8266-01, bạn có thể sử dụng sơ đồ GPIO sau đây để tham khảo.
Hình 4.2: Sơ đồ chân ESP8266-01
Sơ đồ sơ đồ chân bộ kit ESP8266 12-E NodeMCU được minh họa bên dưới.
2 Các chân tốt nhất để sử dụng - ESP8266
Khi làm việc với ESP8266, cần lưu ý rằng số GPIO không khớp với nhãn trên màn lụa của bo mạch Cụ thể, D0 tương ứng với GPIO16 và D1 tương ứng với GPIO5.
Bảng dưới đây minh họa sự tương ứng giữa các nhãn trên màn lụa và số GPIO, đồng thời chỉ ra các chân phù hợp nhất để sử dụng trong mạch, cũng như những chân cần lưu ý khi kết nối.
Các chân được đánh dấu màu xanh lá cây là lựa chọn tốt nhất để sử dụng Những chân được đánh dấu màu vàng có thể sử dụng được, nhưng cần lưu ý vì có thể gặp phải một số vấn đề không mong muốn, đặc biệt khi khởi động Các chân đánh dấu màu đỏ không nên được khuyến khích sử dụng làm đầu vào hoặc đầu ra.
Nhãn GPIO Đầu vào Đầu ra Ghi chú
D0 GPIO16 không gián đoạn không hỗ trợ
MỨC CAO khi khởi độngSử dụng để đánh thức khi ngủ sâu
D2 GPIO4 OK OK thường được sử dụng như SDA (I2C)
D3 GPIO0 kéo lên OK kết nối với nút FLASH, khởi động không thành công nếu kéo MỨC THẤP
MỨC CAO khi khởi động kết nối với đèn LED trên bo mạch, khởi động không thành công nếu kéo MỨC THẤP
D5 GPIO14 OK OK SPI (SCLK)
D6 GPIO12 OK OK SPI (MISO)
D7 GPIO13 OK OK SPI (MOSI)
Khởi động không thành công nếu kéo MỨC CAO
RX MỨC CAO khi khởi động
MỨC CAO khi khởi động đầu ra gỡ lỗi khi khởi động, khởi động không thành công nếu kéo MỨC THẤP
GPIO được kết nối với Chip Flash
GPIO6 đến GPIO11 thường được kết nối với chip flash trong bo mạch
ESP8266 Vì vậy, những chân này không được khuyến khích sử dụng.
Chân được sử dụng trong khi khởi động
ESP8266 có thể không khởi động nếu một số chân bị kéo ở mức thấp hoặc mức cao Dưới đây là danh sách trạng thái của các chân khi khởi động:
GPIO16: chân ở mức cao khi khởi động
GPIO0: lỗi khởi động nếu kéo mức thấp
GPIO2: chân ở mức cao khi khởi động, không khởi động được nếu kéo mức thấp
GPIO15: lỗi khởi động nếu kéo mức cao
GPIO3: chân ở mức cao khi khởi động
GPIO1: chân ở mức cao khi khởi động, không khởi động được nếu kéo mức thấp
GPIO10: chân ở mức cao khi khởi động
GPIO9: chân ở mức cao khi khởi động
Chân mức cao khi khởi động
Khi ESP8266 khởi động, một số chân GPIO sẽ phát tín hiệu 3.3V, điều này có thể gây ra vấn đề nếu bạn kết nối relay hoặc thiết bị ngoại vi khác với các chân GPIO đó Cần lưu ý rằng các GPIO này sẽ xuất tín hiệu mức cao trong quá trình khởi động.
Ngoài GPIO5 và GPIO4, các GPIO khác có thể phát ra tín hiệu điện áp thấp khi khởi động, điều này có thể gây ra vấn đề nếu chúng được kết nối với transistor hoặc relay.
ESP8266 chỉ hỗ trợ đọc analog qua một GPIO, được gọi là ADC0 và thường được đánh dấu trên bảng mạch là A0 Điện áp đầu vào tối đa cho chân ADC0 là từ 0 đến 1V khi sử dụng chip trần ESP8266 Tuy nhiên, nếu bạn sử dụng bo phát triển như ESP8266 12-E NodeMCU, dải điện áp đầu vào sẽ là từ 0 đến 3,3V do bo mạch này có bộ chia điện áp bên trong.
Hầu hết các bo phát triển ESP8266 đều được trang bị đèn LED tích hợp, thường kết nối với GPIO2 Đèn LED hoạt động theo logic ngược, nghĩa là gửi tín hiệu CAO sẽ tắt đèn và gửi tín hiệu THẤP sẽ bật đèn.
Khi chân RST được kéo THẤP, ESP8266 sẽ reset Thao tác này cũng giống như nhấn nút reset trên bo mạch.
Khi GPIO0 được kéo thấp, ESP8266 sẽ vào chế độ bootloader, tương tự như việc nhấn nút FLASH/BOOT trên bo mạch.
GPIO16 có thể được sử dụng để đánh thức ESP8266 khỏi chế độ ngủ sâu bằng cách kết nối nó với chân RST.
ESP8266 không có chân I2C phần cứng, nhưng có thể triển khai I2C qua phần mềm bằng cách sử dụng bất kỳ GPIO nào Thông thường, các GPIO thường được sử dụng làm chân I2C bao gồm GPIO 4 và GPIO 5.
Các chân được sử dụng làm SPI trong ESP8266 là:
ESP8266 cho phép phần mềm PWM ở tất cả các chân I / O: GPIO0 đến
GPIO16 Tín hiệu PWM trên ESP8266 có độ phân giải 10-bit.
ESP8266 hỗ trợ chân ngắt trong bất kỳ GPIO nào, ngoại trừ GPIO16.
3 SMTP là gì? Nguyên lý hoạt động.
THIẾT KẾ, CHẾ TẠO
Thiết kế mạch
Cảm biến siêu âm SR04 hoạt động dựa trên nguyên lý phản xạ sóng siêu âm, bao gồm hai module: một module phát sóng siêu âm và một module thu sóng phản xạ Khi cảm biến phát ra sóng siêu âm với tần số 40kHz, nếu có vật cản trên đường đi, sóng sẽ phản xạ lại và tác động lên module nhận sóng Bằng cách đo thời gian từ khi phát đến khi nhận sóng, chúng ta có thể tính toán khoảng cách từ cảm biến đến vật cản.
Khoảng cách = (thời gian * vận tốc âm thanh (340 m/s) / 2
Node MCU là một nền tảng IoT mã nguồn mở, được phát triển dựa trên chip WIFI ESP8266EX trong module ESP8266 v12 Board này tích hợp IC CP2102, giúp việc tải chương trình trở nên dễ dàng hơn.
Nguồn Power Adaptor AC-DC 5V 2A tại Hshop.vn được gia công với chất lượng cao, đảm bảo công suất đầu ra thực tế luôn lớn hơn 80% so với thông tin sản phẩm Hshop.vn cam kết kiểm định chất lượng sản phẩm, mang đến sự yên tâm cho khách hàng.
Khách hàng sẽ được hoàn tiền khi mua các loại sản phẩm giá rẻ trôi nổi trên thị trường, vì những sản phẩm này thường chỉ đạt 20-30% thông số thực tế Ví dụ, sản phẩm ghi 5V 1A nhưng thực tế kiểm tra chỉ đạt 5V 150-200mA.
Nguồn Power Adaptor AC-DC 5V 2A là giải pháp lý tưởng để cấp nguồn cho các thiết bị hoạt động với điện áp 5VDC Với thiết kế nhỏ gọn và linh kiện chất lượng cao, nguồn này đảm bảo hiệu suất ổn định Dây điện được trang bị lõi đồng dày, mang lại độ bền vượt trội và khả năng truyền tải dòng điện lên đến 2A theo thông số của nhà sản xuất.
Thông số kỹ thuật: Điện áp ngõ vào:100~240VAC, 50/60Hz. Điện áp ngõ ra: 5VDC
Dòng điện ngõ ra tối đa: 2A (nếu sử dụng liên tục nên cung cấp ở mức 80% công suất).
Kiểu giắc ngõ ra: Chuẩn Jack DC tròn đường kính ngoài 5.5mm, đường kính trong phù hợp với lỗ kim từ 2.1~2.5mm.
3 Cài đặt môi trường lập trình cho ESP8266 bằng Arduino
1 Đầu tiên các bạn Download Arduino mới nhất
2 Sau khi cài xong các bạn mở Arduino IDE lên, vào phần File-
>Preferences Tại phần Additional Boards Manager URLs các bạn thêm đường dẫn: http://arduino.esp8266.com/stable/package_esp8266com_index.json v à ấn OK.
1 Vào Tools/Boards chọn module Node MCU(ESP8266 V12e Module
Nguyên lí hoạt động và lắp mạch
1.Lắp ráp mạch thực tế
- Cách đấu các chân:
Chân VCC (LCD) nối với chân VIN (NodeMcu V3)
Chân GND (LCD) nối với chân G (NodeMcu V3)
Chân SDA (LCD) nối với chân D2 (NodeMcu V3)
Chân SCL (LCD) nối với chân D1 (NodeMcu V3)
Chân VCC (Ultrasonic Sensor) nối với chân 3V (NodeMcu V3)
Chân Trig (Ultrasonic Sensor) nối với chân D5 (NodeMcu V3)
Chân Echo (Ultrasonic Sensor) nối với chân D6 (NodeMcu V3)
Chân GND (Ultrasonic Sensor) nối với chân G (NodeMcu V3)
Cảm biến siêu âm hoạt động dựa trên nguyên lý phát sóng và phản xạ sóng, tương tự như cách mà loài dơi tìm mồi trong đêm Khi dơi phát ra sóng siêu âm, các sóng này sẽ phản xạ lại khi gặp vật cản, giúp dơi xác định chướng ngại vật Tương tự, khi được cấp nguồn, cảm biến siêu âm phát ra chùm sóng siêu âm liên tục Khi các chùm sóng này chạm vào bề mặt vật cản, chúng sẽ phản xạ ngược lại cảm biến Lúc này, cảm biến thu lại các chùm sóng và tính toán khoảng cách từ cảm biến đến vật cản dựa trên thời gian phản xạ và vận tốc của sóng.
Khi thu được tín hiệu, sẽ hiển thị lên màn hình LCD và đồng thời gửi tin nhắn về gmail 30 phút một lần.
Khi ấn nút trên broad thì sóng sẽ tiếp tục đo mực nước lúc đó rồi gửi về gmail đã được cài đặt trước đó.
CHƯƠNG 3: KẾT QUẢ, HƯỚNG PHÁT TRIỂN
Chúng ta có thể áp dụng sản xuất hàng hóa để bán, với sản phẩm phù hợp cho cả ngành công nghiệp và đời sống hàng ngày Để phát triển thêm, có thể kết nối với cảnh báo hoặc vòi bơm nước, giúp xả nước khi quá nhiều hoặc bơm tự động khi mực nước quá thấp Ngoài ra, việc kiểm tra các thùng nhiên liệu cũng giúp đảm bảo an toàn và biết được mức độ nhiên liệu còn lại.