Mục lục:
- Bước 1: Thiết bị Chúng tôi Cần
- Bước 2: Kết nối phần cứng
- Bước 3: Mã
- KIỂM SOÁT MỌI THỨ
- MCP3425 Bộ cảm biến I2C Mô-đun nhỏ
- Bước 4: Làm việc
- Bước 5: Ứng dụng và tính năng
Video: Sử dụng cảm biến tương tự với ESP8266: 5 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:30
Bộ chuyển đổi tương tự sang kỹ thuật số (ADC, A / D, A – D hoặc A-to-D) là một hệ thống biến đổi tín hiệu tương tự thành tín hiệu kỹ thuật số. Bộ chuyển đổi A / D dịch các tín hiệu điện tương tự cho mục đích xử lý dữ liệu. Với các sản phẩm phù hợp với hiệu suất, công suất, chi phí và kích thước. Các bộ chuyển đổi dữ liệu này tạo điều kiện thuận lợi cho hiệu suất chuyển đổi chính xác và mạnh mẽ trong một loạt các ứng dụng như truyền thông, năng lượng, chăm sóc sức khỏe, thiết bị đo và đo lường, điều khiển động cơ và công suất, tự động hóa công nghiệp và hàng không vũ trụ / quốc phòng. Một loạt các thiết bị chuyển đổi A / D được cung cấp để giúp kỹ sư trong mọi giai đoạn của dự án, từ lựa chọn sản phẩm đến thiết kế mạch.
Hôm nay, chúng ta sẽ sử dụng bộ chuyển đổi tương tự sang kỹ thuật số với ESP8266. Hãy bắt đầu.. !!
Bước 1: Thiết bị Chúng tôi Cần
1. Bộ chuyển đổi MCP3425 ADC
MCP3425 là Bộ chuyển đổi tín hiệu tương tự sang kỹ thuật số 1 kênh với độ phân giải 16-Bit, lý tưởng cho việc giám sát cảm biến độ phân giải cao tốc độ thấp. MCP3425 có khả năng đọc điện áp tương tự ở 15 mẫu mỗi giây với độ phân giải 16-Bit hoặc 240 mẫu mỗi giây ở độ phân giải 12-bit.
2. Adafruit Huzzah ESP8266
ESP8266 là một nền tảng đáng kinh ngạc để phát triển ứng dụng IoT. Bộ xử lý ESP8266 của Espressif là bộ vi điều khiển 80 MHz với giao diện người dùng WiFi đầy đủ và ngăn xếp TCP / IP cũng có hỗ trợ DNS. ESP8266 cung cấp một nền tảng hoàn thiện để giám sát và điều khiển các ứng dụng sử dụng Ngôn ngữ dây Arduino và Arduino IDE.
3. Bộ lập trình USB ESP8266
Bộ điều hợp máy chủ ESP8266 này được Contol Everything tạo riêng cho phiên bản Adafruit Huzzah của ESP8266, cho phép kết nối giao tiếp I²C.
4. Cáp kết nối I²C
Contol Everything cũng thiết kế cáp kết nối I²C có sẵn tại liên kết trên.
5. Cáp USB mini
Cáp USB mini Bộ nguồn là lựa chọn lý tưởng để cấp nguồn cho Adafruit Huzzah ESP8266.
Bước 2: Kết nối phần cứng
Nói chung, tạo kết nối là phần dễ nhất của dự án này. Làm theo hướng dẫn và hình ảnh, và bạn sẽ không gặp vấn đề gì.
Trước hết, lấy Adafruit Huzzah ESP8266 và đặt nó trên Bộ lập trình USB (với Cổng I²C Hướng vào trong). Nhấn nhẹ nhàng ESP8266 vào Bộ lập trình USB và chúng ta đã hoàn tất bước này (Xem hình # 1).
Đi một Cáp I²C và kết nối nó với cổng Đầu vào của Cảm biến. Để cáp này hoạt động tốt, hãy nhớ Đầu ra I²C LUÔN LUÔN kết nối với Đầu vào I²C. Bây giờ, hãy kết nối đầu còn lại của cùng một Cáp I²C với Bộ lập trình USB có Adafruit Huzzah ESP8266 được gắn trên nó (Xem hình # 2).
Lưu ý: Dây màu nâu phải luôn đi theo kết nối Nối đất (GND) giữa đầu ra của một thiết bị và đầu vào của thiết bị khác.
Cắm cáp Mini USB vào giắc cắm nguồn của Adafruit Huzzah ESP8266. Kết nối cuối cùng sẽ giống như trong hình số 3.
Bước 3: Mã
Mã ESP cho Adafruit Huzzah ESP8266 và MCP3425 ADC Converter có sẵn trên kho lưu trữ GitHub của chúng tôi.
Trước khi tiếp tục mã, hãy đảm bảo rằng bạn đã đọc các hướng dẫn được cung cấp trong tệp Readme và thiết lập Adafruit Huzzah ESP8266 của bạn cho phù hợp. Sẽ chỉ mất 5 phút để thiết lập ESP.
Để thuận tiện cho bạn, bạn cũng có thể sao chép mã ESP đang hoạt động cho cảm biến này từ đây:
// Được phân phối với giấy phép tự do.// Sử dụng nó theo bất kỳ cách nào bạn muốn, lợi nhuận hoặc miễn phí, miễn là nó phù hợp với giấy phép của các tác phẩm liên quan. // MCP3425 // Mã này được thiết kế để hoạt động với MCP3425_I2CADC I2C Mini Module có sẵn từ ControlEverything.com. //
#bao gồm
#include #include #include
// Địa chỉ I2C MCP3425 là 0x68 (104)
#define Addr 0x68
const char * ssid = "mạng ssid của bạn";
const char * password = "mật khẩu của bạn"; áp suất phao, cTemp, fTemp;
Máy chủ ESP8266WebServer (80);
void xử lý ()
{dữ liệu int không dấu [2];
// Bắt đầu truyền I2C
Wire.beginTransmission (Addr); // Gửi lệnh cấu hình // Chế độ chuyển đổi liên tục, độ phân giải 12-bit Wire.write (0x10); // Dừng I2C Transmission Wire.endTransmission (); chậm trễ (300);
// Bắt đầu truyền I2C
Wire.beginTransmission (Addr); // Chọn thanh ghi dữ liệu Wire.write (0x00); // Dừng I2C Transmission Wire.endTransmission ();
// Yêu cầu 2 byte dữ liệu
Wire.requestFrom (Addr, 2);
// Đọc 2 byte dữ liệu
// raw_adc msb, raw_adc lsb if (Wire.available () == 2) {data [0] = Wire.read (); data [1] = Wire.read (); }
// Chuyển đổi dữ liệu thành 12 bit
int raw_adc = (data [0] & 0x0F) * 256 + data [1]; if (raw_adc> 2047) {raw_adc - = 4096; }
// Xuất dữ liệu ra màn hình nối tiếp
Serial.print ("Giá trị kỹ thuật số của đầu vào tương tự:"); Serial.println (raw_adc); chậm trễ (500);
// Xuất dữ liệu ra máy chủ web
server.sendContent ("<meta http-equiv = 'refresh' content = '3'""
KIỂM SOÁT MỌI THỨ
www.controleverything.com
MCP3425 Bộ cảm biến I2C Mô-đun nhỏ
"); server.sendContent ("
Giá trị kỹ thuật số của đầu vào tương tự: "+ String (raw_adc));}
void setup ()
{// Khởi tạo giao tiếp I2C dưới dạng MASTER Wire.begin (2, 14); // Khởi tạo giao tiếp nối tiếp, đặt tốc độ baud = 115200 Serial.begin (115200);
// Kết nối với mạng WiFi
WiFi.begin (ssid, mật khẩu);
// Chờ kết nối
while (WiFi.status ()! = WL_CONNECTED) {delay (500); Serial.print ("."); } Serial.println (""); Serial.print ("Đã kết nối với"); Serial.println (ssid);
// Lấy địa chỉ IP của ESP8266
Serial.print ("Địa chỉ IP:"); Serial.println (WiFi.localIP ());
// Khởi động máy chủ
server.on ("/", handleroot); server.begin (); Serial.println ("Máy chủ HTTP đã khởi động"); }
void loop ()
{server.handleClient (); }
Bước 4: Làm việc
Tải xuống (gitpull) hoặc sao chép mã và mở nó trong Arduino IDE.
Biên dịch và Tải lên mã và xem đầu ra trên Màn hình nối tiếp của bạn.
Lưu ý: Trước khi tải lên, hãy đảm bảo bạn nhập mạng SSID và mật khẩu của mình vào mã.
Sao chép địa chỉ IP của ESP8266 từ Serial Monitor và dán vào trình duyệt web của bạn. Bạn sẽ thấy một trang web với đầu ra kỹ thuật số của việc đọc đầu vào tương tự. Đầu ra của cảm biến trên Serial Monitor và Web Server được hiển thị trong hình trên.
Bước 5: Ứng dụng và tính năng
Thiết bị MCP3425 có thể được sử dụng cho các ứng dụng chuyển đổi dữ liệu tương tự sang kỹ thuật số với độ chính xác cao khác nhau, trong đó tính đơn giản của thiết kế, công suất thấp và dấu chân nhỏ là những yếu tố cần cân nhắc chính. Các ứng dụng chính bao gồm Thiết bị đo cầm tay, Cân và Đồng hồ đo nhiên liệu, Cảm biến nhiệt độ với RTD, Nhiệt điện trở và Cặp nhiệt điện, Cảm biến cầu về áp suất, độ căng và lực.
Bộ chuyển đổi ADC cho phép thực hiện chuyển đổi chính xác và đáng tin cậy trong một loạt các ứng dụng như truyền thông, năng lượng, chăm sóc sức khỏe, thiết bị đo lường và đo lường, điều khiển động cơ và công suất, tự động hóa công nghiệp và hàng không / quốc phòng.
Với sự trợ giúp của ESP8266, chúng tôi có thể tăng công suất của nó lên một chiều dài lớn hơn. Chúng tôi có thể kiểm soát các thiết bị của mình và theo dõi hiệu suất của chúng từ máy tính để bàn và thiết bị di động của chúng tôi. Chúng tôi có thể lưu trữ và quản lý dữ liệu trực tuyến và nghiên cứu chúng bất cứ lúc nào để sửa đổi. Các ứng dụng khác bao gồm Tự động hóa gia đình, Mạng lưới, Điều khiển không dây công nghiệp, Màn hình trẻ em, Mạng cảm biến, Thiết bị điện tử đeo được, Thiết bị nhận biết vị trí Wi-Fi, Báo hiệu hệ thống định vị Wi-Fi.
Ngoài ra, bạn có thể kiểm tra blog của chúng tôi về Tự động hóa gia đình với Cảm biến ánh sáng và ESP8266.
Đề xuất:
Hướng dẫn: Cách sử dụng cảm biến khoảng cách siêu âm tương tự US-016 với Arduino UNO: 3 bước
Hướng dẫn: Cách Sử dụng Cảm biến Khoảng cách Siêu âm Tương tự US-016 Với Arduino UNO: Mô tả: Mô-đun khởi động siêu âm US-016 cho phép khả năng đo không 2 cm ~ 3 m, điện áp cung cấp 5 V, dòng hoạt động 3.8mA, hỗ trợ điện áp đầu ra tương tự, ổn định và đáng tin cậy. Mô-đun này có thể khác nhau tùy theo thiết bị
Cảm biến giao diện, SPS-30, Cảm biến vật chất dạng hạt với Arduino Duemilanove sử dụng chế độ I2C: 5 bước
Cảm biến giao diện, SPS-30, Cảm biến vật chất hạt với Arduino Duemilanove Sử dụng chế độ I2C: Khi tôi đang xem xét các cảm biến giao tiếp SPS30, tôi nhận ra rằng hầu hết các nguồn đều dành cho Raspberry Pi nhưng không nhiều cho Arduino. Tôi dành một ít thời gian để làm cho cảm biến hoạt động với Arduino và tôi quyết định đăng trải nghiệm của mình ở đây để nó có thể
Cảm biến nhiệt độ và độ ẩm sử dụng năng lượng mặt trời Arduino Như cảm biến Oregon 433mhz: 6 bước
Cảm biến nhiệt độ và độ ẩm sử dụng năng lượng mặt trời Arduino As 433mhz Cảm biến Oregon: Đây là cấu tạo của một cảm biến nhiệt độ và độ ẩm sử dụng năng lượng mặt trời. Cảm biến mô phỏng một cảm biến Oregon 433mhz và có thể nhìn thấy trong cổng Telldus Net. Những gì bạn cần: 1x " 10-LED Cảm biến chuyển động năng lượng mặt trời " từ Ebay. Đảm bảo rằng nó cho biết bộ đánh bóng 3,7v
Mạch GPIO Raspberry Pi: Sử dụng cảm biến tương tự LDR mà không cần ADC (Bộ chuyển đổi tương tự sang kỹ thuật số): 4 bước
Mạch GPIO của Raspberry Pi: Sử dụng cảm biến tương tự LDR mà không cần ADC (Bộ chuyển đổi tương tự sang kỹ thuật số): Trong phần Hướng dẫn trước đây của chúng tôi, chúng tôi đã chỉ cho bạn cách bạn có thể liên kết các chân GPIO của Raspberry Pi với đèn LED và công tắc và cách chân GPIO có thể cao hoặc Thấp. Nhưng điều gì sẽ xảy ra nếu bạn muốn sử dụng Raspberry Pi của mình với cảm biến tương tự? Nếu chúng tôi muốn sử dụng
Cảm biến cảm ứng & Cảm biến âm thanh Điều khiển đèn AC / DC: 5 bước
Cảm biến cảm ứng & Cảm biến âm thanh Điều khiển đèn AC / DC: Đây là dự án đầu tiên của tôi và dự án này hoạt động dựa trên hai cảm biến cơ bản, một là Cảm biến cảm ứng và cảm biến thứ hai là Cảm biến âm thanh, khi bạn nhấn bàn phím trên cảm biến cảm ứng, đèn AC sẽ chuyển BẬT, nếu bạn nhả nó ra, Đèn sẽ TẮT và cùng