Light up the LED connected to ESP32 using the push button

ESP32 03-11-23
1804 0

Tutorial plan

1- Role of the push button in robotics

2- The components necessary to control the LED by push button through the ESP32 board

3- Mounting the ESP32 board with the LED and push button

4- Micropython programming of the ESP32 card to turn on an LED using a push button

 

 

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 the LED by push button through the ESP32 board :

To control the LED using the ESP32 board 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.

LED :

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, LED , push button and breadboard.

Mounting the ESP32 board with the LED and push buttons

Once you have the necessary components, you can proceed with the following steps to control  the LED  with push button:

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.

For push button 

- 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.

Mounting the ESP32 board with the LED and push button

Mounting the ESP32 board with the LED and push button

Micropython programming of the ESP32 card to turn on an LED using a push button

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 LED when the push button is pressed:

1- Import the necessary modules:

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

Make sure to connect the push button to GPIO pin 22 and the LED to GPIO pin 23.

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

Create a loop to monitor the pushbutton status and turn the LED 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 an LED using a push button with an ESP32 board. You can expand on this project by adding more features and functionality, such as debouncing the button or controlling the LED brightness.

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