YouBotJointParameterReadOnly.hpp
Go to the documentation of this file.
1 #ifndef YOUBOT_YOUBOTJOINTPARAMETERREADONLY_H
2 #define YOUBOT_YOUBOTJOINTPARAMETERREADONLY_H
3 
4 /****************************************************************
5  *
6  * Copyright (c) 2011
7  * All rights reserved.
8  *
9  * Hochschule Bonn-Rhein-Sieg
10  * University of Applied Sciences
11  * Computer Science Department
12  *
13  * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
14  *
15  * Author:
16  * Jan Paulus, Nico Hochgeschwender, Michael Reckhaus, Azamat Shakhimardanov
17  * Supervised by:
18  * Gerhard K. Kraetzschmar
19  *
20  * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
21  *
22  * This sofware is published under a dual-license: GNU Lesser General Public
23  * License LGPL 2.1 and BSD license. The dual-license implies that users of this
24  * code may choose which terms they prefer.
25  *
26  * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
27  *
28  * Redistribution and use in source and binary forms, with or without
29  * modification, are permitted provided that the following conditions are met:
30  *
31  * * Redistributions of source code must retain the above copyright
32  * notice, this list of conditions and the following disclaimer.
33  * * Redistributions in binary form must reproduce the above copyright
34  * notice, this list of conditions and the following disclaimer in the
35  * documentation and/or other materials provided with the distribution.
36  * * Neither the name of the Hochschule Bonn-Rhein-Sieg nor the names of its
37  * contributors may be used to endorse or promote products derived from
38  * this software without specific prior written permission.
39  *
40  * This program is free software: you can redistribute it and/or modify
41  * it under the terms of the GNU Lesser General Public License LGPL as
42  * published by the Free Software Foundation, either version 2.1 of the
43  * License, or (at your option) any later version or the BSD license.
44  *
45  * This program is distributed in the hope that it will be useful,
46  * but WITHOUT ANY WARRANTY; without even the implied warranty of
47  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
48  * GNU Lesser General Public License LGPL and the BSD license for more details.
49  *
50  * You should have received a copy of the GNU Lesser General Public
51  * License LGPL and BSD license along with this program.
52  *
53  ****************************************************************/
54 #include <vector>
55 #include <sstream>
65 namespace youbot {
66 
71 friend class YouBotJoint;
72  protected:
74 
75 
76  public:
78 
79  virtual void toString(std::string& value) = 0;
80 
81 
82  protected:
83  virtual void getYouBotMailboxMsg(YouBotSlaveMailboxMsg& message, TMCLCommandNumber msgType, const YouBotJointStorage& storage) const = 0;
84 
85  virtual void setYouBotMailboxMsg(const YouBotSlaveMailboxMsg& message, const YouBotJointStorage& storage) = 0;
86 
87  virtual std::string getName() const = 0;
88 
89  virtual ParameterType getType() const = 0;
90 
91  std::string name;
92 
94 
95 };
100 friend class YouBotJoint;
101  public:
103 
104  virtual ~ActualMotorVoltage();
105 
106  void getParameter(quantity<electric_potential>& parameter) const;
107 
108  void toString(std::string& value);
109 
110 
111  private:
112  void getYouBotMailboxMsg(YouBotSlaveMailboxMsg& message, TMCLCommandNumber msgType, const YouBotJointStorage& storage) const;
113 
114  void setYouBotMailboxMsg(const YouBotSlaveMailboxMsg& message, const YouBotJointStorage& storage);
115 
116  std::string getName() const {return this->name;};
117 
119  ParameterType getType() const {return this->parameterType;};
120 
121  quantity<electric_potential> value;
122 
123  std::string name;
124 
126 
127 };
144 friend class YouBotJoint;
145  public:
146  ErrorAndStatus();
147 
148  virtual ~ErrorAndStatus();
149 
150  void getParameter(unsigned int& parameter) const;
151 
152  void toString(std::string& value);
153 
154 
155  private:
156  void getYouBotMailboxMsg(YouBotSlaveMailboxMsg& message, TMCLCommandNumber msgType, const YouBotJointStorage& storage) const;
157 
158  void setYouBotMailboxMsg(const YouBotSlaveMailboxMsg& message, const YouBotJointStorage& storage);
159 
160  std::string getName() const {return this->name;};
161 
162  ParameterType getType() const {return this->parameterType;};
163 
164  void parseYouBotErrorFlags() const;
165 
166  unsigned int value;
167 
168  std::string name;
169 
171 
172 };
177 friend class YouBotJoint;
178  public:
179  PositionError();
180 
181  virtual ~PositionError();
182 
183  void getParameter(quantity<plane_angle>& parameter) const;
184 
185  void toString(std::string& value);
186 
187 
188  private:
189  void getYouBotMailboxMsg(YouBotSlaveMailboxMsg& message, TMCLCommandNumber msgType, const YouBotJointStorage& storage) const;
190 
191  void setYouBotMailboxMsg(const YouBotSlaveMailboxMsg& message, const YouBotJointStorage& storage);
192 
193  std::string getName() const {return this->name;};
194 
195  ParameterType getType() const {return this->parameterType;};
196 
197  quantity<plane_angle> value;
198 
199  std::string name;
200 
202 
203 };
208 friend class YouBotJoint;
209  public:
211 
212  virtual ~PositionErrorSum();
213 
214  void getParameter(quantity<plane_angle>& parameter) const;
215 
216  void toString(std::string& value);
217 
218 
219  private:
220  void getYouBotMailboxMsg(YouBotSlaveMailboxMsg& message, TMCLCommandNumber msgType, const YouBotJointStorage& storage) const;
221 
222  void setYouBotMailboxMsg(const YouBotSlaveMailboxMsg& message, const YouBotJointStorage& storage);
223 
224  std::string getName() const {return this->name;};
225 
226  ParameterType getType() const {return this->parameterType;};
227 
228  quantity<plane_angle> value;
229 
230  std::string name;
231 
233 
234 };
239 friend class YouBotJoint;
240  public:
241  VelocityError();
242 
243  virtual ~VelocityError();
244 
245  void getParameter(quantity<si::angular_velocity>& parameter) const;
246 
247  void toString(std::string& value);
248 
249 
250  private:
251  void getYouBotMailboxMsg(YouBotSlaveMailboxMsg& message, TMCLCommandNumber msgType, const YouBotJointStorage& storage) const;
252 
253  void setYouBotMailboxMsg(const YouBotSlaveMailboxMsg& message, const YouBotJointStorage& storage);
254 
255  std::string getName() const {return this->name;};
256 
257  ParameterType getType() const {return this->parameterType;};
258 
259  quantity<si::angular_velocity> value;
260 
261  std::string name;
262 
264 
265 };
270 friend class YouBotJoint;
271  public:
273 
274  virtual ~VelocityErrorSum();
275 
276  void getParameter(quantity<si::angular_velocity>& parameter) const;
277 
278  void toString(std::string& value);
279 
280 
281  private:
282  void getYouBotMailboxMsg(YouBotSlaveMailboxMsg& message, TMCLCommandNumber msgType, const YouBotJointStorage& storage) const;
283 
284  void setYouBotMailboxMsg(const YouBotSlaveMailboxMsg& message, const YouBotJointStorage& storage);
285 
286  std::string getName() const {return this->name;};
287 
288  ParameterType getType() const {return this->parameterType;};
289 
290  quantity<si::angular_velocity> value;
291 
292  std::string name;
293 
295 
296 };
301 friend class YouBotJoint;
302  public:
303  CurrentError();
304 
305  virtual ~CurrentError();
306 
307  void getParameter(quantity<si::current>& parameter) const;
308 
309  void toString(std::string& value);
310 
311 
312  private:
313  void getYouBotMailboxMsg(YouBotSlaveMailboxMsg& message, TMCLCommandNumber msgType, const YouBotJointStorage& storage) const;
314 
315  void setYouBotMailboxMsg(const YouBotSlaveMailboxMsg& message, const YouBotJointStorage& storage);
316 
317  std::string getName() const {return this->name;};
318 
319  ParameterType getType() const {return this->parameterType;};
320 
321  quantity<si::current> value;
322 
323  std::string name;
324 
326 
327 };
332 friend class YouBotJoint;
333  public:
334  CurrentErrorSum();
335 
336  virtual ~CurrentErrorSum();
337 
338  void getParameter(quantity<si::current>& parameter) const;
339 
340  void toString(std::string& value);
341 
342 
343  private:
344  void getYouBotMailboxMsg(YouBotSlaveMailboxMsg& message, TMCLCommandNumber msgType, const YouBotJointStorage& storage) const;
345 
346  void setYouBotMailboxMsg(const YouBotSlaveMailboxMsg& message, const YouBotJointStorage& storage);
347 
348  std::string getName() const {return this->name;};
349 
350  ParameterType getType() const {return this->parameterType;};
351 
352  quantity<si::current> value;
353 
354  std::string name;
355 
357 
358 };
363 friend class YouBotJoint;
364  public:
366 
367  virtual ~RampGeneratorSpeed();
368 
369  void getParameter(quantity<si::angular_velocity>& parameter) const;
370 
371  void toString(std::string& value);
372 
373 
374  private:
375  void getYouBotMailboxMsg(YouBotSlaveMailboxMsg& message, TMCLCommandNumber msgType, const YouBotJointStorage& storage) const;
376 
377  void setYouBotMailboxMsg(const YouBotSlaveMailboxMsg& message, const YouBotJointStorage& storage);
378 
379  std::string getName() const {return this->name;};
380 
381  ParameterType getType() const {return this->parameterType;};
382 
383  quantity<si::angular_velocity> value;
384 
385  std::string name;
386 
388 
389 };
394 friend class YouBotJoint;
395  public:
396  I2tSum();
397 
398  virtual ~I2tSum();
399 
400  void getParameter(unsigned int& parameter) const;
401 
402  void setParameter(const unsigned int parameter);
403 
404  void toString(std::string& value);
405 
406 
407  private:
408  void getYouBotMailboxMsg(YouBotSlaveMailboxMsg& message, TMCLCommandNumber msgType, const YouBotJointStorage& storage) const;
409 
410  void setYouBotMailboxMsg(const YouBotSlaveMailboxMsg& message, const YouBotJointStorage& storage);
411 
412  std::string getName() const {return this->name;};
413 
414  ParameterType getType() const {return this->parameterType;};
415 
416  unsigned int upperLimit;
417 
418  unsigned int lowerLimit;
419 
420  unsigned int value;
421 
422  std::string name;
423 
425 
426 };
431 friend class YouBotJoint;
432  public:
434 
435  virtual ~ActualMotorDriverTemperature();
436 
437  void getParameter(quantity<celsius::temperature>& parameter) const;
438 
439  void toString(std::string& value);
440 
441 
442  private:
443  void getYouBotMailboxMsg(YouBotSlaveMailboxMsg& message, TMCLCommandNumber msgType, const YouBotJointStorage& storage) const;
444 
445  void setYouBotMailboxMsg(const YouBotSlaveMailboxMsg& message, const YouBotJointStorage& storage);
446 
447  std::string getName() const {return this->name;};
448 
449  ParameterType getType() const {return this->parameterType;};
450 
451  quantity<celsius::temperature> value;
452 
453  std::string name;
454 
456 
457 };
462 friend class YouBotJoint;
463  public:
465 
466  virtual ~ActualModuleSupplyCurrent();
467 
468  void getParameter(quantity<si::current>& parameter) const;
469 
470  void toString(std::string& value);
471 
472 
473  private:
474  void getYouBotMailboxMsg(YouBotSlaveMailboxMsg& message, TMCLCommandNumber msgType, const YouBotJointStorage& storage) const;
475 
476  void setYouBotMailboxMsg(const YouBotSlaveMailboxMsg& message, const YouBotJointStorage& storage);
477 
478  std::string getName() const {return this->name;};
479 
480  ParameterType getType() const {return this->parameterType;};
481 
482  quantity<si::current> value;
483 
484  std::string name;
485 
487 
488 };
489 
490 } // namespace youbot
491 #endif
quantity< si::angular_velocity > value
quantity< si::angular_velocity > value
virtual ParameterType getType() const =0
Sum of errors of current PID regulator.
Get actual supply current of the module.
The actual speed of the velocity ramp used for positioning and velocity mode.
Sums of errors of PID position regulator.
virtual void setYouBotMailboxMsg(const YouBotSlaveMailboxMsg &message, const YouBotJointStorage &storage)=0
quantity< si::angular_velocity > value
virtual void toString(std::string &value)=0
quantity< electric_potential > value
virtual void getYouBotMailboxMsg(YouBotSlaveMailboxMsg &message, TMCLCommandNumber msgType, const YouBotJointStorage &storage) const =0
EtherCAT mailbox message of the youBot slaves.
Actual error of PID velocity regulator.
std::string getName() const
abstract joint parameter
Actual temperature of the motor driver.
Actual error of PID position regulator.
Sums of Errors of PID velocity regulator.
virtual std::string getName() const =0
abstract youBot joint parameter which can be read only
Stores YouBotJoint informations which are needed in the driver.
Actual sum of the I2t monitor.
Actual error of current PID regulator.


youbot_driver
Author(s): Jan Paulus
autogenerated on Mon Jun 10 2019 15:46:26