RC Robot Tutorial

This commit is contained in:
2025-07-21 02:37:28 -04:00
parent 2ae905f110
commit 28e434eb5c

View File

@@ -12,15 +12,15 @@ In addition to enabling real-time control, using ESP-NOW introduces key networki
structured communication. By using data structures to group control variables, you gain hands-on experience with how information structured communication. By using data structures to group control variables, you gain hands-on experience with how information
is packaged and transmitted, laying the groundwork for understanding the fundamentals of network communication in embedded systems. is packaged and transmitted, laying the groundwork for understanding the fundamentals of network communication in embedded systems.
The joystick used in the bitByteRider RC car remote unit outputs analog voltages ranging from 0V to 3.3V on both the x- and y- axes, The joystick used in the bitByteRider RC car remote unit outputs analog voltages ranging from 0V to 3.3V on both the x- and y-axes,
depending on the position of the joystick. These voltage levels are read by the ESP32-C3's ADC (Analog-to-Digital Converter) inputs. depending on the position of the joystick. These voltage levels are read by the ESP32-C3's ADC (Analog-to-Digital Converter) inputs.
When the joystick is in its neutral (centered) position, the ADC inputs on the ESP32-C3 receive approximately 1.65V on both axes. When the joystick is in its neutral (centred) position, the ADC inputs on the ESP32-C3 receive approximately 1.65V on both axes.
This midpoint voltage is interpreted and interpolated into a PWM (Pulse Width Modulation) value of 0, indicating no movement or This midpoint voltage is interpreted and interpolated into a PWM (Pulse Width Modulation) value of 0, indicating no movement or
motor activity. motor activity.
As the joystick is pushed to its maximum positions along the x- and y- axis, the voltage increases up to 3.3V. This maximum voltage As the joystick is pushed to its maximum positions along the x- and y-axis, the voltage increases up to 3.3V. This maximum voltage
is interpolated to a PWM value of 1024, which corresponds to a 100% duty cycle on the receiver sideresulting in full-speed is interpolated to a PWM value of 1024, which corresponds to a 100% duty cycle on the receiver side, resulting in full-speed
operation of the DC motors. operation of the DC motors.
To transmit control data, the X and Y axis values are encapsulated in a C struct, along with the receiver's **MAC** address, and sent To transmit control data, the X and Y axis values are encapsulated in a C struct, along with the receiver's **MAC** address, and sent
@@ -33,6 +33,11 @@ signals. These signals are then used to control the rotation speeds of the DC mo
This process not only facilitates real-time control but also introduces you to key networking concepts such as data This process not only facilitates real-time control but also introduces you to key networking concepts such as data
encapsulation, data structs, and the fundamentals of wireless data transmission in embedded systems. encapsulation, data structs, and the fundamentals of wireless data transmission in embedded systems.
.. admonition:: What is encapsulation?
Encapsulation refers to the process of organizing and packaging data into a structured format before it is transmitted between
devices. This is a fundamental concept in networking and communication protocols, including those used in IoT systems.
.. _GitHub: https://github.com/alexandrebobkov/ESP32-C3_Breadboard-Adapter .. _GitHub: https://github.com/alexandrebobkov/ESP32-C3_Breadboard-Adapter
Reserved Pins & GPIOs Reserved Pins & GPIOs