AUV-Coop-Assembly
Master Thesis for Robotics Engineering. Cooperative peg-in-hole assembly with two underwater vehicles guided by vision
missionManagerClass.h
1 #ifndef MISSIONMANAGER_H
2 #define MISSIONMANAGER_H
3 
4 #include <iostream>
5 #include <string>
6 
7 #include <Eigen/Core>
8 #include <ros/ros.h>
9 //#include <boost/chrono.hpp>
10 //#include <boost/thread/thread.hpp>
11 #include <boost/asio.hpp>
12 #include <boost/date_time/posix_time/posix_time.hpp>
13 
14 #include "../support/header/conversions.h"
15 #include "../support/header/defines.h"
16 #include "../support/header/prints.h"
17 
18 #include "../helper/header/infos.h"
19 #include "../helper/header/jacobianHelper.h"
20 #include "../helper/header/kdlHelper.h"
21 
22 
23 #include "../controller/header/controller.h"
24 #include "../robotInterface/header/robotInterface.h"
25 
26 
27 #include "../tasks/header/lastTask.h"
28 #include "../tasks/header/vehicleReachTask.h"
29 #include "../tasks/header/endEffectorReachTask.h"
30 #include "../tasks/header/jointLimitTask.h"
31 #include "../tasks/header/horizontalAttitudeTask.h"
32 #include "../tasks/header/fovEEToToolTask.h"
33 #include "../tasks/header/vehicleNullVelTask.h"
34 #include "../tasks/header/vehicleConstrainVelTask.h"
35 #include "../tasks/header/obstacleAvoidVehicleTask.h"
36 #include "../tasks/header/obstacleAvoidEETask.h"
37 
38 int main(int, char**);
39 
41 {
42 public:
43  MissionManager(int argc, char **argv);
44  int execute();
45 
46 private:
47  std::string robotName;
48  Infos robInfo;
49  robotInterface robotInterface;
50  KDLHelper kdlHelper;
51  Controller controller;
52  std::vector<Task*> tasks;
53  std::string pathLog;
54 
56  void setGoals();
57  void initrobotInterface();
58  void initKdlHelper();
59  void setInitialState();
60  void setKdl4Tool();
61  void initController();
62  void controlLoop(boost::asio::io_service io, double ms);
63 
65  void setTaskListInit();
66  void clearTaskList();
67  void createLogFolders();
68 };
69 
70 
71 
72 
73 #endif // MISSIONMANAGER_H
The Controller class is responsabile of 1) taking matrices and giving them to Tasks classes...
Definition: controller.h:20
MissionManager(int argc, char **argv)
DEBUG.
Definition: infos.h:117