Khóa Học Lập Trình Arduino – Lấy Tín Hiệu Số Và Tương Tự Từ Cảm Biến
Có thể bạn quan tâm
Khóa học lập trình Arduino là khóa học trong dự án IoT thuộc chương trình của Hour Of Code Vietnam xây dựng dành cho học sinh trung học cơ sở và trung học phổ thông.
Mục đích của bài này là giúp các bạn hiểu cách lấy tín hiệu tương tự (Analog) và tín hiệu số (digital) từ cảm biến. Cảm biến được sử dụng trong ví dụ này là cảm biến đo độ ẩm đất.
1. Dụng cụ thực hành:
Dụng cụ thực hành bao gồm
- 1 cảm biến độ ẩm đất,
- 1 board Arduino Uno
- 1 đèn led
2. Cảm biến đo độ ẩm đất:
Loại cảm biến này được sử dụng để đo độ ẩm đất, được dùng trong việc tưới tiêu cho nông nghiệp, cây cảnh,…. Cảm biến có 4 chân, gồm 2 chân cấp nguồn VCC và GND, 2 chân AO và DO. Chân VCC của cảm biến đo độ ẩm đất được nối với chân 5V trên board Arduino Uno. Chân AO là viết tắt của Analog Output và chân DO là viết tắt của Digital Output.
3. Nối dây:
Chân VCC nối nguồn 5V, chân GND nối chân GND trên board Arduino, chân AO nối chân, chân DO nối chân số 4, led nối chân 12.
4. Lập trình
Để lấy được tín hiệu digital, trong phần set up () người lập trình cần khai báo pinMode cho chân là INPUT, chân Analog không cần khai báo, phần mềm sẽ tự hiểu.
5. Phân tích mã code
Sau đây là mã code của chương trình:
// Khóa học Arduino – Chương trình đo độ ẩm đất với loại cảm biến đo độ ẩm đất được bán thông dụng ở Việt Nam
// Hướng dẫn: Hour Of Code Việt Nam
// Cách nối chân:
// AO nối với A1, DO nối với chân 4, GND nối nguồn âm, VCC nối nguồn dương.
#define Analog 1 // dùng chân A1 trên board Arduino để đọc tín hiệu Analog
#define Digital 4 //Dùng chân digital số 4 để đọc tín hiệu digital
#define Led 12 //chân 12 làm chân điều khiển led
int giatriAnalog, giatriDigital; //Kiểu biến của giatriAnalog và giatriDigital là kiểu int (số nguyên)
void setup()
{
Serial.begin(9600); // thiết lập tốc độ truyền dữ liệu
pinMode(Digital,INPUT); //xác định kiều chân 4 là chân vào (INPUT)
pinMode(Led,OUTPUT); //Xác định kiểu chân led (chân 12) là chân ra (OUTPUT)
}
void loop()
{
giatriAnalog=analogRead(Analog); //Lấy giá trị chân Analog (chân A1) bằng hàm analogRead()
giatriDigital=digitalRead(Digital); //Lấy giá trị chân digital bằng hàm digitalRead()
Serial.print(“Gia tri Analog: “); //In ra màn hình máy tính hàng chữ: Gia tri Analog
Serial.println(giatriAnalog); //In ra màn hình giá trị của biến giatriAnalog sau đó xuống dòng
Serial.print(“Gia tri digital: “); //In ra màn hình máy tính dòng chữ: Gia tri digital
Serial.println(giatriDigital); // In ra màn hình giá trị của biến giatriDigital sau đó xuống dòng
delay(1000); //chờ trong 1s
if (giatriAnalog>500) //nếu giá trị đọc được của biến giatriAnalog lớn hơn 500
{
digitalWrite(Led,HIGH); //Ra lệnh cho led sáng
delay(1000); //chờ 1s
}
else if(giatriAnalog<=500) // nếu giá trị đọc được của biến giatriAnalog nhỏ hơn hoặc bằng 500
{
digitalWrite(Led,LOW);//Ra lệnh cho led tắt
delay(1000); //Chờ 1 giây
}
}
Trên đây là bài hướng dẫn cách lấy tín hiệu tương tự và tín hiệu số từ cảm biến trong chuối bài thực hành của Khóa học Arduino cơ bản dành cho người mới bắt đầu. Chúc các bạn sẽ có một sản phẩm như ý
Hour Of Code Việt Nam
Từ khóa » Cách Sử Dụng Analog Trong Arduino
-
Bài 6: Đọc Hiệu điện Thế Của Một Nguồn điện Qua Cổng Analog.
-
Analog I/O | Cộng đồng Arduino Việt Nam
-
Lập Trình Arduino Cơ Bản → Analog Input - Thiết Bị Giáo Dục STEM
-
Analog I/O Trong Arduino - Blog Lập Trình
-
Học Arduino Bài 2 : Những điều Cơ Bản Về Arduino - MLAB
-
Hướng Dẫn đọc Giá Trị Biến Trở Theo Analog Của Arduino Trên Tinkercad
-
AnalogRead Là Gì - ĐIỆN TỬ TƯƠNG LAI
-
ADC Là Gì? Làm Thế Nào để Sử Dụng ADC Trong Arduino?
-
Chân Analog Arduino Là Gì - Blog Của Thư
-
01-Giới Thiệu Arduino Và Bắt đầu Với đọc Tín Hiệu điện áp Analog Từ ...
-
ESP32 ADC - Đọc Giá Trị Analog - DevIOT
-
Lập Trình ESP32 Với Arduino IDE → Analog Input Và ... - Ohtech
-
Đọc Analog - Lập Trình ESP8266 Arduino
-
Tín Hiệu Analog Là Gì? Tín Hiệu Digital Là Gì? - Đồng Hồ đo áp Suất