Mục lục:

Hướng dẫn sử dụng cảm biến nhiệt độ Arduino Nano - SI7050: 4 bước
Hướng dẫn sử dụng cảm biến nhiệt độ Arduino Nano - SI7050: 4 bước

Video: Hướng dẫn sử dụng cảm biến nhiệt độ Arduino Nano - SI7050: 4 bước

Video: Hướng dẫn sử dụng cảm biến nhiệt độ Arduino Nano - SI7050: 4 bước
Video: [Arduino basic #18] Cảm biến độ ẩm, nhiệt độ DHT11 2024, Tháng mười một
Anonim
Image
Image

SI7050 là cảm biến nhiệt độ kỹ thuật số hoạt động trên giao thức truyền thông I2C và mang lại độ chính xác cao trên toàn bộ dải nhiệt độ và điện áp hoạt động. Độ chính xác cao này của cảm biến là nhờ vào quá trình xử lý tín hiệu mới lạ và thiết kế tương tự. Các cảm biến này được nhúng với một bộ nhớ trên chip để lưu trữ dữ liệu callibration, tạo điều kiện cho việc sử dụng nó trên một phạm vi rộng. Đây là phần trình diễn của nó với Arduino Nano.

Bước 1: Những gì bạn cần.. !

Những gì bạn cần.. !!
Những gì bạn cần.. !!

1. Arduino Nano

2. SI7050

3. Cáp I²C

4. Tấm chắn I²C cho Arduino Nano

Bước 2: Kết nối:

Sự liên quan
Sự liên quan
Sự liên quan
Sự liên quan
Sự liên quan
Sự liên quan
Sự liên quan
Sự liên quan

Lấy một tấm chắn I2C cho Arduino Nano và nhẹ nhàng đẩy nó qua các chân của Nano.

Sau đó kết nối một đầu của cáp I2C với cảm biến SI7050 và đầu kia với tấm chắn I2C.

Các kết nối được hiển thị trong hình trên.

Bước 3: Mã:

Mã số
Mã số

Có thể tải xuống mã arduino cho SI7050 từ kho lưu trữ github-DCUBE Store của chúng tôi.

Đây là liên kết cho cùng một:

github.com/DcubeTechVentures/SI7050/blob/master/Arduino/SI7050.ino

Chúng tôi bao gồm thư viện Wire.h để tạo điều kiện giao tiếp I2c của cảm biến với bảng Arduino.

Bạn cũng có thể sao chép mã từ đây, nó được đưa ra như sau:

// Được phân phối với một 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.

// SI7050

// Mã này được thiết kế để hoạt động với Mô-đun Mini SI7050_I2CS I2C

#bao gồm

// Địa chỉ I2C SI7050 là 0x40 (64)

#define Addr 0x40

void setup ()

{

// Khởi tạo giao tiếp I2C dưới dạng MASTER

Wire.begin ();

// Khởi tạo giao tiếp nối tiếp, đặt tốc độ truyền = 9600

Serial.begin (9600);

// Bắt đầu truyền I2C

Wire.beginTransmission (Addr);

// Dừng truyền I2C

Wire.endTransmission ();

chậm trễ (300);

}

void loop ()

{

dữ liệu int không dấu [2];

// Bắt đầu truyền I2C

Wire.beginTransmission (Addr);

// Gửi lệnh đo nhiệt độ, KHÔNG HOLD MASTER

Wire.write (0xF3);

// Dừng truyền I2C

Wire.endTransmission ();

chậm trễ (500);

// Yêu cầu 2 byte dữ liệu

Wire.requestFrom (Addr, 2);

// Đọc 2 byte dữ liệu

// tạm thời msb, tạm thời lsb

if (Wire.available () == 2)

{

data [0] = Wire.read ();

data [1] = Wire.read ();

}

// Chuyển đổi dữ liệu

float temp = ((data [0] * 256.0) + data [1]);

float ctemp = ((175,72 * temp) / 65536,0) - 46,85;

float ftemp = ctemp * 1.8 + 32;

// Xuất dữ liệu ra màn hình nối tiếp

Serial.print ("Nhiệt độ tính bằng độ C:");

Serial.print (ctemp);

Serial.println ("C");

Serial.print ("Nhiệt độ tính bằng Fahrenheit:");

Serial.print (ftemp);

Serial.println ("F");

chậm trễ (500);

}

Bước 4: Ứng dụng:

SI7050 có thể được kết hợp trong các hệ thống khác nhau bao gồm thiết bị máy tính, thiết bị tiêu dùng di động và thiết bị y tế. Cảm biến này có thể được sử dụng trong chuỗi kho lạnh, theo dõi tài sản cũng như các hệ thống kiểm soát công nghiệp khác nhau. Nó cũng đóng một vai trò quan trọng trong việc bảo vệ pin.

Đề xuất: