ZV_IP #
Brief #
This is an experimental component, it’s not fully tested.
The zv_ip
component is responsible for applying a Zero Vibration (ZV) input shaper to the position and velocity commands of a motor. It reads the position and velocity commands, calculates the shaped commands, and outputs them for further processing.
Component Explanation #
The zv_ip
component applies a Zero Vibration (ZV) input shaper to the position and velocity commands of a motor. This component operates within a hardware abstraction layer (HAL) framework, providing real-time control and non-real-time initialization functions.
- Input Reading and Initialization:
- The component reads the position command (
cmd_pos
) and velocity command (cmd_vel
) from input pins. - It also reads various parameters for the ZV input shaper, including
natural_frequency
,damping_ratio
,A1
,A2
, andT
.
- Parameter Calculation:
- The component calculates the ZV input shaper parameters (
A1
,A2
, andT
) based on thenatural_frequency
anddamping_ratio
.
- Input Shaping:
- The component applies the ZV input shaper to the position and velocity commands to generate the shaped position (
shaped_pos
) and shaped velocity (shaped_vel
) outputs.
- Output Updates:
- The component updates the output pins with the calculated shaped position and velocity commands.
Pins #
Name | Description |
---|---|
cmd_pos | input, Position command |
cmd_vel | input, Velocity command |
natural_frequency | parameter, Natural frequency of the system (Hz) |
damping_ratio | parameter, Damping ratio of the system |
A1 | parameter, Amplitude of the first impulse |
A2 | parameter, Amplitude of the second impulse |
T | parameter, Time delay between impulses |
prev_cmd_pos | internal, Previous position command |
prev_cmd_vel | internal, Previous velocity command |
timer | internal, Timer to track time delay |
shaped_pos | output, Shaped position command |
shaped_vel | output, Shaped velocity command |
References #
Source: .c File