Devices & Components
Arduino Leonardo with Headers
Breadboard - 840 contacts
Ultrasonic Sensor - HC-SR04 (Generic)
5mm LED: Blue
Jumper cables
Resistor 330 ohm
Software & Tools
Arduino IDE
Project description
Code
Code of the project
cpp
Made in Arduino IDE 2.3.7
1//Our library 2#include <Ultrasonic.h> 3 4//Define led pins 5#define led1 9 6#define led2 8 7#define led3 7 8 9//Create "ultrasonic" objects 10Ultrasonic ultrasonic1(13, 12); 11Ultrasonic ultrasonic2(13, 11); 12Ultrasonic ultrasonic3(13, 10); 13 14//Integers to store sensor readings 15int val1; 16int val2; 17int val3; 18 19void setup() { 20 //Start serial at 9600 baud rate 21 Serial.begin(9600); 22 23 //Leds as output (leds are debuggers) 24 pinMode(led1, OUTPUT); 25 pinMode(led2, OUTPUT); 26 pinMode(led3, OUTPUT); 27} 28 29void loop() { 30 //Ping sequence 31 //The library read values in centimeters, by default 32 val1 = ultrasonic1.read(); //Reads sensor 1 33 delay(50); //Small delay between readings 34 val2 = ultrasonic2.read(); //Read sensor 2 35 delay(50); 36 val3 = ultrasonic3.read(); //Read sensor 3 37 delay(50); 38 39 //Print on serial monitor 40 Serial.print(val1); 41 Serial.print(" | "); 42 Serial.print(val2); 43 Serial.print(" | "); 44 Serial.println(val3); 45 46 //LED debug 47 //If close enough from sensor 1 48 if (val1 < 20) { 49 digitalWrite(led1, HIGH); 50 } else { 51 digitalWrite(led1, LOW); 52 } 53 //If close enough from sensor 2 54 if (val2 < 20) { 55 digitalWrite(led2, HIGH); 56 } else { 57 digitalWrite(led2, LOW); 58 } 59 //If close enough from sensor 3 60 if (val3 < 20) { 61 digitalWrite(led3, HIGH); 62 } else { 63 digitalWrite(led3, LOW); 64 } 65}
Documentation
Schematics
Made in Fritzing
schematics.png

Comments
Only logged in users can leave comments