Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /********* Pleasedontcode.com **********
- Pleasedontcode thanks you for automatic code generation! Enjoy your code!
- - Terms and Conditions:
- You have a non-exclusive, revocable, worldwide, royalty-free license
- for personal and commercial use. Attribution is optional; modifications
- are allowed, but you're responsible for code maintenance. We're not
- liable for any loss or damage. For full terms,
- please visit pleasedontcode.com/termsandconditions.
- - Project: **Signal Monitoring**
- - Source Code NOT compiled for: Arduino Nano ESP32
- - Source Code created on: 2025-01-17 12:33:11
- ********* Pleasedontcode.com **********/
- /****** SYSTEM REQUIREMENTS *****/
- /****** SYSTEM REQUIREMENT 1 *****/
- /* Khi có tín hiệu của cảm biến rung hãy mở loa báo */
- /* động và in” Động đất” và ngược lại Khi có tín */
- /* hiệu hồng ngoại (cháy) hãy mở loa và in “hỏa hoạn” */
- /* Báo kết quả nhiệt độ và độ ẩm,khi nhiệt độ quá 30 */
- /* độ c thì mở quạt */
- /****** END SYSTEM REQUIREMENTS *****/
- /* START CODE */
- /****** DEFINITION OF LIBRARIES *****/
- #include <ESP_AT_WiFiManager.h> //https://github.com/khoih-prog/ESP_AT_WiFiManager
- #include <Arduino.h>
- #include <DHT.h>
- #include <IRremote.h>
- /****** FUNCTION PROTOTYPES *****/
- void setup(void);
- void loop(void);
- /****** DEFINITION OF LIBRARIES CLASS INSTANCES*****/
- #define DHTPIN 4 // Chân kết nối của cảm biến DHT11
- #define DHTTYPE DHT11 // Chọn loại cảm biến DHT11
- #define DO_PIN 13 // Chân digital để đọc trạng thái ánh sáng
- #define SENSOR_PIN 25 // Chân kết nối cảm biến rung
- #define RECV_PIN 14 // Chân nhận tín hiệu hồng ngoại
- #define FAN_PIN 12 // Chân điều khiển quạt
- DHT dht(DHTPIN, DHTTYPE);
- IRrecv irrecv(RECV_PIN);
- decode_results results;
- void setup(void)
- {
- // put your setup code here, to run once:
- Serial.begin(115200); // Khởi động Serial với tốc độ 115200
- dht.begin(); // Khởi động cảm biến DHT11
- irrecv.enableIRIn(); // Bắt đầu nhận tín hiệu hồng ngoại
- pinMode(SENSOR_PIN, INPUT_PULLDOWN); // Cấu hình chân cảm biến rung
- pinMode(DO_PIN, INPUT); // Thiết lập chân DO_PIN là đầu vào cho cảm biến ánh sáng
- pinMode(FAN_PIN, OUTPUT); // Thiết lập chân quạt là đầu ra
- }
- void loop(void)
- {
- // put your main code here, to run repeatedly:
- // Đọc trạng thái cảm biến rung
- if (digitalRead(SENSOR_PIN)) {
- Serial.println("Động đất...");
- // Mở loa báo động
- // Code to activate the alarm sound here
- } else {
- Serial.println("Không phát hiện rung động...");
- }
- // Đọc giá trị từ cảm biến ánh sáng
- int lightState = digitalRead(DO_PIN);
- Serial.print("Trạng thái ánh sáng: ");
- Serial.println(lightState);
- if (lightState == HIGH) {
- Serial.println("Nó tối");
- } else {
- Serial.println("Nó sáng");
- }
- // Đọc nhiệt độ và độ ẩm từ cảm biến DHT11
- delay(2000); // Đợi giữa các lần đọc cảm biến DHT
- float h = dht.readHumidity(); // Đọc độ ẩm
- float t = dht.readTemperature(); // Đọc nhiệt độ
- if (isnan(h) || isnan(t)) {
- Serial.println("Không thể đọc từ cảm biến DHT!");
- } else {
- Serial.print("Độ ẩm: ");
- Serial.print(h);
- Serial.print(" %\t");
- Serial.print("Nhiệt độ: ");
- Serial.print(t);
- Serial.println(" *C");
- // Kiểm tra nhiệt độ và điều khiển quạt
- if (t > 30) {
- digitalWrite(FAN_PIN, HIGH); // Bật quạt
- Serial.println("Quạt đã bật do nhiệt độ quá 30 độ C.");
- } else {
- digitalWrite(FAN_PIN, LOW); // Tắt quạt
- Serial.println("Quạt đã tắt.");
- }
- }
- // Đọc tín hiệu hồng ngoại
- if (irrecv.decode(&results)) {
- Serial.print("Mã tín hiệu nhận được: ");
- Serial.println(results.value, HEX); // In ra mã tín hiệu nhận được
- // Mở loa báo động cho hỏa hoạn
- // Code to activate the alarm sound here
- irrecv.resume(); // Tiếp tục nhận tín hiệu
- }
- delay(1000); // Đợi 1 giây trước khi lặp lại
- }
- /* END CODE */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement