eeros_architecture:hal:scaling_multi
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
eeros_architecture:hal:scaling_multi [2017/07/05 07:28] – graf | eeros_architecture:hal:scaling_multi [2021/05/20 07:37] (current) – [Output to Control a Motor] ursgraf | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Setting Multiple Scales and Ranges ====== | ====== Setting Multiple Scales and Ranges ====== | ||
- | The existing hardware is often comprised of several stages | + | The existing hardware is often comprised of several stages. The HAL can account for this in the following way. |
- | [{{ : | + | |
- | In such cases it is very handy to describe each stage individually as given in the following example | + | |
+ | ===== Output to Control a Motor ===== | ||
+ | The control of EEROS sets the torque for a motor. This signal passes | ||
+ | [{{ : | ||
+ | |||
+ | The HAL mirrors the multiple stages. Each stage can be described | ||
< | < | ||
Line 28: | Line 33: | ||
} | } | ||
</ | </ | ||
- | The HAL will calculate the scale and range of the whole chain considering the single | + | The HAL will calculate the scale and range of the whole chain considering the single |
+ | |||
+ | ==== Inverting the Signal ==== | ||
+ | If the output signal needs opposite sign, e.g. a motor turns in the wrong direction, you can simply add an inverting stage | ||
+ | < | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | { " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | { " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | ===== Input for Axis Position ===== | ||
+ | The angular position of an axis is controlled by a motor equipped with a gear and an encoder, see | ||
+ | [{{ : | ||
+ | |||
+ | Here again, the HAL mirrors the three stages. Each stage can be described individually as given in the following example. | ||
+ | |||
+ | < | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | { " | ||
+ | " | ||
+ | " | ||
+ | { " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | { " | ||
+ | " | ||
+ | { " | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | </ | ||
+ | The HAL will calculate the scale and range of the whole chain considering the single stages. The range of the whole chain has no limit. | ||
+ | |||
+ | ===== Two Inputs or Outputs with Different Scales ===== | ||
+ | There are cases where you want to read from a hardware input while this input might represent different things. A motor with its current and torque could serve as an example. | ||
+ | [{{ : | ||
+ | * Scale1 : scaling for the adc converter | ||
+ | * Scale2 : scaling for motor current. This input allows for current control of the motor. | ||
+ | * Scale3 : scaling for motor torque. This input allows for observation of the motor torque. | ||
+ | |||
+ | For outputs we have a similar situation. A motor might be controlled by setting its current during homing of the drive. During normal operation the motor will be controlled by setting its torque. | ||
+ | [{{ : | ||
+ | The scaling in the HAL includes the common part of the two outputs while each control signal have their individual scaling as well. |
eeros_architecture/hal/scaling_multi.1499232489.txt.gz · Last modified: 2017/07/05 07:28 (external edit)