Bioscara
DALSA's DIY SCARA Robot Arm.
Loading...
Searching...
No Matches
Public Attributes | List of all members
bioscara_hardware_interfaces::BioscaraArmHardwareInterface::joint_config_t Struct Reference

configuration structure holding the passed paramters from the ros2_control urdf More...

Public Attributes

int i2c_address
 [int, HEX] I2C device adress
 
float reduction = 1
 [float] Gear reduction of the joint
 
float min
 [float] Lower joint limit in joint units
 
float max
 [float] Upper joint limit in joint units
 
u_int8_t drive_current
 [int, DEC] Drive current of stepper driver in 0-100 % of 2.5A output (check uStepper doc.)
 
u_int8_t hold_current
 [int, DEC] Hold current of stepper driver in 0-100 % of 2.5A output (check uStepper doc.)
 
u_int8_t stall_threshold
 [int, DEC] Stall protection threshold in 0-255, where lower is more sensitive.
 
float max_velocity
 [float] Maximum permitted joint velocity.
 
float max_acceleration
 [float] Maximum permitted joint acceleration (and deceleration).
 
joint_homing_config_t homing
 Holding the joint_homing_config_t configruation values.
 

Detailed Description

configuration structure holding the passed paramters from the ros2_control urdf

Saving all parameters on initialization in a structure allows for quick access during runtime.

Member Data Documentation

◆ drive_current

u_int8_t bioscara_hardware_interfaces::BioscaraArmHardwareInterface::joint_config_t::drive_current

[int, DEC] Drive current of stepper driver in 0-100 % of 2.5A output (check uStepper doc.)

Set when joint is enabled, see bioscara_hardware_drivers::BaseJoint::enable().

◆ hold_current

u_int8_t bioscara_hardware_interfaces::BioscaraArmHardwareInterface::joint_config_t::hold_current

[int, DEC] Hold current of stepper driver in 0-100 % of 2.5A output (check uStepper doc.)

Set when joint is enabled, see bioscara_hardware_drivers::BaseJoint::enable().

◆ homing

joint_homing_config_t bioscara_hardware_interfaces::BioscaraArmHardwareInterface::joint_config_t::homing

Holding the joint_homing_config_t configruation values.

◆ i2c_address

int bioscara_hardware_interfaces::BioscaraArmHardwareInterface::joint_config_t::i2c_address

[int, HEX] I2C device adress

1-byte I2C device adress (0x11 ... 0x14) for J1 ... J4

◆ max

float bioscara_hardware_interfaces::BioscaraArmHardwareInterface::joint_config_t::max

[float] Upper joint limit in joint units

Initial values are (subject to tuning)
J1: 3.04647
J2: 0.3380
J3: 2.62672
J4: 3.01069

◆ max_acceleration

float bioscara_hardware_interfaces::BioscaraArmHardwareInterface::joint_config_t::max_acceleration

[float] Maximum permitted joint acceleration (and deceleration).

In rad/s^2 or m/s^2 for cylindrical and prismatic joints respectively. Set when joint is enabled, see bioscara_hardware_drivers::BaseJoint::setMaxAcceleration().

Note
This is the "last" limit and shall ALWAYS be greater than all limits set in the controller and application (MoveIt) configuration.

◆ max_velocity

float bioscara_hardware_interfaces::BioscaraArmHardwareInterface::joint_config_t::max_velocity

[float] Maximum permitted joint velocity.

In rad/s or m/s for cylindrical and prismatic joints respectively. Set when joint is enabled, see bioscara_hardware_drivers::BaseJoint::setMaxVelocity().

Note
This is the "last" limit and shall ALWAYS be greater than all limits set in the controller and application (MoveIt) configuration.

◆ min

float bioscara_hardware_interfaces::BioscaraArmHardwareInterface::joint_config_t::min

[float] Lower joint limit in joint units

Initial values are (subject to tuning)
J1: -3.04647
J2: -0.0016
J3: -2.62672
J4: -3.01069

◆ reduction

float bioscara_hardware_interfaces::BioscaraArmHardwareInterface::joint_config_t::reduction = 1

[float] Gear reduction of the joint

This is used to transform position and velocity values between in joint units and actuator (stepper) units. The sign depends on the direction the motor is mounted and is turning. Adjust such that the joint moves in the positive direction on on positive joint commands. Cable polarity has no effect since the motors automatically adjust to always run in the 'right' direction from their point of view.
J1: 35
J2: -2*pi/0.004 (4 mm linear movement per stepper revolution, positive rotation makes the joint go down (negative), hence the minus sign for correction)
J3: 24
J4: 12

◆ stall_threshold

u_int8_t bioscara_hardware_interfaces::BioscaraArmHardwareInterface::joint_config_t::stall_threshold

[int, DEC] Stall protection threshold in 0-255, where lower is more sensitive.

If the PID error exceeds the set threshold a stall is triggered and the motor disabled. Set when joint is enabled, see bioscara_hardware_drivers::BaseJoint::enableStallguard().


The documentation for this struct was generated from the following file: