#include <LiquidCrystal_I2C.h>
#define PIN_TRIG1 2
#define PIN_ECHO1 3
#define PIN_TRIG2 4
#define PIN_ECHO2 5
#define I2C_ADDR 0x27
#define LCD_COLUMNS 16
#define LCD_LINES 2
LiquidCrystal_I2C lcd(I2C_ADDR, LCD_COLUMNS, LCD_LINES);
const float sensorDistance = 0.5;
// Speed limit (m/s)
const float speedLimit = 10.0;
unsigned long t1 = 0;
unsigned long t2 = 0;
void setup() {
// Init
lcd.init();
lcd.backlight();
pinMode(PIN_TRIG1, OUTPUT);
pinMode(PIN_ECHO1, INPUT);
pinMode(PIN_TRIG2, OUTPUT);
pinMode(PIN_ECHO2, INPUT);
}
void loop() {
digitalWrite(PIN_TRIG1, HIGH);
delayMicroseconds(10);
digitalWrite(PIN_TRIG1, LOW);
int duration1 = pulseIn(PIN_ECHO1, HIGH);
lcd.setCursor(0, 0);
lcd.print("Dis:");
lcd.setCursor(4, 0);
lcd.print(" ");
lcd.setCursor(4, 0);
lcd.print(duration1 / 58);
lcd.setCursor(8, 0);
lcd.print("CM");
digitalWrite(PIN_TRIG2, HIGH);
delayMicroseconds(10);
digitalWrite(PIN_TRIG2, LOW);
int duration2 = pulseIn(PIN_ECHO2, HIGH);
lcd.setCursor(0, 1);
lcd.print("Dis:");
lcd.setCursor(4, 1);
lcd.print(" ");
lcd.setCursor(4, 1);
lcd.print(duration2 / 58);
lcd.setCursor(8, 1);
lcd.print("CM");
}