In Simulink®, you can use the AUTOSAR Dictionary and the Code Mappings editor separately or together to graphically configure an AUTOSAR adaptive software component and map Simulink model elements to AUTOSAR component elements. For more information, see AUTOSAR Component Configuration.
Use the AUTOSAR Dictionary to configure AUTOSAR elements from an AUTOSAR perspective. Using a tree format, the AUTOSAR Dictionary displays a mapped AUTOSAR adaptive component and its elements, communication interfaces, and XML options. Use the tree to select AUTOSAR elements and configure their properties. The properties that you modify are reflected in exported ARXML descriptions and potentially in generated AUTOSAR-compliant C++ code.
To configure AUTOSAR component elements for the Adaptive Platform in Simulink:
Open a model for which AUTOSAR system target file
autosar_adaptive.tlc
is selected.
Create or open a mapped view of the AUTOSAR model. In the model window, do one of the following:
From the Apps tab, open the AUTOSAR Component Designer app.
Click the perspective control in the lower-right corner and select Code.
If the model has not yet been mapped to an AUTOSAR software component, the AUTOSAR Component Quick Start opens. Work through the quick-start procedure and click Finish. For more information, see Create Mapped AUTOSAR Component with Quick Start.
The model opens in the AUTOSAR code perspective. This perspective displays a help panel, a Property Inspector dialog box, and, directly under the model, the Code Mappings editor.
Open the AUTOSAR Dictionary. Either click the AUTOSAR
Dictionary button in the Code Mappings editor or, in the
AUTOSAR tab, select Settings > AUTOSAR Dictionary.
To configure AUTOSAR elements and properties, navigate the AUTOSAR Dictionary tree. You can add elements, remove elements, or select elements to view and modify their properties. Use the Filter Contents field (where available) to selectively display some elements, while omitting others, in the current view.
After configuring AUTOSAR adaptive elements and properties, open the Code Mappings editor. Use Code Mapping tabs to map Simulink elements to new or modified AUTOSAR elements.
To validate the AUTOSAR component configuration, click the
Validate button . If errors are reported, address them and
then retry validation.
AUTOSAR adaptive software components contain AUTOSAR elements defined in the AUTOSAR standard, such as required ports and provided ports. In the AUTOSAR Dictionary, component elements appear in a tree format under the component that owns them. To access component elements and their properties, you expand the component name.
To configure AUTOSAR adaptive software component elements and properties:
Open a model for which a mapped AUTOSAR adaptive software component has been created. For more information, see Component Creation.
From the Apps tab, open the AUTOSAR Component Designer app.
Open the AUTOSAR Dictionary. Either click the AUTOSAR
Dictionary button in the Code Mappings editor or, in the
AUTOSAR tab, select Settings > AUTOSAR Dictionary.
In the leftmost pane of the AUTOSAR Dictionary, under AUTOSAR, select AdaptiveApplications.
The adaptive applications view in the AUTOSAR Dictionary displays adaptive software components. You can rename an AUTOSAR adaptive component by clicking its name and then editing the name text.
In the leftmost pane of the AUTOSAR Dictionary, expand AdaptiveApplications and select an AUTOSAR adaptive component.
The component view in the AUTOSAR Dictionary displays the name and type of the selected component, and component options for ARXML file export. You can modify the AUTOSAR package to be generated for the component.
To specify the AUTOSAR package path, you can do either of the following:
Enter a package path in the Package parameter
field. Package paths can use an organizational naming pattern, such
as /CompanyName/Powertrain
.
To open the AUTOSAR Package Browser, click the button to the right of the Package field. Use the browser to navigate to an existing package or create a package. When you select a package in the browser and click Apply, the component Package parameter value is updated with your selection. For more information about the AUTOSAR Package Browser, see Configure AUTOSAR Package for Component, Interface, CompuMethod, or SwAddrMethod.
For more information about component XML options, see Configure AUTOSAR Packages.
An AUTOSAR adaptive software component contains service communication ports defined in the AUTOSAR standard, including required and provided ports. In the AUTOSAR Dictionary, communication ports appear in a tree format under the component that owns them and under a port type name. To access port elements and their properties, you expand the component name and expand the port type name.
The AUTOSAR Dictionary views of required and provided ports support modeling AUTOSAR service interface communication in Simulink. You use the AUTOSAR Dictionary to configure AUTOSAR required and provided ports, service interfaces, service interface events, and C++ namespaces in your model. For more information, see Model AUTOSAR Adaptive Service Communication.
To configure AUTOSAR required and provided port elements, open a model for which a mapped AUTOSAR adaptive software component has been created and open the AUTOSAR Dictionary.
In the leftmost pane of the AUTOSAR Dictionary, expand the component name and select RequiredPorts.
The required ports view in the AUTOSAR Dictionary lists required ports and their properties. You can:
Select an AUTOSAR required port, and view and optionally reselect its associated service interface.
Rename an AUTOSAR required port by clicking its name and then editing the name text.
To configure adaptive service instance identification for a port, select the port and view its Manifest attributes. Based on the service instance form selected in XML options, examine the value for Instance Specifier or Instance Identifier. You can enter a value or accept an existing value. For more information, see Configure AUTOSAR Adaptive Service Instance Identification.
To configure the adaptive service discovery behavior for a
required port, select the port and view its Service
Discovery Mode. You can select mode
OneTime
or
DynamicDiscovery
. For more information, see
Configure AUTOSAR Adaptive Service Discovery Modes.
To add a port, click the Add button
and use the Add Ports dialog
box.
To remove a port, select the port and then click the
Delete button .
The Add Ports dialog box lets you add a required port and associate it with an existing service interface. To add the port and return to the required ports view, click Add.
In the leftmost pane of the AUTOSAR Dictionary, select ProvidedPorts.
The provided ports view in the AUTOSAR Dictionary lists provided ports and their properties. You can:
Select an AUTOSAR provided port, and view and optionally reselect its associated service interface.
Rename an AUTOSAR provided port by clicking its name and then editing the name text.
To configure adaptive service instance identification for a port, select the port and view its Manifest attributes. Based on the service instance form selected in XML options, examine the value for Instance Specifier or Instance Identifier. You can enter a value or accept an existing value. For more information, see Configure AUTOSAR Adaptive Service Instance Identification.
To add a port, click the Add button
and use the Add Ports dialog
box.
To remove a port, select the port and then click the
Delete button .
The Add Ports dialog box lets you add a provided port and associate it with an existing service interface. To add the port and return to the provided ports view, click Add.
An AUTOSAR software component uses communication interfaces defined in the AUTOSAR standard, including adaptive service interfaces. In the AUTOSAR Dictionary, communication interfaces appear in a tree format under the interface type name. To access interface elements and their properties, you expand the interface type name.
The Service Interfaces view in the AUTOSAR Dictionary supports modeling AUTOSAR adaptive service communication in Simulink. You use the AUTOSAR Dictionary to configure AUTOSAR required and provided ports, service interfaces, service interface events, and C++ namespaces in your model. For more information, see Model AUTOSAR Adaptive Service Communication.
To configure AUTOSAR service interface elements and properties, open a model for which a mapped AUTOSAR adaptive software component has been created and open the AUTOSAR Dictionary.
In the leftmost pane of the AUTOSAR Dictionary, select Service Interfaces.
The service interfaces view in the AUTOSAR Dictionary lists AUTOSAR service interfaces and their properties. You can:
Select a service interface and rename it by editing its name text.
To add one or more service interfaces, click the
Add button and use the Add Interfaces dialog
box.
To remove a service interface, select the interface and then click
the Delete button .
In the Add Interfaces dialog box, specify the name of the interface, the number of associated events it contains, and the path of the Interface package. To add the interface and return to the service interfaces view, click Add.
In the leftmost pane of the AUTOSAR Dictionary, expand Service Interfaces and select a service interface from the list.
The service interface view in the AUTOSAR Dictionary displays the name of the selected service interface and the AUTOSAR package to be generated for the interface.
To modify the AUTOSAR package for the interface, you can do either of the following:
Enter a package path in the Package parameter field.
To open the AUTOSAR Package Browser, click the button to the right of the Package field. Use the browser to navigate to an existing package or create a package. When you select a package in the browser and click Apply, the interface Package parameter value is updated with your selection. For more information about the AUTOSAR Package Browser, see Configure AUTOSAR Package for Component, Interface, CompuMethod, or SwAddrMethod.
In the leftmost pane of the AUTOSAR Dictionary, expand the selected interface and select Events.
The events view in the AUTOSAR Dictionary lists AUTOSAR service interface events and their properties. You can:
Select a service interface event and edit the name value.
Specify the level of measurement and calibration tool access to
service interface events. Select an event and set its
SwCalibrationAccess value to
ReadOnly
,
ReadWrite
, or
NotAccessible
.
Optionally specify the format to be used by measurement and
calibration tools to display the event. In the
DisplayFormat field, enter an ANSI® C
printf
format specifier string. For example,
%2.1d
specifies a signed decimal number. The
number has a minimum width of two characters and a maximum precision
of one digit, producing a displayed value such as 12.2. For more
information about constructing a format specifier string, see Configure DisplayFormat.
To add an event, click the Add button
.
To remove an event, select the event and then click the
Delete button .
In the leftmost pane of the AUTOSAR Dictionary, below Events, select Namespaces.
The namespaces view in the AUTOSAR Dictionary allows you to define a unique namespace for each service interface. The code generator uses the defined namespace when producing C++ code for the interface. To modify or construct a namespace specification, you can:
Select a namespace element and edit the name value.
To add a namespace element to the namespace specification, click
the Add button .
To remove a namespace element, select the element and then click
the Delete button .
For example, this namespaces view defines namespace
company::chassis::provided
for service interface
ProvidedInterface
.
To configure AUTOSAR adaptive XML options for ARXML export, open a model for which a mapped AUTOSAR adaptive software component has been created and open the AUTOSAR Dictionary. Select XML Options.
The XML options view in the AUTOSAR Dictionary displays XML export parameters and their values. You can configure:
XML file packaging for AUTOSAR elements created in Simulink
AUTOSAR package paths
Aspects of exported AUTOSAR XML content
In the XML options view, you can specify the granularity of XML file packaging for AUTOSAR elements created in Simulink. (Imported AUTOSAR XML files retain their file structure, as described in Round-Trip Preservation of AUTOSAR XML File Structure and Element Information.) Select one of the following values for Exported XML file packaging.
Single file
— Exports XML into a
single file,
.modelname
.arxml
Modular
— Exports XML into multiple
files, named according to the type of information contained.
Exported File Name | By Default Contains... |
---|---|
| Adaptive software components, including required and provided ports. This is the main ARXML file exported for the Simulink model. In addition to software components, the component file contains packageable elements that the exporter does not move to data type or interface files based on AUTOSAR element category. |
| Data types and related elements, including:
|
| Adaptive interfaces, including required and provided service interfaces with namespaces and events. |
Alternatively, you can programmatically configure exported XML file packaging
by calling the AUTOSAR set
function. For property
ArxmlFilePackaging
, specify either
SingleFile
or Modular
. For
example:
arProps = autosar.api.getAUTOSARProperties(hModel); set(arProps,'XmlOptions','ArxmlFilePackaging','SingleFile');
For the Adaptive Platform, model builds also generate XML manifests for AUTOSAR executables and service instances. For more information, see Generate AUTOSAR Adaptive C++ and XML Files.
In the XML options view, you can configure AUTOSAR packages (AR-PACKAGEs), which contain groups of AUTOSAR elements and reside in a hierarchical AR-PACKAGE structure. (The AR-PACKAGE structure for a component is logically distinct from the ARXML file partitioning selected with the XML option Exported XML file packaging or imported from AUTOSAR XML files.) For more information about AUTOSAR packages, see Configure AUTOSAR Packages.
Inspect and modify the AUTOSAR package paths grouped under the headings Package Paths and Additional Packages.
Alternatively, you can programmatically configure an AUTOSAR package path by
calling the AUTOSAR set
function. Specify a package
property name and a package path. For example:
arProps = autosar.api.getAUTOSARProperties(hModel); set(arProps,'XmlOptions','ApplicationDataTypePackage',... '/Company/Powertrain/DataTypes/ApplDataTypes');
For more information about AUTOSAR package property names and defaults, see Configure AUTOSAR Packages and Paths.
In the XML options view, under the heading Additional Options, you can configure aspects of exported AUTOSAR XML content.
You can:
Optionally override the default behavior for generating AUTOSAR
application data types in ARXML code. To force generation of an
application data type for each AUTOSAR data type, change the value of
ImplementationDataType Reference from
Allowed
to
NotAllowed
. For more information, see
Control Application Data Type Generation.
Control the default value of the SwCalibrationAccess property of generated AUTOSAR measurement variables, calibration parameters, and signal and parameter data objects. Select one of the following values for SwCalibrationAccess DefaultValue:
ReadOnly
— Read access
only.
ReadWrite
(default) — Read
and write access.
NotAccessible
— Not
accessible with measurement and calibration tools.
For more information, see Configure SwCalibrationAccess.
Optionally override the default behavior for generating internal data constraint information for AUTOSAR implementation data types in ARXML code. To force export of internal data constraints for implementation data types, select the option Internal DataConstraints Export. For more information, see Configure AUTOSAR Internal Data Constraints Export.
Specify the form in which to generate adaptive service instance
information. Set Identify Service Instance Using to
InstanceIdentifier
or
InstanceSpecifier
. The form that you
select is used to identify service instances in generated Proxy and
Skeleton functions. For more information, see Configure AUTOSAR Adaptive Service Instance Identification.
Alternatively, you can programmatically configure the additional XML options
by calling the AUTOSAR set
function. Specify a property
name and value. The valid property names are
ImplementationTypeReference
,
SwCalibrationAccessDefault
,
InternalDataConstraintExport
, and
IdentifyServiceInstance
. For example:
arProps = autosar.api.getAUTOSARProperties(hModel); set(arProps,'XmlOptions','ImplementationTypeReference','NotAllowed'); set(arProps,'XmlOptions','SwCalibrationAccessDefault','ReadOnly'); set(arProps,'XmlOptions','InternalDataConstraintExport',true); set(arProps,'XmlOptions','IdentifyServiceInstance','InstanceSpecifier')