const uint8_t confidence_threshold_ = 0;
const double distance_threshold_ = 80;
+ const string bobbycar_stop = "s";
+ const string bobbycar_forward = "f";
+ const string bobbycar_left = "l";
+ const string bobbycar_right = "r";
+ const string bobbycar_backward = "b";
+
+ uint8_t bobbycar_reversing = 254;
+ royale::Vector<royale::String> boobycar_reversing_script ={"s","b","b","b","r","r","r","r","r","r","b","b"};
+
public :
void naiveObstacleAvoidanceDemo()
{
+ if (bobbycar_reversing<boobycar_reversing_script.size()) {
+ std::cout << boobycar_reversing_script.at(bobbycar_reversing++) << std::endl;
+ return;
+ }
+
+
bool free_paths[num_dist_columns_];
if (naiveIsObstaclePresent(free_paths))
{
assert(num_dist_columns_ == 4);
if (free_paths[1] && free_paths[2])
{
- std::cout << "GOSTRAIGHT" << std::endl;
+ //std::cout << "GOSTRAIGHT" << std::endl;
+ std::cout << bobbycar_forward << std::endl;
} else if (free_paths[0])
{
- std::cout << "GOLEFT" << std::endl;
+ std::cout << bobbycar_left << std::endl;
+ // std::cout << "GOLEFT" << std::endl;
} else if (free_paths[3])
{
- std::cout << "GORIGHT" << std::endl;
+ // std::cout << "GORIGHT" << std::endl;
+ std::cout << bobbycar_right << std::endl;
} else {
- std::cout << "STOP" << std::endl;
+ // std::cout << "STOP" << std::endl;
+ std::cout << bobbycar_stop << std::endl;
+ bobbycar_reversing = 0;
}
+ } else {
+ std::cout << bobbycar_forward << std::endl;
}
}
{
// if no argument was given try to open the first connected camera
royale::Vector<royale::String> camlist (manager.getConnectedCameraList());
- cout << "Detected " << camlist.size() << " camera(s)." << endl;
+ //cout << "Detected " << camlist.size() << " camera(s)." << endl;
if (!camlist.empty())
{
// set an operation mode
- if (cameraDevice->setUseCase ("MODE_5_45FPS_500") != royale::CameraStatus::SUCCESS)
+ // if (cameraDevice->setUseCase ("MODE_5_45FPS_500") != royale::CameraStatus::SUCCESS)
+ // if (cameraDevice->setUseCase ("MODE_9_10FPS_1000") != royale::CameraStatus::SUCCESS)
+ if (cameraDevice->setUseCase ("MODE_9_5FPS_2000") != royale::CameraStatus::SUCCESS)
{
cerr << "Error setting use case" << endl;
return 1;