Page 1
E-mail:support@acebott.com https://acebott.com Robot Arm Tutorial...
Page 2
3. Explore the working principles of the servo module and understand the collaborative work of multiple servos in the robot arm project. 4. Enhance your maker skills by building your own robot arm using the ACEBOTT kit through step-by-step tutorials.
6. Gain a comprehensive understanding of robot arm concepts, preparing for more advanced learning in the future. Overall, the ACEBOTT robot arm is a learning kit designed specifically for beginners and is based on the ESP32. Using this kit, users can gain a comprehensive understanding of the controller board and servos in a robot arm.
E-mail:support@acebott.com https://acebott.com Lesson 1 Hardware Understanding and Software Installation Robot arms are automated mechanical devices widely used in the field of robotics. The arm is a crucial component of the robot's execution mechanism, designed to transport the gripped workpiece to a given position. In the industrial sector, the application of robot arms can replace humans in monotonous and repetitive production tasks or in processing operations in dangerous and harsh environments.
E-mail:support@acebott.com https://acebott.com Ⅰ.Hardware Understanding The ESP32 controller board is a low-power, high-performance microcontroller ideal for IoT development. It features a dual-core processor running at 240MHz, 520KB of RAM, and 4MB of flash memory. It includes built-in WiFi and Bluetooth 4.2 modules for wireless communication.
E-mail:support@acebott.com https://acebott.com Ⅱ.Software Installation In the robotic arm project, we mainly use ACECode as programming software, which is a graphical programming tool that is compatible with a variety of motherboards, such as ESP32 and ESP8266. With ACECode, you only need to write the program code in the IDE and upload it to the motherboard.
Page 8
E-mail:support@acebott.com https://acebott.com (1)Installation method under Windows system ①When the download is complete, the file in the picture below will appear. Click Install software. ②After clicking on the software, the following screen appears and click "Install".You can choose the default installation path or choose your own software installation route.
Page 9
E-mail:support@acebott.com https://acebott.com ⑤ Find the shortcut for ACECode on your desktop and double-click to open the ACECode.
Page 10
E-mail:support@acebott.com https://acebott.com (2) Installation method under Mac system ①After the download is complete, the installation package file will appear as shown in the figure. Click to install the software. Attention: 1.Please select the appropriate software version for download based on the type of processor your Apple computer is equipped with (ARM or Intel).You can...
Page 11
E-mail:support@acebott.com https://acebott.com ② When you click on the installation package, the installation interface will appear. Simply select the ACECode icon and move it to the Applications folder to install the program.
Page 12
E-mail:support@acebott.com https://acebott.com ③ After the ACECode software is installed, locate ACECode in the workspace and open it. ④After launching the program, you will see the following interface. 2.Install the serial driver (skip it if installed) (1)Driver installation method for Windows systems...
Page 13
E-mail:support@acebott.com https://acebott.com ①Open ACECode, click on the serial port connection button, and in the pop-up options, select "One-click to install serial driver." After clicking, it will sequential ly install the serial port drivers required for the two controller boards supported by ACECode, ESP8266 and ESP32.
Page 14
E-mail:support@acebott.com https://acebott.com ④Click "Finish", the first driver installation is complete. ⑤ Next, a pop-up window for the installation of the second driver will appear; click "Install."...
Page 15
E-mail:support@acebott.com https://acebott.com ⑥ After the installation is completed, a message indicating that the installation was successful will be displayed. ⑦To confirm whether the installation was successful, plug one end of the USB cable into the ESP32 controller board and the other end into a USB port on the computer. In ACECode, check the serial port connection button.
Page 16
E-mail:support@acebott.com https://acebott.com ①Open ACECode and click on the serial port connection button. In the pop-up options, select "One-click install serial driver". After clicking, it will display the serial port drivers required for the two controller board supported by ACECode, ESP8266 and ESP32.
Page 17
E-mail:support@acebott.com https://acebott.com ④The CH340 driver has been successfully installed. Close the window. ⑤Next, install the CP210 serial port driver. After clicking "Continue," click the "Agree" button again.
Page 19
E-mail:support@acebott.com https://acebott.com ⑥ Click the "Install" button and, following the prompts, enter your fingerprint or password.
Page 20
E-mail:support@acebott.com https://acebott.com ⑦ After the installation is complete, you will be prompted that the installation was successful. Close the page. ⑧To confirm whether the installation was successful, plug one end of the USB cable into the ESP32 controller board and the other end into a USB port on your computer.
Page 21
E-mail:support@acebott.com https://acebott.com Then, check the serial port connection button in ACECode. If a new serial port appears, representing the connected control board, this indicates that the serial port drivers have been successfully installed. 3.Test the development environment ACECode supports two development modes: Online mode and Upload mode. Online mode allows online debugging, enabling real-time program debugging for convenience and efficiency.
Page 22
E-mail:support@acebott.com https://acebott.com ③Open "Esp32_test.sb3" in "English\ACECode\2.ACECode Program\Lesson 1", click on this code block with the left mouse button, and the code will turn yellow, indicating that the code is running. This instruction can make the built-in LED light on ESP32 flash for 1 second and then 1 second.Click the code block again to stop running the...
E-mail:support@acebott.com https://acebott.com Ⅲ.Understanding Servos 1.Introduction to servos The main structure of the servo is shown in the following figure, which mainly has several parts: shell, variable speed gear set, motor, adjustable potentiometer, control circuit board, and steering wheel. Its working principle is to control the circuit board to receive control signals from the signal source and drive the motor to rotate.
Page 24
E-mail:support@acebott.com https://acebott.com 2.The pin definition of the steering gear ①Usually, a servo has three control wires: power wire, ground wire, and signal wire. ②Servo pin definitions: Brown wire - GND, Red wire - 5V, Orange wire - signal. ③Connect the servo to the ESP32 controller board according to the following diagram.
Page 25
E-mail:support@acebott.com https://acebott.com "Servo_test.sb3" in "English\ACECode\2.ACECode Program\Lesson 1", ②Open connect the ESP32 controller board to the computer with a USB cable, select the correct controller board, and port, Upload the code to the ESP32 controller board. Attention: To maintain a stable power output, you need to install 18650 batteries in the battery holder, connect it to the controller board's power port, and switch it to the "on"...
Page 26
E-mail:support@acebott.com https://acebott.com ③If the servo is functioning properly, it will rotate from 0 degrees to 180 degrees, then from 180 degrees back to 0 degrees, and finally settle at the 90-degree position. 4.Servo Motor Zeroing Program Before installing the robotic arm, in order to smoothly assemble its structure, we need...
Page 27
E-mail:support@acebott.com https://acebott.com In the previous step, we debugged the servo by setting the angle for each servo. We can still achieve the zeroing of the servo by setting the zeroing angle for each servo. At the same time, we can also achieve it in a simpler way. In ACECode, a special extension is made for the robotic arm.
E-mail:support@acebott.com https://acebott.com Lesson 2 Assembly of the robot arm Before assembly, to facilitate the process and distinguish the servos at different positions, we will name the servos from top to bottom as Claws, Elbow, Shoulder, and Chassis. Ⅰ.Parts List...
E-mail:support@acebott.com https://acebott.com Disk bracket 2 Shoulder bracket 1 Shoulder bracket 1 Elbow bracket 1 Elbow bracket 2 Claw servo mounting plate Claw component 1 Claw component 2 Ⅲ.Assembly Steps Attention: If you need to watch the assembly video, please click the link below and select the corresponding construction video to watch.
Page 31
E-mail:support@acebott.com https://acebott.com Or scan the QR code below. 1.Remove the protective paper attached to the acrylic structure 2.Installing the ESP32 controller board on the base plate Part List Name Quantity esp32 Controller Board Base Plate M3*8 Flat Head Screw M3*12 Double-pass Copper Pillar...
Page 32
E-mail:support@acebott.com https://acebott.com 3.Installing the base plate Part List Name Quantity Base Plate Bracket M3*10 Flat Head Screw M3 Nut Attention: Place the M3 nuts in this position.Hold the nuts on both sides with your hand before tightening the screws. 4.Install the joystick module...
Page 33
E-mail:support@acebott.com https://acebott.com This step requires connecting the wires from the two joystick modules to the mainboard first. For the left joystick module, connect SW to pin 34, X to pin 32, Y to pin 33, and connect VCC and GND to the VCC and GND pins in the same row as pin 32.
Page 34
E-mail:support@acebott.com https://acebott.com M3*10 Flat Head Screw M3 Nut Attention: Place the M3 nuts in this position. 6.Install chassis servo Part List Name Quantity Servo Chassis Servo Mounting Plate M2*10 Round Head Screw M2 Nut...
Page 35
E-mail:support@acebott.com https://acebott.com Attention: servo shaft orientation. 7.Install pin Part List Name Quantity Attention: Do not press the pin too hard to prevent the from breaking. 8.Install the steering wheel of the chassis servo Part List Name Quantity Straight Steering Wheel...
Page 36
E-mail:support@acebott.com https://acebott.com M1.7*6 Large Round Flat Head Tapping Screw Attention: Install the steering wheel with the protrusion facing the circular hole. 9.Install the disk bracket Part List Name Quantity Half Straight Steering Wheel Disk bracket 1 Disk bracket 2 M1.7*6 Large Round Flat Head Tapping Screws...
Page 37
E-mail:support@acebott.com https://acebott.com 10.Fixed robot arm chassis structure Part List Name Quantity M2.5*4 Round Head Screw Attention: ①Before this step of installation, first connect the servo to the GPIO5 pin of the controller board, and then turn on the power of the controller board to...
Page 38
E-mail:support@acebott.com https://acebott.com ②In order to avoid damage to the steering gear during installation, please do not rotate the shaft of the steering gear. M2.5*4 round head Attention: The installation direction of this structure screws are in the should be consistent with bag of servo.
Page 39
E-mail:support@acebott.com https://acebott.com Attention: the nickel-plated shoulder bracket 1 lock nut can be fixed with l-angled socket spanner, Attention : Shoulder and do not tighten it too bracket 1 should be tightly. The same is true for attached to the outer...
Page 40
E-mail:support@acebott.com https://acebott.com Attention: the direction of the two steering shafts. Connecting the shoulder servo and elbow servo to the ESP32. Attention: ①First, unplug the USB cable, disconnect the power supply of the controller board, and make the robot arm servo in a state of no power;...
Page 41
E-mail:support@acebott.com https://acebott.com ③Connect the shoulder servo wire to GPIO16 pin, and the elbow servo wire to GPIO17 pin. ④Then turned on the power again, and keep the chassis, shoulder and elbow servos at 90° position. Part List Name Quantity M2.54 Round Head Screw...
Page 42
E-mail:support@acebott.com https://acebott.com 12.Fixed M3*40 nylon column Part List Name Quantity M3*40 Nylon Column M3*10 Flat Head Screw Attention: longer nylon column here. 13.Install the left paw structure of the robot arm Part List Name Quantity Half Straight Steering Wheel Claw Component 1 M1.7*6 Large Round Flat Head Tapping Screws...
Page 43
E-mail:support@acebott.com https://acebott.com Attention: Install the steering wheel with the protrusion facing downwards. white ABS nylon gasket 3mm diameter Attention: claw component 1 with the steering wheel should be positioned below.
Page 44
E-mail:support@acebott.com https://acebott.com 14.Install the right paw structure of the robot arm Part List Name Quantity Claw Component 2 M3*22 Flat Head Screws M3*14 Round Head Screws 3MM White ABS Nylon Gaske M3 Nuts Non-Slip Sleeve...
Page 45
E-mail:support@acebott.com https://acebott.com Attention: Do not tighten the M3*22 flat head screws. white ABS nylon gasket 3mm diameter Install the non-slip sleeve.
Page 46
E-mail:support@acebott.com https://acebott.com 15.Fixed the robot arm's claw servo mounting plate Part List Name Quantity Servo Claws Servo Mounting Plate M2*10 Round Head Screw M2 Nut Attention: Ensure the steering shaft and the circular hole are both positioned upwards. Connect the wire of the claws servo to the GPIO18 pin.
Page 47
E-mail:support@acebott.com https://acebott.com Attention: For this step, please power on the controller board and ensure the claws servo remains at the 90° position. Part List Name Quantity M2.5*4 Round Head Screw 6MM White ABS Nylon Gaske M3 Nickel-Plated Lock Nut Attention: The...
Page 48
E-mail:support@acebott.com https://acebott.com Part List Name Quantity Half Straight Steering Wheel Ebow Bracket 2 M1.7*6 Large Round Flat Head Tapping Screws M3*10 Flat Head Screw M2.5*4 Round Head Screw Attention: Install the steering wheel with the protrusion facing towards the circular hole.
Page 49
E-mail:support@acebott.com https://acebott.com Attention: Ensure M3*10 flat head screw that the elbow bracket and shoulder bracket are installed at a M2.5*4 round 90° angle. head screw 16.Organize the servo wires Please ensure that all four servo motors' DuPont wires are correctly connected to the...
Page 50
E-mail:support@acebott.com https://acebott.com Attention: The DuPont wires of the claws The claws servo motor is servo motor should connected to pin 18. not pass through the The elbow servo motor is concentric hole. connected to pin 17. The shoulder servo motor is connected to pin 16.
Page 51
E-mail:support@acebott.com https://acebott.com 17.Fixed the base of the robot arm Part List Name Quantity M3*10 Flat Head Screws M3 Nuts...
Page 52
E-mail:support@acebott.com https://acebott.com Attention: Ensure all four servo motor wires are connected to the controller board before tightening the screws. 18.Fixed battery holder Part List Name Quantity 18650 Battery Holder M3*8 Flat Head Screws M3*12 Double-pass Copper Pillar...
Page 53
E-mail:support@acebott.com https://acebott.com 19.Install the non-slip mat Peel off the adhesive film from the non-slip mat and stick the non-slip mat on the four corners underneath the robot arm base. The robot arm is now fully assembled!
E-mail:support@acebott.com https://acebott.com Lesson 3 Robot Arm Joystick Control Ⅰ.Servos Control 1.Pin description of robot arm servos After installing the robot arm, each servo assumes different functions. To control each servo's angle programmatically and achieve various functionalities, it's essential to know the corresponding pin numbers for each servo.
E-mail:support@acebott.com https://acebott.com Ⅱ.Understanding the Joystick Module 1.Introduction to the Joystick Module The joystick module consists of two sliding potentiometers and one button. When you move the joystick, the resistance values of the potentiometers change, resulting in corresponding X/Y voltage values. Pressing down on the joystick triggers the button, causing the SW signal to go low.
E-mail:support@acebott.com https://acebott.com III.Basic Movements of Robot Arm Controlled by Joystick...
Page 57
E-mail:support@acebott.com https://acebott.com The basic control actions of a robot arm mainly include left-right rotation, up-down elbow movement, and opening-closing of the claw. Once you master these basic movements, you can combine and expand other actions based on these fundamentals. Attention: After the robot arm is powered on, it is forbidden to rotate the servo directly by hand to prevent damage to the servo.
Page 61
E-mail:support@acebott.com https://acebott.com 2.Joystick control patterns After uploading the program, you will notice that the four arms of the robot arm are arranged in a "7" shape, which is the initial posture. You can then use the joystick to control the robot arm.
E-mail:support@acebott.com https://acebott.com Ⅳ.Extending Tasks Based on the basic operational patterns of the joystick on the robot arm, next we can achieve the functionality of using the joystick to control the robot arm for object handling tasks. Task description: Using the joystick module control method, maneuver the robot arm to pick up an object from point A and transport it to point B for placement.
E-mail:support@acebott.com https://acebott.com Lesson 4 The Spatial Coordinates of The Robot Arm The spatial coordinates of the robot arm play a crucial role in its control and programming. Through precise spatial coordinates, the robot arm can achieve accurate positioning, optimize motion planning, effectively avoid obstacles, perform precise operations, and thereby enhance levels of automation and intelligence.
E-mail:support@acebott.com https://acebott.com Ⅱ.Joint Coordinate System Apart from the Cartesian coordinate system, each joint of the robot arm has its own coordinate system known as the joint coordinate system. Its origin typically lies at the joint connection point, and its axes are defined along the rotation axis of the joint.
E-mail:support@acebott.com https://acebott.com III.Forward and Inverse Kinematics Forward kinematics refers to calculating the position and orientation of the robot arm in Cartesian coordinates based on the joint angles. Inverse kinematics, on the other hand, involves calculating the joint angles based on the Cartesian coordinates to achieve the desired movement of the robot arm.
E-mail:support@acebott.com https://acebott.com Ⅳ.Robot Arm Coordinate Diagram There will inevitably be some errors in the assembly process of the robot arm. In order to better calibrate the robot arm, we need to use the coordinate diagram.The coordinate diagram of the robot arm is composed of X and Y coordinates, with the intersection point of X and Y being the origin of the map.
E-mail:support@acebott.com https://acebott.com Ⅴ.Robot Arm Calibration Instructions The robot arm is composed of multiple servos, and in practical work, there may be certain errors. To reduce these errors, we have added instructions in the robot arm control program that allow adjustment of the arm's errors.
E-mail:support@acebott.com https://acebott.com The first parameter corresponds to the robot arm's X positive semiaxis. If the end effector tilts 1 degree to the right, you would write 1; if it tilts 1 degree to the left, you would write -1. If there is no tilt, you would write 0.
Page 70
E-mail:support@acebott.com https://acebott.com After uploading the program, enter four values in the serial monitor: the X coordinate, the Y coordinate, the Z coordinate, and the claw opening angle (ranging from 90 degrees to 180 degrees). These four values need to be separated by spaces. After entering the values, press “send”button.
Page 71
E-mail:support@acebott.com https://acebott.com is the claw control command of the robot arm, through which the claws at the end are controlled to open and close, where "claws" indicates the angle parameter controlling the claw steering gear, and the range is input from 90 to 180.
E-mail:support@acebott.com https://acebott.com Lesson 5 Robot Arm Stacking In today's era of rapid technological development, robot arms have become an indispensable part of modern industry, commercial services, and daily life. With their remarkable flexibility, precision, and efficiency, they have completely transformed traditional modes of operation.
E-mail:support@acebott.com https://acebott.com Ⅰ.Robot Arm Palletizing Program Open "Robot_Arm_Stacking.sb3" in"English\ACECode\2.ACECode Program\Lesson 5", connect the ESP32 controller board to the computer with a USB cable, select the correct controller board, processor, and port, Upload the code to the ESP32 controller board. First, stack two blocks vertically and place them at the (-7,13) coordinates on the robot arm map, ensuring that the center point of the blocks aligns with the coordinate point.
E-mail:support@acebott.com https://acebott.com After uploading the program, we can observe that the end of the robot arm will reach the initial coordinates of the blocks, then grab the upper block, transport it to the destination coordinates, and place it down. Next, it will return to the initial coordinates of the blocks, grab the lower block, transport it to the destination coordinates, and finally stack it on top of the first block.
Page 76
E-mail:support@acebott.com https://acebott.com Task description: Based on the palletizing program example, try modifying the initial position coordinates and the endpoint coordinates of the objects in the program to enable the robot arm to achieve palletizing at different positions. Attention: The two blocks need to be placed stacked together. Ensure the coordinates entered do not exceed the map range.
E-mail:support@acebott.com https://acebott.com Lesson 6 Teaching and Learning of the Robot Arm Teaching a robot arm involves the operator setting a fixed motion path for the robot arm to follow, allowing it to work according to preset steps. Teaching a robot arm can be divided into three steps. The first step is the teaching action, where the operator sets a fixed motion path for the robot arm.
Page 78
E-mail:support@acebott.com https://acebott.com Instruction of teaching operation: Joystick Joystick Operation Actions Short press Save action Left joystick Long press Clear action Right joystick Short press Run action In the teaching operation of the robot arm, first you need to set a fixed motion path for the robot arm.
E-mail:support@acebott.com https://acebott.com Ⅱ.Extending Tasks Based on the basic operational rules of teaching and learning for the robot arm, next we can use the joystick module to achieve teaching and learning functions for transporting objects with the robot arm. Task description:...
E-mail:support@acebott.com https://acebott.com Lesson 7 Web Control of the Robot Arm With the continuous development of wireless communication technology and Internet of Things (IoT) technology, remote control technology is widely used in many fields. It allows users to achieve precise remote control of terminal devices over long distances.
E-mail:support@acebott.com https://acebott.com Ⅱ.Login To the Webpage After successful upload, next, use your computer or mobile phone to scan for WiFi networks. Connect to the WiFi hotspot named 'Robot_Arm' with the password 12345678, as shown in the following image. After successfully connecting, enter "192.168.4.1" into the address bar of your...
Page 86
E-mail:support@acebott.com https://acebott.com Web Page Function Description Functionality Control the movement of the robot arm through buttons on Button control the web page. Control the movement of the robot arm by either moving sliders or entering an angle into the input box on the Slider control webpage.
E-mail:support@acebott.com https://acebott.com You can save a total of 6 sets of robot arm actions (Mode 1 to 6), with each set capable of storing up to 20 different actions, the specific operation process is as follows: ①Clicking "Start" changes the button to "End," then proceed to "Save"...
APP. Ⅰ.APP Download (1)If you are using an iOS device, search for the keyword "ACEBOTT" in the App Store and download it. If you are using an Android device, search for the keyword "ACEBOTT"...
Page 90
E-mail:support@acebott.com https://acebott.com (3)Enter the selection screen and choose the robot arm. Attention:If you need to watch the APP operation video, please click the link below. https://youtu.be/OJtV29RbKQs After clicking, select "Control" to enter the control page.
E-mail:support@acebott.com https://acebott.com Note: You can click the build button on the right to view the assembly video of this project. (4) Enter the robot arm control interface (it cannot be controlled directly yet, as the program needs to be uploaded).
Page 92
E-mail:support@acebott.com https://acebott.com Scan for WiFi networks on your computer or mobile phone and connect to the WiFi hotspot named "Robot_Arm" with the password 12345678, as shown in the image below. Attention: The hotspot name and password are predefined in the program, but users can customize them.
Page 93
E-mail:support@acebott.com https://acebott.com After completing the above operations, return to the interface shown below again, and then the control of the robot arm can be realized. The main control actions are: slider control, input box control, custom mode (start, end, save, run, reset), space positioning function and position recovery function.
Page 94
E-mail:support@acebott.com https://acebott.com (3)Action saving: Click "mode1", there will be 6 modes to choose from (Mode 1~6), and 20 different action groups can be saved in each mode. Click "Run" to perform a memorized action, click "Loop" to repeat the memorized action, and click "Reset" to clear the memorized action.
Page 95
E-mail:support@acebott.com https://acebott.com Attention: Due to the structure of the robot arm, there are limitations on its range of motion. When entering coordinates, if the values exceed the robot arm's range of motion, you can enter them again. (5)Position initialization: Click on the refresh icon at the top left corner, and the robot...
Page 96
Scan the QR codes to Follow Us for troubleshooting & the latest news. We have a very large community that is very helpful for troubleshooting and we also have a support team at the ready to answer any questions. ACEBOTT FB QR Code YouTube QR Code...
Need help?
Do you have a question about the QD022 and is the answer not in the manual?
Questions and answers