User Tools

Site Tools


eeros_architecture:hal:start

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
eeros_architecture:hal:start [2017/04/30 10:40] grafeeros_architecture:hal:start [2019/03/26 11:39] (current) gehrig
Line 1: Line 1:
 ====== Hardware Abstraction Layer ====== ====== Hardware Abstraction Layer ======
 The HAL provides an interface between the robot control system (consisting of control system, safety system, and sequencer) and the hardware of the robot. Any signal from a hardware input or output must pass through the HAL.  The HAL provides an interface between the robot control system (consisting of control system, safety system, and sequencer) and the hardware of the robot. Any signal from a hardware input or output must pass through the HAL. 
 +  * [[eeros_architecture:hal:using_hal|]]
   * [[eeros_architecture:hal:configuration_file|]]   * [[eeros_architecture:hal:configuration_file|]]
 +    * [[eeros_architecture:hal:scaling|]]
 +    * [[eeros_architecture:hal:scaling_multi|]]
 +    * [[eeros_architecture:hal:config_ros|]]
   * [[eeros_architecture:hal:feature_functions|]]   * [[eeros_architecture:hal:feature_functions|]]
   * [[eeros_architecture:hal:hardware_libraries|]]   * [[eeros_architecture:hal:hardware_libraries|]]
 +    * [[eeros_architecture:hal:hardware_libraries_sim|]] 
 +  * [[eeros_architecture:hal:input_devices|]]
 ===== Configuration of the HAL ===== ===== Configuration of the HAL =====
 The inputs and outputs of the system are given by a specific hardware setup. This can vary widely among different systems. To account for many possible hardware settings we use a configuration file. This file describes the current hardware together with the necessary library to access them, see [[Configuration File]]. The inputs and outputs of the system are given by a specific hardware setup. This can vary widely among different systems. To account for many possible hardware settings we use a configuration file. This file describes the current hardware together with the necessary library to access them, see [[Configuration File]].
Line 20: Line 25:
 Now, you can pass the configuration file with Now, you can pass the configuration file with
 <code> <code>
-$ ./myApplication --config     NameOfConfigurationFile +$ ./myApplication -c /path/to/config/NameOfConfigurationFile
-$ ./myApplication -c           NameOfConfigurationFile    // short version +
-$ ./myApplication --configFile NameOfConfigurationFile    // also possible +
-$ ./myApplication -f           NameOfConfigurationFile    // short version+
 </code> </code>
 +Note: This HAL option has to be the first option if additional command line options are used.
 +
 This call causes the following actions: This call causes the following actions:
   * the configuration file will be parsed   * the configuration file will be parsed
Line 31: Line 35:
   * these objects will be registered in the HAL manager   * these objects will be registered in the HAL manager
 ===== Available HAL Objects ===== ===== Available HAL Objects =====
-All input objects of the HAL have a common type base type ''InputInterface'' while the output objects have a common type ''OutputInterface''. Digital inputs or outputs are of type ''Input<bool>'' or ''Output<bool> respectively. Analog inputs or outputs are of type ''ScalableInput<double>'' or ''ScalableOutput<double> respectively. \\+All input objects of the HAL have a common type base type ''InputInterface'' while the output objects have a common type ''OutputInterface''. Digital inputs or outputs are of type ''Input<bool>'' or ''Output<bool>'' respectively. Analog inputs or outputs are of type ''ScalableInput<double>'' or ''ScalableOutput<double>'' respectively. \\
 The following functions are available: The following functions are available:
 <code cpp> <code cpp>
eeros_architecture/hal/start.1493541604.txt.gz · Last modified: 2017/04/30 10:40 by graf