Ultrasonic Distance Sensor Using Atom Matrix Esp32

Photo of Ron

Made by Ron / Automotive / Lights / Sensors

About the project

In this Tutorial we are going to explore how to measure a distance using the ATOM Matrix ESP32 and Ultrasonic Range sensor.

Project info

Difficulty: Easy

Platforms: ArduinoSparkFunVisuinoM5Stack

Estimated time: 1 hour

License: GNU General Public License, version 3 or later (GPL3+)

Items used in this project

Hardware components

Jumper wires (generic) Jumper wires (generic) x 1
SparkFun Ultrasonic Sensor - HC-SR04 SparkFun Ultrasonic Sensor - HC-SR04 x 1
M5Stack ATOM Matrix ESP32 Development Kit M5Stack ATOM Matrix ESP32 Development Kit x 1

Software apps and online services

Visuino Visuino
Arduino IDE Arduino IDE

Story

Step 1: What You Will Need

1 / 4

Step 2: The Circuit

  • Connect Ultrasonic sensor pin [VCC] to Atom Matrix pin [5V]
  • Connect Ultrasonic sensor pin [GND] to Atom Matrix pin [GND]
  • Connect Ultrasonic sensor pin [Trig] to Atom Matrix pin [G21]
  • Connect Ultrasonic sensor pin [ECHO] to Atom Matrix pin [G25]

Step 3: Start Visuino, and Select the Atom Matrix Board Type

1 / 2

Start Visuino as shown in the first picture Click on the "Tools" button on the Arduino component (Picture 1) in Visuino When the dialog appears, select "Atom Matrix" as shown on Picture 2

Step 4: In Visuino Add Components

1 / 4

  • Add "Ultrasonic Ranger" component
  • Add "Compare Analog Value" component
  • Add "Detect Edge" component
  • Add "Color Value" component

Step 5: In Visuino Set Components

1 / 8

  • Select "M5 Stack ATOM Matrix" board in the properties window expand "Modules">"RGB Matrix">"Elements" and click on the 3 dots button
  • In the "Elements" window drag "Fill Screen" to the left side and in the properties window select "Color" and click on the Pin Icon and select "Alpha Color SinkPin"
  • Close the "Elements" window
  • Select "CompareValue" and in the properties window select "Compare Type" to ctBigger and "Value" to 5 <<this is the distance to detect obstacle, you can adjust this number if you want
  • Select "DetectEdge1" and in the properties window set "Rising" to False
  • Double click on the "ColorValue1" and in the Elements window :
  • drag "Set Value" to the left side and in the properties window set "Color" to clGreen
  • drag another "Set Value" to the left side and in the properties window set "Color" to clRed
  • Close the Elements window

Step 6: In Visuino Connect Components

1 / 2

  • Connect "M5 Stack ATOM Matrix" pin [GPIO 25] to "UltrasonicRanger1" pin [Echo]
  • Connect "UltrasonicRanger1" pin[Ping] to "M5 Stack ATOM Matrix" pin [GPIO 21]
  • Connect "UltrasonicRanger1" pin[Out] to "CompareValue1" pin [In]
  • Connect "CompareValue1" pin [Out] to "DetectEdge1" pin [In]
  • Connect "CompareValue1" pin [Out] to "ColorValue1" > "Set Value1" pin [In]
  • Connect "DetectEdge1" pin [Out] to "ColorValue1" > "Set Value2" pin [In]
  • Connect "ColorValue1" pin [Out] to "M5 Stack ATOM Matrix" > "Fill Screen1" pin [Color]
  • Connect "ColorValue1" pin [Out] to "M5 Stack ATOM Matrix" > "Fill Screen1" pin [Clock]

Step 7: Generate, Compile, and Upload the Arduino Code

In Visuino, at the bottom click on the "Build" Tab, make sure the correct port is selected, then click on the "Compile/Build and Upload" button.

Step 8: Play

If you power the ATOM Matrix module The Display will start to show Green color and you can put an obstacle in front of the Ultrasonic module the display will show a Red color.

Congratulations! You have completed your project with Visuino. Also attached is the Visuino project, that I created for this tutorial, you can download it and open it in Visuino: https://www.visuino.eu

Schematics, diagrams and documents

Visuino File

Code

Visuino File

Credits

Photo of Ron

Ron

Arduino Developer

   

Leave your feedback...