Base_ptucontrol
[Ptucontrol]

This module handles rs232 low level communication with the PTU. More...

Collaboration diagram for Base_ptucontrol:

Data Structures

class  cPTU_Base
class  cPTU_Control
 Driver for Directed Perception Pan and Tilt units (PTU), model PTUD46. More...

Files

file  ptu_control.h
 

header file


Defines

#define FORPTUTOSTOP   -1
 Standart include. kde project default includes.
#define _PANTILTRESOLUTION_   0.0514285
 Value used to convert degrees to pulses for the functions PanToAngle(double Angle) TiltToAngle(double Angle) and PanTiltAngleSpeed(double PanAngle, double TiltAngle, unsigned short int PanSpeed,unsigned short int TiltSpeed).



#define DEBUG   0
#define FALSE   0
#define INT_REVERSED



#define SERIAL_CODE_VERSION   "LINUX v1.0d"
#define PORT_NOT_OPENED   -1
#define TRUE   1
#define FALSE   0
#define AWAIT_CHARSTREAM   -1
#define TIMEOUT_CHAR_READ   -1
portstream_fd openserial (char *portname)
char closeserial (portstream_fd)
char SerialBytesOut (portstream_fd, unsigned char *, int)
char SerialBytesIn (portstream_fd, unsigned char *, unsigned int, long)
char PeekByte (portstream_fd, unsigned char *)
char FlushInputBuffer (portstream_fd)
void do_delay (long)
char SerialStringOut (portstream_fd, unsigned char *)
char ReadSerialLine (portstream_fd, unsigned char *, long, int *)
char GetSignedShort (portstream_fd, signed short *, long)
char PutSignedShort (portstream_fd, signed short *)
char GetUnsignedShort (portstream_fd, unsigned short *, long)
char PutUnsignedShort (portstream_fd, unsigned short *)
char GetSignedLong (portstream_fd, signed long *, long)
char PutSignedLong (portstream_fd, signed long *)
typedef int portstream_fd



#define OPCODE_VERSION   "v1.09.12"
#define ASYNCHRONOUS_EVENT(char_val)   ( (char_val >= 220) && (char_val < 240) )
#define PAN_LIMIT_HIT   220
#define TILT_LIMIT_HIT   221
#define CABLE_DISCONNECT_DETECTED   222
#define PAN_POSITION_TRIGGER_HIT   223
#define TILT_POSITION_TRIGGER_HIT   224
#define PAN_SPEED_TRIGGER_HIT   225
#define TILT_SPEED_TRIGGER_HIT   226
#define PTU_HI_POWER   1
#define PTU_REG_POWER   2
#define PTU_LOW_POWER   3
#define PTU_OFF_POWER   4
#define PTU_INDEPENDENT_SPEED_CONTROL_MODE   1
#define PTU_PURE_VELOCITY_SPEED_CONTROL_MODE   2
#define PTU_OK   0
#define PTU_ILLEGAL_COMMAND   2
#define PTU_ILLEGAL_POSITION_ARGUMENT   3
#define PTU_ILLEGAL_SPEED_ARGUMENT   4
#define PTU_ACCEL_TABLE_EXCEEDED   5
#define PTU_DEFAULTS_EEPROM_FAULT   6
#define PTU_SAVED_DEFAULTS_CORRUPTED   7
#define PTU_LIMIT_HIT   8
#define PTU_CABLE_DISCONNECTED   9
#define PTU_ILLEGAL_UNIT_ID   10
#define PTU_ILLEGAL_POWER_MODE   11
#define PTU_RESET_FAILED   12
#define PTU_ILLEGAL_PARAMETERS   13
#define PTU_DUART_ERROR   14
#define GCU_ERROR   15
#define PTU_ERROR   16
#define NOT_SUPPORTED_BY_THIS_FIRMWARE_VERSION   17
#define PTU_TILT_VANE_OUT_OF_RANGE_ERROR   19
#define CHECKSUM_ERROR   20
#define INTERACTIVE_MAIN_MENU   1
#define DISPLAY_PAN_MOTOR_COMMANDS   2
#define DISPLAY_TILT_MOTOR_COMMANDS   3
#define DISPLAY_MENU_OPTIONS   4
#define ILLEGAL_COMMAND_WITH_DELIMITER   5
#define ASCII_COMMAND_WITH_NO_BINARY_EQUIV   6
#define ILLEGAL_OPCODE   7
#define ILLEGAL_ARGUMENT   8
#define OPCODE_BASE   129
#define MAX_OPCODE   235
#define NUM_OPCODES   (MAX_OPCODE - OPCODE_BASE + 1)
#define PAN_SET_ABS_POS   129
#define TILT_SET_ABS_POS   130
#define PAN_SET_REL_POS   131
#define TILT_SET_REL_POS   132
#define PAN_TILT_SET_ABS_POS   240
#define PAN_TILT_GET_ABS_POS   241
#define PAN_SET_REL_SPEED   133
#define TILT_SET_REL_SPEED   134
#define PAN_SET_ABS_SPEED   135
#define TILT_SET_ABS_SPEED   136
#define LAST_SIGNED_2BYTE_INT_OPCODE   136
#define PAN_SET_BASE_SPEED   137
#define TILT_SET_BASE_SPEED   138
#define PAN_SET_UPPER_SPEED_LIMIT   139
#define TILT_SET_UPPER_SPEED_LIMIT   140
#define PAN_SET_LOWER_SPEED_LIMIT   141
#define TILT_SET_LOWER_SPEED_LIMIT   142
#define SET_UNIT_ID   143
#define SELECT_UNIT_ID   144
#define LAST_2BYTE_INT_OPCODE   144
#define PAN_CURRENT_POS_QUERY   145
#define TILT_CURRENT_POS_QUERY   146
#define PAN_DESIRED_POS_QUERY   147
#define TILT_DESIRED_POS_QUERY   148
#define PAN_MIN_POSITION_QUERY   149
#define TILT_MIN_POSITION_QUERY   150
#define PAN_MAX_POSITION_QUERY   151
#define TILT_MAX_POSITION_QUERY   152
#define PAN_CURRENT_SPEED_QUERY   153
#define TILT_CURRENT_SPEED_QUERY   154
#define PAN_DESIRED_SPEED_QUERY   155
#define TILT_DESIRED_SPEED_QUERY   156
#define PAN_BASE_SPEED_QUERY   157
#define TILT_BASE_SPEED_QUERY   158
#define PAN_UPPER_SPEED_LIMIT_QUERY   159
#define TILT_UPPER_SPEED_LIMIT_QUERY   160
#define PAN_LOWER_SPEED_LIMIT_QUERY   161
#define TILT_LOWER_SPEED_LIMIT_QUERY   162
#define PAN_ACCEL_QUERY   163
#define TILT_ACCEL_QUERY   164
#define PAN_RESOLUTION_QUERY   165
#define TILT_RESOLUTION_QUERY   166
#define AWAIT_COMMAND_COMPLETION   167
#define HALT   168
#define HALT_PAN   169
#define HALT_TILT   170
#define POSITION_LIMITS_QUERY   171
#define ENABLE_POSITION_LIMITS   172
#define DISABLE_POSITION_LIMITS   173
#define SET_IMMEDIATE_COMMAND_MODE   174
#define SET_SLAVED_COMMAND_MODE   175
#define UNIT_RESET   176
#define UNIT_RESET_ON_POWERUP   177
#define UNIT_RESET_ON_POWERUP_DISABLED   178
#define UNIT_ID_QUERY   179
#define ECHO_QUERY   180
#define ENABLE_ECHO   181
#define DISABLE_ECHO   182
#define SAVE_DEFAULTS   183
#define RESTORE_SAVED_DEFAULTS   184
#define RESTORE_FACTORY_DEFAULTS   185
#define PAN_HOLD_POWER_QUERY   186
#define TILT_HOLD_POWER_QUERY   187
#define PAN_MOVE_POWER_QUERY   188
#define TILT_MOVE_POWER_QUERY   189
#define VERBOSE_QUERY   190
#define SET_VERBOSE_ASCII_ON   191
#define SET_VERBOSE_ASCII_OFF   192
#define JOYSTICK_QUERY   193
#define ENABLE_JOYSTICK   194
#define DISABLE_JOYSTICK   195
#define FIRMWARE_VERSION_QUERY   196
#define LAST_0ARG_OPCODE   196
#define PAN_SET_HOLD_POWER   197
#define TILT_SET_HOLD_POWER   198
#define PAN_SET_MOVE_POWER   199
#define TILT_SET_MOVE_POWER   200
#define LAST_1BYTE_ARG_OPCODE   200
#define PAN_SET_ACCEL   201
#define TILT_SET_ACCEL   202
#define LAST_4BYTE_ARG_OPCODE   202
#define SPECIAL_OPCODE   203
#define QUERY_SPEED_CONTROL_MODE   203
#define SET_INDEPENDENT_CONTROL_MODE   204
#define SET_PURE_VELOCITY_CONTROL_MODE   205
#define UNIT_RESET_PAN   220
#define UNIT_RESET_TILT   221
#define SET_DESIRED_PTU_MOTION   222
#define QUERY_CURRENT_PTU_MOTION   223
#define OUTSIDE_ENVIRONMENT_QUERY   224
#define PRESET_SET   225
#define PRESET_GOTO   226
#define PRESET_CLEAR   227
#define TTL_CONTROLS   228
#define TRIGGER_CONTROLS   229
#define TRIGGER_OP_on   01
#define TRIGGER_OP_off   02
#define TRIGGER_OP_numPending   04
#define ISM_SET_PAN_DRIFT_RATE   230
#define ISM_SET_TILT_DRIFT_RATE   231
#define ISM_GET_PAN_DRIFT_RATE   232
#define ISM_GET_TILT_DRIFT_RATE   233
#define SET_DESIRED_VELOCITIES   234
#define SET_DESIRED_VELOCITES_GET_POS   235



#define PTU_CPI_CODE_VERSION   "v1.09.12"
#define PTU_OPCODE_VERSION   "v1.07.07d"
#define PTU_modelVersion   1
#define PTU_codeVersion   7
#define PTU_revision   6
#define PLN   printf("debug line %d\n",__LINE__);
char err
static portstream_fd current_host_port
static char speed_control_mode = PTU_INDEPENDENT_SPEED_CONTROL_MODE
static char CHA_comm_active = FALSE



#define PTU_OK   0
#define PTU_ILLEGAL_COMMAND_ARGUMENT   1
#define PTU_ILLEGAL_COMMAND   2
#define PTU_ILLEGAL_POSITION_ARGUMENT   3
#define PTU_ILLEGAL_SPEED_ARGUMENT   4
#define PTU_ACCEL_TABLE_EXCEEDED   5
#define PTU_DEFAULTS_EEPROM_FAULT   6
#define PTU_SAVED_DEFAULTS_CORRUPTED   7
#define PTU_LIMIT_HIT   8
#define PTU_CABLE_DISCONNECTED   9
#define PTU_ILLEGAL_UNIT_ID   10
#define PTU_ILLEGAL_POWER_MODE   11
#define PTU_RESET_FAILED   12
#define PTU_NOT_RESPONDING   13
#define PTU_FIRMWARE_VERSION_TOO_LOW   14
#define PAN   1
#define TILT   2
#define POSITION   1
#define SPEED   2
#define ACCELERATION   3
#define BASE   4
#define UPPER_SPEED_LIMIT   5
#define LOWER_SPEED_LIMIT   6
#define MINIMUM_POSITION   7
#define MAXIMUM_POSITION   8
#define HOLD_POWER_LEVEL   9
#define MOVE_POWER_LEVEL   10
#define RESOLUTION   11
#define ISM_DRIFT   12
#define RELATIVE   1
#define ABSOLUTE   2
#define QUERY   NULL
#define PTU_HI_POWER   1
#define PTU_REG_POWER   2
#define PTU_LOW_POWER   3
#define PTU_OFF_POWER   4
#define COMMAND_EXECUTION_MODE   1
#define ASCII_VERBOSE_MODE   2
#define ASCII_ECHO_MODE   3
#define POSITION_LIMITS_MODE   4
#define DEFAULTS   5
#define SPEED_CONTROL_MODE   6
#define EXECUTE_IMMEDIATELY   1
#define EXECUTE_UPON_IMMEDIATE_OR_AWAIT   2
#define VERBOSE   1
#define TERSE   0
#define ON_MODE   1
#define OFF_MODE   0
#define SAVE_CURRENT_SETTINGS   0
#define RESTORE_SAVED_SETTINGS   1
#define RESTORE_FACTORY_SETTINGS   2
#define QUERY_MODE   3
#define ALL   3
unsigned char execute_set_desired_velocities (signed short int *, signed short int *)
char set_ISM_desired_abs_positions (signed short int *Ppos, signed short int *Tpos)
char get_ISM_desired_abs_positions (signed short int *Ppos, signed short int *Tpos)
typedef short int PTU_PARM_PTR
typedef unsigned short int UID_fd
typedef unsigned char(* event_handler_fn_ptr_type )(unsigned char)



short int cPTU_Control::CheckPanLimits (short int Pos, unsigned char checkflag)
 Class methods used to check if pan, speed and acceleration values are within allowed values.
short int cPTU_Control::CheckTiltLimits (short int Pos, unsigned char checkflag)
 Checks for tilt limits.
unsigned short int cPTU_Control::CheckPanSLimits (unsigned short int Sp, unsigned char checkflag)
 Checks for pan speed limits.
unsigned short int cPTU_Control::CheckTiltSLimits (unsigned short int Sp, unsigned char checkflag)
 Checks for tilt speed limits.



int cPTU_Control::SetPanSpeed (unsigned short int Speed)
 Class methods used to set PTU motion parameters, position, speed and acceleration.
int cPTU_Control::SetTiltSpeed (unsigned short int Speed)
 Sets tilt speed (updated).
int cPTU_Control::PanToPosition (short int Pos)
 Pans unit to Pos position. (updated).
int cPTU_Control::PanToAngle (double Angle)
 Pans unit to angle Angle.
int cPTU_Control::PanOffsetToPosition (int Offset)
 Pans unit to Offset from current position.
int cPTU_Control::TiltToPosition (short int Pos)
 Tilts unit to Pos position. (updated).
int cPTU_Control::TiltToAngle (double Angle)
 Tilts unit to angle Angle.
int cPTU_Control::TiltOffsetToPosition (int Offset)
 Tilts unit to Offset from current position.
int cPTU_Control::PanTiltPosSpeed (short int PanPos, short int TiltPos, unsigned short int PanSpeed, unsigned short int TiltSpeed)
 Sends 4 motion orders to PTU. Pan ans Tilt position speed and halt flag. (updated).
int cPTU_Control::PanTiltAngleSpeed (double PanAngle, double TiltAngle, unsigned short int PanSpeed, unsigned short int TiltSpeed)
 Sends 4 motion orders to PTU. Pan ans Tilt position speed and halt flag. Its the same has PanTiltPosSpeed but pos is given in degrees.
int cPTU_Control::PanTiltAngleSpeedAngleperSec (double PanAngle, double TiltAngle, double PanSpeed, double TiltSpeed)
 Sends 4 motion orders to PTU. Pan ans Tilt position speed and halt flag. Its the same has PanTiltPosSpeed but pos is given in degrees.
int cPTU_Control::SetPureVelocity (signed short int ps, signed short int ts)
 Sets Pan and Tilt velocities. Pure velocity control must be enabled using SetPureVelocityControl(void).
int cPTU_Control::SetPureVelocity_DegperSec (double ps, double ts)
 Sets Pan and Tilt velocities. Pure velocity control must be enabled using SetPureVelocityControl(void).

Detailed Description

This module handles rs232 low level communication with the PTU.


Define Documentation

#define _PANTILTRESOLUTION_   0.0514285

Value used to convert degrees to pulses for the functions PanToAngle(double Angle) TiltToAngle(double Angle) and PanTiltAngleSpeed(double PanAngle, double TiltAngle, unsigned short int PanSpeed,unsigned short int TiltSpeed).

Referenced by cPTU_Control::cPTU_Control(), cPTU_Control::GetCurrentPanPdeg(), cPTU_Control::GetCurrentPanSdegsec(), cPTU_Control::GetCurrentTiltPdeg(), cPTU_Control::GetCurrentTiltSdegsec(), cPTU_Control::GetDesiredPanPdeg(), cPTU_Control::GetDesiredPanSdegsec(), cPTU_Control::GetDesiredTiltPdeg(), cPTU_Control::GetDesiredTiltSdegsec(), and cPTU_Control::SetPureVelocity_DegperSec().

#define ABSOLUTE   2
#define ACCELERATION   3
#define ALL   3
#define ASCII_COMMAND_WITH_NO_BINARY_EQUIV   6
#define ASCII_ECHO_MODE   3

Referenced by cPTU_Base::set_mode().

#define ASCII_VERBOSE_MODE   2

Referenced by cPTU_Base::set_mode().

#define ASYNCHRONOUS_EVENT ( char_val   )     ( (char_val >= 220) && (char_val < 240) )
#define AWAIT_CHARSTREAM   -1
#define AWAIT_COMMAND_COMPLETION   167
#define BASE   4
#define CABLE_DISCONNECT_DETECTED   222
#define CHECKSUM_ERROR   20
#define COMMAND_EXECUTION_MODE   1
#define DEBUG   0
#define DEFAULTS   5

Referenced by cPTU_Base::set_mode().

#define DISABLE_ECHO   182

Referenced by cPTU_Base::set_mode().

#define DISABLE_JOYSTICK   195
#define DISABLE_POSITION_LIMITS   173

Referenced by cPTU_Base::set_mode().

#define DISPLAY_MENU_OPTIONS   4
#define DISPLAY_PAN_MOTOR_COMMANDS   2
#define DISPLAY_TILT_MOTOR_COMMANDS   3
#define ECHO_QUERY   180

Referenced by cPTU_Base::set_mode().

#define ENABLE_ECHO   181

Referenced by cPTU_Base::set_mode().

#define ENABLE_JOYSTICK   194
#define ENABLE_POSITION_LIMITS   172

Referenced by cPTU_Base::set_mode().

#define EXECUTE_IMMEDIATELY   1
#define EXECUTE_UPON_IMMEDIATE_OR_AWAIT   2
#define FALSE   0
#define FALSE   0

Referenced by auxiliar_firei_server_3_shm_to_message(), auxiliar_hokuyo_shm_to_message(), auxiliar_ipm_shm_to_message(), button_press_event(), calculate_freespace_lanemarkers(), calculate_freespace_laserobstacles(), calculate_traj_distance_to_atractor_pts(), calculate_traj_distance_to_repulsor_pts(), carmen_gps_parse_data(), check_status(), class_advancedfloodfill::clear_filled_values(), class_advancedfloodfill::clear_seed_values(), clusters2objects(), compute_distance_traveled(), cPTU_Base::config_CHA(), cPTU_Base::config_CHA_38400(), create_groups_from_basepoints(), createWindow(), cross_computation(), playback::Deactivate(), delete_event(), DEVICE_read_data(), DEVICE_send(), class_advancedfloodfill::do_floodfill(), draw(), draw_obstacles(), drawGPSpoint(), expose_event(), fill_group_lines(), filtergroup_byavgwidth(), filtergroup_bynormalcount(), filtergroup_bynormalgradsigma(), filtergroup_bynormalsigma(), filtergroup_bywidthsigma(), filtergroups_bysize(), filtergroups_byvalleys(), findgroups_rightpix(), cPTU_Base::firmware_version_OK(), cPTU_Base::get_binary_command_return_status(), get_new_target_information(), getfinallines(), base_firei_control::GetFrame(), base_firei_control::GetFrame_dma(), getgroup_overallcandidate(), getnormaltogroup(), gps_parse_gga(), gps_parse_rmc(), high_level_obstacle_avoidance_and_speed_control(), idle(), playback::IndexHandler(), istrue(), layoutWidgets(), logger::logger(), main(), base_firei_control::OpenHandle(), optional_signs_computation(), cPTU_Base::PeekByte(), plugin_init(), logger::ReadFormatsFromFile(), cPTU_Base::ReadSerialLine(), relocate_atractor_pts(), cPTU_Base::reset_PTU_parser(), search_for_new_target(), send_dir_and_speed(), send_vs_command(), cPTU_Base::SerialBytesIn(), cPTU_Base::SerialBytesOut(), cPTU_Base::talkto_CHA(), cPTU_Base::talkto_PTUcontroller(), and writeData().

#define FIRMWARE_VERSION_QUERY   196
#define FORPTUTOSTOP   -1

Standart include. kde project default includes.

Standart include. kde project default includes.

Standart include. input output definitions.

#ifndef _PTU_BASE_H_
#define _PTU_BASE_H_

#include <termios.h>
#include <stdio.h>
#include <fcntl.h>
#include <sys/types.h>
#include <sys/time.h>
#include <unistd.h>
#include <string.h>
#include <stdio.h>
#include <ctype.h>
#include <string.h>


#include "linuxser.h"
#include "ptu.h"
#include "opcodes.h"


class cPTU_Base
{
public:

//  cPTU_Base(){async_event_handler_fn_ptr = (unsigned char (*) (unsigned char)) default_async_event_handler;};
//  cPTU_Base(){async_event_handler_fn_ptr = (unsigned char) default_async_event_handler;};

    //From linuxser.c
    portstream_fd openserial(char *portname);
    portstream_fd openserial_38400(char *portname);
    char closeserial(portstream_fd pt_fd);
    char SerialBytesOut(portstream_fd pt_fd, unsigned char *buffer,int nBytes);
    char SerialBytesIn (portstream_fd pt_fd, unsigned char *buffer, unsigned int nBytes, long timeoutVal);
    char PeekByte(portstream_fd portstream, unsigned char *peekedByte);
    char FlushInputBuffer(portstream_fd pt_fd);
    char SerialStringOut(portstream_fd pt_fd, unsigned char *buffer);
    char ReadSerialLine(portstream_fd pt_fd, unsigned char *strbuffer, long timeoutVal, int *charsRead);
    void do_delay(long millisec);
    char GetSignedShort(portstream_fd portstream, signed short *SHORTval, long timeout);
    char PutSignedShort(portstream_fd portstream, signed short *SHORTval);
    char GetUnsignedShort(portstream_fd portstream, unsigned short *USHORTval, long timeout);
    char PutUnsignedShort(portstream_fd portstream, unsigned short *USHORTval);
    char GetSignedLong(portstream_fd portstream, signed long *LONGval, long timeout);
    char PutSignedLong(portstream_fd portstream, signed long *LONGval);


    char reset_ptu_tilt(void);
    unsigned char default_async_event_handler(unsigned char async_event);
    unsigned char set_async_event_handler( void (*async_event_handler) (unsigned char) );
    portstream_fd open_host_port(char *portname);
    portstream_fd open_host_port_38400(char *portname);
    /*extern */char set_baud_rate(int baudrate);
    char close_host_port(portstream_fd portstream);
    unsigned char GetSerialChar(char await_char);
    unsigned char get_binary_command_return_status();
    char SerialOut(unsigned char outchar);
    unsigned char SerialIn();
    char select_host_port(portstream_fd portstream);
    char reset_ptu(void);
    char reset_ptu_pan(void);
    char firmware_version_OK(void);
    char reset_PTU_parser(long timeout_in_msec);
    char set_desired(char axis, char kinematic_property,PTU_PARM_PTR *value, char movement_mode);
    char await_completion(void);
    long get_current(char axis, char kinematic_property);
    long get_desired(char axis, char kinematic_property);
    char set_mode(char mode_type, char mode_parameter);
    char halt(char halt_type);
    char* firmware_version(void);
    char select_unit(UID_fd unit_ID);
    char set_unit_id(UID_fd unit_ID);
    char set_PTU_motion(short int desired_pan_pos, short int desired_tilt_pos, unsigned short int desired_pan_speed, unsigned short int desired_tilt_speed);
    char get_PTU_motion(short int *desired_pan_pos, short int *desired_tilt_pos,unsigned short int *desired_pan_speed, unsigned short int *desired_tilt_speed);
    char config_CHA();
    char config_CHA_38400();
    char talkto_CHA();
    char talkto_PTUcontroller();
    char set_pure_velocities(signed short int *pan_speed, signed short int *tilt_speed);
    unsigned char set_TTL_outputs(unsigned char in_TTL_control_byte);
    unsigned char get_TTL_values();
    unsigned char TriggerOn(signed short int startPanPos, signed short int deltaPos, signed short int numTriggers);
    unsigned char TriggerOff();
    signed short int TriggersPending();
    char set_desired_abs_positions(signed short int *Ppos, signed short int *Tpos);
    char get_current_positions(signed short int *Ppos, signed short int *Tpos);
    char set_ISM_desired_abs_positions(signed short int *Ppos, signed short int *Tpos);
    char get_ISM_desired_abs_positions(signed short int *Ppos, signed short int *Tpos);
    unsigned char checksum_on_2_2B(unsigned char *val1, unsigned char *val2);
    unsigned char execute_set_desired_velocities(signed short int *Pspeed, signed short int *Tspeed);
    //unsigned char checksum_on_2_2B(unsigned char *val1, unsigned char *val2);
    //unsigned char execute_set_desired_velocities(signed short int *Pspeed, signed short int *Tspeed);


    event_handler_fn_ptr_type async_event_handler_fn_ptr;

private:


};
#endif

header for base class built from C Programmers Interface given by Directed Perception.

Possible argument of Wait(int t) when we wish to wait completion of some PTU motion.

#define GCU_ERROR   15
#define HALT   168

Referenced by cPTU_Base::halt().

#define HALT_PAN   169

Referenced by cPTU_Base::halt().

#define HALT_TILT   170

Referenced by cPTU_Base::halt().

#define HOLD_POWER_LEVEL   9
#define ILLEGAL_ARGUMENT   8
#define ILLEGAL_COMMAND_WITH_DELIMITER   5
#define ILLEGAL_OPCODE   7
#define INT_REVERSED
#define INTERACTIVE_MAIN_MENU   1
#define ISM_DRIFT   12
#define ISM_GET_PAN_DRIFT_RATE   232
#define ISM_GET_TILT_DRIFT_RATE   233
#define ISM_SET_PAN_DRIFT_RATE   230

Referenced by cPTU_Base::set_desired().

#define ISM_SET_TILT_DRIFT_RATE   231

Referenced by cPTU_Base::set_desired().

#define JOYSTICK_QUERY   193
#define LAST_0ARG_OPCODE   196
#define LAST_1BYTE_ARG_OPCODE   200
#define LAST_2BYTE_INT_OPCODE   144
#define LAST_4BYTE_ARG_OPCODE   202
#define LAST_SIGNED_2BYTE_INT_OPCODE   136
#define LOWER_SPEED_LIMIT   6
#define MAX_OPCODE   235
#define MAXIMUM_POSITION   8
#define MINIMUM_POSITION   7
#define MOVE_POWER_LEVEL   10
#define NOT_SUPPORTED_BY_THIS_FIRMWARE_VERSION   17
#define NUM_OPCODES   (MAX_OPCODE - OPCODE_BASE + 1)
#define OFF_MODE   0
#define ON_MODE   1
#define OPCODE_BASE   129
#define OPCODE_VERSION   "v1.09.12"
#define OUTSIDE_ENVIRONMENT_QUERY   224
#define PAN   1
#define PAN_ACCEL_QUERY   163
#define PAN_BASE_SPEED_QUERY   157
#define PAN_CURRENT_POS_QUERY   145
#define PAN_CURRENT_SPEED_QUERY   153

Referenced by cPTU_Base::get_current().

#define PAN_DESIRED_POS_QUERY   147

Referenced by cPTU_Base::get_desired().

#define PAN_DESIRED_SPEED_QUERY   155

Referenced by cPTU_Base::get_desired().

#define PAN_HOLD_POWER_QUERY   186
#define PAN_LIMIT_HIT   220
#define PAN_LOWER_SPEED_LIMIT_QUERY   161
#define PAN_MAX_POSITION_QUERY   151
#define PAN_MIN_POSITION_QUERY   149
#define PAN_MOVE_POWER_QUERY   188
#define PAN_POSITION_TRIGGER_HIT   223
#define PAN_RESOLUTION_QUERY   165
#define PAN_SET_ABS_POS   129
#define PAN_SET_ABS_SPEED   135
#define PAN_SET_ACCEL   201

Referenced by cPTU_Base::set_desired().

#define PAN_SET_BASE_SPEED   137

Referenced by cPTU_Base::set_desired().

#define PAN_SET_HOLD_POWER   197

Referenced by cPTU_Base::set_desired().

#define PAN_SET_LOWER_SPEED_LIMIT   141

Referenced by cPTU_Base::set_desired().

#define PAN_SET_MOVE_POWER   199

Referenced by cPTU_Base::set_desired().

#define PAN_SET_REL_POS   131

Referenced by cPTU_Base::set_desired().

#define PAN_SET_REL_SPEED   133

Referenced by cPTU_Base::set_desired().

#define PAN_SET_UPPER_SPEED_LIMIT   139

Referenced by cPTU_Base::set_desired().

#define PAN_SPEED_TRIGGER_HIT   225
#define PAN_TILT_GET_ABS_POS   241
#define PAN_TILT_SET_ABS_POS   240
#define PAN_UPPER_SPEED_LIMIT_QUERY   159
#define PLN   printf("debug line %d\n",__LINE__);
#define PORT_NOT_OPENED   -1
#define POSITION   1
#define POSITION_LIMITS_MODE   4

Referenced by cPTU_Base::set_mode().

#define POSITION_LIMITS_QUERY   171

Referenced by cPTU_Base::set_mode().

#define PRESET_CLEAR   227
#define PRESET_GOTO   226
#define PRESET_SET   225
#define PTU_ACCEL_TABLE_EXCEEDED   5
#define PTU_ACCEL_TABLE_EXCEEDED   5
#define PTU_CABLE_DISCONNECTED   9
#define PTU_CABLE_DISCONNECTED   9
#define PTU_codeVersion   7
#define PTU_CPI_CODE_VERSION   "v1.09.12"
#define PTU_DEFAULTS_EEPROM_FAULT   6
#define PTU_DEFAULTS_EEPROM_FAULT   6
#define PTU_DUART_ERROR   14
#define PTU_ERROR   16
#define PTU_FIRMWARE_VERSION_TOO_LOW   14
#define PTU_HI_POWER   1
#define PTU_HI_POWER   1
#define PTU_ILLEGAL_COMMAND   2
#define PTU_ILLEGAL_COMMAND   2
#define PTU_ILLEGAL_COMMAND_ARGUMENT   1
#define PTU_ILLEGAL_PARAMETERS   13
#define PTU_ILLEGAL_POSITION_ARGUMENT   3
#define PTU_ILLEGAL_POSITION_ARGUMENT   3
#define PTU_ILLEGAL_POWER_MODE   11
#define PTU_ILLEGAL_POWER_MODE   11
#define PTU_ILLEGAL_SPEED_ARGUMENT   4
#define PTU_ILLEGAL_SPEED_ARGUMENT   4
#define PTU_ILLEGAL_UNIT_ID   10
#define PTU_ILLEGAL_UNIT_ID   10
#define PTU_INDEPENDENT_SPEED_CONTROL_MODE   1
#define PTU_LIMIT_HIT   8
#define PTU_LIMIT_HIT   8
#define PTU_LOW_POWER   3
#define PTU_LOW_POWER   3
#define PTU_modelVersion   1
#define PTU_NOT_RESPONDING   13
#define PTU_OFF_POWER   4
#define PTU_OFF_POWER   4
#define PTU_OK   0
#define PTU_OK   0
#define PTU_OPCODE_VERSION   "v1.07.07d"
#define PTU_PURE_VELOCITY_SPEED_CONTROL_MODE   2
#define PTU_REG_POWER   2
#define PTU_REG_POWER   2
#define PTU_RESET_FAILED   12
#define PTU_RESET_FAILED   12
#define PTU_revision   6
#define PTU_SAVED_DEFAULTS_CORRUPTED   7
#define PTU_SAVED_DEFAULTS_CORRUPTED   7
#define PTU_TILT_VANE_OUT_OF_RANGE_ERROR   19
#define QUERY   NULL
#define QUERY_CURRENT_PTU_MOTION   223
#define QUERY_MODE   3

Referenced by cPTU_Base::set_mode().

#define QUERY_SPEED_CONTROL_MODE   203

Referenced by cPTU_Base::set_mode().

#define RELATIVE   1

Referenced by cPTU_Base::set_desired().

#define RESOLUTION   11
#define RESTORE_FACTORY_DEFAULTS   185

Referenced by cPTU_Base::set_mode().

#define RESTORE_FACTORY_SETTINGS   2

Referenced by cPTU_Base::set_mode().

#define RESTORE_SAVED_DEFAULTS   184

Referenced by cPTU_Base::set_mode().

#define RESTORE_SAVED_SETTINGS   1

Referenced by cPTU_Base::set_mode().

#define SAVE_CURRENT_SETTINGS   0

Referenced by cPTU_Base::set_mode().

#define SAVE_DEFAULTS   183

Referenced by cPTU_Base::set_mode().

#define SELECT_UNIT_ID   144
#define SERIAL_CODE_VERSION   "LINUX v1.0d"
#define SET_DESIRED_PTU_MOTION   222
#define SET_DESIRED_VELOCITES_GET_POS   235
#define SET_DESIRED_VELOCITIES   234
#define SET_IMMEDIATE_COMMAND_MODE   174

Referenced by cPTU_Base::set_mode().

#define SET_INDEPENDENT_CONTROL_MODE   204

Referenced by cPTU_Base::set_mode().

#define SET_PURE_VELOCITY_CONTROL_MODE   205

Referenced by cPTU_Base::set_mode().

#define SET_SLAVED_COMMAND_MODE   175

Referenced by cPTU_Base::set_mode().

#define SET_UNIT_ID   143

Referenced by cPTU_Base::set_unit_id().

#define SET_VERBOSE_ASCII_OFF   192

Referenced by cPTU_Base::set_mode().

#define SET_VERBOSE_ASCII_ON   191

Referenced by cPTU_Base::set_mode().

#define SPECIAL_OPCODE   203
#define SPEED   2
#define SPEED_CONTROL_MODE   6
#define TERSE   0

Referenced by cPTU_Base::set_mode().

#define TILT   2
#define TILT_ACCEL_QUERY   164
#define TILT_BASE_SPEED_QUERY   158
#define TILT_CURRENT_POS_QUERY   146
#define TILT_CURRENT_SPEED_QUERY   154

Referenced by cPTU_Base::get_current().

#define TILT_DESIRED_POS_QUERY   148

Referenced by cPTU_Base::get_desired().

#define TILT_DESIRED_SPEED_QUERY   156

Referenced by cPTU_Base::get_desired().

#define TILT_HOLD_POWER_QUERY   187
#define TILT_LIMIT_HIT   221
#define TILT_LOWER_SPEED_LIMIT_QUERY   162
#define TILT_MAX_POSITION_QUERY   152
#define TILT_MIN_POSITION_QUERY   150
#define TILT_MOVE_POWER_QUERY   189
#define TILT_POSITION_TRIGGER_HIT   224
#define TILT_RESOLUTION_QUERY   166
#define TILT_SET_ABS_POS   130
#define TILT_SET_ABS_SPEED   136
#define TILT_SET_ACCEL   202

Referenced by cPTU_Base::set_desired().

#define TILT_SET_BASE_SPEED   138

Referenced by cPTU_Base::set_desired().

#define TILT_SET_HOLD_POWER   198

Referenced by cPTU_Base::set_desired().

#define TILT_SET_LOWER_SPEED_LIMIT   142

Referenced by cPTU_Base::set_desired().

#define TILT_SET_MOVE_POWER   200

Referenced by cPTU_Base::set_desired().

#define TILT_SET_REL_POS   132

Referenced by cPTU_Base::set_desired().

#define TILT_SET_REL_SPEED   134

Referenced by cPTU_Base::set_desired().

#define TILT_SET_UPPER_SPEED_LIMIT   140

Referenced by cPTU_Base::set_desired().

#define TILT_SPEED_TRIGGER_HIT   226
#define TILT_UPPER_SPEED_LIMIT_QUERY   160
#define TIMEOUT_CHAR_READ   -1
#define TRIGGER_CONTROLS   229
#define TRIGGER_OP_numPending   04
#define TRIGGER_OP_off   02

Referenced by cPTU_Base::TriggerOff().

#define TRIGGER_OP_on   01

Referenced by cPTU_Base::TriggerOn().

#define TRUE   1

Referenced by playback::Activate(), auxiliar_firei_server_3_shm_to_message(), auxiliar_hokuyo_shm_to_message(), auxiliar_ipm_shm_to_message(), bus_call(), button_press_event(), calculate_freespace_lanemarkers(), calculate_freespace_laserobstacles(), calculate_traj_distance_to_atractor_pts(), calculate_traj_distance_to_repulsor_pts(), check_command(), check_status(), cPTU_Base::closeserial(), clusters2objects(), compute_distance_traveled(), cPTU_Base::config_CHA(), cPTU_Base::config_CHA_38400(), configure_event(), cPTU_Control::cPTU_Control(), cross_computation(), cPTU_Base::default_async_event_handler(), DEVICE_send(), class_advancedfloodfill::do_floodfill(), draw(), draw_obstacles(), drawGPSpoint(), filtergroup_byavgwidth(), filtergroup_bynormalcount(), filtergroup_bynormalgradsigma(), filtergroup_bynormalsigma(), filtergroup_bywidthsigma(), filtergroups_bysize(), filtergroups_byvalleys(), findgroups_rightpix(), cPTU_Base::firmware_version_OK(), cPTU_Base::FlushInputBuffer(), cPTU_Base::get_binary_command_return_status(), cPTU_Base::get_current(), cPTU_Base::get_desired(), get_new_target_information(), get_ratios(), cPTU_Base::get_TTL_values(), getfinallines(), base_firei_control::GetFrame(), base_firei_control::GetFrame_dma(), getnormaltogroup(), cPTU_Base::GetSerialChar(), cPTU_Base::GetSignedLong(), cPTU_Base::GetSignedShort(), cPTU_Base::GetUnsignedShort(), gps_parse_gga(), gps_parse_rmc(), handler_gga_msg_received(), handler_msg_received(), handler_rmc_msg_received(), handler_xsensmsg_received(), heartbeat_handler(), high_level_obstacle_avoidance_and_speed_control(), idle(), playback::IndexHandler(), init_crc16_tab(), init_crc32_tab(), init_crcccitt_tab(), init_crcdnp_tab(), init_crckermit_tab(), logger::InstallParameters(), istrue(), laser_handler(), layoutWidgets(), main(), motion_notify_event(), open_xml(), base_firei_control::OpenHandle(), optional_signs_computation(), plugin_init(), ptucontrol_command_handler(), cPTU_Base::PutSignedLong(), cPTU_Base::PutSignedShort(), cPTU_Base::PutUnsignedShort(), cPTU_Base::ReadSerialLine(), receiver_handler(), relocate_atractor_pts(), reset_hyp(), cPTU_Base::reset_ptu(), cPTU_Base::reset_ptu_pan(), cPTU_Base::reset_PTU_parser(), cPTU_Base::reset_ptu_tilt(), reshape(), road_msg_received_handler(), save(), score_trajectories(), search_for_new_target(), cPTU_Base::select_unit(), send_dir_and_speed(), send_vs_command(), sensorfusion_heartbeat_handler(), cPTU_Base::SerialBytesIn(), cPTU_Base::SerialBytesOut(), cPTU_Base::SerialStringOut(), cPTU_Base::set_TTL_outputs(), cPTU_Base::set_unit_id(), logger::StartLog(), playback::StepBackward(), playback::StepForward(), cPTU_Base::talkto_CHA(), cPTU_Base::talkto_PTUcontroller(), cPTU_Base::TriggerOff(), cPTU_Base::TriggerOn(), where_we_are(), WindowDump(), writeData(), zoom_change(), zoom_in(), zoom_out(), and zoom_window().

#define TTL_CONTROLS   228
#define UNIT_ID_QUERY   179
#define UNIT_RESET   176

Referenced by cPTU_Base::reset_ptu().

#define UNIT_RESET_ON_POWERUP   177
#define UNIT_RESET_ON_POWERUP_DISABLED   178
#define UNIT_RESET_PAN   220
#define UNIT_RESET_TILT   221
#define UPPER_SPEED_LIMIT   5
#define VERBOSE   1

Referenced by cPTU_Base::set_mode().

#define VERBOSE_QUERY   190

Referenced by cPTU_Base::set_mode().


Typedef Documentation

typedef unsigned char(* event_handler_fn_ptr_type)(unsigned char)
typedef int portstream_fd
typedef short int PTU_PARM_PTR
typedef unsigned short int UID_fd

Function Documentation

short int cPTU_Control::CheckPanLimits ( short int  Pos,
unsigned char  checkflag 
) [private, inherited]

Class methods used to check if pan, speed and acceleration values are within allowed values.

These functions only operate if flag checklimits is TRUE. Use SetCheckLimits(unsigned char val) to set this flag. By default the limits are checked. Checks for pan limits

Parameters:
Pos value to check
checkflag if the check operation should or not be executed.
Returns:
the checked value. Original Pos if it was not out of the limits

Referenced by cPTU_Control::PanTiltPosSpeed(), cPTU_Control::PanToAngle(), and cPTU_Control::PanToPosition().

Here is the caller graph for this function:

unsigned short int cPTU_Control::CheckPanSLimits ( unsigned short int  Sp,
unsigned char  checkflag 
) [private, inherited]

Checks for pan speed limits.

Parameters:
Sp value to check
checkflag if the check operation should or not be executed.
Returns:
the checked value. Original Pos if it was not out of the limits

Referenced by cPTU_Control::PanTiltPosSpeed(), and cPTU_Control::SetPanSpeed().

Here is the caller graph for this function:

short int cPTU_Control::CheckTiltLimits ( short int  Pos,
unsigned char  checkflag 
) [private, inherited]

Checks for tilt limits.

Parameters:
Pos value to check
checkflag if the check operation should or not be executed.
Returns:
the checked value. Original Pos if it was not out of the limits

Referenced by cPTU_Control::PanTiltPosSpeed(), and cPTU_Control::TiltToPosition().

Here is the caller graph for this function:

unsigned short int cPTU_Control::CheckTiltSLimits ( unsigned short int  Sp,
unsigned char  checkflag 
) [private, inherited]

Checks for tilt speed limits.

Parameters:
Sp value to check
checkflag if the check operation should or not be executed.
Returns:
the checked value. Original Pos if it was not out of the limits

Referenced by cPTU_Control::PanTiltPosSpeed(), and cPTU_Control::SetTiltSpeed().

Here is the caller graph for this function:

char closeserial ( portstream_fd   ) 
void do_delay ( long   ) 
unsigned char execute_set_desired_velocities ( signed short int *  ,
signed short int *   
)
char FlushInputBuffer ( portstream_fd   ) 
char get_ISM_desired_abs_positions ( signed short int *  Ppos,
signed short int *  Tpos 
)
char GetSignedLong ( portstream_fd  ,
signed long *  ,
long   
)
char GetSignedShort ( portstream_fd  ,
signed short *  ,
long   
)
char GetUnsignedShort ( portstream_fd  ,
unsigned short *  ,
long   
)
portstream_fd openserial ( char *  portname  ) 
int cPTU_Control::PanOffsetToPosition ( int  Offset  )  [inherited]

Pans unit to Offset from current position.

Parameters:
Offset value to perform.
Returns:
Function result (0 is OK; -1 NOK)
int cPTU_Control::PanTiltAngleSpeed ( double  PanAngle,
double  TiltAngle,
unsigned short int  PanSpeed,
unsigned short int  TiltSpeed 
) [inherited]

Sends 4 motion orders to PTU. Pan ans Tilt position speed and halt flag. Its the same has PanTiltPosSpeed but pos is given in degrees.

Parameters:
PanAngle pan position in degrees
TiltAngle tilt position
PanSpeed pan speed
TiltSpeed tilt speed
Returns:
Function result (0 is OK; -1 NOK)

References cPTU_Control::PanTiltPosSpeed().

Here is the call graph for this function:

int cPTU_Control::PanTiltAngleSpeedAngleperSec ( double  PanAngle,
double  TiltAngle,
double  PanSpeed,
double  TiltSpeed 
) [inherited]

Sends 4 motion orders to PTU. Pan ans Tilt position speed and halt flag. Its the same has PanTiltPosSpeed but pos is given in degrees.

Parameters:
PanAngle pan position in degrees
TiltAngle tilt position in degrees
PanSpeed pan speed in degrees/sec
TiltSpeed tilt speed in degrees/sec
Returns:
Function result (0 is OK; -1 NOK)

References cPTU_Control::PanTiltPosSpeed().

Referenced by ptucontrol_command_handler().

Here is the call graph for this function:

Here is the caller graph for this function:

int cPTU_Control::PanTiltPosSpeed ( short int  PanPos,
short int  TiltPos,
unsigned short int  PanSpeed,
unsigned short int  TiltSpeed 
) [inherited]

Sends 4 motion orders to PTU. Pan ans Tilt position speed and halt flag. (updated).

Parameters:
PanPos pan position
TiltPos tilt position
PanSpeed pan speed
TiltSpeed tilt speed
Returns:
Function result (0 is OK; -1 NOK)

References cPTU_Control::CheckPanLimits(), cPTU_Control::CheckPanSLimits(), cPTU_Control::CheckTiltLimits(), cPTU_Control::CheckTiltSLimits(), cPTU_Base::reset_PTU_parser(), ret, and cPTU_Base::set_PTU_motion().

Referenced by cPTU_Control::PanTiltAngleSpeed(), and cPTU_Control::PanTiltAngleSpeedAngleperSec().

Here is the call graph for this function:

Here is the caller graph for this function:

int cPTU_Control::PanToAngle ( double  Angle  )  [inherited]

Pans unit to angle Angle.

Parameters:
Angle to move to.
Returns:
Function result (0 is OK; -1 NOK)

References cPTU_Control::CheckPanLimits(), and cPTU_Control::PanToPosition().

Here is the call graph for this function:

int cPTU_Control::PanToPosition ( short int  Pos  )  [inherited]

Pans unit to Pos position. (updated).

Parameters:
Pos to move to.
Returns:
Function result (0 is OK; -1 NOK)

References ABSOLUTE, cPTU_Control::CheckPanLimits(), PAN, POSITION, and cPTU_Base::set_desired().

Referenced by cPTU_Control::PanToAngle().

Here is the call graph for this function:

Here is the caller graph for this function:

char PeekByte ( portstream_fd  ,
unsigned char *   
)
char PutSignedLong ( portstream_fd  ,
signed long *   
)
char PutSignedShort ( portstream_fd  ,
signed short *   
)
char PutUnsignedShort ( portstream_fd  ,
unsigned short *   
)
char ReadSerialLine ( portstream_fd  ,
unsigned char *  ,
long  ,
int *   
)
char SerialBytesIn ( portstream_fd  ,
unsigned char *  ,
unsigned  int,
long   
)
char SerialBytesOut ( portstream_fd  ,
unsigned char *  ,
int   
)
char SerialStringOut ( portstream_fd  ,
unsigned char *   
)
char set_ISM_desired_abs_positions ( signed short int *  Ppos,
signed short int *  Tpos 
)
int cPTU_Control::SetPanSpeed ( unsigned short int  Speed  )  [inherited]

Class methods used to set PTU motion parameters, position, speed and acceleration.

Sets pan speed (updated)

Parameters:
Speed to set.
Returns:
Function result (0 is OK; -1 NOK)

References ABSOLUTE, cPTU_Control::CheckPanSLimits(), PAN, cPTU_Base::set_desired(), and SPEED.

Here is the call graph for this function:

int cPTU_Control::SetPureVelocity ( signed short int  ps,
signed short int  ts 
) [inherited]

Sets Pan and Tilt velocities. Pure velocity control must be enabled using SetPureVelocityControl(void).

Parameters:
ps Pan velocity
ts Tilt velocity
Returns:
Function result (0 is OK; -1 NOK)

References cPTU_Base::set_pure_velocities().

Here is the call graph for this function:

int cPTU_Control::SetPureVelocity_DegperSec ( double  ps,
double  ts 
) [inherited]

Sets Pan and Tilt velocities. Pure velocity control must be enabled using SetPureVelocityControl(void).

Parameters:
ps Pan velocity
ts Tilt velocity
Returns:
Function result (0 is OK; -1 NOK)

References _PANTILTRESOLUTION_, cPTU_Base::reset_PTU_parser(), ret, and cPTU_Base::set_pure_velocities().

Referenced by ptucontrol_command_handler().

Here is the call graph for this function:

Here is the caller graph for this function:

int cPTU_Control::SetTiltSpeed ( unsigned short int  Speed  )  [inherited]

Sets tilt speed (updated).

Parameters:
Speed to set.
Returns:
Function result (0 is OK; -1 NOK)

References ABSOLUTE, cPTU_Control::CheckTiltSLimits(), cPTU_Base::set_desired(), SPEED, and TILT.

Here is the call graph for this function:

int cPTU_Control::TiltOffsetToPosition ( int  Offset  )  [inherited]

Tilts unit to Offset from current position.

Parameters:
Offset value to perform.
Returns:
Function result (0 is OK; -1 NOK)
int cPTU_Control::TiltToAngle ( double  Angle  )  [inherited]

Tilts unit to angle Angle.

Parameters:
Angle to move to.
Returns:
Function result (0 is OK; -1 NOK)

References cPTU_Control::TiltToPosition().

Here is the call graph for this function:

int cPTU_Control::TiltToPosition ( short int  Pos  )  [inherited]

Tilts unit to Pos position. (updated).

Parameters:
Pos to move to.
Returns:
Function result (0 is OK; -1 NOK)

References ABSOLUTE, cPTU_Control::CheckTiltLimits(), POSITION, cPTU_Base::set_desired(), and TILT.

Referenced by cPTU_Control::TiltToAngle().

Here is the call graph for this function:

Here is the caller graph for this function:


Variable Documentation

char CHA_comm_active = FALSE [static]
char err
char speed_control_mode = PTU_INDEPENDENT_SPEED_CONTROL_MODE [static]
Generated on Wed Jun 2 12:43:04 2010 for LAR Atlas by  doxygen 1.6.3