Compare commits

...

2 Commits

Author SHA1 Message Date
60e19a8968 Adjust telegramm 2023-02-03 20:38:52 +01:00
a929bbebed missing , 2023-02-02 09:25:34 +01:00

View File

@ -25,12 +25,10 @@ void LFR_StateMachine::sanitize (string& s) const
bool LFR_StateMachine::checkStringValidity (const std::vector<std::string>& s) const bool LFR_StateMachine::checkStringValidity (const std::vector<std::string>& s) const
{ {
if(s.size() != 5)
{
return false;
}
try try
{
int i = stoi(s[0]);
if(i == 0 && s.size() == 5)
{ {
for(int i = 0; i < 4; i ++) for(int i = 0; i < 4; i ++)
{ {
@ -39,8 +37,12 @@ bool LFR_StateMachine::checkStringValidity (const std::vector<std::string>& s) c
return false; return false;
} }
} }
int i = stoi(s[4]); }
if(i != 0 && i != 1) else if(i == 1)
{
return true;
}
else
{ {
return false; return false;
} }
@ -59,12 +61,12 @@ void LFR_StateMachine::parseString(string s)
return; return;
} }
double wheels[4] = {0.0, 0.0, 0.0, 0.0}; double wheels[4] = {0.0, 0.0, 0.0, 0.0};
int mode = std::stoi(splitStr[4]); int mode = std::stoi(splitStr[0]);
for(int i = 0; i < 3; i++) if(mode == 0) {
for(int i = 1; i < 4; i++)
{ {
wheels[i] = std::stod(splitStr[i]); wheels[i] = std::stod(splitStr[i]);
} }
if(mode == 0) {
setState(State::Manual::getInstance()); setState(State::Manual::getInstance());
uartCommunicator.sendTelegram(wheels[0], wheels[1], wheels[2], wheels[3]); uartCommunicator.sendTelegram(wheels[0], wheels[1], wheels[2], wheels[3]);
} }
@ -73,7 +75,7 @@ void LFR_StateMachine::parseString(string s)
} }
LFR_StateMachine::LFR_StateMachine(): LFR_StateMachine::LFR_StateMachine():
autonomousMode(videoHeight, videoWidth, thresholdBinary, gaussKernelSize, maxSpeed [&](std::exception const &ex) autonomousMode(videoHeight, videoWidth, thresholdBinary, gaussKernelSize, maxSpeed, [&](std::exception const &ex)
{ {
std::unique_lock<std::mutex> lock(mutex); std::unique_lock<std::mutex> lock(mutex);
std::cerr<<"camera exception:"<<ex.what()<<std::endl; std::cerr<<"camera exception:"<<ex.what()<<std::endl;