Editor Version ×
Standard

1.Easy to use and quick to get started

2.The process supports design scales of 300 devices or 1000 pads

3.Supports simple circuit simulation

4.For students, teachers, creators

Profession

1.Brand new interactions and interfaces

2.Smooth support for design sizes of over 5,000 devices or 10,000 pads

3.More rigorous design constraints, more standardized processes

4.For enterprises, more professional users

Completed

PRO MakerLab Six-legged Robot

Six-legged Robot

Project tags

License

GPL 3.0

License: GPL 3.0

Mode:

Mode

Editors' pick

Editors' pick

  • 70
  • 0
  • 0
Update time: 2024-09-30 09:43:30
Creation time: 2024-09-29 08:20:05
Description

Description

1.Project Description

This is my undergraduate graduation project, a six-legged robot that moves based on real-time kinematics calculation.

Renew

Added a new robotic arm for picking up items.

Overall structure block diagram

AbAAtNM7zfX1i4nZ1RZnKOMkPBJYIid8tkAxK0F9.png

2.Open Source Agreement

GPL 3.0

 

3.Project Related Functions

1. Control the movement of the robot through the remote control.

2. Control the attitude and position of the robot body.

3. Control the direction of movement and the turning angle (can be understood as linear speed and angular speed)

4. Control the position and attitude of the body while moving flexibly.

5. The fuselage still moves in different positions and postures.

 

4.Project Properties

This project is made public for the first time and is my original project. The project has not won any awards in other competitions.

 

5.Project Progress

Almost complete.

 

6.Software Description

Tip: The software can be nested using code blocks. There is no need to explain all parts of the software, just the important parts.

Zumx0fUlJdXg9FEWk3RKAsI3KyuEeZbYWPrxgDRp.png

7.Brief description of hardware selection:

Master control selection:

Robot motion solution has relatively high requirements for floating-point operations. If the motion needs to be smoother, more computing power is required. Therefore, the hexapod robot uses STM32H750VBT6, which supports FPU and has higher performance.

STM32H750VBT6 uses a 32-bit ARM CortexM7 core, carrying a double-precision floating-point FPU, a 16KB data cache and a 16KB instruction cache, with a main frequency of up to 480MHz and up to 600MHz under overclocking.

The core board uses the stm32H750VBT6 mini core board designed by WeActStudio. The core board has built-in 8MB Quad SPI Flash and 8MB SPI Flash, providing enough space for storing robot control code. The core board provides SD card and TypeC interfaces and has strong expansion capabilities. At the same time, there are diodes in series to prevent power backflow. The operating voltage is 3.3V to 5V.

0WpkgSYI5DFVi0umdm6dg3PpwNVCzV1EhzhWth5f.png

Since stm32H750VBT6 has less on-chip Flash, only 128kb, there is not much space left after loading FreeRTOS. Therefore, it is usually necessary to burn the main code to the off-chip Flash, and burn the BootLoader program to the on-chip Flash, through the BootLoader Jump the program to the main code stored in external Flash.

Servo selection:

In order to simplify the wiring and reduce the failure rate, Huaner's LX224 serial port bus servo is used here. The steering gear rotation accuracy is 0.24° and the torque is 20kg·cm (approximately 1.98N·m).

hdTuxMbcc1TEEo6P9wsoaj9ST7BHICjoP4im2Lqf.png

Power supply options:

In terms of power supply, since the six-legged robot is heavier and requires higher power for walking, a high-power model aircraft battery with strong discharge capacity is used here.

In terms of power supply, since the six-legged robot is heavier and requires higher power for walking, a high-power model aircraft battery with strong discharge capacity is used here.

DJI’s DR16 remote control receiver is chosen here. The DR16 has a longer remote control distance and stronger anti-interference ability. Since it uses DBUS levels, which are opposite to the serial port levels, the logic levels need to be inverted when configuring the serial port. Based on 2.4G wireless transmission, DR16 has the characteristics of point saving, longer transmission distance, larger bandwidth, etc. It can realize long-distance control of hexapod robots and meet the characteristics of legged robots working in complex environments. Working voltage is 5V
UErkbKvXcUxp4SSTztqSJ5VmCxMad531LQWad6Qa.png

 

 

Gyroscope:

The gyroscope uses the MPU6050 module. The MPU6050 module is a 6-axis motion processing component launched by InvenSence. It integrates a 3-axis gyroscope and a 3-axis acceleration sensor internally. It communicates with the outside through the IIC interface and has its own digital motion processor DMP (Digital Motion Processor). Motion Processor). Through DMP, the computing burden of the microcontroller can be greatly reduced. This module is widely used in products such as model aircraft. The operating voltage is 3.3V to 5V.

Hg2tMSKHmZL7Vhh8tcSWKPCA6zEk5fXCMfZGJjjJ.png

8.Kinematic Modeling

This algorithm is the core of this robot, so I will briefly talk about some algorithm steps here. This requires a certain foundation in robotics. Those who have no foundation or are not interested in this part can skip it.

The kinematics analysis of a hexapod robot is to establish the space rectangular coordinate system on the joints of the robot's legs, convert the spacing between the joints of the legs and the angles of the joints, and solve the position and attitude matrix matrices, thereby establishing The kinematic equations of the robot. In order to determine the relationship between coordinate systems on each joint, a suitable method for kinematic analysis is required. This article uses the DH modeling method, which uses a secondary transformation matrix to describe the spatial relationship between the various links on the robotic arm. Each joint can be represented by a fourth-order homogeneous transformation matrix, and the transformation matrices are multiplied according to the order of the connecting rods to obtain the relationship between the first and last coordinate systems and construct a kinematic coordinate system.

 

First model the single leg

Taking the leg as the origin, as shown in the figure below, and the starting end of the leg as the origin, establish a spatial rectangular coordinate system.

lZygkjnbQ81zsLJtPpBLKVxPXFbGbVh0zO5Gz9fZ.png

The modeling method uses the D-H modeling method. This method is mainly used in robot kinematics. A coordinate system is established on each link. The transformation of the coordinates of the two links is achieved through homogeneous coordinate transformation. The secondary coordinates are used multiple times. Transformation can establish the relationship between the first and last coordinate systems [3]. Using the DH modeling method, a kinematic coordinate system can be constructed. The starting end of the leg is the 0 series, "Start servo 1" is the 1 series, "Servo 1 Servo 2" is the 2 series, "Servo 2 Servo 3" is the 3 series, "Servo 3 leg end" ” for the 4 Series. Note that the axis distance from servo 1 to servo 2 is L1, the axis distance from servo 2 to servo 3 is L2, and the axis distance from servo 3 to the end of the leg is L3, then the DH parameters are as shown in the table below.

yORvfK1jZ9MiyllIGvCMxy7TvEN2nAIi7Uxaxvur.png

RBw8aYpUeYwDmcnt5hynUdelPQPZE1Zqw2tcRIqb.png

 

Forward kinematics solution:

bP9V2MjyZs2UlCLtMSEzyCGyTiVm88NocflYTtEi.png

Fqrlmydw18xnFI6pBrcQwhZBMd8lOFEl0YIb8u47.png

 Inverse kinematics solution:

AAR46H4Vd1fUFANP9AL5It3MELKrYX6WG4zFxwih.png

Forward and inverse kinematics calculations are implemented throughout the entire robot motion algorithm. After completing the gait planning, forward and inverse kinematics calculations are performed to calculate the positions of the 18 servos on the fuselage.

Those who are interested in gait algorithm and position and posture control can check it out in my graduation thesis.

 

9.Physical Display

Body position control :

 (1) Control height (z-axis)

iNtsk8id4AwttbKvdlMUriXEzUDc1thwd6RiNc4r.jpeg

 

B5HDRlTokltOjlsNP6D772uX39ZZDU5Qz3RANyJM.jpeg

(2) Control the y-axis and x-axis

kQOBbpy1gaTXOInxKhoDuBAfRtalTRgdv4MKcvLc.jpeg

 

0ifHH9Go6NvFbKVjjQ2bBVlZEsK2mqFIMZ3As4Xj.jpeg

Body attitude control :

(1) Control the Z axis

Bo5Bd8DYWUkH3Ulkb8F2IdQYOJPcAjbbbO2la2PK.jpeg

(2) Control the Y axis

NLg33zH9or4PM5aDqUCmyvVoUR1ZYYijRQ8Vz5AE.jpeg

(3) Control the X axis

Km0zb6DjomtB3PKfPFQYbeSLCBkog4IwvrfiWVOV.jpeg

10.Design Considerations

Nothing

 

11.Other

Video link: https://www.bilibili.com/video/BV1xg4y1L7wh/

Engineering accessories: https://github.com/ByteRyze/Hexapod_2

Designed by Ryzee (from OSHWHub)

Link:https://oshwhub.com/ryzee/Hexapod-robot

Design Drawing

Design Drawing

schematic diagram
1 /
PCB
1 /
The preview image was not generated, please save it again in the editor.
Empty
Project Attachments

Project Attachments

Project Members

Project Members

Target complaint
Related Projects
Change a batch
Loading...

Comment

Add to album ×

Loading...

reminder ×

Do you need to add this project to the album?

服务时间

周一至周五 9:00~18:00
  • 0755 - 2382 4495
  • 153 6159 2675

服务时间

周一至周五 9:00~18:00
  • 立创EDA微信号

    easyeda

  • QQ交流群

    664186054

  • 立创EDA公众号

    lceda-cn