User Tools

Site Tools


hal

Hardware Abstraction Layer

EEROS for the Beagle Bone Blue is using the robotis_cape_library. You'll find the wrapper and its functions in the bbblue-eeros folder. To learn more about the hardware abstraction layer read HAL

Configure the Outputs for the Motors

If you want to run a motor with EEROS you need to define a Peripheral Output with the respective “signalId” used in the HAL-Configuration file. As you can see in the configuration file HwConfigBBBlue.json the subdevice2 comprises the analog outputs for the 4 motors. In the EEROS application for the Delta roboter you can set a motor voltage of -8.0V to 8.0V. The HAL gets this values and wraps it to match the values of the robotics_cape_library which then runs the motors with the desired voltage. HAL-Configuration for the motors

Configure the Encoder Inputs

The Delta roboter has two different motors with different encoders and gears. You'll find the datasheets of the two types in hardware.

Encoders on the Axis Motors

The axis motors are equipped with a gear with the ratio of 76:1 and with an encoder ieh2-4096, which provides 4096 lines per revolution. The quadrature decoder function, which counts the encoder ticks, delivers 4 counts per line.
To account for this in the configuration file of the HAL, we add three blocks. These blocks mirror the physical behavior of the decoder, encoder, and gear.
HAL config for ieh2 encoder

The total scale will be calculated by the HAL as (76 * 4096 * 4) / 2π.

Encoders on the Tool Center Point Motor

The TCP motor are equipped with a gear with the ratio of 120:1 and with an encoder hem3-256w, which provides 256 lines per revolution. The quadrature decoder function, which counts the encoder ticks, delivers 4 counts per line.

HAL config for HEM3 encoder

The total scale will be calculated by the HAL as (120 * 256 * 4) / 2π.

hal.txt · Last modified: 2019/04/15 15:51 by graf