SerRelayBoard.h
Go to the documentation of this file.
1 /*
2  * Copyright 2017 Fraunhofer Institute for Manufacturing Engineering and Automation (IPA)
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9 
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 
18 #ifndef SerRelayBoard_INCLUDEDEF_H
19 #define SerRelayBoard_INCLUDEDEF_H
20 
21 //-----------------------------------------------
23 #include <cob_relayboard/Mutex.h>
25 
26 //-----------------------------------------------
27 
33 {
34 public:
35 
36  SerRelayBoard(std::string ComPort, int ProtocolVersion = 1);
37 
39 
40  // Main control functions
41  bool init();
42  bool reset();
43  bool shutdown();
44 
45  int evalRxBuffer(); //needs to be calles to read new data from relayboard
46  int sendRequest(); //sends collected data and requests response
47 
48  //Services by relayboard
49  int setDigOut(int iChannel, bool bOn);
50  int getAnalogIn(int* piAnalogIn);
51  int getDigIn();
52  bool isEMStop();
53  bool isScannerStop();
55  {
57  }
59  {
60  return m_iChargeCurrent;
61  }
62 
63 
65  {
66  NO_ERROR = 0,
70  NO_MESSAGES = 4, //for a long time, no message have been received, check com port!
72  };
73 
75  {
86  };
87 
89  {
96  };
97 
98  enum TypeLCD
99  {
103  };
104 
105 protected:
106 
107 
108  std::string m_sNumComPort;
109 
110  void txCharArray();
111  void rxCharArray();
112 
113  void convDataToSendMsg(unsigned char cMsg[]);
114  bool convRecMsgToData(unsigned char cMsg[]);
115 
117 
120 
121  unsigned char m_cTextDisplay[60];
122 
123  //relayboard 1.4:
137 
138  //-----------------------
139  // send data
140 
141  // RelayBoard
144 
145  // IOBoard
147 
148  // MotCtrlBoards
151 
152  // USBoard
154 
155  //-----------------------
156  // rec data
163 
164  int m_iDigIn;
167 
169 
171 };
172 
173 
174 //-----------------------------------------------
175 #endif
SerRelayBoard::m_cTextDisplay
unsigned char m_cTextDisplay[60]
Definition: SerRelayBoard.h:121
SerRelayBoard::m_Mutex
Mutex m_Mutex
Definition: SerRelayBoard.h:116
SerRelayBoard::m_iIOBoardDigOut
int m_iIOBoardDigOut
Definition: SerRelayBoard.h:146
SerRelayBoard::m_iRelBoardStatus
int m_iRelBoardStatus
Definition: SerRelayBoard.h:157
SerRelayBoard::m_iVelMeasMotRearRightEncS
int m_iVelMeasMotRearRightEncS
Definition: SerRelayBoard.h:129
SerRelayBoard::~SerRelayBoard
~SerRelayBoard()
Definition: SerRelayBoard.cpp:70
SerRelayBoard::m_iProtocolVersion
int m_iProtocolVersion
Definition: SerRelayBoard.h:165
SerRelayBoard::RELAY_BOARD_1_4
@ RELAY_BOARD_1_4
Definition: SerRelayBoard.h:102
SerRelayBoard::TypeLCD
TypeLCD
Definition: SerRelayBoard.h:98
SerRelayBoard::m_iDigIn
int m_iDigIn
Definition: SerRelayBoard.h:164
SerRelayBoard::evalRxBuffer
int evalRxBuffer()
Definition: SerRelayBoard.cpp:76
SerRelayBoard::NOT_INITIALIZED
@ NOT_INITIALIZED
Definition: SerRelayBoard.h:67
SerRelayBoard::m_cSoftEMStop
char m_cSoftEMStop
Definition: SerRelayBoard.h:126
SerRelayBoard::CMD_SET_RELAY2
@ CMD_SET_RELAY2
Definition: SerRelayBoard.h:80
SerRelayBoard::getBatteryVoltage
int getBatteryVoltage()
Definition: SerRelayBoard.h:54
SerialIO
Definition: SerialIO.h:29
SerRelayBoard::CMD_SET_RELAY4
@ CMD_SET_RELAY4
Definition: SerRelayBoard.h:82
SerRelayBoard::m_iPosMeasMotRearRightEnc
int m_iPosMeasMotRearRightEnc
Definition: SerRelayBoard.h:128
SerRelayBoard::LCD_20CHAR_TEXT
@ LCD_20CHAR_TEXT
Definition: SerRelayBoard.h:100
SerRelayBoard::GENERAL_SENDING_ERROR
@ GENERAL_SENDING_ERROR
Definition: SerRelayBoard.h:68
SerRelayBoard::m_iConfigRelayBoard
int m_iConfigRelayBoard
Definition: SerRelayBoard.h:142
SerRelayBoard
Definition: SerRelayBoard.h:32
SerRelayBoard::RelBoardConfig
RelBoardConfig
Definition: SerRelayBoard.h:88
SerRelayBoard::m_iRelBoardBattVoltage
int m_iRelBoardBattVoltage
Definition: SerRelayBoard.h:159
SerRelayBoard::m_iVelCmdMotRearLeftEncS
int m_iVelCmdMotRearLeftEncS
Definition: SerRelayBoard.h:125
SerRelayBoard::m_bComInit
bool m_bComInit
Definition: SerRelayBoard.h:170
SerRelayBoard::CONFIG_HAS_RADARBOARD1
@ CONFIG_HAS_RADARBOARD1
Definition: SerRelayBoard.h:93
SerRelayBoard::m_SerIO
SerialIO m_SerIO
Definition: SerRelayBoard.h:168
SerRelayBoard::m_iCmdRelayBoard
int m_iCmdRelayBoard
Definition: SerRelayBoard.h:143
SerRelayBoard::m_iMotRearRightStatus
int m_iMotRearRightStatus
Definition: SerRelayBoard.h:133
SerRelayBoard::m_dLastPosRearRight
double m_dLastPosRearRight
Definition: SerRelayBoard.h:135
SerRelayBoard::CMD_QUICK_STOP
@ CMD_QUICK_STOP
Definition: SerRelayBoard.h:78
SerRelayBoard::RelBoardReturns
RelBoardReturns
Definition: SerRelayBoard.h:64
SerRelayBoard::m_iChargeCurrent
int m_iChargeCurrent
Definition: SerRelayBoard.h:158
SerRelayBoard::m_iNumBytesSend
int m_iNumBytesSend
Definition: SerRelayBoard.h:118
SerRelayBoard::getChargeCurrent
int getChargeCurrent()
Definition: SerRelayBoard.h:58
SerRelayBoard::txCharArray
void txCharArray()
SerRelayBoard::NO_MESSAGES
@ NO_MESSAGES
Definition: SerRelayBoard.h:70
SerRelayBoard::CMD_ZERO_GYRO
@ CMD_ZERO_GYRO
Definition: SerRelayBoard.h:85
SerRelayBoard::m_iVelCmdMotLeftEncS
int m_iVelCmdMotLeftEncS
Definition: SerRelayBoard.h:150
SerRelayBoard::CONFIG_HAS_DRIVES
@ CONFIG_HAS_DRIVES
Definition: SerRelayBoard.h:95
SerRelayBoard::m_iTypeLCD
int m_iTypeLCD
Definition: SerRelayBoard.h:119
SerRelayBoard::CMD_SET_CHARGE_RELAY
@ CMD_SET_CHARGE_RELAY
Definition: SerRelayBoard.h:76
SerRelayBoard::convDataToSendMsg
void convDataToSendMsg(unsigned char cMsg[])
Definition: SerRelayBoard.cpp:312
SerRelayBoard::CMD_SET_RELAY3
@ CMD_SET_RELAY3
Definition: SerRelayBoard.h:81
SerRelayBoard::convRecMsgToData
bool convRecMsgToData(unsigned char cMsg[])
Definition: SerRelayBoard.cpp:447
SerRelayBoard::getDigIn
int getDigIn()
Definition: SerRelayBoard.cpp:307
SerRelayBoard::m_dLastPosRearLeft
double m_dLastPosRearLeft
Definition: SerRelayBoard.h:136
SerRelayBoard::SerRelayBoard
SerRelayBoard(std::string ComPort, int ProtocolVersion=1)
Definition: SerRelayBoard.cpp:43
Mutex
Definition: Mutex.h:26
SerRelayBoard::CONFIG_HAS_GYROBOARD
@ CONFIG_HAS_GYROBOARD
Definition: SerRelayBoard.h:92
SerRelayBoard::CONFIG_HAS_USBOARD
@ CONFIG_HAS_USBOARD
Definition: SerRelayBoard.h:91
SerRelayBoard::isScannerStop
bool isScannerStop()
Definition: SerRelayBoard.cpp:194
SerRelayBoard::CMD_SET_RELAY5
@ CMD_SET_RELAY5
Definition: SerRelayBoard.h:83
SerRelayBoard::rxCharArray
void rxCharArray()
SerRelayBoard::m_cDebugRearLeft
char m_cDebugRearLeft[4]
Definition: SerRelayBoard.h:131
SerRelayBoard::CHECKSUM_ERROR
@ CHECKSUM_ERROR
Definition: SerRelayBoard.h:71
SerRelayBoard::TOO_LESS_BYTES_IN_QUEUE
@ TOO_LESS_BYTES_IN_QUEUE
Definition: SerRelayBoard.h:69
SerRelayBoard::RelBoardCmd
RelBoardCmd
Definition: SerRelayBoard.h:74
SerRelayBoard::isEMStop
bool isEMStop()
Definition: SerRelayBoard.cpp:181
SerRelayBoard::m_cDebugRearRight
char m_cDebugRearRight[4]
Definition: SerRelayBoard.h:127
SerRelayBoard::reset
bool reset()
Definition: SerRelayBoard.cpp:159
Mutex.h
SerRelayBoard::m_NUM_BYTE_SEND
int m_NUM_BYTE_SEND
Definition: SerRelayBoard.h:166
SerRelayBoard::m_iRelBoardKeyPad
int m_iRelBoardKeyPad
Definition: SerRelayBoard.h:160
SerRelayBoard::m_iRelBoardTempSensor
int m_iRelBoardTempSensor
Definition: SerRelayBoard.h:162
SerRelayBoard::init
bool init()
Definition: SerRelayBoard.cpp:144
SerRelayBoard::NO_ERROR
@ NO_ERROR
Definition: SerRelayBoard.h:66
SerRelayBoard::getAnalogIn
int getAnalogIn(int *piAnalogIn)
Definition: SerRelayBoard.cpp:292
SerRelayBoard::m_iVelCmdMotRightEncS
int m_iVelCmdMotRightEncS
Definition: SerRelayBoard.h:149
SerRelayBoard::m_iUSBoardSensorActive
int m_iUSBoardSensorActive
Definition: SerRelayBoard.h:153
SerRelayBoard::m_iVelCmdMotRearRightEncS
int m_iVelCmdMotRearRightEncS
Definition: SerRelayBoard.h:124
SerRelayBoard::m_sNumComPort
std::string m_sNumComPort
Definition: SerRelayBoard.h:108
SerRelayBoard::LCD_60CHAR_TEXT
@ LCD_60CHAR_TEXT
Definition: SerRelayBoard.h:101
SerRelayBoard::setDigOut
int setDigOut(int iChannel, bool bOn)
Definition: SerRelayBoard.cpp:231
SerRelayBoard::CONFIG_HAS_IOBOARD
@ CONFIG_HAS_IOBOARD
Definition: SerRelayBoard.h:90
SerRelayBoard::m_iVelMeasMotRearLeftEncS
int m_iVelMeasMotRearLeftEncS
Definition: SerRelayBoard.h:132
SerRelayBoard::CMD_RESET_POS_CNT
@ CMD_RESET_POS_CNT
Definition: SerRelayBoard.h:77
SerRelayBoard::CMD_SET_RELAY1
@ CMD_SET_RELAY1
Definition: SerRelayBoard.h:79
SerRelayBoard::sendRequest
int sendRequest()
Definition: SerRelayBoard.cpp:207
SerRelayBoard::CONFIG_HAS_RADARBOARD2
@ CONFIG_HAS_RADARBOARD2
Definition: SerRelayBoard.h:94
SerRelayBoard::m_iRelBoardAnalogIn
int m_iRelBoardAnalogIn[4]
Definition: SerRelayBoard.h:161
SerRelayBoard::shutdown
bool shutdown()
Definition: SerRelayBoard.cpp:170
SerRelayBoard::CMD_SET_RELAY6
@ CMD_SET_RELAY6
Definition: SerRelayBoard.h:84
SerRelayBoard::m_iMotRearLeftStatus
int m_iMotRearLeftStatus
Definition: SerRelayBoard.h:134
SerialIO.h
CmdRelaisBoard.h
SerRelayBoard::m_iPosMeasMotRearLeftEnc
int m_iPosMeasMotRearLeftEnc
Definition: SerRelayBoard.h:130


cob_relayboard
Author(s): Christian Connette
autogenerated on Wed Nov 8 2023 03:47:44