Cytron Technologies
Giờ làm việc: 8:00 - 17:00
Thứ 2 - Thứ 6 (trừ ngày lễ)
Hotline 0362917357
Có tiếng ồn xung quanh nhà bạn? Bạn có thể tự chế tạo cho mình một bộ dò âm thanh và thông báo cho bộ tạo tiếng ồn thông qua Ứng dụng Blynk sử dụng Maker UNO được ghép nối với ESP8266 Grove WiFi.
Phần cứng:
Phần mềm:
1. Kết nối Base Shield với bo mạch Maker UNO.
2. Kết nối dây cáp USB ới máy tính và bo mạch Maker UNO.
3. Kết nối Grove 8266 WiFi với chân D2 trên Base Shield.
4. Kết nối cảm biến âm thanh Grove với cổng A0 trên Base Shield.
5. Cài đặt điện áp đầu vào Base Shield kết nối với Maker UNO đến 5V.
1.Tải và cài đặt Arduino IDE trên máy tính nếu bạn chưa có.
2. Tải CH341 tại đây Nếu bạn sử dụng Maker UNO cho lần đầu tiên. Mở file đã tải xuống và cài đặt Trình Điều Khiển CH341 được sử dụng cho Maker UNO.
Xin lưu ý: Bạn có thể kiểm tra số Cổng cho Maker UNO trong “Device Manager” của máy tính
3. Chọn chân đúng trong Tools >> Port: >> COM X co bo mạch Maker UNO.
4. Chọn Sketch >> Include Library >> Manage Libraries. Sau đó tìm kiếm “Blynk” và chọn tên thư viện “Blynk”và cài đặt .
5. Đến liên kết link cứa một thư viện được thêm vào Blynk, chọn “Code” và “Download ZIP”.
6. Đến Arduino IDE và chọn Sketch >> Include Library >> Add .ZIP library… và chọn file the ZIP bạn đã tải xuống.
1. Cài ứng dụng Blynk tên điện thoại và tạo ra tài khoảng Blynk mới nếu bạn chưa có
Theo hướng dẫn tại đây bằng cách cài ứng dụng Blynk, tạo ra một tài khoản Blynk mới để lấy Auth Token
2. Tạo ra dự án mới, chọn “Arduino UNO” dưới “Choose Device”.
1. Mở ứng dụng Blynk à chọn dự án Blynk .
2.Trên dự án Blynk chọn biểu tượng (+) để thêm một widget. Chọn “Mức H” và đặt nó vào không gian dự án.
3. Chọn Widget bạn đã đặt trong không gian dự án, sau đó thay đổi loại chân thành“Virtual” và đặt nó thành “V1”. Bjan có thể đặt tên nó là “Sound Level” và bật nút “show value” .
4.Chọn biểu tượng (+) để thêm một widget lại và chọn “LED” và đặt nó vào không gian của dự án
5. Chọn “LED” và thay đổi loại chân thành “Virtual” và đặt nó thành “V2”. Bạn có thể thay đổi màu đèn LED thành đỏ bằng cách chọn biểu tượng màu xanh.
6.Cuối cùng thêm một widget kác bằng cách chọn “LCD” từ Widget Box và đặt nó vào không gian dự án.
7. Thay đổi đầu vào của LCD thành “Advanced” và thay đổi loại chân thành “Virtual” và đặt thành “V3”.
Tốc độ truyền của module WiFi Grove 8266 được đặt ở mức 115200 teo mặc định. Nhưng vì chúng tôi sẽ sử dụng thư viện nối tiếp phần mềm trên Maker UNO, nên giao tiếp ở tốc độ thấp hơn sẽ đáng tin cậy hơn. Do đó bạn phải thay đổi tốc độ truyền của Grove WiFi 8266 thành 9600bps trước khi sử dụng nó trong dự án này.
1. Sao chép và dán mã code bên dưới vào Arduino IDE của bạn.
#include <ESP8266_Lib.h>
// or Software Serial on Uno, Nano...
#include <SoftwareSerial.h>
SoftwareSerial EspSerial(2, 3); // RX, TX
// Your ESP8266 baud rate:
#define ESP8266_BAUD 9600
ESP8266 wifi(&EspSerial);
void setup()
{
// Debug console
Serial.begin(9600);
delay(10);
// First open a connection at 115200
EspSerial.begin(115200);
delay(10);
// Send AT command to set Wifi module's baudrate to 9600
EspSerial.println("AT+UART=9600,8,1,0,0");
delay(10);
// End the connection
EspSerial.end();
// Reopen the connection at 9600
EspSerial.begin(9600);
EspSerial.println("AT");
}
void loop()
{
}
2. Tải mã code đến bo mạch Maker UNO và đợi cho qúa trình cập nhật được hoàn thành.
Xin lưu ý: Đảm bảo rằng bạn phải chọn đúng cổng trong Tools >> Port: >> COM X.
Nếu bạn muốn thay đổi nó trở lại thành 115200, hãy sao chép mã sau thành Arduino IDE và tải nó lên Maker UNO trong khi module WiFi Grove 8266 được kết nối với cổng D2
#include <ESP8266_Lib.h>
// or Software Serial on Uno, Nano...
#include <SoftwareSerial.h>
SoftwareSerial EspSerial(2, 3); // RX, TX
// Your ESP8266 baud rate:
#define ESP8266_BAUD 9600
ESP8266 wifi(&EspSerial);
void setup()
{
// Debug console
Serial.begin(9600);
delay(10);
// First open a connection at 9600
EspSerial.begin(9600);
delay(10);
// Send AT command to set Wifi module's baudrate to 115200
EspSerial.println("AT+UART=115200,8,1,0,0");
delay(10);
// End the connection
EspSerial.end();
// Reopen the connection at 115200
EspSerial.begin(115200);
EspSerial.println("AT");
}
void loop()
{
}
1. Sao chép và dán mã bên dưới vào Arduino IDE.
#define BLYNK_PRINT Serial
#include <ESP8266_Lib.h>
#include <BlynkSimpleShieldEsp8266.h>
//Insert your Blynk project Auth Token
char auth[] = "Your Blynk Project Auth Token";
// Insert your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "Your WiFi SSID";
char pass[] = "Your WiFi Password";
//Software Serial on Uno, Nano...
#include <SoftwareSerial.h>
SoftwareSerial EspSerial(2, 3); // RX, TX
// Your ESP8266 baud rate:
#define ESP8266_BAUD 9600
ESP8266 wifi(&EspSerial);
const int pinSound = A0;// pin of Sound Sensor
const int pinLed = 7;// pin of LED on your Maker UNO board
int thresholdValue = 500;// set the threshold value to turn on or off the LED and LCD
WidgetLED led1(V2); // Widget LED Virtual Pin number in your Blynk project
WidgetLCD lcd(V3); // Widget LCD Virtual Pin number in your Blynk project
void setup()
{
pinMode(pinLed, OUTPUT); //set the LED as an OUTPUT
// Debug console
Serial.begin(9600);
delay(10);
// Open the connection at 9600
EspSerial.begin(9600);
EspSerial.println("AT");
Blynk.begin(auth, wifi, ssid, pass);
}
void loop()
{
Blynk.run();
int sensorValue = analogRead(pinSound);
if (sensorValue > thresholdValue) //If the sound level detected is higher than the threshold value...
{
//Serial monitor shows the alert message and the sensor value
Serial.println("Sound Level Too High!");
Serial.println(sensorValue);
//LED on Maker UNO will light up
digitalWrite(pinLed, HIGH);
//Level H Widget in Blynk shows the sound level
Blynk.virtualWrite(V1, sensorValue);
//Widget LED in Blynk will turn on
led1.on();
//LCD Widget shows alert messages on the coordinates of x=0, y=0
lcd.print(0, 0, "Too Loud!");
//LCD Widget shows alert messages on the coordinates of x=0, y=0
lcd.print(0, 1, "Keep Quiet!");
// use: (position X: 0-15, position Y: 0-1, "Message you want to print")
delay(5000);
//Clear the LCD Widget in Blynk
lcd.clear();
//Turn off LED Widget in Blynk
led1.off();
//Reset the Level H Widget in Blynk to 0
Blynk.virtualWrite(V1,0);
//Turn off LED on Maker UNO
digitalWrite(pinLed, LOW);
}
else
{
//Nothing is turned on
digitalWrite(pinLed, LOW);
led1.off();
lcd.clear();
}
}
2. Thay đổi WiFi SSID (Line 12), mật khẩu WiFi (Dòng 13) và Auth Token (Dòng 8) trong mã code.
Lời khuyên: Đến File >> Preferences, tick “Display line numbers” để hiển thị số dòng của mã code.
3. Tải mã code đến bo mạch Maker UNO à đợi cho nó hoàn tất quá trình tải
Xin lưu ý: Đảm bảo bạn đã chọn đúng cổng trong Tools >> Port: >> COM X.
4. Mở Serial Monitor và đợi kết nối WiFi nó có thể mất một vài giây cho đến khi kết nối WiFi hoàn thành hoặc không.
Xin lưu ý: Nhớ thay đổi Serial Monitor thành 9600.
5. Trên dự án Blynk project,nhấn biểu tượng “play”.
6. Nếu kết nối thành công, bạn hãy thử tạo ra tiếng ồn và nếu mức âm thanh vượt quá mức giới hạn, bạn sẽ thấy màn hình nối tiếp và dự án Blynk thông báo cho bạn bằng tin nhắn thông báo giá trị mức âm thanh