ifw  0.0.1-dev
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
motorConfig.hpp
Go to the documentation of this file.
1 
10 #ifndef DEVMGR_DEVICE_MOTOR_CONFIG_HPP
11 #define DEVMGR_DEVICE_MOTOR_CONFIG_HPP
12 
13 // System headers
14 #include <string>
15 #include <unordered_map>
16 
17 // Third party headers
18 #include <yaml-cpp/yaml.h>
19 
20 #include <fcf/common/iComm.hpp>
21 #include <devmgr/common/deviceConfig.hpp>
22 #include <devmgr/common/configSet.hpp>
23 #include <devmgr/common/dataContext.hpp>
24 #include <devmgr/devices/motorRpcErrors.hpp>
25 #include <devmgr/devices/motorHwErrors.hpp>
26 
27 
28 namespace devmgr {
29  namespace motor {
30 
31  // Constants for internal mapping
32  const std::string CI_BRAKE = "brake";
33  const std::string CI_BACKLASH = "backlash";
34  const std::string CI_AXIS_TYPE = "axis_type";
35  const std::string CI_DEF_VEL = "velocity";
36  const std::string CI_MAX_POS = "max_pos";
37  const std::string CI_MIN_POS = "min_pos";
38 
39  const std::string CI_CHECK_INPOS = "check_inpos";
40  const std::string CI_LOCK = "lock";
41  const std::string CI_LOCK_POS = "lock_pos";
42  const std::string CI_LOCK_TOLERANCE = "lock_tolerance";
43  const std::string CI_DISABLE = "disable";
44 
45  const std::string CI_TIMEOUT_INIT = "tout_init";
46  const std::string CI_TIMEOUT_MOVE = "tout_move";
47  const std::string CI_TIMEOUT_SWITCH = "tout_switch";
48 
49  const std::string CI_ACTIVE_LOW_BRAKE = "low_brake";
50  const std::string CI_ACTIVE_LOW_INPOS = "low_inpos";
51  const std::string CI_ACTIVE_LOW_STOP = "active_low_lstop";
52  const std::string CI_ACTIVE_LOW_LHW = "active_low_lhw";
53  const std::string CI_ACTIVE_LOW_REF = "active_low_ref";
54  const std::string CI_ACTIVE_LOW_INDEX = "active_low_index";
55  const std::string CI_ACTIVE_LOW_UHW = "active_low_uhw";
56  const std::string CI_ACTIVE_LOW_USTOP = "active_low_ustop";
57 
58  const std::string CI_EXEC_PRE_INIT = "exec_pre_init";
59  const std::string CI_EXEC_POST_INIT = "exec_post_init";
60  const std::string CI_EXEC_PRE_MOVE = "exec_pre_move";
61  const std::string CI_EXEC_POST_MOVE = "exec_post_move";
62 
63  const std::string CI_INITIALISATION = "initialisation";
64  const std::string CI_INIT_SEQUENCE = "sequence";
65  const std::string CI_INIT_ACTION = "action";
66  const std::string CI_INIT_VALUE_1 = "value1";
67  const std::string CI_INIT_VALUE_2 = "value2";
68 
69 
70  // WS configuration keywords
71  // These configuration only matters for WS level
72  const std::string CI_POSITIONS = "positions";
73  const std::string CI_POS_NAMES = "posnames";
74  const std::string CI_NAME_POS_TOLERANCE = "tolerance";
75  const std::string CI_SCALE_FACTOR = "scale_factor";
76 
77  const int CI_AXIS_TYPE_LINEAR = 1;
78  const int CI_AXIS_TYPE_CIRCULAR = 2;
79  const int CI_AXIS_TYPE_CIRCULAR_OPT = 3;
80 
81  const std::string CI_AXIS_TYPE_LINEAR_STR = "LINEAR";
82  const std::string CI_AXIS_TYPE_CIRCULAR_STR = "CIRCULAR";
83  const std::string CI_AXIS_TYPE_CIRCULAR_OPT_STR = "CIRCULAR_OPT";
84 
85  const int CI_AXIS_MODE_INPOS = 0;
86  const int CI_AXIS_MODE_INVEL = 1;
87 
88  const std::string CI_AXIS_MODE_INPOS_STR = "InPosition";
89  const std::string CI_AXIS_MODE_INVEL_STR = "InVelocity";
90 
91  const std::unordered_map<int, std::string> AxisModeMap = {
94  };
95 
96  const int CI_MAX_INIT_STEPS = 10;
97 
98  const std::string CI_INIT_ACTION_END = "END";
99  const std::string CI_INIT_ACTION_FIND_INDEX = "FIND_INDEX";
100  const std::string CI_INIT_ACTION_FIND_REF_LE = "FIND_REF_LE";
101  const std::string CI_INIT_ACTION_FIND_REF_UE = "FIND_REF_UE";
102  const std::string CI_INIT_ACTION_FIND_LHW = "FIND_LHW";
103  const std::string CI_INIT_ACTION_FIND_UHW = "FIND_UHW";
104  const std::string CI_INIT_ACTION_DELAY = "DELAY";
105  const std::string CI_INIT_ACTION_MOVE_ABS = "MOVE_ABS";
106  const std::string CI_INIT_ACTION_MOVE_REL = "MOVE_REL";
107  const std::string CI_INIT_ACTION_CALIB_ABS = "CALIB_ABS";
108  const std::string CI_INIT_ACTION_CALIB_REL = "CALIB_REL";
109  const std::string CI_INIT_ACTION_CALIB_SWITCH = "CALIB_SWITCH";
110 
111 
112  const std::string RPC_MOVE_ABS = "rpcMoveAbs";
113  const std::string RPC_MOVE_REL = "rpcMoveRel";
114  const std::string RPC_MOVE_VEL = "rpcMoveVel";
115 
116 
117  const short SUBSTATE_NOTREADY = 100;
118  const short SUBSTATE_INITIALISING = 101;
119  const short SUBSTATE_READY = 102;
120  const short SUBSTATE_FAILURE = 103;
121  const short SUBSTATE_ABORTING = 104;
122 
123  const short SUBSTATE_OP_STANDSTILL = 200;
124  const short SUBSTATE_OP_MOVING = 201;
125  const short SUBSTATE_OP_SETTING_POS = 202;
126  const short SUBSTATE_OP_STOPPING = 203;
127  const short SUBSTATE_OP_FAILURE = 204;
128 
129  const std::string SUBSTATE_NOTREADY_STR = "NotReady";
130  const std::string SUBSTATE_INITIALISING_STR = "Initialising";
131  const std::string SUBSTATE_READY_STR = "Ready";
132  const std::string SUBSTATE_FAILURE_STR = "Failure";
133  const std::string SUBSTATE_ABORTING_STR = "Aborting";
134 
135  const std::string SUBSTATE_OP_STANDSTILL_STR = "Standstill";
136  const std::string SUBSTATE_OP_MOVING_STR = "Moving";
137  const std::string SUBSTATE_OP_SETTING_POS_STR = "SettingPos";
138  const std::string SUBSTATE_OP_STOPPING_STR = "Stopping";
139  const std::string SUBSTATE_OP_FAILURE_STR = "Failure";
140 
141  const std::unordered_map<short, std::string> SubstateMap = {
152  };
153 
154  // encoders are used only at the WS level
155  const std::string CI_STAT_ENC_POS = "pos_enc";
156  const std::string CI_STAT_TARGET_ENC = "target_enc";
157  const std::string CI_STAT_TARGET_POSNAME = "pos_target_name";
158  const std::string CI_STAT_ACTUAL_POSNAME = "pos_actual_name";
159  const std::string CI_STAT_TARGET_POS = "pos_target";
160  const std::string CI_STAT_ACTUAL_POS = "pos_actual";
161  const std::string CI_STAT_POS_ERROR = "pos_error";
162  const std::string CI_STAT_ACTUAL_VEL = "vel_actual";
163  const std::string CI_STAT_TARGET_VEL = "vel_target";
164  const std::string CI_STAT_SCALE_FACTOR = "scale_factor";
165  const std::string CI_STAT_BACKLASH_STEP = "backlash_step";
166  const std::string CI_STAT_MODE = "mode";
167  const std::string CI_STAT_INITIALISED = "initialised";
168  const std::string CI_STAT_INIT_STEP = "init_step";
169  const std::string CI_STAT_INIT_ACTION = "init_action";
170  const std::string CI_STAT_AXIS_READY = "axis_ready";
171  const std::string CI_STAT_AXIS_ENABLE = "axis_enable";
172  const std::string CI_STAT_AXIS_INPOS = "axis_inposition";
173  const std::string CI_STAT_AXIS_LOCK = "axis_lock";
174  const std::string CI_STAT_AXIS_BRAKE = "axis_brake";
175  const std::string CI_STAT_AXIS_STOP_NEG = "axis_stop_pos";
176  const std::string CI_STAT_AXIS_STOP_POS = "axis_stop_neg";
177  const std::string CI_STAT_AXIS_INFO_DATA_1 = "axis_info_data1";
178  const std::string CI_STAT_AXIS_INFO_DATA_2 = "axis_info_data2";
179 
180  const std::string CI_STAT_SIGNAL_LSTOP = "signal_lstop";
181  const std::string CI_STAT_SIGNAL_LHW = "signal_lhw";
182  const std::string CI_STAT_SIGNAL_REF = "signal_ref";
183  const std::string CI_STAT_SIGNAL_INDEX = "signal_index";
184  const std::string CI_STAT_SIGNAL_UHW = "signal_uhw";
185  const std::string CI_STAT_SIGNAL_USTOP = "signal_ustop";
186 
187  enum class Signal : short {LSTOP = 0,
188  LHW = 1,
189  REF = 2,
190  INDEX = 3,
191  UHW = 4,
192  USTOP = 5};
193 
194 
195  const std::string FITS_PARAM_POSNAME = "POSNAME";
196  const std::string FITS_PARAM_POS = "POS";
197  const std::string FITS_PARAM_BRAKE = "BRAKE";
198  const std::string FITS_PARAM_LOCK = "LOCK";
199 
200 
201  const std::string UndefinedNamedPos = "undefined";
202 
203  const std::vector<std::string> cfgMapping = {
205  };
206 
217  const std::vector<std::string> statMapping = {
229 // CI_STAT_POS_ERROR,
230 // CI_STAT_MODE,
231 // CI_STAT_AXIS_READY,
232 // CI_STAT_AXIS_INPOSition,
233 // CI_STAT_SIGNAL_LSTOP,
234 // CI_STAT_SIGNAL_LHW,
235 // CI_STAT_SIGNAL_REF,
236 // CI_STAT_SIGNAL_INDEX,
237 // CI_STAT_SIGNAL_UHW,
238 // CI_STAT_SIGNAL_USTOP,
239 // CI_STAT_AXIS_INFO_DATA_1,
240 // CI_STAT_AXIS_INFO_DATA_2
241  };
242 
243  const std::vector<std::string> rpcMapping = {
249  RPC_MOVE_ABS,
250  RPC_MOVE_REL,
252  };
253 
254  // Map of Axis type to do the converstion between strings to numbers
255  const std::unordered_map<std::string, int> AxisTypeMap = {
259  };
260 
261  enum {
262  INIT_ACTION_END = 0,
268  INIT_ACTION_DELAY = 6,
274  };
275 
276  // @TODO: replaced by boost bimaps
277  // Tried with boost bimap but I've got hundred of errors.
278  // I added temporaly two maps.
279 
280  // Map of motor initialisation steps
281  const std::unordered_map<std::string, int> InitActionsMap = {
294  };
295 
296  // Map of motor initialisation steps
297  const std::unordered_map<int, std::string> InitActions2Map = {
310  };
311 
312  struct InitAction {
313  int id;
314  double value1;
315  double value2;
316 
317  InitAction():id(0), value1(0.0), value2(0.0) {}
318  };
319 
320  class Sensor;
328  class MotorConfig : public devmgr::common::DeviceConfig
329  {
330  friend class Sensor;
331 
332  enum {
333  CFG_BRAKE,
334  CFG_BACKLASH,
335  CFG_AXISTYPE,
336  CFG_DEFVEL,
337  CFG_MAXPOS,
338  CFG_MINPOS,
339  CFG_CHECKINPOS,
340  CFG_LOCK,
341  CFG_LOCKPOS,
342  CFG_LOCKTOL,
343  CFG_AUTODISABLE,
344  CFG_INITTOUT,
345  CFG_MOVETOUT,
346  CFG_SWITCHTOUT,
347  CFG_ACTLOWBRAKE,
348  CFG_ACTLOWINPOS,
349  CFG_ACTLOWLSTOP,
350  CFG_ACTLOWLHW,
351  CFG_ACTLOWREF,
352  CFG_ACTLOWINDEX,
353  CFG_ACTLOWUHW,
354  CFG_ACTLOWUSTOP,
355  CFG_EXECPREINIT,
356  CFG_EXECPOSTINIT,
357  CFG_EXECPREMOVE,
358  CFG_EXECPOSTMOVE,
359  END_ENUM_MOTOR // WARNING: This should be always last enumerator.
360  };
361 
362  public:
369  MotorConfig(const std::string filename,
370  const std::string name);
371 
375  virtual ~MotorConfig();
376 
385  virtual void ReadConfig();
386 
395  virtual void GetConfig(fcf::common::VectorVariant& params);
396 
401  virtual std::string GetMapFile();
402 
412  virtual void GetConfigList(std::vector<std::string>& cfg_list,
413  std::string prefix);
414 
415 
416 
422 
423 
428  double GetVelocity();
429 
434  void SetScaleFactor(double scale);
435 
440  double GetScaleFactor() const;
441 
447  const std::string GetNamedPosition(const int index);
448 
454  const double GetNamedPositionValue(const std::string named_pos);
455 
462  bool FindNamedPositionValue(const std::string named_pos,
463  double& position);
464 
471  bool FindNamedPositionValue(const double position,
472  std::string& name);
473 
478  double GetNpTolerance() const;
479 
480 
481  private:
482  // All configuration parameters related to the LCS are stored in
483  // dedicated STL maps to make them easilly accessible when downloading
484  // the configuration to the LCS.
488  devmgr::common::MapCfgDouble m_map_cfg_double;
489 
490 
491  // dynamic configuration values
492  double m_scale_factor;
493  int m_num_named_pos;
494  double m_np_tolerance ;
495 
496  // Map of motor named positions
497  std::unordered_map<std::string, double> m_named_positions;
498 
499  // Map of motor init step to do the conversion between strings to numbers
500  std::unordered_map<int, InitAction> m_init_sequence_map;
501 
502  };
503  }
504 }
505 
506 
507 #endif //DEVMGR_DEVICE_MOTOR_CONFIG_H
const std::string CI_STAT_SIGNAL_REF
Definition: motorConfig.hpp:182
Definition: motorConfig.hpp:264
optional bool index
Definition: topics.proto:34
const std::string UndefinedNamedPos
Definition: motorConfig.hpp:201
const std::string CI_LOCK_TOLERANCE
Definition: motorConfig.hpp:42
MotorConfig(const std::string filename, const std::string name)
MotorConfig constructor.
Definition: motorConfig.cpp:26
const std::string CI_STAT_TARGET_POSNAME
Definition: motorConfig.hpp:157
const std::unordered_map< short, std::string > SubstateMap
Definition: motorConfig.hpp:141
const std::string RPC_STOP
Definition: deviceConfig.hpp:45
const std::string RPC_MOVE_ABS
Definition: motorConfig.hpp:112
const std::string CI_SCALE_FACTOR
Definition: motorConfig.hpp:75
const std::string SUBSTATE_READY_STR
Definition: motorConfig.hpp:131
const short SUBSTATE_OP_SETTING_POS
Definition: motorConfig.hpp:125
const std::string CI_STAT_MODE
Definition: motorConfig.hpp:166
const std::unordered_map< std::string, int > InitActionsMap
Definition: motorConfig.hpp:281
Definition: motorConfig.hpp:273
const std::string CI_DEF_VEL
Definition: motorConfig.hpp:35
const std::string CI_TIMEOUT_SWITCH
Definition: motorConfig.hpp:47
const std::vector< std::string > statMapping
Definition: motorConfig.hpp:217
const std::string CI_STAT_AXIS_ENABLE
Definition: motorConfig.hpp:171
double value2
Definition: motorConfig.hpp:315
const std::string CI_BACKLASH
Definition: motorConfig.hpp:33
const std::string CI_DISABLE
Definition: motorConfig.hpp:43
const std::string CI_INIT_ACTION_CALIB_REL
Definition: motorConfig.hpp:108
const std::string CI_ACTIVE_LOW_STOP
Definition: motorConfig.hpp:51
std::map< int, CfgBool > MapCfgBool
Definition: deviceConfig.hpp:104
const std::string CI_INIT_ACTION_END
Definition: motorConfig.hpp:98
const int CI_MAX_INIT_STEPS
Definition: motorConfig.hpp:96
const std::string RPC_DISABLE
Definition: deviceConfig.hpp:44
const std::string CI_ACTIVE_LOW_LHW
Definition: motorConfig.hpp:52
const std::string CI_STAT_AXIS_INFO_DATA_1
Definition: motorConfig.hpp:177
Signal
Definition: motorConfig.hpp:187
const std::string CI_STAT_ERROR_CODE
Definition: deviceConfig.hpp:53
devmgr::common::MapCfgInt m_map_cfg_int
Map for {{cookiecutter.device_name}} integer parameters.
Definition: {{cookiecutter.device_name}}Config.hpp:132
const std::string CI_STAT_SIGNAL_LHW
Definition: motorConfig.hpp:181
const std::string CI_AXIS_TYPE_CIRCULAR_OPT_STR
Definition: motorConfig.hpp:83
Definition: motorConfig.hpp:265
Definition: motorConfig.hpp:269
const std::string CI_INIT_ACTION_DELAY
Definition: motorConfig.hpp:104
const short SUBSTATE_READY
Definition: motorConfig.hpp:119
const std::string CI_STAT_SUBSTATE
Definition: deviceConfig.hpp:49
const short SUBSTATE_OP_MOVING
Definition: motorConfig.hpp:124
void SetScaleFactor(double scale)
Set Scale Factor.
Definition: motorConfig.cpp:296
const std::string CI_POS_NAMES
Definition: motorConfig.hpp:73
double GetVelocity()
Definition: motorConfig.cpp:285
const std::string CI_BRAKE
Definition: motorConfig.hpp:32
InitAction()
Definition: motorConfig.hpp:317
const short SUBSTATE_OP_STOPPING
Definition: motorConfig.hpp:126
const std::string CI_EXEC_POST_INIT
Definition: motorConfig.hpp:59
const std::string CI_STAT_AXIS_INFO_DATA_2
Definition: motorConfig.hpp:178
const std::string CI_INIT_ACTION_FIND_REF_UE
Definition: motorConfig.hpp:101
Definition: motorConfig.hpp:262
const std::string CI_AXIS_MODE_INVEL_STR
Definition: motorConfig.hpp:89
virtual void ReadConfig()
Read the configuration.
Definition: motorConfig.cpp:88
virtual ~MotorConfig()
MotorConfig destructor.
Definition: motorConfig.cpp:84
const std::string CI_STAT_AXIS_INPOS
Definition: motorConfig.hpp:172
virtual void GetConfig(fcf::common::VectorVariant &params)
Obtain the list of configuration parameters.
Definition: motorConfig.cpp:223
const std::string CI_LOCK
Definition: motorConfig.hpp:40
Definition: motorConfig.hpp:270
const std::string CI_POSITIONS
Definition: motorConfig.hpp:72
const std::string CI_INIT_SEQUENCE
Definition: motorConfig.hpp:64
const int CI_AXIS_TYPE_CIRCULAR_OPT
Definition: motorConfig.hpp:79
const std::string CI_INIT_ACTION
Definition: motorConfig.hpp:65
devmgr::common::MapCfgBool m_map_cfg_bool
Map for {{cookiecutter.device_name}} boolean paramaters.
Definition: {{cookiecutter.device_name}}Config.hpp:131
const std::string CI_INITIALISATION
Definition: motorConfig.hpp:63
Device Configuration class.
Definition: deviceConfig.hpp:116
const std::string RPC_INIT
Definition: deviceConfig.hpp:42
const std::string CI_AXIS_TYPE_LINEAR_STR
Definition: motorConfig.hpp:81
const std::string CI_AXIS_MODE_INPOS_STR
Definition: motorConfig.hpp:88
const std::string CI_ACTIVE_LOW_INPOS
Definition: motorConfig.hpp:50
const std::string CI_STAT_TARGET_POS
Definition: motorConfig.hpp:159
const std::string CI_EXEC_POST_MOVE
Definition: motorConfig.hpp:61
const std::string RPC_MOVE_REL
Definition: motorConfig.hpp:113
friend class Sensor
Definition: motorConfig.hpp:330
const std::string SUBSTATE_OP_STANDSTILL_STR
Definition: motorConfig.hpp:135
const short SUBSTATE_NOTREADY
Definition: motorConfig.hpp:117
const std::string SUBSTATE_INITIALISING_STR
Definition: motorConfig.hpp:130
const std::string CI_STAT_SIGNAL_LSTOP
Definition: motorConfig.hpp:180
const short SUBSTATE_ABORTING
Definition: motorConfig.hpp:121
double GetScaleFactor() const
Definition: motorConfig.cpp:302
const std::string FITS_PARAM_BRAKE
Definition: motorConfig.hpp:197
Definition: motorConfig.hpp:272
const std::string CI_STAT_TARGET_ENC
Definition: motorConfig.hpp:156
const std::string CI_INIT_ACTION_FIND_LHW
Definition: motorConfig.hpp:102
Definition: motorConfig.hpp:271
const std::string CI_INIT_ACTION_MOVE_REL
Definition: motorConfig.hpp:106
const std::string RPC_RESET
Definition: deviceConfig.hpp:46
const std::string CI_STAT_SIGNAL_INDEX
Definition: motorConfig.hpp:183
const std::string CI_NAME_POS_TOLERANCE
Definition: motorConfig.hpp:74
const std::string CI_TIMEOUT_INIT
Definition: motorConfig.hpp:45
virtual void GetConfigList(std::vector< std::string > &cfg_list, std::string prefix)
Get configuration list.
Definition: motorConfig.cpp:382
Definition: motorConfig.hpp:268
const std::string CI_INIT_VALUE_1
Definition: motorConfig.hpp:66
std::map< int, CfgInt > MapCfgInt
Definition: deviceConfig.hpp:105
double value1
Definition: motorConfig.hpp:314
const std::string CI_STAT_ACTUAL_POSNAME
Definition: motorConfig.hpp:158
const short SUBSTATE_OP_STANDSTILL
Definition: motorConfig.hpp:123
const std::string CI_INIT_ACTION_CALIB_ABS
Definition: motorConfig.hpp:107
int GetNumberOfNamedPositions()
Definition: motorConfig.cpp:451
devmgr::common::MapCfgUInt m_map_cfg_uint
Map for {{cookiecutter.device_name}} unsigned int parameters.
Definition: {{cookiecutter.device_name}}Config.hpp:133
const std::string CI_INIT_ACTION_MOVE_ABS
Definition: motorConfig.hpp:105
const std::string SUBSTATE_NOTREADY_STR
Definition: motorConfig.hpp:129
Definition: motorConfig.hpp:266
const std::string CI_CHECK_INPOS
Definition: motorConfig.hpp:39
const std::string CI_STAT_INIT_ACTION
Definition: motorConfig.hpp:169
int id
Definition: motorConfig.hpp:313
const std::string CI_STAT_LOCAL
Definition: deviceConfig.hpp:52
const std::unordered_map< std::string, int > AxisTypeMap
Definition: motorConfig.hpp:255
const std::string CI_STAT_POS_ERROR
Definition: motorConfig.hpp:161
const std::string CI_STAT_ACTUAL_POS
Definition: motorConfig.hpp:160
const short SUBSTATE_OP_FAILURE
Definition: motorConfig.hpp:127
bool FindNamedPositionValue(const std::string named_pos, double &position)
Find value associated to a named position.
Definition: motorConfig.cpp:350
const std::vector< std::string > cfgMapping
Definition: motorConfig.hpp:203
const std::string CI_STAT_BACKLASH_STEP
Definition: motorConfig.hpp:165
const std::string FITS_PARAM_LOCK
Definition: motorConfig.hpp:198
const int CI_AXIS_TYPE_LINEAR
Definition: motorConfig.hpp:77
const std::string CI_AXIS_TYPE
Definition: motorConfig.hpp:34
const std::string CI_ACTIVE_LOW_USTOP
Definition: motorConfig.hpp:56
const std::string CI_TIMEOUT_MOVE
Definition: motorConfig.hpp:46
const std::string CI_STAT_AXIS_STOP_POS
Definition: motorConfig.hpp:176
const std::string FITS_PARAM_POS
Definition: motorConfig.hpp:196
const short SUBSTATE_FAILURE
Definition: motorConfig.hpp:120
const std::string CI_ACTIVE_LOW_BRAKE
Definition: motorConfig.hpp:49
const std::string SUBSTATE_OP_STOPPING_STR
Definition: motorConfig.hpp:138
const std::string FITS_PARAM_POSNAME
Definition: motorConfig.hpp:195
const std::string CI_STAT_INIT_STEP
Definition: motorConfig.hpp:168
const std::string CI_INIT_ACTION_CALIB_SWITCH
Definition: motorConfig.hpp:109
const std::string SUBSTATE_FAILURE_STR
Definition: motorConfig.hpp:132
const std::string CI_INIT_VALUE_2
Definition: motorConfig.hpp:67
const std::string SUBSTATE_OP_FAILURE_STR
Definition: motorConfig.hpp:139
const std::string CI_STAT_INITIALISED
Definition: motorConfig.hpp:167
const std::string CI_STAT_AXIS_BRAKE
Definition: motorConfig.hpp:174
const int CI_AXIS_TYPE_CIRCULAR
Definition: motorConfig.hpp:78
const std::string CI_ACTIVE_LOW_INDEX
Definition: motorConfig.hpp:54
std::map< int, CfgUInt > MapCfgUInt
Definition: deviceConfig.hpp:106
const std::string CI_STAT_ACTUAL_VEL
Definition: motorConfig.hpp:162
const std::string SUBSTATE_OP_MOVING_STR
Definition: motorConfig.hpp:136
const std::string RPC_MOVE_VEL
Definition: motorConfig.hpp:114
const std::string CI_INIT_ACTION_FIND_INDEX
Definition: motorConfig.hpp:99
Definition: motorConfig.hpp:267
const std::string CI_ACTIVE_LOW_UHW
Definition: motorConfig.hpp:55
const std::string CI_ACTIVE_LOW_REF
Definition: motorConfig.hpp:53
const std::string SUBSTATE_ABORTING_STR
Definition: motorConfig.hpp:133
const std::string CI_STAT_AXIS_LOCK
Definition: motorConfig.hpp:173
const std::string CI_STAT_SCALE_FACTOR
Definition: motorConfig.hpp:164
const std::string CI_STAT_STATE
Definition: deviceConfig.hpp:50
const std::string CI_EXEC_PRE_INIT
Definition: motorConfig.hpp:58
const std::string CI_LOCK_POS
Definition: motorConfig.hpp:41
const std::vector< std::string > rpcMapping
Definition: motorConfig.hpp:243
const std::string CI_STAT_SIGNAL_UHW
Definition: motorConfig.hpp:184
const std::string GetNamedPosition(const int index)
GetNamedPosition.
Definition: motorConfig.cpp:314
const std::string CI_AXIS_TYPE_CIRCULAR_STR
Definition: motorConfig.hpp:82
const std::string RPC_ENABLE
Definition: deviceConfig.hpp:43
const int CI_AXIS_MODE_INVEL
Definition: motorConfig.hpp:86
const std::unordered_map< int, std::string > InitActions2Map
Definition: motorConfig.hpp:297
const std::string CI_EXEC_PRE_MOVE
Definition: motorConfig.hpp:60
std::map< int, CfgDouble > MapCfgDouble
Definition: deviceConfig.hpp:107
const std::string CI_MIN_POS
Definition: motorConfig.hpp:37
const std::string CI_STAT_SIGNAL_USTOP
Definition: motorConfig.hpp:185
const std::string CI_INIT_ACTION_FIND_UHW
Definition: motorConfig.hpp:103
const std::string CI_MAX_POS
Definition: motorConfig.hpp:36
Definition: motorConfig.hpp:263
const std::unordered_map< int, std::string > AxisModeMap
Definition: motorConfig.hpp:91
const std::string CI_STAT_AXIS_STOP_NEG
Definition: motorConfig.hpp:175
const std::string CI_STAT_AXIS_READY
Definition: motorConfig.hpp:170
optional string name
Definition: topics.proto:50
const short SUBSTATE_INITIALISING
Definition: motorConfig.hpp:118
const std::string CI_INIT_ACTION_FIND_REF_LE
Definition: motorConfig.hpp:100
const std::string CI_STAT_ENC_POS
Definition: motorConfig.hpp:155
const std::string SUBSTATE_OP_SETTING_POS_STR
Definition: motorConfig.hpp:137
const int CI_AXIS_MODE_INPOS
Definition: motorConfig.hpp:85
const std::string CI_STAT_TARGET_VEL
Definition: motorConfig.hpp:163
double GetNpTolerance() const
Get named position tolerance.
Definition: motorConfig.cpp:456
const double GetNamedPositionValue(const std::string named_pos)
GetNamedPositionValue.
Definition: motorConfig.cpp:329
virtual std::string GetMapFile()
Definition: motorConfig.cpp:306