Start of trail End of trail navigation bar

Table of Contents

CEAL HyMotion-11000

Sends position, velocity, and acceleration commands to the 6-DOF Bosch Rexroth HyMotion-11000 motion system and outputs the HyMotion-11000 position setpoints as well as its actual positions, velocities, and accelerations.

Library

QUARC Applications/CEAL/Devices/Third-Party/Rexroth/HyMotion-11000

MATLAB Command Line

Click to copy the following command line to the clipboard. Then paste it in the MATLAB Command Window:

qc_open_library('quarc_library_applications/CEAL/Devices/Third-Party/Rexroth/HyMotion-11000')

Description

CEAL HyMotion-11000

The CEAL HyMotion-11000 block sends position, velocity, and acceleration commands to the 6-DOF Bosch Rexroth HyMotion-11000 motion system and outputs the HyMotion-11000 position setpoints as well as its actual positions, velocities, and accelerations.

The Cartesian reference frame used is shown below, as well as the numbering of the platform actuators.

HyMotion-11000 Reference Frame

Installation Requirements

QUARC Target Configuration

Install For deterministic communication behaviour, the QUARC target machine must use a dedicated (i.e., ad-hoc) network connection to the HyMotion-11000 Motion Control Computer (MCC). The QUARC target machine dedicated ethernet connection is typically configured with a static IP address set to 192.168.90.241, with a subnet mask of 255.255.255.0.

Input Ports

network address

This port appears when the Network Address Source is set to external(input port), and provides the UDP network address used to communicate between the QUARC target machine and the HyMotion-11000 MCC. A String Constant block can be used to externally specify the UDP network address.

motion command

A int32 value representing the type of motion command to send to the HyMotion-11000 Motion Control Computer (MCC). This value also contains the "fault acknowledge" bit allowing for manual reset of error diagnostics in order to attempt to clear faults.

CG acceleration

A 3-element vector of float values which commands the specific force at the Center of Gravity (CG) along the vehicle body X-axis, Y-axis, and Z-axis, i.e., AX, AY, and AZ, respectively. Alternatively this 3-element vector of float values also commands the total longitudinal, lateral, and vertical accelerations of the CG in the vehicle body X-axis, Y-axis, and Z-axis, in order. Units are in 'm/s2'.

cab acceleration

A 3-element vector of float values which commands the longitudinal, lateral, and vertical accelerations of the drivers cab with respect to chassis, i.e., Dax, Day, and Daz, respectively. Units are in 'm/s2'.

rotational acceleration

A 3-element vector of float values which commands the rotational acceleration about the vehicle body X-axis, Y-axis, and Z-axis, i.e., P_dot_CG, Q_dot_CG, and R_dot_CG, respectively. Units are in 'rad/s2'.

rotational velocity

A 3-element vector of float values which commands the rotational velocity about the vehicle body X-axis, Y-axis, and Z-axis, i.e., P_CG, Q_CG, and R_CG, respectively. Units are in 'rad/s'.

Euler angle

A 2-element vector of float values which commands the roll and pitch attitude (Euler angles) of the vehicle body axis system relative to the Earth fixed-axis system, i.e., Phi and Theta, respectively. Units are in 'rad'.

vehicle velocity

A float value which commands the vehicle velocity, i.e., U. Units are in 'm/s'.

additional excursion

A 3-element vector of float values which commands the additional excursion in the vehicle body X-axis, Y-axis, and Z-axis, i.e., X_DIRECT, Y_DIRECT, and Z_DIRECT, respectively. Units are in 'm'.

CG location

A 3-element vector of float values which represents the X, Y, and Z location of the CG in the vehicle reference system, i.e., X_CG, Y_CG, and Z_CG, respectively. Units are in 'm'.

flags

A int32 value representing the special purpose flags, i.e., Flags.

bump

A 5-element vector of float values which represents the trigger and amplitude for bump #1 to bump #5, i.e., Bump #1, Bump #2, Bump #3, Bump #4, and Bump #5, expressed as '%' values.

frequency

A 20-element vector of float values which represents the frequency of waveforms #1 to waveform #20, i.e., FREQ1, FREQ2, ..., to FREQ20. Units are in 'Hz'.

x gain

A 20-element vector of float values which represents the gain of waveform #1 to waveform #20 in the vehicle body X-axis, i.e., XGAIN1, XGAIN2, ..., to XGAIN20. Units are in 'm/s2'.

y gain

A 20-element vector of float values which represents the gain of waveform #1 to waveform #20 in the vehicle body Y-axis, i.e., YGAIN1, YGAIN2, ..., to YGAIN20. Units are in 'm/s2'.

z gain

A 20-element vector of float values which represents the gain of waveform #1 to waveform #20 in the vehicle body Z-axis, i.e., ZGAIN1, ZGAIN2, ..., to ZGAIN20. Units are in 'm/s2'.

additional position

A 6-element vector of float values which represents the additional surge (longitudinal), sway (lateral), heave (vertical), roll, pitch, and yaw position, i.e., X_EXTRA, Y_EXTRA, Z_EXTRA, PHI_EXTRA, THETA_EXTRA, and PSI_EXTRA. Units are in 'm' and 'rad'.

additional velocity

A 6-element vector of float values which represents the additional surge (longitudinal), sway (lateral), heave (vertical), roll, pitch, and yaw velocity, i.e., X_EXTRA_DOT, Y_EXTRA_DOT, Z_EXTRA_DOT, PHI_EXTRA_DOT, THETA_EXTRA_DOT, and PSI_EXTRA_DOT. Units are in 'm/s' and 'rad/s'.

additional acceleration

A 6-element vector of float values which represents the additional surge (longitudinal), sway (lateral), heave (vertical), roll, pitch, and yaw acceleration, i.e., X_EXTRA_DDOT, Y_EXTRA_DDOT, Z_EXTRA_DDOT, PHI_EXTRA_DDOT, THETA_EXTRA_DDOT, and PSI_EXTRA_DDOT. Units are in 'm/s2' and 'rad/s2'.

Output Ports

frame count

A int32 value representing the frame count from the HyMotion-11000 Motion Controller Computer (MCC) system. As long as the frame count value is incremented, the QUARC model host and MCC system are communicating.

motion status

A int32 value representing the current motion status of the HyMotion-11000 system.

platform setpoint

A 6-element vector of float values containing the platform position setpoints in SI units. More specifically, this 6-element vector contains, in order, the surge (X), sway (Y), and heave (Z) position setpoints, expressed in meters (m), and roll, pitch, and yaw setpoints, expressed in radians (rad).

special effect setpoint

A 6-element vector of float values containing, in order, the special effect surge (X), sway (Y), and heave (Z) setpoints, expressed in meters (m), and roll, pitch, and yaw setpoints, expressed in radians (rad).

actuator position

A 6-element vector of float values containing the actual position of all 6 actuators, from actuator 1 to actuator 6. Units are in meters, i.e., 'm'.

platform position

A 6-element vector of float values containing, in order, the actual platform surge (X), sway (Y), and heave (Z) positions, expressed in meters (m), and roll, pitch, and yaw positions, expressed in radians (rad).

platform velocity

A 6-element vector of float values containing, in order, the actual platform surge (X), sway (Y), and heave (Z) velocities, expressed in meters per second (m/s), and roll, pitch, and yaw velocities, expressed in radians per second (rad/s).

platform acceleration

A 6-element vector of float values containing, in order, the actual platform surge (X), sway (Y), and heave (Z) accelerations, expressed in meters per second squared (m/s2), and roll, pitch, and yaw accelerations, expressed in radians per second squared (rad/s2).

user analog input

A 6-element vector of float values containing the 6 user analog inputs, i.e., from User Analog Input #1 to User Analog Input #6. Units are in 'rad'.

period

A double value representing the communication loop time (including network communication delays) in seconds between when the block input data are sent to the HyMotion-11000 MCC and when the MCC data are received.

data rate

A double value representing the communication data rate to the HyMotion-11000 system, expressed in bytes per second (i.e., B/s or Bps). This corresponds to the total number of bytes that are received and sent over one period.

Data Type Support

The motion command and flags inputs are of type int32. All the other inputs are of type float.

The frame count and motion status outputs are of type int32. The period output is of type double. All the other outputs are of type float.

Parameters and Dialog Box

CEAL HyMotion-11000

Network Address Source

The source of the UDP network address used to communicate between the QUARC target machine and the HyMotion-11000 MCC is determined by this field to be internal (dialog parameter) or external (block input).

Network Address (tunable offline)

The UDP network address used to communicate between the QUARC target machine and the HyMotion-11000 MCC. By default, the network address used is set to IP address 192.168.90.240.

Port Number (tunable offline)

The UDP port number used to communicate between the QUARC target machine and the HyMotion-11000 MCC. By default, the UDP port number used is set to port 16385.

Thread Priority (tunable offline)

The priority of the separate QUARC client thread used to communicate with the HyMotion-11000. In general, a value of 0 indicates the lowest priority and higher values indicate a higher priority. The number of priority levels available depends on the type of QUARC target for which code is being generated.

Targets

Target Name

Compatible*

Model Referencing

Comments

QUARC Win32 Target

Yes

Yes

QUARC Win64 Target

Yes

Yes

QUARC Linux Nvidia Target

Yes

Yes

QUARC Linux QBot Platform Target

Yes

Yes

QUARC Linux QCar 2 Target

Yes

Yes

QUARC Linux QDrone 2 Target

Yes

Yes

QUARC Linux Raspberry Pi 3 Target

Yes

Yes

QUARC Linux Raspberry Pi 4 Target

Yes

Yes

QUARC Linux RT ARMv7 Target

Yes

Yes

QUARC Linux x64 Target

Yes

Yes

QUARC Linux DuoVero Target

Yes

Yes

QUARC Linux DuoVero 2016 Target

Yes

Yes

QUARC Linux Verdex Target

Yes

Yes

QUARC QNX x86 Target

Yes

Yes

Last fully supported in QUARC 2018.

Rapid Simulation (RSIM) Target

Yes

Yes

S-Function Target

No

N/A

Old technology. Use model referencing instead.

Normal simulation

Yes

Yes

* Compatible means that the block can be compiled for the target.

 

navigation bar