Documente Academic
Documente Profesional
Documente Cultură
About Adams/Mechatronics
Adams/Mechatronics is a plug-in to Adams which can be used to easily incorporate control systems into
mechanical models. Adams/Mechatronics has been developed based on the Adams/Controls
functionality and contains modeling elements which transfer information to/from the control system. For
example, using Adams/Mechatronics in Adams/Car, you can quickly create assemblies of vehicle
systems including control systems, and then analyze them to understand their performance and behavior.
Using Adams/Mechatronics you can create control systems with different level of complexity. You can
use function builder to build a simple control function. If you have your control system defined in a
control package such as Easy 5 or Matlab/Simulink, then you can perform a co-simulation between
mechanical model defined in Adams and control system defined in the control package. Alternatively,
you can generate the control system code as a dynamic link library file (a dll file in Windows, also known
as external system library or simply ESL file in Adams/Mechtronics) using the control package and then
do all calculations with Adams.
You will also be able to include control system parameters in a design study in Adams/Insight for
simultaneous optimization of both control system and mechanical system. Furthermore, you will be able
to switch the control code in the model by selecting ESL (external system library) property files which
refer to different ESL files.
You can, for instance, use Adams/Mechatronics together with Adams/Car to:
• Tune both control parameters and suspension/driveline parameters to optimize shunt-and-shuffle
phenomena
• Investigate the influence of active damping control on the forces in the suspension components
or body structure
• Validate your complete vehicle model including control system with a corresponding model for
Hardware-In-The-Loop studies
Based on the analysis results, you can quickly adjust the chassis characteristics or control parameters and
redo the analysis to evaluate the effects of the adjustment. For example, you can quickly change control
code to investigate the best handling characteristics for your vehicle.
Once you complete the analysis of your model, you can easily share your work with others. You can also
create different plots of the controller input/output signals and vehicle dynamic responses. In addition,
you can access other users' models without overwriting their data.
Benefits of Adams/Mechatronics
Adams/Mechatronics enables you to work faster and smarter with control systems, facilitate
understanding the effects of design change in the controls systems and mechanical system on total system
performance.
2 Adams/Mechatronics
Starting Adams/Mechatronics
Because Adams/Mechatronics is a plug-in to Adams, you first start Adams and then load
Adams/Mechatronics.
In Windows, you start Adams/Car or Adams/View from the start menu. For more information, see
Starting Adams/Car or Starting Adams/View.
In UNIX, you start Adams/Car or Adams/View from the Adams Toolbar. For information on the Adams
Toolbar, see Running and Configuring Adams.
To start Adams/Mechatronics:
1. Start Adams/Car or Adams/View as explained in respective documentation
2. From the Tools menu, select Plug-in Manager
3. Find Adams/Mechatronics in plug-in list, and then select one or both of the following options
• Load: loads Adams/Mechatronics in the current session
• Load at Startup: instructs Adams to load Adams/Mechatronics in all future Adams
sessions
4. Select OK
Welcome to Adams/Mechatronics 3
Adams/Mechatronics will be loaded into Adams. The Adams interface now includes Mechatronics menu
in last position.
Please also note that the Mechatronics plug-in will load automatically if you open an assembly which
refers to a subsystem which contains a control system related object.
Note that:
• external_system_libraries.tbl contains property files related to external system files generated by
control software like Matlab/Simulink and Easy5
• disturbance_files.tbl contains property files containing control signal disturbance data in ASCII,
RPCIII or DAC format
In Adams/View case, as there is no database table, dynamic link file is stored in a user-specified target
folder.
4 Adams/Mechatronics
Learning the Basics
6 Adams/Mechatronics
While the picture below illustrates how the (transducer and actuator) signals from the mechanical
systems are connected to the control systems via the control system inputs/outputs, we will try to describe
each term.
Learning the Basics 7
Transducer Signal
Transducer signals are used to measure a certain signal from an arbitrary location of the mechanical
system. For example, it can measure the rotational velocity of a wheel or the instantaneous brake
pressure. The measured signal is sent to the control system via the control system input.
Actuator Signal
Actuator signals are used to transfer the output from the control system to the mechanical system. For
example, the actuator signal could be a brake pressure of an ABS control system, which would be used
in the force expressions of the brake model in the mechanical system. Typically in Adams/Car, you would
8 Adams/Mechatronics
create a point torque actuator in the template builder and in the function expression refer to the actuator
signal.
Note: it is important to pay attention to difference between following terms: the Actuator Signal
which is an Adams/Mechatronics component and Actuators which is an Adams/Car
component.
Control System
A Control System in the context of Adams/Mechatronics is an object which contains information about
the type of controller, the number of input channels and output channels, etc.
Mechanical System
In Adams/Mechatronics the mechanical system refers to the mechanical model excluding the control
systems. Note that you can exploit Adams/Mechatronics components such as transducer/actuator signals
without the need for a new version of the model (template in Adams/Car) since you can
activate/deactivate the control system. See Activity in Adams/Mechatronics for more information.
Signal Manager
The Signal Manager is a graphic interface in Adams/Mechatronics where you connect the mechanical
system(s) to the control system(s), i.e., connect the transducer signals to the control system inputs and
control system outputs to the corresponding actuator signals. Note that you can also connect a control
system output of one control system to input of another control system. Typically, you need to use the
Signal Manager only once for a complete model and then connections will be saved within the model.
The next time you open the model, the signal connections will be setup automatically.
Learning the Basics 9
Please note that there is no dialog box available to create a control system input/output object; however,
they can be modified by using Modify dialog box.
In contrast to Adams/Car Template Builder and Adams/View, you are only allowed to modify the
components in the Adams/Car Standard Interface mode, i.e., modify different signals and the control
systems.
Transducer Signals
The following picture shows how to create a transducer signal which should measure a state in the
mechanical system. This menu is available in Adams/Car Template Builder and in Adams/View.
Note that in Adams/Car case, the transducer signal should be created in the template where the signal
arises.
12 Adams/Mechatronics
The menu choice above will display the following dialog box:
Among other inputs such as name and type (only valid for Adams/Car), you should enter a function
expression that is measuring a state of the mechanical system. Note that you can alternatively consider
the function definition as a user routine subroutine. For more help on this please refer to Create/Modify
Transducer/Actuator or Control System Input/Output dialog box help.
As for all type of signals in Adams/Mechatronics in addition to choosing the applicable unit type and unit
string, you alos have the possibility to scale the function and apply a disturbance and/or delay. The later
options are described more in detail here.
Further, you also have the option to turn on/off the auto-created signal request and measure. The request
and the measure can be expressed in model unit and, if the unit string differs from the model units, also
in the user specified signal unit. In the following example, the signal can be easily plotted in the
Adams/Postprocessor in model units "deg/second" (in this case "degrees" and "second" are angle and
Working with Adams/Mechatronics 13
time model units, respectively) and also in "rpm" (in this case it is assumed that the function expression
is producing result in "rpm").
Last, by selecting the push button shown in following picture, you will get the option to select entities
located in the model that should be activated/deactivated dependent on if the signal gets connected or not.
Please refer to Activity settings to learn about this feature.
In Adams/Car Standard Interface mode, the function expression cannot be edited as expected. But other
options like request/measure activity, scale factor, disturbance, delay and unit information can still be
modified. These choices are then stored in the subsystem file.
In Adams/View all dialog box options above are available except the possibility to create symmetric
signals. Hence, all signals in Adams/View are of ‘single’ type.
Working with Adams/Mechatronics 15
Actuator Signals
The actuator signal is used to transfer the output from the control system to the mechanical system and
is created via the menu below. In Adams/Car the signal should be created in the template where the signal
is used and referred to.
The dialog box of creating a new actuator signal is similar to one for the transducer signal except for the
function expression which is deactivated. The reason is that the actuator signal gets its value from a
control system output and hence the function expression is already defined and cannot therefore be
changed.
16 Adams/Mechatronics
Control Systems
To create a control system, please use the menu below.
Working with Adams/Mechatronics 17
Dialog box below will be displayed and more detailed information about each option menu and field can
be found in the Create/Modify Control System dialog box help.
In this dialog box, you specify control system Name, Type (only in Adams/Car), System Type and Number
of Inputs/Outputs.
The System Types can be one of the three following types:
• Function Expression - use the function builder to create a controller based on Adams entities
• Co-simulation - run co-simulation between Adams and a controls package (Easy5 or
MATLAB/Simulink)
• External System Library (ESL) - use an external system library (i.e dynamic link library) that
has been exported from Easy5 or MATLAB/Real-Time Workshop. An ESL Property File refers
to an ESL (also known as dynamic link library) file.
If the System type Function Expression is chosen, no property file or other additional input is needed,
see below. The function expression of the controller is instead defined and saved in each control system
output. In Adams/Car the function expression for each control system output is defined in the Template
Builder mode, however, you are able to modify the control signal output expression using Create/Modify
Control System dialog box.
18 Adams/Mechatronics
If the System type Co-simulation is chosen, then you need to select the Control Package software you
want to use and if Initial Static Analysis should be performed or not. The selected co-simulation settings
will be used by default when exporting the plant using Adams/Mechatronics Export Plant for Co-
simulation /Setting up ESL dialog box.
If the System type External System Library is selected, then you need to select the External System
Library file and whether Static Hold should be on or off, which determines if Adams/Solver should keep
the initial value of the control signal constant during static analysis.
By selecting the push button shown in following picture, you can open the Control Signal Editor dialog
box, where you enter Signal Name (port name), Unit type and Unit string and Scale factor for each input
Working with Adams/Mechatronics 19
and output of the control system. Typically that information is received from the supplier of the control
system.
Naming conventions
In Adams/Mechatronics names of the control system and the different signals conform to the following
conventions:
Transducer Signal: ues_cst_’signal name’ (cst = Control Signal Transducer)
20 Adams/Mechatronics
Signal Manager
The Signal Manager is the key feature of Adams/Mechatronics and is where all connections are set, i.e.,
the connection between the control systems and transducer/actuator signals of the mechanical system.
The following schematic illustrates the signal flow in Adams/Mechatronics.
While an overview of Signal Manager is presented here, a more detailed description can be found in the
Adams/Mechatronics Tutorials.
To open Signal Manager, use the following menu. Note that in Adams/Car this menu is only available in
Standard Interface Mode.
Working with Adams/Mechatronics 21
Select the assembly (Adams/Car) or model (Adams/View) in which the control system exists.
As an example from the information in the preceding dialog box, you can notice that there are two control
systems in the assembly and they are located in the two subsystems with major roles 'control system' and
the minor roles are 'ABS' and 'ESP'.
Note that, alternatively, the control systems could have been created in the one single
template/subsystem. In that case, both control systems would have the same major and minor roles.
In Adams/View, as there is no major and minor role concept; the major/minor role columns are hided.
By selecting a control system in the dialog box above (you select by double clicking on any cell in the
row of the corresponding control system), a new dialog box pops up which gives an overview of the
connectivity for each input and output port of the control system (following picture). The information in
the gray area (input port name and unit type) is related to the control system itself - and therefore cannot
be changed here - while the white area is a 'selectable' area.
You also get the information (from the major and minor role) that in which subsystem the connected
signal is located. The name convention of the signals also reveals the type of connected signal. For
22 Adams/Mechatronics
instance input port number 8 with port name 'wheel_speed_fl' below is connected to a ('uel_cst') left side
transducer signal named as 'wheel_speed_front'.
By selecting an input port row in the white area, you will have the possibility to choose a signal from the
Available Signal List in ‘Selecting input’ dialog box to connect to the certain input port. Please note that
only the signals of the same unit type as the input port are displayed in the (available signal) list. In the
example below, only the transducer signals and control system outputs of ‘angular velocity’ unit type are
shown in the table as possible candidates to be connected to the ‘wheel_speed_fl’ input port.
The output tab, as depicted in following picture, is quite similar to input tab except that here the gray area
(information related to the control system; i.e., output port name and unit type) is located on the left side
Working with Adams/Mechatronics 23
of the table (to resemble the signal flow) and also that more then one signal can be connected to the output
port.
In the following lines, some background or implementation information is presented which may be of
interest to advanced users.
• Note that each signal connection is based on following Connector data
• Signal Name
• Side (left/right/single)
• Major Role
24 Adams/Mechatronics
• Minor Role
Once connections have been established, each individual connection is saved into a connector
data section of the signal component.
• Connector info is only stored with control system inputs and actuator signals since these can
only be connected to only one single signal in contrast with transducer signals and control
system outputs which may be connected to more than one signal
• The use of major and minor role makes the connector info independent of assembly and
subsystem name. It is then possible to swap control systems or subsystems without need of
redoing the connecting process in signal manager
• The connector concept is comparable with input communicator in standard Adams/Car. One
difference is though while you work with communicators in the template builder mode, here you
setup the connections on the assembled model in the Standard Interface Mode
• In the Adams/View, only the connector signal name is used when making connections
Units in Adams/Mechatronics
Adams/Mechatronics supports arbitrary units in all signal types. It also takes care of units conversion, for
example, from a transducer signal to the corresponding input signal in the control system. The units are
handled by two attributes in Adams/Mechatronics: unit type and unit string.
Unit type indicates which kind of unit you are using, for example, velocity or torque.
Adams/Mechatronics only allows connection of the same unit types when assigning a transducer signal
to a control system input, a control system output to an actuator signal, or a control system output to input
of another control system.
The unit string is used by Adams/Mechatronics to calculate the appropriate conversion factor. For
example, if you define the wheel speed transducer signal to send signal in mm/s unit and your control
system input requires a km/h unit, the conversion is performed by Adams/Mechatronics. This means that
a unit conversion occurs automatically if the units are not the same, for example, for a transducer signal
and the corresponding control system input.
Working with Adams/Mechatronics 25
There is a set of pre-defined unit types and unit strings available in Adams/Mechatronics. However, if
your control system is working with other type of unit, you can create your own unit. See the table below
for more information about how to choose different unit type and unit string alternatives.
Disturbance
Disturbance can be introduced to signals by adding or multiplying as illustrated below.
body_acc = 'meter/sec**2'
wheel_speed_fl = 'rad/sec'
wheel_speed_fr = 'rad/sec'
$----------------------------SCALE_FACTORS
[SCALE_FACTORS]
body_acc = '9.82'
$----------------------------CHANNEL_DATA
[CHANNEL_DATA]
{ TIME engine_rpm body_acc wheel_speed_fl wheel_speed_fr }
0.0 0.0 0.0 0.0 0.0
1.0 1.0 1.0 1.0 1.0
2.0 2.0 2.0 2.0 2.0
3.0 3.0 3.0 3.0 3.0
4.0 4.0 4.0 4.0 4.0
Delay
Delay functionality accounts for delayed signal and makes it possible to set a constant time delay or a
user defined time delay expression applied before or after the disturbance.
The following diagram shows the data flow for a control signal. As can be seen, the delay can be placed
in three different “positions” with respect to signal function and disturbance. In addition to delay position,
you need to specify the delay time function (whose value must be positive or zero), and delay initial
Working with Adams/Mechatronics 29
history, that is, the initial value of delay function. Please refer to dialog box help (F1- help) for different
settings.
Whether a disturbance/delay is applied or not and where the delay function is applied affect the solver
variable function and request expressions in the control signal UDE. For each configuration a picture
depicts the data flow, in which the request component signal “positions” are marked in blue color. There
exist a total of six disturbance and delay configurations cases as shown enumerated in the following table.
Disturbance
Case # applied Delay applied Comments
Case 1 No No Default settings
Case 2 No Yes Delay setting “function” is the only
choice
Case 3 Yes No
Case 4 Yes Yes (set to “function”) Position 1 in picture above
Case 5 Yes Yes (set to “disturbance”) Position 2 in picture above
Case 6 Yes Yes (set to “disturbed function”) Position 3 in picture above
30 Adams/Mechatronics
Export Plant
Plant export is used to create a control package input file (an inf file for Easy5 or a m file for
MATLAB/Simulink) which is needed to set up either a co-simulation or ESL (external system library)
simulation.
Working with Adams/Mechatronics 33
Use the following menu to access the export plant dialog box in Adams/Mechatronics.
Note that by performing a plant export, an adm file will also be generated; however, the adm file only
will be used in case of co-simulation, i.e., the ESL simulation does not need the adm file. Also note that
the content of the adm file differs depending on which type of control system (ESL or Co-Simulation) is
used, therefore it is important that not to use the adm file generated for ESL control system for a co-
simulation analysis.
There are some differences in how to use the plant export in Adams/Car and Adams/View as well as the
purposes of export, i.e., co-simulation or ESL simulation.
34 Adams/Mechatronics
In Adams/Car:
• For Setting Up ESL Simulation, display (by yourself) the plant export dialog box via menu as
shown above and then select the control system name and a file prefix for the exported file. You
can export the plant both in Template Builder and in Standard Interface mode. The following
dialog box appears after plant export
• For Co-Simulation, please follow the instruction shown in the preceding information dialog
box or refer to the Running Analysis section. Note that in Adams/Car co-simulation, you need to
generate an adm file by performing a "file only" simulation so that enforce Adams/Car to read
the property files and set up the model parameters property. Here the plant export dialog box
show up automatically
In Adams/View:
• For both ESL simulation setup and Co-Simulation: Display (by yourself) the plant export
dialog box. Select the control system, a file prefix, and other proper settings.
If the control system is not of the co-simulation type, then the following message will appear to
inform that you use the generated files only for settings up external system libraries in chosen
control package software.
Working with Adams/Mechatronics 35
If the control system is of the co-simulation type, then the system name field automatically fills
with the names of the control systems that are of type ‘Co-Simulation’ (The ones which exist in
the default model). If the control system type is set to ‘Co-Simulation’, the generated files could
be used for the both purposes.
the external tunable parameters differ. Examples of tunable parameters is a certain gain settings or
threshold values for an ABS controller.
The following dialog box appears where you choose the Control Package software that the dynamic link
library (External System Library) originates from and the Property File Name of the file that is going to
be generated.
While in Adams/Car, the files will be stored in the directory called 'external_system_libraries.tbl' in the
default writable database, in the Adams/View you select a target directory where the property file will be
Working with Adams/Mechatronics 37
copied to. In both Adams/Car and Adams/View cases, the dynamic link library file will be copied into a
sub directory named after the platform (win32, win64, linux32, linux64, etc). This is to support a
platform independent use of the property files. For instance in the preceding example and on a win32
platform, the ESL property file and the ESL file will be copied into following locations:
C:/Temp/external_system_libraries/abs_system_version1.esl
C:/Temp/external_system_libraries/win32/abs_controller.dll
In case of HPUX platform, the full path to the copied library file would be:
C:/Temp/external_system_libraries/hpux/abs_controller.sl
Other platform follows the same principle.
Finally, if the control system type is set to ‘External System Library’, followings steps are internally
performed by Adams (This is performed prior to an analysis - during reading property file procedure - in
Adams/Car and after a modify action of the system in Adams/View):
1. Locates the ESL file referenced in the ESL property file. The path to the library file is
“path to ESL property file”/ “platform”/ “library file name”.(dll, so, sl ...)
2. Verifies that the dimension of the control system found in the ESL property file corresponds to
the one defined in Adams/Mechatronics, i.e., matches the number of inputs and outputs
3. Activates the General State Equation (GSE) in the control system component and set the
dimension of the different solver arrays related to the GSE
4. Reads the default parameter values and initial conditions defined in the ESL file.
5. Overrides the values of the parameters and initial conditions with the ones specified in the ESL
property file
6. Copies the ESL file to the working directory (as Adams/Solver expects the library file to be
located in the working directory)
Activity settings
Imagine a scenario in Adams/Car where you on the one hand have an assembly with both mechanical
subsystems and control subsystems, and on the other hand have an assembly with only the mechanical
subsystems. In such a scenario, you do not want to store different versions of the same mechanical
(subsystem) template just because they refer to a control system which may or may not be part of the
assembled model.
To allow using the same mechanical template regardless of whether it will be used in an assembly with
control systems or without control systems, the concept of Activity Type is introduced for
transducer/actuator signals. By using different Activity Types in conjunction with selected strategies for
implementing the actuators influencing the mechanical behavior, you can make the mechanical templates
compatible with both user scenarios.
When you create a transducer/actuator signal, you can select the signal activity type. In the table below,
a summary of the different activity options and the corresponding consequences is shown.
38 Adams/Mechatronics
When setting up your templates to be used both with and without control systems, there are two "levels"
of activities. One level deals with setting up the activity of the transducer/actuator signal itself that is
named Activity Type and determines whether the signal should be written into adm file or not. The other
level is signal connectivity status which deals with whether the signal is connected to the control system,
actuators, or components of the mechanical system. You can also define activity of a group of Adams
objects to be dependent on the signals’ connectivity. Table below shows different alternatives for signal
activity and signal connectivity. The table columns are explained thereafter.
Signal Activity
Activity Type Connected Referred to state Active object state
Always YES ON ON
NO ON OFF
NO OFF OFF
Activity Type:
Activity Type deals with setting up the activity of the transducer/actuator signal itself and the following
types of activity are possible.
1. Always: as the name implies, the transducer signal or actuator signal would be always active in
the model
2. Only if connected: the transducer or actuator signal only would be active when it has been
connected to the appropriate control system input/output. In other words, it will not be visible in
the .adm file if it has not been connected
3. Only if referred to: the actuator signal will be active only if another object in the model is referring
to it. As an example, consider the use of a conventional mechanical damper object. You could
replace that damper with a controlled one, and then automatically have the associated actuator
signals become active, since they are referred to by that controlled damper object
Note that the later (“Only if referred to”) option is only applicable to actuator signal (i.e., not applicable
to transducer signals).
Working with Adams/Mechatronics 39
Connected
This indicated whether the transducer/actuator signal has been connected or not to a control system
input/output. In each transducer and actuator signal object there is a variable which keeps track of
whether the transducer or actuator signal has been connected to the control system input/output. The
name of this variable is signal_connectivity_flag; and its value is 1 if the connection is successful and 0
if there is no connection made. You can also use this variable in function expressions in the mechanical
template to build in logic supporting the use of the template both with and without control systems.
Referred to
For each type of activity and connection status, the actuator signal may or may not be used in an
expression of some other (mechanical) object, i.e. referred to. If it is referred to by another object, then
the transducer/actuator signal object will be active in the model.
“Intelligent” modeling
When selecting the type of signal activity, you should have a strategy in mind in terms of how to use the
transducer/actuator signal in the mechanical system. Let us consider a brake torque as an example.
Normally, the brake torque actuator force expression would be a function of the brake_demand signal
from the driver model. If you want to let the ABS system control the brake torque, you would instead
make the brake torque actuator function be dependent on an actuator signal. However, if you want to be
able to use the same brake subsystem in both assemblies with and without the control system subsystems,
you have a couple of alternatives as follows to make the brake torque "intelligent" enough:
In this alternative, suitable activity settings for the actuator signal object would be 'Always' or 'Only If
Referred To'.
Note: If you would use 'Only If Connected', you would get an error message in the Solver in case
the actuator signal is not connected, i.e. if you try to use this brake system with no control
subsystem in the assembly. This is because the signal_connectivity_flag will be
deactivated and thus no longer visible in the .adm file, and thus the function expression
refers to a non-existing object.
Note: In this case, the only difference between the use of 'Always' and 'Only If Connected' will
appear when the actuator signal is not connected. What happens with 'Always' then is that
the actuator signal will stay active, producing only zero output whereas with 'Only If
Connected', the actuator signal will be deactivated, thus not being visible to the Solver.
The actuator variable is then implemented in the UDE as intended, for example in a force
expression
Working with Adams/Mechatronics 41
When the UDE is created the actuator variable has to be defined as an object
When the UDE is created in the correct approach, it is time to look at the methods used to handle
the UDE. To be able to use UDE replace to turn on and off the control system the replace method
has to include a command to find the actuator signal
Now the UDE is created and the replace method handles the connection to the actuator signal. But
to be able to replace another damper with the new active damper our new UDE has to be added
to the same group
The UDE is now created in the correct way and ready to be used in models.
There are a few utility macros available in Adams/Mechatronics. These macros are designed to
perform some simple tasks and can be used in developing new UDEs. Utility macros together with
definition, macros and templates for the active damper can be found under examples in the
installation.
The first macro can be used to find the related actuator signal, it returns a variable with the name
of the actuator
The second macro finds the control system connected to a control signal
The last macro look at the type of your function object and adjust it to be dependent of the actuator
signal. If your function object is a gforce or vforce you can specify in which direction the
adjustment should be done
Adams/Mechatronics replaces the standard damper with a damper of the Amech_damper type and
then finds the actuator associated with the damper. The dialog box for modifying the damper
appears automatically (if you create your own UDE you have to create your own modify dialog
box). In the dialog box you can see the name of the actuator signal, and if the actuator signal in
turn is connected to a control system also the name of the control system is displayed in the dialog
box. Use the modify buttons to the right to modify the actuator signal and the control system. The
name of the control system will appear in this dialog box when you have connected the actuator
signal to a control system in the signal manager.
4. You can switch between a standard damper and an active damper by using replace in both
directions. The UDE definition that is in use when the subsystem is saved will be the default UDE
definition in that subsystem.
44 Adams/Mechatronics
Components in Adams/Mechatronics
In this section, Adams/Mechatronics components which all are of UDE (User Defined Element) type are
explained in detail. A UDE is actually just a collection of standard elements in Adams. The UDE is
treated as a single element in the interface instead of just every standard element for itself.
There are two types of UDE components in Adams/Mechatronics; control signal UDE object which is
the base for all signal components, and control system UDE object which is used by control system. So
these two types of UDEs cover all five components available in Adams/Mechatronics.
1. Transducer signals
2. Actuator signals
3. Control System Input
4. Control System Output
5. Control System
Please note that control system inputs/outputs are automatically created when you create a control system
object. This means that there is no dialog box available to create a control system input/output object;
however, they can be modified by using Modify Control Signal Input/Output dialog box. The control
system input/output objects are entirely managed internally by Adams/Mechatronics and only serve as a
convenient and efficient way to transfer information from/to transducer signals and actuator signals.
Control Signal
UDE definition
.AMECH.udes.ac_control_signal
UDE description:
The control signal UDE is used to create control signal objects. The central object in this UDE is the
signal variable. Transducer signal, Actuator signal, control system input and control system output are
all based on this UDE
44 Adams/Mechatronics
UDE Specification
Parameters:
• Transducer_signal
• Actuator_signal
• Control_system_input
• Control_system_output
function string value Variable function. The User can provide an
expression in two cases:
• Transducer_signal
• Control_system_output (if control system
type is set to function)
For all other signal types the expressions are set
automatically in the control system connect
procedure.
function_type integer value 1. = function expression
2. = user parameters for a VARSUB
template_function string_value Storing the Adams/Car template function
expressions. Used when the control system type is
set to ‘function’.
user_parameters string value Expression containing user parameters for a
VARSUB call
routine string value The routine in the VARSUB
disturbance string value The options are:
• none
• add
• multiply
Components in Adams/Mechatronics 45
• user_function
• file_ascii
• file_rpc
• file_dac
disturbance_function string value Additional disturbance of the signal. This could a
time function or just a single constant.
disturbance_function_unit string value The unit of the disturbance function.
disturbance_file string value Additional disturbance signal from a file (ascii, rpc,
dac).
disturbance_channel string value Channel in disturbance file
disturbance_channel_unit string value The unit of the disturbance file channel. Valid for
rpc and dac disturbance files.
disturbance_time_unit string value The time unit of the disturbance file channel. Valid
for rpc and dac disturbance files.
disturbance_scale_factor real value Disturbance scale factor. Valid for file input
disturbances.
disturbance_active_flag integer value Disturbance active flag. Dependent on the
disturbance variable. If the disturbance is set to
“none” the value is 0. If not “none”, the value is set
to 1.
scale_factor real value Scale factor to the complete function.
request_active_flag string value Can contain following activity options:
• "active:model_and_signal_units"
• "active:model_units"
• "active:signal_units"
• "not_active"
"active:model_units" means that the request which
is expressed in model_units is active.
measure_active_flag string value See comment for request_active_flag. The same
options are available for measures as well.
unit_type string value Unit type of the signal. For instance
"rotational_velocity".
unit_string string value Unit of the signal. For instance "deg/s"
46 Adams/Mechatronics
• "always"
Valid for transducer signals and actuator
signals. Active even if not connected (the
signal is set to zero)
• "only if connected"
Valid for transducer signal and actuator
signal. The Control signal gets deactivated
if not connected.
• "only if referred to"
Valid only for actuator signal. If no
elements are dependent on the
actuator_signal the signal gets deactivated.
• "dependent_on_control_system"
The only "option" for control system input
and control system output. Is not valid for
other type of control signals.
active_objects object value Object that will be activated if the signal gets
connected. (They are deactivated if the signal does
not find any connection.)
inactive_objects object value Object that will be deactivated if the signal gets
connected. (They are activated if the signal does
not find any connection.)
dependent_object object value Useful when replacing to an UDE entity that
should use Adams/Mechatronics functionality. The
"Amech" UDE entity will look for an actuator and
find the only actuator which has set the specific
UDE as a dependent object.
delay_type string value Can be “none”, “function”, “disturbance” or
“disturbed_function”
delay_active_flag integer value Help variable, 0 if Delay is set to “none” otherwise
1
delay_time_type string value “run_time_expression” or “template_expression”
delay_time_function string value Either a constant value or a function expression
48 Adams/Mechatronics
Input Parameters:
Objects:
Create Macro: (call: amech template_builder instance ac_control_signal create). This macro is
executed when an instance of the definition ac_control_signal is created.
Modify Macro: (call: amech template_builder instance ac_control_signal modify). This macro is
executed when an instance of the definition ac_control_signal is modified.
Destroy Macro: (call: amech template_builder instance ac_control_signal destroy). This macro deletes
all the entities which have been created for the instance exclusively.
Request definition:
f4 function
Measure definition:
Function_name Function
signal complete_function
signal_type
symmetric_dbox_data
unit_type
unit_string
scale_factor
delay_type
delay_time_type
delay_time_function
delay_time_unit
delay_function_init_history_flag
delay_function_init_history
Components in Adams/Mechatronics 51
disturbance
disturbance_type
disturbance_function
disturbance_function_unit
disturbance_file
disturbance_channel
disturbance_channel_unit
disturbance_time_unit
request_active_flag
measure_active_flag
connector_name
connector_major_role
connector_minor_role
connector_side
Design parameters:
scale_factor
disturbance_scale_factor
Control System
UDE definition:
AMECH.udes.ac_control_system
UDE description:
The control_system UDE is used to create control system objects.
UDE Specification
Parameters:
Function Expression
Co-Simulation
num_inputs integer value Number of inputs
num_outputs integer value Number of outputs
input_signal_array object value Object array holding input control signal objects
output_signal_array object value Object array holding output control signal objects
x_num integer value number of continuous states of the GSE (ESL).
xd_num integer value number of discrete states of the GSE (ESL)
x_IC_values real value Initial conditions of the continuous states of the GSE (ESL)
xd_IC_values real value Initial conditions of the discrete states of the GSE (ESL)
Components in Adams/Mechatronics 53
EASY5
MATLAB
cosim_initial_static string value Select one of the following (Cosim):
Input Parameters:
Objects:
Request definition:
No requests in the UDE definition
Subsystem parameters:
type
library_property_file
Components in Adams/Mechatronics 55
static_hold
cosim_control_package
cosim_initial_static
active_flag
In Adams/Car:
1. Set the mode of the full vehicle simulation to file_only to generate all necessary files for co-
simulation
2. In the Adams/Mechatronics plant export dialog box which automatically pops up, verify that all
control systems of type ‘co-simulation’ are shown in the system name field
3. Select the generated adm file
4. Choose control software package and other settings such as initial static analysis and solver
choice. More information about the settings can be found in the dialog box help
5. Once all files have been exported, follow the instruction in Adams/Control manual of how to
perform a co-simulation.
In Adams/View:
1. Display the Adams/Mechatronics export plant dialog box, via Mechatronics --> Tools -->
Export Plant.
2. Verify that the control systems of type ‘Co-simulation’ in the default model are shown in the
system name field.
3. Enter a file prefix of the files that will be generated
4. Choose control software package and other settings such as initial static analysis and solver
choice. More information about the settings can be found in the dialog box help.
5. Once all files have been exported, follow the instruction in Adams/Control manual how to
perform a co-simulation.
58 Adams/Mechatronics
Plotting
Plotting in Adams/Mechatronics
Adams/Mechatronics automatically creates requests and/or measures for all type of signals. This saves
time when you want to verify that the input/output signals to/from the controller are as expected.
Moreover, studying the output and input relation can give you an understanding on how an unknown
controller code works.
In the example above, the body yaw rate transducer signal can be expressed both in model and signal
units. The model units in that case was “deg/second” and the signal unit was “rad/second”
60 Adams/Mechatronics
Tutorials
62 Adams/Mechatronics
Template Builder - Create ESP and ABS control Systems
Inputs:.
Outputs:
Unit Unit
# Name type string Transmit to actuator signal in:
1 ABS_signal_front_left user no_units brake_system
2 ABS_signal_front_right user no_units brake_system
3 ABS_signal_front_left user no_units brake_system
4 ABS_signal_front_right user no_units brake_system
Note that five input transducers need to be created in the brake system template and one in the body
template. This particular example of ABS system also uses input signals from another control system,
that is, the ESP controller.
Units
Please note the usage of Unit Type and Unit String. Units are handled in Adams/Mechatronics as follows:
You may specify units for transducer signal, actuator signal and control system input/output.
Unit Type indicates which kind of unit you are using, for example velocity or torque.
Adams/Mechatronics allows only connection of the same unit types when assigning a transducer to a
control system input. The same principle applies when you
• assign a control system output channel to another control system's input channel
• assign a control system output channel to an actuator
64 Adams/Mechatronics
Template Builder - Create ESP and ABS control Systems
The unit string is used by Adams/Mechatronics to calculate the appropriate conversion factor. For
example, if you define the wheel speed transducer to send out mm/s and your control system requires
km/h, the conversion is automatically taken care of by Adams/Car Mechatronics.
There is a set of pre-defined unit types and unit strings available in Adams/Car Mechatronics. If your
control system is working with other types of units, you can create your own units. See the following
table for more information.
Display the Create Control System dialog box via the menu Mechatronics Control System New:
66 Adams/Mechatronics
Template Builder - Create ESP and ABS control Systems
Click on the button in the lower left side of the Create Control Signal dialog box, to display a new
dialog box, Control Signal Editor, in which you can specify information for each input and output signal:
Tutorials 67
Template Builder - Create ESP and ABS control Systems
When you have entered all the information for the input and output signals, select Apply to save the
information and return to the Create Control System dialog box. Select OK there, and the following
message window appears:
Close the message window and save the template. Proceed to create appropriate transducer signals.
Note that five input transducer signals need to be created in the brake system template and one in the body
template. This particular example of ABS system also uses five input signals from another control
system, that is, the ESP controller (control system output channels).
Units
Please note the use of Unit Type and Unit String and how the units differ from those defined in the control
system. Adams/Mechatronics will automatically convert the units from the transducer to the control
system.
Create the five transducer signals in the brake system. Use the following menu to display the dialog box
for creating transducer signals:
We will start by creating the 'brake_demand' transducer signal. Use the Function Builder (click on the
[...] button on the right) to enter the expression for the brake demand. After completing function
expression in the Function Builder select Apply to go back to Create Transducer Signal dialog box and
Tutorials 69
Template Builder - Create ESP and ABS control Systems
fill the Function text field. Note that you have the possibility to set request and measure activity on or
off, and if you set it on, you can select which unit you want the signal to be expressed in.
70 Adams/Mechatronics
Template Builder - Create ESP and ABS control Systems
We use the same method to create the wheel_speed_front transducer signals. Note that the Unit Type and
Unit String are changed to angular_velocity and rad/s, respectively. Also note that we here take advantage
Tutorials 71
Template Builder - Create ESP and ABS control Systems
of the left/right symmetry capability. Let's start by setting the expression for the front left wheel speed
transducer signal:
72 Adams/Mechatronics
Template Builder - Create ESP and ABS control Systems
Now we will set the expression for the right front transducer:
Tutorials 73
Template Builder - Create ESP and ABS control Systems
The reason why we ‘hardcode’ the unit string to rad/s is that the results from the solver variables
left/righ_wheel_omega always are expressed in rad/s regardless of model units.
Click Apply to execute the dialog box. Note that you have now created two transducers,
ue[l,r]_cst_wheel_speed_front.
Repeat this procedure for the rear wheel speed transducer signals (name them wheel_speed_rear).
Save the template and then open the _rigid_chassis_lt_mech_00.tpl template from the <amech_shared>
database. We will now create the body longitudinal velocity transducer signal:
Note the use of a scale factor of -1 to switch sign of the signal before sending it into the ABS controller.
Save the body template. Proceed to create the actuator signals.
Display the Create Actuator Signal dialog box via the menu Mechatronics Mechanical System
Actuator Signal New:
Click Apply. You have now created the two left/right actuators ue[lr]_csa_ABS_signal_front. Repeat for
the remaining actuator signals left/right ABS_signal_rear.
Now use the menu Build System Elements State Variable Modify to display the following
dialog box (click on the [...] button to display the Function Builder). Start by modifying the
._brake_system_4Wdisk_mech_00.left_front_brake_line_pressure variable:
76 Adams/Mechatronics
Template Builder - Create ESP and ABS control Systems
Note:
1. The use of Insert Object Name with the All Objects option to replace the selected item with the
uel_csa_ABS_signal_front.signal_variable object in the expression in the top of the Function
Builder. Click Apply in the Function Builder to load the new expression into the Modify State
Variable dialog box, and then click Apply there too.
2. We created an expression where we use the signal_connection_flag of the actuator signal object
to make this template fully compatible with use both with and without a control system. By using
the formula
(1 - signal_connection_flag) * brake_demand + signal_connection_flag * actuator_signal
Tutorials 77
Template Builder - Create ESP and ABS control Systems
we thus make the brake pressure dependent on the brake_demand instead of the control system
signal when the actuator has not been connected, which of course happens if we do not have the
control system subsystem in our assembly.
Repeat this process for the remaining state variables:
._brake_system_4Wdisk_mech_00.left_rear_brake_line_pressure
._brake_system_4Wdisk_mech_00.right_front_brake_line_pressure
._brake_system_4Wdisk_mech_00.right_rear_brake_line_pressure
For your reference, the following figures show how ADAMS looks for the right rear brake line pressure:
78 Adams/Mechatronics
Template Builder - Create ESP and ABS control Systems
Inputs:
Outputs::
Note that the five output channels will be connected to input side of ABS control system we created
earlier. This is just to illustrate the possibility to connect several control systems to each other. Therefore
no additional actuator signals need to be created in the mechanical system.
Display the Create Control System dialog box via the menu Mechatronics Control System New:
Tutorials 81
Template Builder - Create ESP and ABS control Systems
Click on the button in the lower left side of the Create Control Signal dialog box, to display a new
dialog box in which you can specify information for each input and output signal:
Close the message windows and save the template. Proceed to creating the transducers.
82 Adams/Mechatronics
Template Builder - Create ESP and ABS control Systems
Units
Please note the use of Unit Type and Unit String and how the units differ from those defined in the control
system. Adams/Mechatronics will automatically convert the units from the transducer to the control
system.
We will start by creating the 'body_lat_acc' transducer. Use Mechatronics Mechanical System
Transducer Signal New to display the following dialog box:
84 Adams/Mechatronics
Template Builder - Create ESP and ABS control Systems
The assembly originates from a standard Adams/Car demo model with two additional subsystems added,
the ABS and the ESP (Electronic Stability Program) control subsystems. The control systems are not yet
connected to each other or to the mechanical model.
86 Adams/Mechatronics
Standard Interface - Use Signal Manager and run interactive analyses
Examine and verify the connectivity status of the control systems in the assembly by choosing
Mechatronics Info Connectivity… The Info Connectivity dialog box below shows the number of
existing control systems in the assembly.
addition, here you can see how many control system exist in each assembly as a text under the Assembly
field. By selecting OK or Apply the Signal Manager dialog box will be displayed.
Here you can review all existing control systems in the selected assembly and then select one by double-
clicking on control system name or any cell in the row. Let’s start with the ABS control system by double-
clicking on ues_ABS cell or any other cell in the same row.
88 Adams/Mechatronics
Standard Interface - Use Signal Manager and run interactive analyses
Now the Signal Manager loads the selected control system information such as the (control) System
Name, its corresponding Major Role, Minor Role, and Comment. Furthermore, it lists all existing ports
in two separate Inputs and Outputs tables.
Tutorials 89
Standard Interface - Use Signal Manager and run interactive analyses
Note that:
• Each table is divided into white and gray areas; the gray areas are related to port information
(name and unit type) of the control system and the white areas are related to connectivity
information (connected signal name, major, and minor role), i.e., information of connected
signals to the ports
• In Inputs table, the columns related to Connected Signal (white area) are in the left side of the
table whereas in Outputs table, they are in the right side of the table. This is basically to resemble
the following model. Input and output signals are normally connected to the control system from
left and right side, respectively.
The next step is to connect the proper signals to the ports in which the Connected Signal Name column
shows ‘Connectivity Is NOT SET’. By clicking on the each cell related to connectivity information
(white area), a new windows pops up where you select and connect the appropriate (transducer or control
system output) signal to the selected input port name.
• By changing the port index (leftmost field in the first row) you can display the other input ports
and edit the connectivity information.
• Clicking on Connectivity info button (rightmost in the first row) you can see whether any signal
is already connected to the port. The usage of this button is concerned with cases where a port
might be connected to a signal from a previous model.
• The second row shows which signals are already connected (or selected to be connected) to the
input port, and its major and minor roles.
• Clicking the Unselect button (leftmost in the either row) unselects the selected connector signal,
however, this will not take effect until the OK or Apply button is clicked.
• Available Signal List (lowermost field and table) displays all selectable signals in a table, i.e.,
(transducers or control system outputs) signals which have the same unit type as the input port.
Let’s explain this by an example; in the current case, because the brake_demand signal has user
unit type, all signals (either transducers or control system outputs) which have a unit type of user
are listed in the table.
• The available signal list can be filtered by Signal Type (curtain menu) and Name Filter field.
This is to help you to find the appropriate signal more conveniently.
• You can select a signal (to be connected to a selected port) from the table by selecting one of the
signal’s cell and then clicking the Select button (lower leftmost). However, this will not take
effect until either the OK or Apply button is clicked.
• Double-clicking on a signal in the table is implemented as a short cut for
• select a signal
• apply the selection
• show the next port
This is to speed up the process of connecting signals to the ports one after another.
• When a signal from the table is already selected, it appears with blue background color in the
table.
• Similar to other dialog boxes in Adams, the OK button closes the Selecting Input dialog box and
returns to the previous window while the Apply button applies the changes and keeps the current
dialog box open.
Now try to get the feeling of the Selecting Input dialog box by connecting the input signals as shown in
the following picture. As explained earlier, a quick way to select signals is to double-click on them (see
Tutorials 91
Standard Interface - Use Signal Manager and run interactive analyses
preceding explanation). After connecting all input signals, return to Signal Manager by clicking OK or
Cancel.
92 Adams/Mechatronics
Standard Interface - Use Signal Manager and run interactive analyses
Now we want to connect the Outputs signals. Therefore you go to Outputs table by selecting its tab as
shown in following illustration.
Similar to the Inputs table, the port information (name and unit type) columns are distinguished by gray
background, however, in contrary to the Inputs side, they are located in the left side of the table to
resemble the following model illustration.
As can be read from the Outputs table, the “connectivity DOES NOT SET OR MATCH” for the output
ports at the moment. Therefore we try to connect the output ports by using Selecting Output … dialog
Tutorials 93
Standard Interface - Use Signal Manager and run interactive analyses
box via double-clicking on Connected Signals column or any cell on the same row (white area). This will
display the Selecting Output … dialog box.
• You can select one or more signals (to be connected to a selected port) from the table by
selecting on one of the signal’s cells and then clicking the Select button (leftmost lower). Use the
Ctrl button on your computer keyboard to choose more than one signal. By pressing select, the
selected signal will appear in upper table, however, the selection will not take effect until either
the OK or Apply button is clicked.
• If one or several signals are selected by clicking the Select button, their cells’ background color
changes from white to blue in the Available Signal List table and consequently they will also
appear in the Connector Signal(s) table.
• If a signal (actuator or control signal input) appears with gray background color in the Available
Signal List table, it means that the signal has been already connected to an output port and
therefore can not be selected.
• Right-clicking on the comment column in the Available Signal List table pops up a small window
where it is possible to review the connectivity information and a Disconnect Signal button for
disconnecting the signal to make it available for selection.
Now try to get the feeling of Selecting Output … dialog box by connecting the input signals as shown in
the following figure. As explained earlier, a quick way to select signals is to double-click on them (see
Tutorials 95
Standard Interface - Use Signal Manager and run interactive analyses
preceding explanation). After connecting all input signals, return to Signal Manager by selecting OK or
Cancel.
By now you have completed the setup of the ABS control system connections. Now we go back to select
and setup the EPS control system by clicking the Arrow Icon on the top-left of the Signal Manager.
96 Adams/Mechatronics
Standard Interface - Use Signal Manager and run interactive analyses
Proceed then by repeating the preceding steps for the ESP control system by selecting (double-clicking)
the ESP control system:
Tutorials 97
Standard Interface - Use Signal Manager and run interactive analyses
Note that the ESP control system outputs already have the proper connections to the ABS control system.
In fact, they have been set in the previous steps (input side of ABS control system).
Press OK in the Signal Manager dialog box and following text will appear in the message window:
98 Adams/Mechatronics
Standard Interface - Use Signal Manager and run interactive analyses
Now use the info connectivity feature for verifying that all control system inputs and actuator signals in
the assembly are properly connected:
Save the assembly and the subsystems via File Save. Note due to the connections that were defined
by using the Signal Manager following subsystems have been modified:
• ABS_system_00.sub
• ESP_system_00.sub
• TR_Brake_System_mech_00.sub
All these subsystem files have now been updated with the appropriate connectivity data. This means that
next time you open the assembly, all connections are already made.
ESP_signal_fl by using Mechatronics Control System Output. This displays the following dialog
box:
Repeat the same step for the ESP control system output ESP_signal_fr
100 Adams/Mechatronics
Standard Interface - Use Signal Manager and run interactive analyses
Now submit the single lane change analysis with the following settings:
Tutorials 101
Standard Interface - Use Signal Manager and run interactive analyses
During the read property file procedure the control system inputs and actuator signals get connected:
102 Adams/Mechatronics
Standard Interface - Use Signal Manager and run interactive analyses
We are now going to deactivate the ESP controller to compare the results. Use Mechatronics Control
System to display the following dialog box:
Set the activity to 'off' and select OK. The following message window appears:
Consequently, we have now deactivated the ESP controller. Therefore, all the control system inputs of
the ABS system which were dependent on the output from the ESP have been disconnected, meaning that
they will receive zero values on those channels.
Rerun the analysis with the same settings as before.
Tutorials 103
Standard Interface - Use Signal Manager and run interactive analyses
Clearly, deactivating the ESP causes the car to reach much higher yaw rates during this particular
manoeuvre.
Please note that Adams/Mechatronics has predefined requests for all types of control signals:
..._model_units (expressed in model units):
..._signal_units (expressed in transducer/actuator signal specific unit)
But before that, first activate the ESP control system again and proceed by displaying the control signal
dialog box using Mechatronics Control System Input:
Choose to add a disturbance ASCII file (sin_amp1to5_freq2_3s.daf) from the shared database and
activate all requests in the general tab container. All control system inputs and output requests are
deactivated by default.
Tutorials 105
Standard Interface - Use Signal Manager and run interactive analyses
In this case the channel label signal1 is chosen and according to the channel unit block the channel unit
is deg/s. With raw signal amplitude of 1 from the file and a channel scale factor set to 2 in the dialog box,
we can expect a disturbance amplitude of 2 deg/s.
Now change the values for the End Time and Number Of Steps to 3 sec and 300 steps respectively and
rerun the analysis.
106 Adams/Mechatronics
Standard Interface - Use Signal Manager and run interactive analyses
The following result set components are available for the request
ues_csi_ESP_body_yaw_rate_model_units:
..._model_units.signal (signal into ESP control system):
..._model_units.disturbance (sinusoidal signal with amplitude of 2 deg/s)
..._model_units.undisturbed_signal (received from connected transducer signal)
..._model_units.function (same as undisturbed_signal in this case)
Tutorials 107
Standard Interface - Use Signal Manager and run interactive analyses
The disturbance affects the behavior of the ESP control system. Compare the new results from the ESP
control system output signals ESP_signal_fl and ESP_signal_fr with those from the first run:
Select Apply.
In order to run the analysis, you need to choose the C++ Adams solver as the delay function is defined
in this solver. You can do this from the Settings Solver Selection … .
Rerun the analysis, and go to the post processor to see the delay applied in the signal.
The delay affects the behavior of the ESP control system. Compare the new results from the ESP control
system output signal ESP_signal_fl with one from the first simulation.
108 Adams/Mechatronics
Standard Interface - Use Signal Manager and run interactive analyses
Tutorials 109
Standard Interface - Use Signal Manager and run interactive analyses
110 Adams/Mechatronics
Standard Interface - Use Signal Manager and run interactive analyses
The assembly contains connectivity information about how to connect the different control system to
each other and to the mechanical system. To verify the connectivity status of the control systems in the
assembly by choosing Mechatronics Info Connectivity…
Tutorials 113
Standard Interface - Setup and run co-simulation
The control package settings above will be the default choices in the export plant dialog box.
114 Adams/Mechatronics
Standard Interface - Setup and run co-simulation
The mode of simulation choice ‘files_only’ is used create the Adams/Car solver files needed for co-
simulation. All files will be created in the working directory.
Tutorials 115
Standard Interface - Setup and run co-simulation
The following message will inform the user that one control system is of type ‘CoSim’ and
Adams/Mechatronics specific export plant dialog box will be displayed:
Press OK and select the previously generated file ESP_cosim_test_sin.adm in export plant dialog box.
Keep default values of other the dialog box settings (also the Host Name):
Now everything is done in the Adams/Car environment. All files that the control package needs for the
co-simulation are created.
116 Adams/Mechatronics
Standard Interface - Setup and run co-simulation
The ESP model requires some variables to be set so remember to read them in from the esp_variables.m
by typing esp_variables at the prompt.
Create the Adams block by typing adams_sys at the prompt. This builds a new model in Simulink named
adams_sys.mdl. This model contains the block representing the mechanical system:
Tutorials 117
Standard Interface - Setup and run co-simulation
Open the esp_cosim model and replace the adams_sub block with the adams_sub block you just created.
This ensures that the proper version of the block will be used.
118 Adams/Mechatronics
Standard Interface - Setup and run co-simulation
A tip is to flip the adams_sub block before replacing the old adams_sub_block (right mouse button click
on adams_sub block Format Flip Block).
Set Communication Interval to 0.01 sec in the Adams Plant block (adams_sub block Adams Plant).
This time increment value corresponds to the output time step set in Adams/Car analysis dialog box.
Verify your block settings below:
Tutorials 119
Standard Interface - Setup and run co-simulation
Start the MATLAB simulation. After the simulation the scope plots for the body yaw rate, body lateral
acceleration, ESP active signal, ESP demand front left and right will look as below:
The Adams result file ESP_cosim_test_sin.res can also be read into Adams for plotting the results in
Adams/Postprocessor.
You have now finished the Adams/Mechatronics Co-Simulation tutorial.
120 Adams/Mechatronics
Standard Interface - Create and use External System Library
In this assembly, the ABS and ESP control systems have been already connected to each other and to the
mechanical model properly.
Tutorials 121
Standard Interface - Create and use External System Library
Verify the connectivity status of the control systems in the assembly by choosing Mechatronics Info
Connectivity.
Export Plant. Select the ues_ESP control system, choose a file prefix, and keep the default values in
the rest of the dialog box:
Press OK and the following information dialog box below will appear.
Tutorials 123
Standard Interface - Create and use External System Library
In case of choosing MATLAB as target software, the following information dialog box will be shown
instead.
select the version appropriate for your platform and Adams installation. For example, if you are running
64-bit Adams on a 64-bit Windows machine, select the win64 version. If you are running 32-bit Adams
on a 64-bit Linux machine, select the linux32 version.
Choose the control system package which the library is originating from and type a name of the library
property to be created. Then select OK. Please note that the External System Library file could be
esp_controller.so if oyu are using UNIX operating system.
A message window dialog box appears which confirms that a library property file has been created:
As can be seen from the preceding message window, a library property file is created and copied into the
default database in the following directory, namely /private.cdb/external_system_libraries.tbl/win32/.
Note that the resulted files are saved in a platform-specific directory depending on the platform type (in
this case win32). You can now close Message Window.
Select the External System Library as System Type. By this the control system depends on the external
system library and the default function expression control system hides. Select the ESP control system
and property file as below:
126 Adams/Mechatronics
Standard Interface - Create and use External System Library
First, review the content in the library property file by selecting the button. The following
information window pops up.
In fact, Adams/Mechatronics verifies also that the library referred to in the property file matches the
control system, i.e., the number of inputs and outputs defined in the library is the same as in the control
system. Close information windows and then select the Apply button.
The information message window below appears after a successful verification:
This is a model of a ball rolling on a beam and the position of the ball will be controlled by a control
system torque applied in the pin joint attaching the beam to the ground.
Tutorials 129
Adams/View - Setup and run Ball and Beam model
Then we create a control system in Adams/Mechatronics. Load the Mechatronics plugin if it is not
already loaded:
Fill in the dialog box as you see below, and then select the icon to start the Control Signal Editor.
Control Signal Editor is used to define the Control Signal Inputs/Outputs specification such as Name,
Unit Type, Unit String. Fill in the three control signal input names, unit type, and unit string as depicted
below.
Tutorials 131
Adams/View - Setup and run Ball and Beam model
And then the control signal output specification as shown in next picture.
Then select OK in Control Signal Editor dialog box to close the dialog box and return to the Create
Control System dialog box, where you select OK button again. The following Message Window
informs you that the control system output signals will be set to zero since no property file was selected.
Close the dialog box by selecting the OK button. The following Message Window appears to verify that
the control system with given specification are created. You can close the Message WIndow.
132 Adams/Mechatronics
Adams/View - Setup and run Ball and Beam model
Function Builder by selecting icon to build the function expression. Make sure to activate the
requests for all three transducers.
Tutorials 133
Adams/View - Setup and run Ball and Beam model
134 Adams/Mechatronics
Adams/View - Setup and run Ball and Beam model
any selections. From the Edit menu, select Modify which shows the Database Navigator. Then select the
torque as shown below.
Double-click any cell of the control system in the table to select the control system of interest.
As can be seen from the following picture, no signal is connected to the input ports of the controller, i.e.,
Connectivity is NOT SET.
Tutorials 137
Adams/View - Setup and run Ball and Beam model
You can select and connect appropriate signals by double-clicking on any cell of interest that has a white
background. For instance, start with a double-click on the first cell under the connected signal name in
the inputs list. The Selecting Input… dialog box pops up.
As you see, there is only one signal of unit type of Angle in Available Signal List. You select this signal
to be connected the input port of beam angle by clicking on one of the corresponding cells in the table,
and consequently selecting the select button in the lower-left area of the dialog box.
138 Adams/Mechatronics
Adams/View - Setup and run Ball and Beam model
Upon selecting the select button, the transducer signal name will appear in Selected Connector Signal
Name. Select Apply to save the selection. Note that when a selection is saved, the corresponding row in
the Available Signal List table gets a blue background color.
Now by changing Port Index counter, review the next input port, i.e., ball_postion.
As there are two signals of unit type of Length which can be seen in the Available Signal List table, you
should select the ues_cst_ball_x_position_rel_beam transducer signal by double-clicking on one of the
corresponding cell in the table. Note that after selection by double-clicking, you have automatically
guided to the next (third) input port.
Hint: Double-clicking in this table is short cut for selecting the signal, selecting the Apply button,
and going to the next port.
Tutorials 139
Adams/View - Setup and run Ball and Beam model
In the third input port, select the ues_cst_ball_x_position_set_value by clicking in a cell in the
corresponding row, clicking the select button, and then selecting the OK button to both confirm the
selection and close the Selecting Input … dialog box in the same time.
Now you are back again in the page that you could review the input/output ports. As you see now all the
input ports are connected to appropriate transducer signals.
140 Adams/Mechatronics
Adams/View - Setup and run Ball and Beam model
Similarly, you navigate to the output port side by selecting the Outputs tab and then by double-clicking
the connected signal cell (white area) in the table, you go to the Selecting Output … dialog box.
As a result, the selected actuator signal will show up in the connected signal(s) list. Click OK to confirm
the selection and close this dialog box.
Now you can see that the torque_out output port is connected to controller_torque actuator signal.
142 Adams/Mechatronics
Adams/View - Setup and run Ball and Beam model
Select OK to confirm all selection you have done in the signal manager. The following message windows
reports the connection made.
Export Plant
You now export the plant in order to create the External System Library (ESL) file in MATLAB/Simulink
or Easy5. Go to the Mechatronics Tools Export Plant
Fill out the dialog box as shown below. In particular, select a File Prefix (in this case, ball_beam_export),
verify the control System Name and Target Software have chosen correctly, and keep the default values
for other parameters. Finally, select OK; the message window confirms that the MATLAB file
ball_beam_export.m, or Easy5 ball_beam_export.inf has been successfully created.
Tutorials 143
Adams/View - Setup and run Ball and Beam model
Since this is an External System Library system, you will see this message:
Read in the exported plant file ball_beam_export.m. The following message appears.
Enter setio to generating the input and output ports in MATLAB/Simulink as depicted below.
Tutorials 145
Adams/View - Setup and run Ball and Beam model
You now merge the two models (ball_beam_amech.mdl and the io model) by connecting the signal and
then save the model as ball_beam_amech_esl. The model should look like below.
Follow the instructions on how to generate the ESL file in standard Adams/Controls. In particular, you
need to setup the Adams files for Real-Time workshop by manually running process.py or using the
command setup_rtw_for_adams which will do this for you. Do not forget to verify that the PID
parameters are defined as inline parameters (i.e. tunable parameters).
Start Easy5 in your working directory and open the model ball_beam.0.ezmf. Double click on the Adams
block and go to the Documentation/Configuration tab. Click on Select/Configure Adams model
Select the exported plant file and choose Function Evaluation - No Feed through as the simulation
mode. Click Done in this dialog box and OK in the AD- Component Data Table dialog box to apply these
changes.
Now, go to the Build menu to create the External System Library
To expose the PID gains as design variables in Adams/View, change Use Design Parameters to Yes, and
select gains K_GN2, K_GN3, K_GN4, K_GN5, K_GN6, and K_GN7 from the PID controller
submodels.
Select Export in this dialog box to create the ESL (that is, ball_beam.dll on Windows) and supporting
ball_beam.xfe.ezanl file. You can now close Easy5.
Upon successful creation of the ESL property file, you will see the following message:
Upon selecting Apply, the library file is verified, i.e., checking the number of inputs/outputs of library file
vs control system defined in Adams.
After finishing simulation, go to the Adams/Post Processor to review the results. Save your results as
“Original_ana”.
Tutorials 151
Adams/View - Setup and run Ball and Beam model
The following plot illustrates the actual and desired ball position with respect to time.
The beam angle signal can now be plotted both in signal unit (rad) and model units (deg) as shown below.
152 Adams/Mechatronics
Adams/View - Setup and run Ball and Beam model
Rerun the simulation, save the result as “Disturbance_Run”, and plot the result. You can easily plot the
different signal components as depicted below. You may refer to the online help to review the request
definition with existence of disturbance.
Now return to Adams/View and you deactivate the disturbance by modifying the Transducer Signal
shown below:
156 Adams/Mechatronics
Adams/View - Setup and run Ball and Beam model
Set the solver type to C++ (which must be used to support the DELAY function) and rerun the simulation.
Save the analysis result as “Delay_Run”, and plot the following requests to observe the difference in ball
Tutorials 157
Adams/View - Setup and run Ball and Beam model
positions. Delay can be seen ball_x_position.signal and ball_x_position.function. For more information
on the details of the delay function, see Solver guide, DELAY function.
This is a model of an excavator where the turret, boom, arm, and bucket are controlled by four different
motion statements. In this tutorial the motions for moving the hydraulic cylinders for the boom, arm and
bucket will be replaced by a hydraulic system controlled by three different controllers.
First examine how the excavator moves using motions by performing a scripted simulation using the
motions. A simulation script named simple_run is prepared. This simulates 25 seconds with 1250 output
steps and starts with an initial equilibrium simulation.
Tutorials 161
Adams/View - Setup and run Excavator model
Animate the results to see how the excavators move. The motion of the hydraulic cylinders will be used
as the desired values sent to the controllers that will regulate the hydraulic system to deliver correct
forces.
Go to the Postprocessor tool by pressing F8, switch the Source to Result Sets, and plot the desired boom
displacement boom_ACT_set_value and then overlay the actual boom hydraulic cylinder position
boom_l_ACT_EZ5_position. Note that they follow each other since the system is controlled by a motion
162 Adams/Mechatronics
Adams/View - Setup and run Excavator model
statement. After reviewing the results, leave your Adams session open so that you can work on the model
later. Otherwise, you will need to reload the model after finishing the next section.
tutorial_excavator\easy5 folder. In Easy5 you now have a model of a PI controller and an Adams block
as illustrated below.
Please note that in all control systems in this tutorial the Adams block is already defined and exists to
save time. In a real application, the Adams block should be manually created or defined. This procedure
has been covered in standard Adams/Control manual in detail or tutorial for ball and beam example of
Adams/Mechatronics. The procedure can be summarized as follows:
1. define the (number/name of inputs/outputs of) control system in Adams/Mechatronics
2. perform a Plant Export in Adams/Mechatronics
3. create an Adams block in the control system package from the exported plant, and
4. connect the control system and Adams block as depicted in the above picture.
164 Adams/Mechatronics
Adams/View - Setup and run Excavator model
The above controller, similar to all other controllers in this tutorial, is a simple PI-controller that takes a
desired signal and a feedback signal as input and delivers a current output that will control the servo valve
in the hydraulic system.
We need to export this model to get our external system library from Easy5. In Easy5, from the top menu
select
Make sure that in General tab the value for Use Design Parameters is set to Yes (this enables the
previously selected Easy5 parameters in arm_controller.0.ezadb to be used as design parameters in
Adams) and then select Export and then close the dialog box. Upon a successful model export, a library
file is generated called arm_controller.dll (.so, .sl) located in the Easy5 working directory.
166 Adams/Mechatronics
Adams/View - Setup and run Excavator model
Now redo the same steps for the boom_controller, bucket_controller and the hydraulic_system model to
build all necessary External System Libraries). After exporting the ESL's from Easy5, you may close
Easy5.
Select OK or Apply to create the ESL property file. You should see a message similar to the following
in Adams:
Copying 'file://C:/examples/aview/tutorial_excavator/easy5/arm_controller.dll' to 'file://C:/
/examples/aview/tutorial_excavator/win32/arm_controller.dll'.
Copying 'file://C:/examples/aview/tutorial_excavator/easy5/arm_controller.xfe.ezanl' to
'file://C:/examples/aview/tutorial_excavator/win32/arm_controller.xfe.ezanl'.
Copying 'file://C:/examples/aview/tutorial_excavator/easy5/arm_controller.dll.manifest' to
'file://C:/examples/aview/tutorial_excavator/win32/arm_controller.dll.manifest'.
Library property file 'file://C:/examples/aview/tutorial_excavator/arm_controller.esl' is created
successfully.
Tutorials 167
Adams/View - Setup and run Excavator model
Now, create ESL property files also for the other External System Library files i,e., boom_controller,
bucket_controller, and hydraulic_system. Use the same name for the ESL property file name as the ESL
file name.
Before selecting OK or Apply, select icon on the lower left corner to start the Control Signal Editor,
where the input/output ports, unit types, unit strings, and so on are defined. Click on the first cell below
the Signal Name column and start to fill the table as following picture depicts. It is required that the
signals are defined in the same order as the External System Library.
By defining the correct units that the external control system expects, Adams/Mechatronics
automatically converts the signals to correct units.
The output signal is created in the same way, but in this case we set the unit type to user since current is
not defined in Adams/Mechatronics. This output signal will later be connected to an input in the
hydraulic system that expects a current signal.
168 Adams/Mechatronics
Adams/View - Setup and run Excavator model
Then select OK in Control Signal Editor, followed by OK in the Create Control System. A message
window verifies that the control system inputs/output have been created as shown below.
Tutorials 169
Adams/View - Setup and run Excavator model
Two more control systems for the other two controllers also needs to be created in the same way as above,
with the following specifications.
Control system name: boom_controller
Library property file: boom_controller.esl
Inputs:
Outputs:
Inputs:
Outputs::
Now we will create the control system for the hydraulic system in the same way, but with 11 inputs and
4 outputs. The hydraulic system needs a current input for each hydraulic cylinder to regulate the servo
valve which controls the hydraulic cylinder. Hydraulic cylinder position and velocity are also sent as
feedback to the hydraulic control system. Output from the hydraulic system is four cylinder forces. This
170 Adams/Mechatronics
Adams/View - Setup and run Excavator model
totally yields 11 inputs and 4 outputs. Now create the hydraulic control system as shown in the following
figures.
Then select OK in Control Signal Editor, followed by OK in the Create Control System. A message
window verifies that the control system inputs/output have been created.
By now we have created all the control systems needed for the model. Next we will move on to create
the transducer signals that will feed the control systems with appropriate information.
You may use Mechatronics Info Signals… to verify that the rest of the transducers are already
prepared according to the table below..
You have now created all necessary transducer signals in the mechanical system. Our next step will be to
create the actuator signals which control the hydraulic cylinders.
Select OK or Apply to create the actuator signal. You may use Mechatronics Info Signals … to
verify that the actuator signals for the boom and bucket are already prepared in the model.
signal_variable under the actuator signal object. The force function should be set to get the value of this
signal. To modify the arm_ACT_actuator, you may use the top menu Edit Modify and look for all
forces using Filter. See figure below for how to modify the arm_ACT_actuator force.
Next, continue to modify the remaining forces, that is, boom_l_ACT_actuator, boom_r_ACT_actuator,
bucket_ACT_actuator to reference the corresponding actuator signal variable.
Let us start with the arm controller and double click on ues_arm_controller cell (or on any other cell in
the same row). Now the Signal Manager loads the selected control system information and lists all
existing ports in two separate Input and Output tabs.
Note that:
• Each table are separated into white and gray areas; the gray area are related to port information
(name and unit type) of the control system and the white area is related to connectivity
information (connected signal name), that is, information of connected signals to the ports
176 Adams/Mechatronics
Adams/View - Setup and run Excavator model
• In Inputs table, the columns related to Connected Signal (white area) are in the left side of the
table; whereas in Outputs table they are in the right side of the table. This is basically to resemble
the signal flow model illustrated in the following figure. Input and output signals are normally
connected to the control system from left and right side, respectively.
Tutorials 177
Adams/View - Setup and run Excavator model
By double clicking on “Connectivity Is NOT SET” cell, the Selecting Inputs dialog box will be displayed
as follows.
This is to help you in the process of connecting signals to the ports one by one.
• When a signal from the table is already selected, its row in the table have blue background color
in the table
• Similar to other dialog boxes in Adams, OK closes the Selecting Input dialog box and returns to
the previous windows while Apply button applies the changes and keep the current dialog box
alive
Now try to get the feeling of Selecting Input dialog box by connecting ues_cst_arm_set_value to
arm_demand. As explained earlier, you may just double click on ues_cst_arm_set_value which select the
signal and lead you directly to the next port, that is, arm_position. Similarly, select ues_cst_arm_position
to be connected to arm_position and then select OK. The arm_controller input signals should be
connected as the following picture.
The outputs from the control systems will remain unassigned for now (those will get completed when
dealing with hydraulic system controller). Select icon in top left area of dialog box to continue
with the input side of the boom and bucket controller in a similar way as following pictures shows.
Tutorials 179
Adams/View - Setup and run Excavator model
Next, continue with the hydraulic system controller and connect the input signals according to the
following figure.
180 Adams/Mechatronics
Adams/View - Setup and run Excavator model
Now we want to connect the Outputs signals. Therefore we select the Outputs tab and select the
appropriate signal connections as shown in following illustration.
After connecting all input signals, return to Signal Manager by selecting OK.
Tutorials 181
Adams/View - Setup and run Excavator model
Next, display the arm controller again to verify that the output is now connected to the hydraulic system.
By now, you have completed the setup of assigning all transducer and actuator signals to the control
systems. Select OK twice to go back to the main Adam windows. A message window pops up with
messages confirming that the control system signals are connected.
Edit Deactivate
This will open the Database Navigator. In the list find and select, arm_Motion, boom_Motion, and
bucket_Motion (following picture) and select OK. This will deactivate the motion statements that were
used to control the motion of the excavator.
actual boom hydraulic cylinder position ues_cst_boom_l_position. Note the difference of using these
control systems instead of the motion controlled system.
Connectivity Information
Mechatronics -> Info -> Connectivity
Displays information on all actuator signals and control system inputs connections in an assembly.
• Unit Types
• Unit Strings
• Scale factors
• Request/Measure
• Connector Info
• Comments
• Disturbances
• Delay
Display in information If you check this option, you can see the information in a window.
window
Save information to a file If you check this option, you can write the file name in the adjoining
field, and the information will be saved to the provided file.
4 Adams/Mechatronics
Convert Controls Plant
• left/right - Define if the left or the right signal are displayed in the
dialog box. The corresponding opposite control system will be
created/modified in the same manner.
• single - A nonsymmetric control system will be created/modified.
System Type Here you can select among the following alternatives:
1. Function Expression
The controller is expressed by its output control signals as function
expressions of input signals. For instance, a control system with 4
inputs and 2 outputs:
output1 = 3*input1 + 2*input2 / 6*input3 - input4
output2 = -9*input1 * 2*input2 + 12*input3 / input4
In addition to the control system inputs, the output could also be
dependent on any other Adams/Solver entity. If other solver entities are
used in the function expressions and they are only valid when the
control system type is set to function, use select objects dialog box for
activating/deactivating the entities which are dependent on the type and
activity of the control system.
2. External System Library
The controller is modelled in Matlab/Simulink or Easy5. By using
Real-Time Workshop (RTW) in Simulink or code generator in Easy5,
together with Adams interface routines, a dynamic link library file can
be created to be used in Adams/Controls and Adams/Mechatronics. In
order to effectively access the library file in Adams/Mechatronics, a
special external system library property file (*.esl file) is created. Learn
more about Control System Import.
3. Co-Simulation
The controller is defined in a separate control application and the
(discrete) communication between Adams and the control application
is handled via the Co-Simulation functionality in Adams/Controls.
6 Adams/Mechatronics
Create/Modify Control System
While in Adams/Car the ESL property file is saved in the Adams/Car database
under the external_system_libraries.tbl directory, in Adams/View it is saved in
a user specified target directory. The ESL file itself, is saved in a subdirectory
named as the operative system platform (e.g. win32 in Windows), which is
located under the ESL property files directory. See an Example of ESL file.
Static Hold Determines if you want Adams/Solver to keep the initial value of the control
signal constant during static analysis.
Control Package If you have selected Co-Simulation as control system type, select the controls
software you are using.
Initial Static Analysis Adams/Car will automatically run the appropriate static analysis, and therefore
you should normally select 'No' on this option.
Number of Inputs Enter the number of inputs of the control system.
Number of Outputs Enter the number of output of the control system.
Active Select whether the control system should be active or not in the assembled
model.
Select to add any comments about the control system to help you manage and
identify it.
Select to define the input and output control signals. Please note that you must
perform this task before selecting Apply or Done in the current dialog box.
Learn about:
$--------------------------------------------------------MDI_HEADER
[MDI_HEADER]
FILE_TYPE = 'esl'
FILE_VERSION = 1.0
FILE_FORMAT = 'ASCII'
HEADER_SIZE = 9
(COMMENTS)
{comment_string}
'Num. Inputs: 11, Num. Outputs: 4'
$-------------------------------------------------------------UNITS
[UNITS]
LENGTH = 'mm'
ANGLE = 'degrees'
FORCE = 'newton'
MASS = 'kg'
TIME = 'second'
$------------------------------------------------------------ROUTINE
[ROUTINE]
LIBRARY = 'Case4_ABS_GSE'
ROUTINE = 'Case4_ABS_GSE'
$------------------------------------------------------------------
PARAMETER
[PARAMETER]
dummy = 1.0
$------------------------------------------------------------
X_INITIAL_CONDITION
[X_INITIAL_CONDITION]
IC_state_1 = 0.0
IC_state_2 = 0.0
IC_state_3 = 0.0
IC_state_4 = 0.0
8 Adams/Mechatronics
Create/Modify Control System
$-----------------------------------------------------------
XD_INITIAL_CONDITION
[XD_INITIAL_CONDITION]
IC_discrete_state_1 = 0.0
Dialog Box - F1 help 9
Create/Modify Transducer/Actuator or Control System Input/Output
Unit Type
General: Select the appropriate unit identifier string. Learn more about Units in
Adams/Mechatronics.
Unit String
Some examples of available unit strings for different unit types:
• length
• model_units
• millimeter
• meter
• ...
• angular_velocity
• model_units
• deg/sec
• rad/sec
• rpm
• user_defined
• user
• no_units
• user_defined
General: Scale factor applied to the total signal:
Active
Dialog Box - F1 help 11
Create/Modify Transducer/Actuator or Control System Input/Output
disturbance_function* unit_factor2)
• ASCII file (*.daf):
• ASCII File
Disturbance ASCII file
• Channel Label
Specifies with column data to use in the file
• Scale Factor
Disturbance Scale Factor:
Total signal = scale_factor * (general_function * unit_factor1 +/*
disturbance_file_data * disturbance_scale_factor * unit_factor2)
• RPC file:
• RPCII file
• Channel Number¨
• Scale Factor
• Channel Unit
Set the specific unit used by the channel
• Time Unit
Set the time unit that is used in the RCPII file
Total signal = scale_factor * (general_function * unit_factor1 +/*
RPCII_file_data (channel_bnumber)* channel_scale_factor*
unit_factor2)
Dialog Box - F1 help 13
Create/Modify Transducer/Actuator or Control System Input/Output
Active
Delay: If disturbance is not active, there is only one choice (function). In that case
delay applies to the function specified in the general tab container.
Signal To Delay
If disturbance is active, then there are three choices on where to apply the
delay as follows.
• Function (only)
• Delays only the function (specified in the general tab
container)
Total Signal = scale_factor * (delayed[general_function] * unit_factor1
+/* disturbance * unit_factor2)
• Disturbance (Only)
• Delays only the disturbance input
Total Signal = scale_factor * (general_function * unit_factor1 +/*
delayed[disturbance] * unit_factor2)
• Disturbed Function
• Delays the disturbed general function, i.e., after disturbance
has been applied on the function signal
Total Signal = scale_factor * delayed [general_function * unit_factor1 +/*
disturbance * unit_factor2]
Delay: If active, you enter the delay function initial history value which is used
when time is less than delay time.
Initial History
If inactive, the initial history value is calculated from the initial value of
function being delayed. (not implemented)
14 Adams/Mechatronics
Create/Modify Transducer/Actuator or Control System Input/Output
Delay Time Type Determines the type of delay time function to be used:
Select to open a dialog box where you can set active and inactive objects
and also dependent object.
Dialog Box - F1 help 15
Delete Control System
Actuator Signals/
Select Model
Mechatronics -> Signal Manager -> Display..
Select the model with the control systems to display the Signal Manager.
Select Objects
Select objects that should be activated or deactivated depending on the connection of the related
actuator/transducer signal. If the dialog box is entered via the control system create/modify dialog box,
you specify the objects which should be activated if the control system is set to function.
Note: There is no symmetry functionalities when selecting objects. Therefore, the user has to
select objects for the left and right sides separately. The same applies when selecting
function objects for control systems of type function.
Signal Manager
Mechatronics -> Signal Manager -> Display
Select Model dialog box opens and the text box is populated with the available models. Select the
appropriate model and click OK. Signal Manager dialog box enables you to hook up transducer signals
and actuator signals to the appropriate input/output channel in the control system.
Signal Overview
Mechatronics -> Info -> Signals
Displays overview information about the different kinds of signals in the assembly; Transducer Signals,
Actuator Signals, Control System Inputs and Control System Outputs.