The dynamic model of the leg segment of the quadruped robot is illustrated as free-body diagrams. The free body diagram of the quadruped hind leg changes slightly in the direction of. There is also the N1.4 reaction force of the fourth leg segment acting at the same point.
Force N1,2 is the reaction force of the second leg segment at the knee joint of the leg. Free-body diagram of the second leg segment of the same front right leg is shown in Figure 3.5. Finally, shown on Figure 3.7 is the free body diagram of the fourth segment of the front right leg.
The height of the legs is equal to the normalized vertical distance between the hips. A combination of the angle of the hip joints of the front legs and the angle of the hip joints of the hind legs is determined. The question of choosing a positive or negative value depends on the actual horizontal position of the toe in relation to the hip joint.
Gait Locomotion Design Justification
Hip Joint Angle Profile
At the beginning of the swing phase, during toe-off, the hip joint angle ( ) is at its lowest position. As the quadruped leg in question swings forward, the hip joint angle also gradually increases until it reaches its peak when the leg touches the ground. The hip joint angle decreases accordingly until it returns to its lowest position at the end of the stance phase.
The rise and fall of the hip joint angle during the swing and stance phases are equal in magnitude but different in oscillation frequency. The amplitude of the oscillation of the angle of the hip joint ( ) is half the difference between the maximum and the minimum position of the angle ( and ). Both the oscillations of the hip joint and the period of the position ( and ) are twice as large as the period of the oscillation of the leg and the position ( and ).
This knee joint angle narrows as the quadruped leg swings forward in order to shorten the distance between the hip joint and the ankle joint so that the foot does not strike the ground. It reaches its lowest point in the middle of the swing phase and then rises again to its highest point at touch-down. During the stance phase, the knee joint angle gradually decreases with the middle of the stance phase as the turning point before returning to the default position at the end of the stance phase.
The oscillation of the knee joint angle has different oscillation amplitudes during the swing and stance phases. The oscillation amplitude of the knee joint angle throughout the swing phase ( ) is half of the difference between the maximum and minimum knee joint angle positions ( en. No specific criterion has been established for determining the oscillation amplitude over the stance phase ( ), but it is generally lower than that during the swing phase.
The knee joint swing periods and stance periods ( and ) are equal to the leg swing periods and stance periods ( and ). This section describes the considerations in designing the actual quadruped robot mechatronic platform.
Overview of the Whole System
Linda Wijaya When the robot is powered on, the microcontroller will execute the program to drive the smart servo motors. Intelligent servo motors, which are connected to the hip and knee joints of the quadruped robot, produce the robot's movement. Arrays of pre-calculated set points are embedded in the program loaded on the microcontroller board.
Mechanical System Design
- Body
- Smart Servo Motor Selection
- Microcontroller Board Selection
Each leg of the quadruped robot consists of three main leg segments: the knee thigh segment, the knee segment, and the ankle segment, as illustrated in Figure 3.13. One end of a nylon string is attached to the ankle joint, while the other is attached to a camera mounted on the servo motor which acts as an actuator. The primary role of the Bowden cable is to narrow the angle of the knee joint, while this spring will be compressed (Figure 3.14).
Linda Wijaya In the previous design, another linear spring was intended to be attached to the hip-knee segment at the same point as the linear spring, but the other end is attached to the upper end of the ankle-foot segment. The body of the robot is a platform for storing the electrical system of the mobile robot. However, the first attempt at mounting the mechanical platform revealed that the acrylic sheet was slightly bent.
The chassis design was then modified to consist of a lower platform, backbone and upper platform, folded and fixed together as shown in Figure 3.16. There are also holes for mounting servos, string aligners, spacers, and other case parts. The top deck (Figure 3.18) is a vaguely simpler cutout of the bottom deck – also cut from a single 3mm thick acrylic sheet, but with fewer holes, as the servos and string alignment bits are only attached to the bottom deck.
The electrical system of the mobile robot consists of a power supply, a microcontroller board and intelligent servo motors. During rotation, the motors shape the angle of the joints in the mobile robot, thereby shaping the movement of the legs of the mobile robot. As intelligent servo motors, the motors are able to provide their internal feedback to be accessed outside the motors internal system and communicate with the controller by transmitting and receiving data packets via serial communication.
A 7.4V LiPo battery powers the Arduino board and the eight HerkuleX servo motors. The communication system of the quadruped robot is illustrated as a single chain of serially connected nodes (Figure 3.24).
Software System Design
- Analysis and Calculation Tools
Change motor ID void Herkulex::clearError(int servoID) Clear motor error log(?) void Herkulex::torqueON(int servoID) Set motor torque to ON void Herkulex::torqueOFF(int servoID) Set the torque motor to OFF. Set the LED color of the engine void Herkulex::writeRegistryRAM(int . servoID, int address, int writeByte). Additional commands are also added to the library for reading the value in the engine registers, listed in Table 3.7.
The position control mode of the motor controller uses the position control of the HerkuleX servo. The speed control mode of the motor controller utilizes the continuous rotation speed control of the HerkuleX servo. Mathematically, the resulting angular velocity will be considered as a function of the input voltage and PWM duty cycle p.
A hip oscillation amplitude of the hip joint angle, in degrees and radians, automatically calculated from the values for Hip min and Hip max. A knee sw oscillation amplitude of the knee joint angle during the swing phase, in degrees and radians, calculated automatically from the values for Knee min and Knee max. A knee oscillation amplitude of the knee joint angle during the stance phase, in degrees and radians, entered by the user.
As described in Table 3.9, some of the angle profile parameters are automatically calculated by the internal algorithm of the GaitSimulator program. FL - phase shift of the front left leg, in a fraction of a cycle period, input by the user. FR - phase shift of the front right leg, in a fraction of a cycle period, input by the user.
HL - phase shift of the left hind leg, in a fraction of one cycle period, entered by the user. HR - phase shift of the right hind leg, in a fraction of one cycle period, entered by the user. From the descriptions in Table 3.12, it appears that some of the angle profile parameters are listed as 'automatically calculated' rather than 'user input'.
Leg swing period, in seconds, user input Leg stance period, in seconds, user input.
Gait Implementation Method
- Gait Approximation through Position Control
- Gait Approximation through Speed Control
- Motor Test
- Gait Model Performance Test
- Gait Approximation Performance Test
- Gait Implementation Performance Test
However, because position control is performed internally by the servo, using this control mode provides relatively less control over portions of the angular position curve that are between two angular position set points. The position control mode of the servo can achieve relatively accurate angular position. The continuous rotational speed control mode of the HerkuleX servo can provide a linear transition of the angular speed.
To ensure the quality of the approximation curve, a number of time set points are determined, where the approximate angular position curve intersects the reference angular position curve. This means that the integration of the angular velocity curve between two of those points must correspond to the reference angular position, as shown in the following equation: 3.26). Assume that at the beginning of the walking cycle the angular velocity is 0.
Calculate the coefficients of the linear equation for each two time set points, resulting in a set of linear equations representing the angular velocity profile consisting of n – 1 elements. To implement the speed control mode of the motor controller, it is necessary that the rotational speed can be controlled in terms of degrees per second instead of the duty cycle of Pulse Width Modulation (PWM). This motor test involves measuring the resulting angular velocity of the servo motor by supplying the motor with a variety of input voltages and applying different PWM duty cycle values.
The angular velocity is measured by sampling the angular position of the servo while the servo is running. The servo port of the servo is connected to the serial port of the microcontroller board. Another serial port of the microcontroller board is connected to a personal computer (PC) through a serial-to-USB converter.
The equation for the PWM duty cycle value as a function of input voltage and desired angular velocity is determined. The interval for the time set points is also determined and entered on the GaitSetpoint GUI.