Distance Sensor and RGB LED — Arduino Uno simulation

Arduino Uno with VL53L0X distance sensor, buzzer, and RGB LED.

An interactive Arduino Uno circuit simulation you can run free in your browser on Velxio, by sophiia.

Components

Sketch code

#include <Wire.h>
#include <Adafruit_VL53L0X.h>

Adafruit_VL53L0X sensor = Adafruit_VL53L0X();

const int RED = 9;
const int GREEN = 10;
const int BLUE = 11;
const int BUZZER = 5;

void setup() {

  pinMode(RED, OUTPUT);
  pinMode(GREEN, OUTPUT);
  pinMode(BLUE, OUTPUT);
  pinMode(BUZZER, OUTPUT);

  Wire.begin();

  sensor.begin();
}

void loop() {

  VL53L0X_RangingMeasurementData_t measure;

  sensor.rangingTest(&measure, false);

  int distance = measure.RangeMilliMeter;


  // Відстань більше 1 метра
  if (distance > 1000) {

    digitalWrite(RED, LOW);
    digitalWrite(GREEN, HIGH);
    digitalWrite(BLUE, LOW);

    noTone(BUZZER);
  }


  // Відстань від 0.5 до 1 метра
  else if (distance >= 500) {

    digitalWrite(RED, HIGH);
    digitalWrite(GREEN, HIGH);
    digitalWrite(BLUE, LOW);

    int delayTime = map(distance, 500, 1000, 100, 500);

    tone(BUZZER, 1000);
    delay(80);
    noTone(BUZZER);
    delay(delayTime);
  }


  // Відстань менше 0.5 метра
  else {

    digitalWrite(RED, HIGH);
    digitalWrite(GREEN, LOW);
    digitalWrite(BLUE, LOW);

    tone(BUZZER, 1000);
  }

  delay(50);
}

More projects by sophiia