AUV-Coop-Assembly
Master Thesis for Robotics Engineering. Cooperative peg-in-hole assembly with two underwater vehicles guided by vision
|
The Controller class is responsabile of 1) taking matrices and giving them to Tasks classes, so they can compute their activations, references, jacobians, etc matrices 2) After all tasks have setted matrices, it executes the icat algorithm and return the yDot to the caller. More...
#include <controller.h>
Public Member Functions | |
Controller (std::string robotName) | |
Controller::Controller constructor. More... | |
int | updateMultipleTasksMatrices (std::vector< Task * > tasks, struct Infos *const robInfo) |
Controller::updateAllTaskMatrices This function calls all the updateMatrices of each task. More... | |
int | updateSingleTaskMatrices (Task *task, struct Infos *const robInfo) |
Controller::updateSingleTaskMatrices This function calls the updateMatrices for a single task. More... | |
std::vector< double > | execAlgorithm (std::vector< Task * > tasks) |
Controller::execAlgorithm this function calls the step of the algorithm modifying (in the for) each time the projection matrix Q and command vector yDot. The function call equalityIcat or inequalityIcat according to the type of task. More... | |
int | resetAllAlgosFlag (std::vector< Task * > tasks) |
Controller::resetAllAlgosFlag Flag_W Mu_W Flag_G Mu_G must be resetted before each TPIK. More... | |
int | resetAllUpdatedFlags (std::vector< Task * > tasks) |
Controller::resetAllUpdatedFlags to be called at the end of the control loop, so next loop all matrices are updated (because robot moved) More... | |
The Controller class is responsabile of 1) taking matrices and giving them to Tasks classes, so they can compute their activations, references, jacobians, etc matrices 2) After all tasks have setted matrices, it executes the icat algorithm and return the yDot to the caller.
Definition at line 20 of file controller.h.
Controller::Controller | ( | std::string | robotName | ) |
Controller::Controller constructor.
name | of the robot (for printing things) |
Definition at line 7 of file controller.cpp.
std::vector< double > Controller::execAlgorithm | ( | std::vector< Task * > | tasks | ) |
Controller::execAlgorithm this function calls the step of the algorithm modifying (in the for) each time the projection matrix Q and command vector yDot. The function call equalityIcat or inequalityIcat according to the type of task.
Definition at line 101 of file controller.cpp.
int Controller::resetAllAlgosFlag | ( | std::vector< Task * > | tasks | ) |
Controller::resetAllAlgosFlag Flag_W Mu_W Flag_G Mu_G must be resetted before each TPIK.
Definition at line 79 of file controller.cpp.
int Controller::resetAllUpdatedFlags | ( | std::vector< Task * > | tasks | ) |
Controller::resetAllUpdatedFlags to be called at the end of the control loop, so next loop all matrices are updated (because robot moved)
tasks | list of task to reset |
Definition at line 63 of file controller.cpp.
int Controller::updateMultipleTasksMatrices | ( | std::vector< Task * > | tasks, |
struct Infos *const | robInfo | ||
) |
Controller::updateAllTaskMatrices This function calls all the updateMatrices of each task.
tasks | the vector of tasks pointer |
robInfo | the struct where all infos needed by all the tasks are |
Definition at line 20 of file controller.cpp.
Controller::updateSingleTaskMatrices This function calls the updateMatrices for a single task.
*task | pointer to the task that must be updated |
robInfo | the struct where all infos needed by all the tasks are |
Definition at line 43 of file controller.cpp.