ข้ามไปที่เนื้อหาหลัก

ส่งงานครั้งที่ 19

Door Alarm

อุปกรณ์
  • Breadboard
  • Ultrasonic Sensor
  • Buzzer
  • Arduino Mega (any model)
  • Jumper Wires
  • USB cable for Arduino or 12v, 1A adapter.
Diagram


Code

#include <NewPing.h>
#define TRIGGER_PIN  12  // กำหนดให้ขา 12 เป็นTRIGGER
#define ECHO_PIN     11  // กำหนดให้ขา 11 เป็นECHO
#define MAX_DISTANCE 500 // ค่าระยะห่างที่มากที่สุด
NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); // NewPingตั้งค่าระยะห่าง
unsigned int pingSpeed = 50; // ความถี่ในการส่งข้อมูล
unsigned long pingTimer;
int flag = 0; // รอpingครั้งต่อไป
void setup() {
  Serial.begin(115200); // เปิด serial monitor ที่ 115200
  pingTimer = millis();
  pinMode(10, OUTPUT);
  // Start now.
}
void loop() {
  if (millis() >= pingTimer) {   // pingSpeed จากครั้งล่าสุดถึงอีก ping
    pingTimer += pingSpeed;      // ตั้งเวลาpingครั้งต่อไป
    sonar.ping_timer(echoCheck); // ส่งค่าpingออกเรียกว่าฟังก์ชั่น"echoCheck" ทุกๆ24ไมโครเซค
  }
  if (flag == 1)
  {
    digitalWrite(10, HIGH);
    delay(500);
    digitalWrite(10, LOW);
    delay(500);
    digitalWrite(10, HIGH);
    delay(500);
    digitalWrite(10, LOW);
    delay(500);
  }
  else
  {
    digitalWrite(10, LOW);
  }
}
void echoCheck() { // Timer2 ถูกขัดจังหวะให้เรียกฟังก์ชั่นนี้ทุก24ไมโครเซคเพื่อจะเช็ค ping status.
  if (sonar.check_timer()) { /
    Serial.print("Ping: ");
    Serial.print(sonar.ping_result / US_ROUNDTRIP_CM);
    Serial.println("cm");
    if ((sonar.ping_result / US_ROUNDTRIP_CM) < 50)
      flag = 1;
    else if ((sonar.ping_result / US_ROUNDTRIP_CM) > 50)
      flag = 0;
  }
}
Credit By :  https://circuitdigest.com/microcontroller-projects/door-alarm-using-arduino-ultrasonic-sensor

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

ส่งงานครั้งที่ 16

Smoke Detector Using MQ2 อุปกรณ์ Arduino UNO Smoke Detector Arduino Shield (Self Designed) Power Supply Smoke Sensor (MQ2) Resistors (10K and 1K) Buzzer 16x2 LCD 10k POT LED LM358 Burg strips Diagram Code #include <LiquidCrystal.h> LiquidCrystal lcd(12, 11, 5, 4, 3, 2); #define buzzer 9 #define sensor A0   #define load_Res 10   #define air_factor 9.83                                                   float SmokeCurve[3] ={2.3,0.53,-0.44};    // (x, y, slope) x,y พิกัดของจุดหนึ่งและความลาดชันระหว่างสองจุด                                                                                     ...

ส่งงานครั้งที่ 9

Gyro Sensor Interfacing Gyro Sensor  คือเซ็นเซอร์ที่มีไว้สำหรับตรวจจับลักษณะการหมุน โ ดยเป็นการตรวจจับแบบ  3  แกน  (3-Axes) อุปกรณ์ Arduino Uno MPU-6050 10K POT Jumper wire Breadboard USB cable Power supply Diagram Code #include<LiquidCrystal.h> //ประกาศเมื่อใช้จอ LiquidCrystal lcd(8,9,10,11,12,13); //ขาที่ต่อจอ #include <Wire.h> #include <MPU6050.h> #define period 10000 MPU6050 mpu; int count=0; char okFlag=0; byte degree[8] = {   0b00000,   0b00110,   0b01111,   0b00110,   0b00000,   0b00000,   0b00000,   0b00000 }; void setup()  {   lcd.begin(16,2);   lcd.createChar(0, degree);   Serial.begin(9600);   Serial.println("Initialize MPU6050");   while(!mpu.begin(MPU6050_SCALE_2000DPS, MPU6050_RANGE_2G))   {     lcd.clear();     lcd.print("Device not Found"...

ส่งงานครั้งที่ 18

12 V Battery Charger อุปกรณ์ Transformer 12V 1Amp IC LM317 (2) Diode Bridge W005 Connector Terminal Block (2) Capacitor 1000uF, 1uF Capacitor 0.1uF (5) Variable resistor 100R Resistor 1k (5) Resistor 10k Diode- Nn007  (3) LM358 – Opamp 0.05R - Shunt Resistor/wire LCD-16*2 (optional) Arduino Nano (optional) Diagram Code #include <LiquidCrystal.h>// ประกาศเมื่อใช้LCD LiquidCrystal lcd(11, 12, 10, 9, 8, 7); float voltage,current;  void setup() {   Serial.begin(9600);   //ตั้งค่าLCD   lcd.begin(16, 2);   // Print a message to the LCD.   lcd.setCursor(0, 0);   lcd.print("12V Charger");   lcd.setCursor(0, 1);   lcd.print("-Circuit Digest");   delay(2000);   lcd.clear();   lcd.setCursor(0, 0);   lcd.print("Voltage = ");   lcd.setCursor(0, 1);   lcd.print("Current = "); } void loop() {   voltage = (analogRead(A0)) * 0.0140625;   current = (an...