Light up two LEDs connected to ESP32 using the push buttons

ESP32 03-11-23
281 0

Tutorial plan

1- Role of the push button in robotics

2-The components necessary to control two LEDs by push buttons through the ESP32 board

3-Mounting the ESP32 board with two LEDs and push buttons

4-Micropython programming of the ESP32 card to turn on two LEDs using push buttons

 

 

Role of the push button in robotics

Push buttons can play a significant role in robotics by serving as a means of human interaction and control in various ways:

Start/Stop Control: Push buttons are often used to start and stop robotic systems. For example, a start button can initiate the robot's operation, and a stop button can halt it in case of an emergency or to end a task.

Emergency Stop (E-Stop): Emergency stop buttons are critical safety features in robotics. They provide an immediate and easily accessible way to shut down the robot in case of a malfunction or a hazardous situation. This is crucial for ensuring the safety of both the robot and the people working around it.

Mode Selection: In more complex robotic systems, push buttons can be used to select different operational modes, such as autonomous mode, manual control mode, or specific task modes. Users can switch between these modes using buttons.

User Interface: Push buttons can be used to provide a simple user interface for users to interact with the robot. They can trigger specific actions or functions, like moving an arm, activating a gripper, or changing the robot's behavior.

Teaching and Programming: Push buttons can be used in a teaching or programming mode, where operators can manually move robot arms or other components to demonstrate desired motions or trajectories. This information can be recorded and later reproduced by the robot.

Limit or Home Switches: Push buttons can be used as limit switches or home switches in robotics. They help the robot establish reference points or boundaries for its movement, ensuring accuracy and safety.

Calibration and Configuration: Push buttons can be used for calibrating sensors, configuring parameters, or setting up the robot's initial conditions. They can be part of a setup process to ensure that the robot operates as intended.

Reset or Clear Function: Push buttons can be used to reset the robot's state, clear error conditions, or restart specific tasks. They can help recover from unexpected situations.

User Feedback: Some push buttons may include indicator lights or displays to provide feedback to the user, such as the current mode, status, or system health.

Push buttons, when combined with microcontrollers and control systems, offer a convenient way for humans to interact with and control robots, whether in industrial automation, research, or various other applications. Their design and functionality can vary based on the specific needs of the robotic system and the safety requirements associated with it.

The components necessary to control two LEDs by push buttons through the ESP32 board

To control two LEDs using an ESP32 and push buttons, you will need the following components:

ESP32 board :

ESP32 card

The ESP32 is a popular and versatile microcontroller board that is widely used in the field of embedded systems and Internet of Things (IoT) development. It is developed by Espressif Systems and is part of the ESP (Espressif) series of microcontrollers.

LEDs :

Red LED and green LEDs

LED stands for "Light Emitting Diode." It is a semiconductor device that emits light when an electric current passes through it.

Push button:

push button

A push button, also known as a momentary switch or tactile switch, is a simple yet commonly used electromechanical component in electronics. It is designed to make or break an electrical connection temporarily when pressed or released.

Resistance

In the context of electronics and electrical circuits, a resistance refers to a passive two-terminal electrical component that restricts the flow of electric current. It is typically measured in ohms (Ω).

Breadboard:

Breadboard

A breadboard is a prototyping board that allows you to build circuits without soldering. It provides a convenient way to connect the components together.

Jumper Wires:

Jumper Wires

You'll need jumper wires to make connections between the ESP32 board, two LED , push buttons and breadboard.

Mounting the ESP32 board with two LEDs and push buttons

Once you have the necessary components, you can proceed with the following steps to control  two LEDs  with push buttons:

1- Connect the anode (longer lead) of the red LED to a current-limiting resistor (e.g., 220-330 ohms).

2- Connect the other end of the resistor to one of the ESP32's digital output pins (pin GPIO 23).

3- Connect the cathode (shorter lead) of the red LED to the ground (GND) on the ESP32.

4- Connect the anode (longer lead) of the green LED to a current-limiting resistor (e.g., 220-330 ohms).

5- Connect the other end of the resistor to one of the ESP32's digital output pins (GPIO 21).

6- Connect the cathode (shorter lead) of the green LED to the ground (GND) on the ESP32.

For push buttons 

1- Push button 1:

- Connect one leg of the push button to pin GPIO 22 of the ESP32 board.

- Connect another leg of the push button to pin GND of the ESP32 board.

2- Push button 2:

- Connect one leg of the push button to pin GPIO 19 of the ESP32 board.

- Connect another leg of the push button to pin GND of the ESP32 board.

Mounting the ESP32 board with two LEDs and push buttons

Mounting the ESP32 board with two LEDs and push buttons

Micropython programming of the ESP32 card to turn on two LEDs using push buttons

You can connect to your ESP32 board using a serial terminal (e.g., PuTTY, minicom) or use a tool like Thonny to write and execute MicroPython code.

Here's a simple example code to turn on the two LEDs (red LED and green LED)  when the push buttons are pressed:

1- Import the necessary modules:

2- Configure the pins (GPIO) for the push buttons and the two LED:

3- Create a variable to keep the state of the two LEDs (0 if the LED is off and 1 if the LED is on)

Create a loop to monitor the push buttons status and turn the two LEDs on/off accordingly:

Here is the complete program in Micropython:

When the button is pressed (the state is low), the LED lights up. If the button is pressed another time, the LED turns off. The 0.5 second delay is used to prevent pushbutton bounce, which can cause multiple button activations with a single press.

This simple example demonstrates how to use MicroPython to control two LEDs using  push buttons with an ESP32 board.

0 comment

Leave a comment

Veuillez noter s'il vous plaît*

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Purpose of this website

Educational robotics refers to the use of robots and robotics technology to promote learning in educational settings. It involves the integration of technology, engineering, and computer science into the classroom, allowing students to engage in hands-on, project-based learning experiences.
In this context, our website represents an excellent resource for parents, teachers and children who wish to discover robotics.

Contact details

Zaouiet Kontech-Jemmel-Monastir-Tunisia

+216 92 886 231

medaliprof@gmail.com

Pictures of the articles

Robotic site created by MedAli-Teacher info