Fawkes API
Fawkes Development Version
|
Abstract class for a Neuronics Katana controller. More...
#include <>>
Public Member Functions | |
virtual | ~KatanaController () |
Virtual empty destructor. More... | |
virtual void | init ()=0 |
Initialize controller. More... | |
virtual void | set_max_velocity (unsigned int vel)=0 |
Set maximum velocity. More... | |
virtual bool | final ()=0 |
Check if movement is final. More... | |
virtual bool | joint_angles ()=0 |
Check if controller provides joint angle values. More... | |
virtual bool | joint_encoders ()=0 |
Check if controller provides joint encoder values. More... | |
virtual void | calibrate ()=0 |
Calibrate the arm. More... | |
virtual void | turn_on ()=0 |
Turn on arm/motors. More... | |
virtual void | turn_off ()=0 |
Turn off arm/motors. More... | |
virtual void | stop ()=0 |
Stop movement immediately. More... | |
virtual void | read_coordinates (bool refresh=false)=0 |
Store current coordinates of endeeffctor. More... | |
virtual void | read_motor_data ()=0 |
Read motor data of currently active joints from device into controller libray. More... | |
virtual void | read_sensor_data ()=0 |
Read all sensor data from device into controller libray. More... | |
virtual void | gripper_open (bool blocking=false)=0 |
Open Gripper. More... | |
virtual void | gripper_close (bool blocking=false)=0 |
Close Gripper. More... | |
virtual void | move_to (float x, float y, float z, float phi, float theta, float psi, bool blocking=false)=0 |
Move endeffctor to given coordinates. More... | |
virtual void | move_to (std::vector< int > encoders, bool blocking=false)=0 |
Move joints to encoder values. More... | |
virtual void | move_to (std::vector< float > angles, bool blocking=false)=0 |
Move joints to angle values. More... | |
virtual void | move_motor_to (unsigned short id, int enc, bool blocking=false)=0 |
Move single joint/motor to encoder value. More... | |
virtual void | move_motor_to (unsigned short id, float angle, bool blocking=false)=0 |
Move single joint/motor to angle value. More... | |
virtual void | move_motor_by (unsigned short id, int enc, bool blocking=false)=0 |
Move single joint/motor by encoder value (i.e. More... | |
virtual void | move_motor_by (unsigned short id, float angle, bool blocking=false)=0 |
Move single joint/motor by angle value (i.e. More... | |
virtual double | x ()=0 |
Get x-coordinate of latest endeffector position. More... | |
virtual double | y ()=0 |
Get y-coordinate of latest endeffector position. More... | |
virtual double | z ()=0 |
Get z-coordinate of latest endeffector position. More... | |
virtual double | phi ()=0 |
Get x-coordinate of latest endeffector position. More... | |
virtual double | theta ()=0 |
Get theta-rotation of latest endeffector orientation. More... | |
virtual double | psi ()=0 |
Get psi-rotation of latest endeffector orientation. More... | |
virtual void | get_sensors (std::vector< int > &to, bool refresh=false)=0 |
Get sensor values. More... | |
virtual void | get_encoders (std::vector< int > &to, bool refresh=false)=0 |
Get encoder values of joints/motors. More... | |
virtual void | get_angles (std::vector< float > &to, bool refresh=false)=0 |
Get angle values of joints/motors. More... | |
Abstract class for a Neuronics Katana controller.
Definition at line 37 of file controller.h.
|
inlinevirtual |
Virtual empty destructor.
Definition at line 41 of file controller.h.
References calibrate(), get_angles(), get_encoders(), get_sensors(), gripper_close(), gripper_open(), init(), joint_angles(), joint_encoders(), move_motor_by(), move_motor_to(), move_to(), phi(), psi(), read_coordinates(), read_motor_data(), read_sensor_data(), set_max_velocity(), stop(), theta(), turn_off(), turn_on(), x(), y(), and z().
|
pure virtual |
Calibrate the arm.
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaCalibrationThread::once(), and ~KatanaController().
|
pure virtual |
Check if movement is final.
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaMotorControlThread::once(), KatanaGotoThread::once(), and KatanaGripperThread::once().
|
pure virtual |
Get angle values of joints/motors.
to | vector to be filled with angle values for active joints. |
refresh | refresh joints/motors data (call 'read_motor_data')? |
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaActThread::update_sensor_values(), and ~KatanaController().
|
pure virtual |
Get encoder values of joints/motors.
to | vector to be filled with encoder values for active joints. |
refresh | refresh joints/motors data (call 'read_motor_data')? |
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaActThread::update_sensor_values(), and ~KatanaController().
|
pure virtual |
Get sensor values.
to | vector to be filled with all available sensor values. |
refresh | refresh sensor data (call 'read_sensor_data')? |
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaActThread::update_sensor_values(), and ~KatanaController().
|
pure virtual |
Close Gripper.
blocking | Is this a blocking call? |
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaGripperThread::once(), and ~KatanaController().
|
pure virtual |
Open Gripper.
blocking | Is this a blocking call? |
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaGripperThread::once(), and ~KatanaController().
|
pure virtual |
Initialize controller.
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaActThread::init(), and ~KatanaController().
|
pure virtual |
Check if controller provides joint angle values.
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaActThread::update_sensor_values(), and ~KatanaController().
|
pure virtual |
Check if controller provides joint encoder values.
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaActThread::update_sensor_values(), and ~KatanaController().
|
pure virtual |
Move single joint/motor by encoder value (i.e.
increase/decrease).
id | id of the joint/motor. |
enc | increase/decrease by encoder value. |
blocking | Is this a blocking call? |
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaMotorControlThread::once(), and ~KatanaController().
|
pure virtual |
Move single joint/motor by angle value (i.e.
increase/decrease).
id | id of the joint/motor. |
angle | increase/decrease by angle value. |
blocking | Is this a blocking call? |
Implemented in fawkes::KatanaControllerKni.
|
pure virtual |
Move single joint/motor to encoder value.
id | id of the joint/motor. |
enc | target encoder value. |
blocking | Is this a blocking call? |
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaMotorControlThread::once(), and ~KatanaController().
|
pure virtual |
Move single joint/motor to angle value.
id | id of the joint/motor. |
angle | target angle value. |
blocking | Is this a blocking call? |
Implemented in fawkes::KatanaControllerKni.
|
pure virtual |
Move endeffctor to given coordinates.
x | translation on x-axis. |
y | translation on y-axis. |
z | translation on z-axis. |
phi | 1st rotation of euler-ZXZ-rotation |
theta | 2nd rotation of euler-ZXZ-rotation |
psi | 3rd rotation of euler-ZXZ-rotation |
blocking | Is this a blocking call? |
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaGotoThread::once(), and ~KatanaController().
|
pure virtual |
Move joints to encoder values.
encoders | vector containing encoder values for all joints. |
blocking | Is this a blocking call? |
Implemented in fawkes::KatanaControllerKni.
|
pure virtual |
Move joints to angle values.
angles | vector containing angle values for all joints. |
blocking | Is this a blocking call? |
Implemented in fawkes::KatanaControllerKni.
|
pure virtual |
Get x-coordinate of latest endeffector position.
Call 'read_coordinates()' to read latest position.
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaActThread::once(), and ~KatanaController().
|
pure virtual |
Get psi-rotation of latest endeffector orientation.
Call 'read_coordinates()' to read latest orientation.
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaActThread::once(), and ~KatanaController().
|
pure virtual |
Store current coordinates of endeeffctor.
refresh | fetch new joint data from device (update data in controller library). No need to set to 'true' if 'read_motor_data()' is being called regularly. |
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaActThread::once(), and ~KatanaController().
|
pure virtual |
Read motor data of currently active joints from device into controller libray.
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaMotorControlThread::once(), KatanaGotoThread::once(), KatanaGripperThread::once(), and ~KatanaController().
|
pure virtual |
Read all sensor data from device into controller libray.
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaSensorAcquisitionThread::loop(), KatanaMotorControlThread::once(), KatanaGotoThread::once(), KatanaGripperThread::once(), and ~KatanaController().
|
pure virtual |
Set maximum velocity.
vel | velocity |
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaActThread::init(), KatanaActThread::loop(), and ~KatanaController().
|
pure virtual |
Stop movement immediately.
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaActThread::finalize(), KatanaActThread::update_sensor_values(), and ~KatanaController().
|
pure virtual |
Get theta-rotation of latest endeffector orientation.
Call 'read_coordinates()' to read latest orientation.
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaActThread::once(), and ~KatanaController().
|
pure virtual |
Turn off arm/motors.
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaActThread::loop(), and ~KatanaController().
|
pure virtual |
Turn on arm/motors.
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaActThread::loop(), and ~KatanaController().
|
pure virtual |
Get x-coordinate of latest endeffector position.
Call 'read_coordinates()' to read latest position.
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaActThread::once(), and ~KatanaController().
|
pure virtual |
Get y-coordinate of latest endeffector position.
Call 'read_coordinates()' to read latest position.
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaActThread::once(), and ~KatanaController().
|
pure virtual |
Get z-coordinate of latest endeffector position.
Call 'read_coordinates()' to read latest position.
Implemented in fawkes::KatanaControllerKni.
Referenced by KatanaActThread::once(), and ~KatanaController().