To support AUTOSAR model with python
- AUTOSAR_TPS_XMLSchemaProductionRules.pdf
- AUTOSAR_TPS_ARXMLSerializationRules.pdf
Version | Documentation | Travis CI | Coverage Status | Pypi |
---|---|---|---|---|
- Run
python setup.py bdist_wheel
to generate distribution - Run
twine check dist/*
to check the validation of distribution - Run
twine upload dist/*
to upload to pypi repository - Check the website https://pypi.org/project/armodel/ to find out it works or not
And more details can be found at https://packaging.python.org/
- Run
pip install pytest pytest-cov
to install pytest. - Run
pytest --cov=armodel --cov-report term-missing
to verify all the functionality.
- Run
python setup.py sdist bdist_wheel --universal
- Run
pip install sphinx
to install the necessary document
- ARObject
- Referrable
- MultilanguageReferrable
- Identifiable
- PackageableElement
- ARElement
- AtpType
- AutosarDataType
- PortInterface
- DataInterface
- NvDataInterface
- ParameterInterface
- SenderReceiverInterface
- BswModuleEntry
- EndToEndProtectionSet
- Implementation
- BswImplementation
- AtpFeature
- AtpPrototype
- AtpPrototype
- DataPrototype
- AutosarDataPrototype
- VariableDataPrototype
- ApplicationCompositeElementDataPrototype
- ApplicationArrayElement
- ApplicationRecordElement
- AtpStructureElement
- BswModuleDescription
- ExecutableEntity
- SwcBswMapping
- PortPrototype
- AbstractProvidedPortPrototype
- PPortPrototype
- AbstractRequiredPortPrototype
- RPortPrototype
- ValueSpecification
- ConstantReference
Dump all the arxml data to screen
arxml-dump --arxml arg -h
--arxml arg The file name of arxml data -h show the help information
Dump the arxml data from test1.arxml and test2.arxml
$arxml-dump --arxml test1.arxml --arxml test2.arxml
List all the SwComponentType in the autosar model
usage: swc-list [-h] [-v] [-f FORMAT] [--filter FILTER] Input [Input ...]
-h, --help show the help message and exit -v, --verbose Print debug information -f FORMAT, --format FORMAT Specify the short or long name of Sw-C. short : only print the short name of SWComponentType long : print the SWComponentType with ARPackage names --filter FILTER Set the filter condition. CompositionSwComponent : Print the CompositionSwComponent only.
$arxml-swc <arxml_folder>
$arxml-swc --format long --filter CompositionSwComponent <arxml_folder>
Export all the SwConnector (AssemblySwConnector, DelegationSwConnector) to excel file
$connector2xlsx src/armodel/tests/test_files/SoftwareComponents.arxml data/SoftwareComponents.xlsx
Update all the SwConnector (AssemblySwConnector, DelegationSwConnector) from excel file
$connector-update src/armodel/tests/test_files/SoftwareComponents.arxml data/SoftwareComponents.xlsx data/Test.arxml
ARXMLParser(options={"warning": True})
Version 0.1.1
Add the ARRAY category support for ImplementationDataType
Version 0.1.2
Add the AsynchronousServerCallPoint support for ARXML
Version 0.1.3
Fix the attribute intervalType of Limit is empty issue.
Version 1.0.0
- Add the logging support
- Add the option to disable exception raised.
- Add the BswMD support
Version 1.1.0
- Add the InitEvent support. (Issue #5)
- Add the DataReceiveEvent support. (Issue #5)
- Add the SwcModeSwitchEvent support. (Issue #5)
Version 1.2.0
- Add the SwcImplementation support (Issue #9)
- Add the integer value for memory section alignment (Issue #9)
- Remove the required attributes for the Implementation according to the AUTOSAR standard 23R-11. (Issue #9)
- Change the START-ON-EVENT-REF to optional according to the AUTOSAR standard 23R-11. (Issue #9)
- Change the HANDLE-OUT-OF-RANGE to optional according to the AUTOSAR standard 23R-11. (Issue #9)
- Add the SensorActuatorSwComponentType support (Issue #9)
- Change the CATEGORY of COMPU-METHOD to optional.
- Change the CAN-BE-INVOKED-CONCURRENTLY to optional.
Version 1.3.0
- List all the SwComponentType (Issue #11)
- Support to parse the DelegationSwConnector (Issue #12)
- Correct the class definitions of PPortInCompositionInstanceRef and RPortInCompositionInstanceRef. (Issue #12)
Version 1.4.0
- Support to write the AUTOSAR model to arxml file (Issue #17)
- ARPackage
- CompositionSwComponent
- CompuMethod
- DataConstr
- Unit
- Support to read the AUTOSAR model from arxml file (Issue #17)
- ConstantSpecification
- DataConstr
- Unit
Version 1.4.1
- Support to read the AUTOSAR model from arxml file (Issue #19)
- ServerComSpec
- PerInstanceMemory
- PortDefinedArgumentValue
- DataWriteAccesses
- NvBlockNeeds
- CompositeNetworkRepresentation
- PortGroup
- Support to write the AUTOSAR model to arxml file (Issue #19)
- ServerComSpec
- PerInstanceMemory
- ServerCallPoint
- ReadLocalVariable
- WrittenLocalVariable
- PortDefinedArgumentValue
- RVariableInAtomicSwcInstanceRef
- DataWriteAccesses
- NvBlockNeeds
- RecordValueSpecification
- CompositeNetworkRepresentation
- PortGroup
- Move the ARPackage from the Elements.
Version 1.4.2
- Support to read the AUTOSAR model from arxml file (Issue #23)
- EndToEndProtectionSet
- EndToEndProtection
- EndToEndProtectionVariablePrototype
- EndToEndDescription
- ApplicationArrayDataType
- SwRecordLayout
- SwCalprmAxisSet
- SwCalprmAxis
- ApplicationArrayElement
- ApplicationArrayDataType
- SwRecordLayoutGroup
- SwRecordLayoutGroupContent
- Support to write the AUTOSAR model to arxml file (Issue #23)
- EndToEndProtectionSet
- EndToEndProtection
- EndToEndProtectionVariablePrototype
- EndToEndDescription
- ApplicationArrayDataType
- SwRecordLayout
- SwCalprmAxisSet
- SwCalprmAxis
- ApplicationArrayElement
- ApplicationArrayDataType
- SwRecordLayoutGroup
- SwRecordLayoutGroupContent
- ImplementationDataType
Version 1.4.3
- Support to write the AUTOSAR model to arxml file (Issue #25)
- BswCalledEntity
- BswSchedulableEntity
- BswImplementation
- ServiceSwComponentType
- DataTypeMappingSet
- ModeRequestTypeMap
- PortInterface
- ModeInterface
- Support ot read the AUTOSAR model to arxml file (Issue #25)
- ServiceSwComponentType
- ModeRequestTypeMap
- PortInterface
- ModeInterface
- Refactor the Base ARType
- ARFloat
- ARNumerical
- ARLiteral
- Fix Issue #22 - raise wrong Exception: Invalid ResourceConsumption of Implementation
Version 1.5.0
- Fix the old ARElement (Issue #27)
- InitEvent
- SwcTiming
- ConstantMemory
- ModeSwitchReceiverComSpec
- MODE-ACCESS-POINTS
- Add the timestamp to following ARElement (Issue #27)
- AUTOSAR-VARIABLE-IREF
- MODE-REQUEST-TYPE-MAP
- Timing Extension (Issue #27)
- TIMING-REQUIREMENTS
- EXECUTION-ORDER-CONSTRAINT
- EOC-EXECUTABLE-ENTITY-REF
- Communication (Issue #27)
- LIN-CLUSTER
- NM-PDU
- LIN-UNCONDITIONAL-FRAME
- CAN-FRAME
- GATEWAY
- I-SIGNAL
Version 1.6.0
- Add the annotation support for the Identifiable class. (Issue #29)
- Ecuc (Issue #29)
- EcucValueCollection
- EcucModuleConfigurationValues
- EcucContainerValue
- EcucParameterValue
- EcucAbstractReferenceValue
- To support the following AR Element:
- I-SIGNAL-GROUP
- I-SIGNAL-I-PDU-GROUP
- NM-CONFIG
- NM-NODE
- NM-CLUSTER
- CAN-NM-MODE
- NM-ECU
- SECURED-I-PDU
- MODE-SWITCH-POINTS
- Create the CLI (armodel-system-signal) to list all the system signals
Version 1.6.1
- Organize the armodel package.
- Add the Get/Set method for several class.
Version 1.6.2
- Change the AUTOSAR.clear() to AUTOSAR.new().
- Fix the several refactor methods issue.
Version 1.6.3
- Change the Package structure according to AUTOSAR standard.
Version 1.6.4
- Refactor the Implementation.
- Fix the Binary value
- Refactor the SwComponentType.
Version 1.7.0
- To support the following AR Element:
- SWC-TO-ECU-MAPPING
- SW-MAPPINGS
- ROOT-SOFTWARE-COMPOSITIONS
- SPEED
- ECU-INSTANCE
- COMM-CONTROLLERS
- CAN-COMMUNICATION-CONNECTOR
- I-PDU-TIMING
- DATA-FILTER
- EVENT-CONTROLLED-TIMING
Version 1.7.1
- To support the following AR Element:
- INTRODUCTION
- LIST
- SW-INTENDED-RESOLUTION
- REFERENCE-BASE
Version 1.7.2
- Fix the invalidationPolicy of SenderReceiverInterface cannot be written in ARXML
- To support the following AR Element:
- SW-ADDR-METHOD
- DIAGNOSTIC-COMMUNICATION-MANAGER-NEEDS
- DIAGNOSTIC-ROUTINE-NEEDS
- DIAGNOSTIC-VALUE-NEEDS
- DIAGNOSTIC-EVENT-NEEDS
- CRYPTO-SERVICE-NEEDS
- DIAG-EVENT-DEBOUNCE-MONITOR-INTERNAL
- ROLE-BASED-DATA-TYPE-ASSIGNMENT
- ASYNCHRONOUS-SERVER-CALL-RETURNS-EVENT
- PR-PORT-PROTOTYPE
Version 1.7.3
- To support the following AR Element:
- MEM-CLASS-SYMBOL
- ASYNCHRONOUS-SERVER-CALL-RESULT-POINTS
- STEP-SIZE
- BSW-INTERRUPT-ENTITY
- FLAT-MAP
- VARIABLE-AND-PARAMETER-INTERFACE-MAPPING
- PORT-INTERFACE-MAPPING-SET
- DATA-MAPPINGS
- ECU-STATE-MGR-USER-NEEDS
- STACK-USAGES
- ROUGH-ESTIMATE-STACK-USAGE
- To improve the following AR Element:
- PARAMETER-INTERFACE
Version 1.7.4
- To support the following AR Element:
- DIAGNOSTIC-EVENT-INFO-NEEDS
- AR-TYPED-PER-INSTANCE-MEMORYS
- USED-DATA-ELEMENT
- ETHERNET-COMMUNICATION-CONTROLLER
- ETHERNET-COMMUNICATION-CONNECTOR
- ETHERNET-PHYSICAL-CHANNEL
- PHYSICAL-PROPS
- SO-AD-CONFIG
- To improve the following AR Element:
- MODE-SWITCH-RECEIVER-COM-SPEC
- APPLICATION-ARRAY-DATA-TYPE
Version 1.7.5
- To support the following AR Element:
- DIAGNOSTIC-CONNECTION
- DIAGNOSTIC-SERVICE-TABLE
- LIN-MASTER
- LIN-COMMUNICATION-CONNECTOR
- UDP-NM-CLUSTER
- UDP-NM-NODE
- MULTIPLEXED-I-PDU
- USER-DEFINED-I-PDU
- USER-DEFINED-PDU
- GENERAL-PURPOSE-I-PDU
- GENERAL-PURPOSE-PDU
- SECURE-COMMUNICATION-PROPS-SET
- SO-AD-ROUTING-GROUP
- BUS-OFF-RECOVERY
- SCHEDULE-TABLES
- INFRASTRUCTURE-SERVICES
- GENERIC-TP
- TCP-TP
- UDP-TP
- CONSUMED-SERVICE-INSTANCES
- Fix the following AR Element
- SW-RECORD-LAYOUT-V-AXIS
- SW-RECORD-LAYOUT-GROUP-AXIS
- Improve the following AR Element
- SOCKET-CONNECTION
- SOCKET-ADDRESS
Version 1.7.6
- To support the following AR Element:
- PROVIDED-SERVICE-INSTANCE
- MAC-MULTICAST-GROUP
- ASSOCIATED-COM-I-PDU-GROUP-REF
- CAN-CONTROLLER-CONFIGURATION-REQUIREMENTS
- CAN-CONTROLLER-FD-REQUIREMENTS
- Improve the following AR Element
- AR-PACKAGE
- LIN-TP-CONFIG
- DIAGNOSTIC-SERVICE-TABLE
- LIN-MASTER
- IMPLEMENTATION-DATA-TYPE
- ETHERNET-COMMUNICATION-CONTROLLER
- I-SIGNAL-PORT
- SYMBOL-PROPS
- I-PDU-PORT
- Fix the following AR Element
- I-PDU-MAPPING
Version 1.7.7
-
To support the following AR Element:
- UDP-NM-CLUSTER
- UDP-NM-CLUSTER-COUPLING
- NM-IF-ECUS
- UDP-NM-ECU
- TRANSMISSION-MODE-FALSE-TIMING
- SECURED-I-PDU
- MULTIPLEXED-I-PDU
- NM-PDU
- SECURE-COMMUNICATION-PROPS-SET
- SO-AD-ROUTING-GROUP
- ECU-RESOURCE-MAPPINGS
- SW-IMPL-MAPPINGS
- CAN-TP-CONFIG
- DO-IP-TP-CONFIG
- LIN-TP-CONFIG
- BSW-BACKGROUND-EVENT
- BSW-DATA-RECEIVED-EVENT
- BSW-EXTERNAL-TRIGGER-OCCURRED-EVENT
- MODE-SWITCHED-ACK-EVENT
- BACKGROUND-EVENT
-
Improve the following AR Element
- ETHERNET-COMMUNICATION-CONNECTOR
- ECU-INSTANCE
- CAN-NM-NODE
- NM-NODE
- SDG
- DATA-FILTER
- USER-DEFINED-PDU
- APPLICATION-ARRAY-DATA-TYPE
- MODE-SWITCH-SENDER-COM-SPEC
-
Access the RootSwCompositionPrototype directly from AUTOSAR instance
-
Create the mapping for Implementation and InternalBehavior
- AUTOSAR::getBehavior()
- AUTOSAR::getImplementation()
-
Improve the Identifiable::setCategory with Raw String
Version 1.7.8
- To support the following AR Element:
- STATIC-MEMORYS
- RECEPTION-POLICYS
- VENDOR-API-INFIX
- INCLUDED-MODE-DECLARATION-GROUP-SET
- HW-ELEMENT
- FLEXRAY-FRAME
- TYPE-MAPPING
- DATA-TRANSFORMATION-SET
- FLEXRAY-COMMUNICATION-CONTROLLER
- FLEXRAY-COMMUNICATION-CONNECTOR
- FLEXRAY-PHYSICAL-CHANNEL
- Improve the following AR Element
- SW-DATA-DEF-PROPS
- SW-RECORD-LAYOUT-GROUP
- BSW-MODULE-DESCRIPTION
- BSW-CALLED-ENTITY
- BSW-SCHEDULABLE-ENTITY
- SW-SERVICE-ARG
- RUNNABLE-ENTITY
- I-SIGNAL-GROUP
- END-TO-END-PROTECTION
- Fix the following AR Element
- PROVIDED-MODE-GROUPS
- MANAGED-MODE-GROUPS
- Enable the Flake8
- Fix the Flake8 issues