Menu
homecompanyproductsservicessupportcontact
 


 

Products

HLA Toolbox™ :

»Click here to download the HLA Toolbox™ datasheet
»Click here to download the HLA Toolbox™ technical informations

 

The HLA Toolbox™ is the Matlab® interface to the High Level Architecture standards, HLA 1.3 and IEEE 1516 for distributed simulation. Designed to improve organization efficiency to participate in multinational simulations or to implement distributed simulation models locally, the HLA Toolbox™ greatly simplifies federation development.

Federate standard interactions with the Run Time Infrastructure can easily be implemented using a graphical user interface to generate the required m-files. The GUI also provide an organized tree structure presenting the federation Object and Interaction classes used to identify the Attributes and/or Interactions your federate will publish and/or subscribe. The code generated by the HLA Toolbox™ interface can be customized to implement the specifics of your model using any of the RTI services.

The HLA Toolbox™ accelerates federation implementation and enables the use of the Matlab® Toolboxes at the federate development level. The Matlab® development features such as the debugger, the profiler, M-Lint code checker, the Graphical User Interface Development Environment (GUIDE), the visualization tools (2D & 3D) and all the data analysis capabilities are just a few of the advantages you get by developing your federate in Matlab.

 

Key Features

- Runs HLA federate from MATLAB® / SIMULINK®

- Offers a GUI to configure federate RTI interface

- Generates m-code automatically

- Provides preformatted RTI callbacks m-files

- Implements all HLA 1.3 and IEEE 1516 service and support classes

- Includes several utilities and sample federations

- Integrate C/C++ code in your MATLAB® federate

- Generate stand alone federate using MATLAB® Compiler

Success Stories

  • COS-Systems - Germany
    We have been using the HLA Toolbox for MatLab to implement the control messages between CUCS-Core UAV Control System and VSM - Vehicle Specific Module in accordance with STANAG 4586 (Edition 2 (Standard Interfaces of UAV Control System (UCS) for NATO UAV Interoperability).

    We have successfully developed a 6 DoF Simulation of a Stratospheric UAS including environment (temperature, pressure, density, gravitation and wind data) and a ground station (Flight Control & Status) based on MatLab tools. The simulation of the physical performance was realised in accordance with IEEE 1615 HLA standard.

    The HLA Toolbox for MatLab has helped us to achieve quick results and evaluate the functionality of the UAS control messages.


  • Carl von Ossietzky Universität - Germany
    First I want to say that is very pleasing to work together with you. When I had some problems (bugs, feature requests) during installation or what else Mr. Lebel was always very fast in fixing the named problems or offering a kind of workaround. Thanks again, I would like to have such a good support everywhere!
    At the moment I can say, that the Setup of the HLA Toolbox is very user-friendly, you can specify the RTI you have got and for me the provided examples were very helpful, especially that one which shows how it is possible to in integrate the Matlab-Functions into Simulink (I've missed that with the MÄK Toolbox). I will give advertisement also to our project partners.
    The global project we are using the HLA-Toolbox for, is the IMoST project. IMoST stands for "Integrated Modeling for Safe Transportation". The project was launched by the research institutes of the SafeTRANS initiative and the participating organizations are the "Carl von Ossietzky Universität Oldenburg", the "German Aerospace Center" (DLR in Braunschweig) and the "OFFIS - Institute for Information Technology" also in Oldenburg. In very short words you can say, that we want to improve the safety in transport systems by developing an approach which combines model based design with a psychological perspective. For example if a new driver assistance system is developed it is necessary to focus not only the technical part of the system it is also very important to analyze the interactions between the assistant system and the driver. The HLA-Toolbox will be used in this context to develop some physical car models or assistance systems in Matlab / Simulink which should be connected to other simulators using the HLA. Especially I'm working to get the necessary infrastructure working together (HLA-Toolbox, RTI, Visual Studio and so on) and I implement the HLA interfaces to the different simulators.


  • Hokkaido University - Japan
    My name is Satoshi Kanai. I’ m studying a system modeling and simulation research area as a professor of systems science and informatics division in Graduate School of Information Science and Technology in Hokkaido University.   Our lab have been using the  HLA Toolbox for connecting the three or four different simulators and 3D CAD systems (CATIA) in order to predict the dynamic behavior of the sub control system for cars and electric wheel chair control system. We are also using the RTI for connecting hardware prototypes  such as an embedded processor or motors in the wheel chair mechanism. We’re satisfied with the performance of your systems.

  • More to come ...

Applications

  • The HLA simulation standard is designed to promote standardization in the M&S community and to facilitate the reuse of M&S components. Mainly used by the defense industry, HLA has a great potential for applications such as Aerospace, Biomedical, Automotive, R&D Engineering and Manufacturing simulation.

  • The HLA Toolbox™ provides the necessary tools to the distributed simulation developers to seamlessly connect their Matlab models as federate in any HLA federation. The HLA Toolbox™ is currently used in Aerospace and Defense, Automotive, Transportation/Traffic Analysis and Communications. It is used by Universities and industries.

  • Engineers and scientists familiar with Matlab can start building HLA federations without having to learn all the details of the HLA standard interface.



Code Sample

...
1   createFederationExecution(federationName, fedFilePath);
2   federateHandle = joinFederationExecution(federateName, federationName);
3   enableAsynchronousDelivery;
4   enableTimeConstrained;
5
6   while ( ~timeConstrained )
7   tick(0.01, 1.0);
8   end
9
10 publish_subscribe{1} = {'publish','ObjectRoot.BaseEntity.PhysicalEntity',{'WorldLocation'}};
11 received_ids = hlaAutoPublishSubscribe(publish_subscribe);
12 baseEntityInstance_id = registerObjectInstance(received_ids{1}(1));
13 ...
14 ahvps = AttributeHandleValuePairSet;
15 ahvps = add(ahvps, received_ids{1}(2), localWorldLocation);
16 updateAttributeValues(baseEntityInstance_id, ahvps, 'tag');
17 empty(ahvps);
18
19 timeAdvanceRequest( requestTime );
20 while( timeAdvGranted ~= 1 )
21 tick(0.01, 1.0);
22 end
23 ...
24 resignFederationExecution('DELETE_OBJECTS_AND_RELEASE_ATTRIBUTES');
25 destroyFederationExecution(federationName);

Compatibility

The HLA Toolbox™ is compatible with any HLA 1.3 RTI with Dynamic Link Compatible (DLC) API. It is also compatible with pRTI 1516 and MAK 1516. Matlab R2006a and up.

Functions List

Legend:
functions common to both standards are in blue
functions specific to HLA 1.3 standard are in red
functions specific to HLA 1516 standard are in green

Here is an exaustive list of the HLA Toolbox™ functions:

Toolbox specific functions
hlaAutoPublishSubscribe
hlaCreateFederate
hlaDecode
hlaDestroy
hlaEncode
hlaErrorMsg
hlaGUI
hlaInitialize
hlaRegisterToolbox
hlaRun
hlaVersion
HLA standard functions
Federation management
createFederationExecution
destroyFederationExecution
federateRestoreComplete
federateRestoreNotComplete
federateSaveBegun
federateSaveComplete
federateSaveNotComplete
joinFederationExecution
registerFederationSynchronizationPoint
requestFederationRestore
requestFederationSave
resignFederationExecution
synchronizationPointAchieved

queryFederationSaveStatus
queryFederationRestoreStatus
Declaration management
publishInteractionClass
subscribeInteractionClass
subscribeObjectClassAttributes
unpublishInteractionClass
unpublishObjectClass
unsubscribeInteractionClass
unsubscribeObjectClass

publishObjectClass
publishObjectClassAttributes
unpublishObjectClassAttributes
unsubscribeObjectClassAttributes
Object management
changeAttributeTransportationType
changeInteractionTransportationType
deleteObjectInstance
localDeleteObjectInstance
updateAttributeValues
sendInteraction
registerObjectInstance

requestClassAttributeValueUpdate
requestObjectAttributeValueUpdate

reserveObjectInstanceName
requestAttributeValueUpdate
ObjectInstanceHandle
Ownership management
unconditionalAttributeOwnershipDivestiture
negotiatedAttributeOwnershipDivestiture
attributeOwnershipAcquisition
attributeOwnershipAcquisitionIfAvailable
cancelNegotiatedAttributeOwnershipDivestiture
cancelAttributeOwnershipAcquisition
isAttributeOwnedByFederate
queryAttributeOwnership
attributeOwnershipReleaseResponse
confirmDivestiture
attributeOwnershipDivestitureIfWanted
Time management
changeAttributeOrderType
changeInteractionOrderType
disableAsynchronousDelivery
disableTimeConstrained
disableTimeRegulation
enableAsynchronousDelivery
enableTimeConstrained
enableTimeRegulation
flushQueueRequest
modifyLookahead
queryLookahead
retract
timeAdvanceRequest
timeAdvanceRequestAvailable
nextEventRequest
nextEventRequestAvailable
queryFederateTime
queryLBTS
queryMinNextEventTime

nextMessageRequest
nextMessageRequestAvailable
queryGALT
queryLogicalTime
queryLITS
Data distribution management
associateRegionForUpdates
createRegion
registerObjectInstanceWithRegion
sendInteractionWithRegion
subscribeInteractionClassWithRegion
subscribeObjectClassAttributesWithRegion
unassociateRegionForUpdates
unsubscribeInteractionClassWithRegion

notifyAboutRegionModification
requestClassAttributeValueUpdateWithRegion
unsubscribeObjectClassWithRegion

commitRegionModifications
deleteRegion
unsubscribeObjectClassAttributesWithRegions
requestAttributeValueUpdateWithRegions
Types and ancillary services
disableAttributeRelevanceAdvisorySwitch
disableAttributeScopeAdvisorySwitch
disableInteractionRelevanceAdvisorySwitch
enableAttributeRelevanceAdvisorySwitch
enableAttributeScopeAdvisorySwitch
enableInteractionRelevanceAdvisorySwitch
getAttributeHandle
getAttributeName
getDimensionHandle
getInteractionClassHandle
getInteractionClassName
getObjectClassHandle
getObjectClassName
getObjectInstanceHandle
getObjectInstanceName
getParameterHandle
getParameterName
getTransportationName

disableClassRelevanceAdvisorySwitch
enableClassRelevanceAdvisorySwitch
getAttributeRoutingSpaceHandle
getDimensionHandles
getInteractionRoutingSpaceHandle
getObjectClass
getOrderingHandle
getOrderingName
getRoutingSpaceHandle
getRoutingSpaceName
getTransportationHandle
tick

getDimensionName
getDimensionUpperBound
getAvailableDimensionsForClassAttribute
getKnownObjectClassHandle
getAvailableDimensionsForInteractionClass
getTransportationType
getOrderType
getOrderName
enableObjectClassRelevanceAdvisorySwitch
disableObjectClassRelevanceAdvisorySwitch
getDimensionHandleSet
getRangeBounds
setRangeBounds
normalizeFederateHandle
normalizeServiceGroup
evokeCallback
evokeMultipleCallbacks
enableCallbacks
disableCallbacks


       

©Copyright 2005-2008 ForwardSim Inc. All Rights Reserved
For more information feel free to Contact Us