## @package EnumMsgPltfCtrl # Several Enumerations useful to communicate with the PltfCtrl Server # # ----------------------------------------------------------------------------------- # # Copyright (c) 2009 Neobotix (www.neobotix.de) # # This software is allowed to be used and modified only in association with a Neobotix # robot platform. It is allowed to include the software into applications and # to distribute it with a Neobotix robot platform. # # This software is provided WITHOUT ANY WARRANTY; without even the # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR # PURPOSE. See the Neobotix License (Version 1.0) for more details. # # You should have received a copy of the Neobotix License # along with this software; if not, write to the # Gesellschaft fuer Produktionssysteme, Neobotix, Nobelstrasse 12, 70569 Stuttgart, Germany # # ----------------------------------------------------------------------------------- class EnMsgPltfCtrl(object): ######################################################## # Warning : do not put a ',' separator between lines ! # ######################################################## # CAN communication CMD_CONNECT_TO_PLTF = 0 CMD_SHUTDOWN_PLTF = 1 CMD_INIT_PLTF = 2 CMD_SET_BRAKE = 3 CMD_SET_DIGOUT = 4 CMD_START_ULTRASONIC = 5 CMD_STOP_ULTRASONIC = 6 CMD_ADD_CAN_LISTENING_ID = 7 CMD_REMOVE_CAN_LISTENING_ID = 8 CMD_SEND_CAN_MESSAGE = 9 CMD_GET_CAN_MESSAGES = 10 # platform operation CMD_START = 11 CMD_BREAK = 12 CMD_CONTINUE = 13 CMD_STOP = 14 CMD_SET_MODE = 15 CMD_EXIT = 16 CMD_CLOSE_SOCKET = 17 # request status CMD_GET_STATUS = 18 # motion commands CMD_MOVE_PATH = 19 CMD_MOVE_TO_STATION = 20 CMD_MOVE_ABS = 21 CMD_MOVE_REL = 22 CMD_MOVE_VEL_WHEEL = 23 CMD_MOVE_VEL = 24 # platform data CMD_SET_MAP = 25 CMD_GET_MAP = 26 CMD_LOAD_MAP = 27 CMD_SAVE_MAP = 28 CMD_MAPPING_START = 29 CMD_MAPPING_RESET = 30 CMD_MAPPING_STOP = 31 CMD_SET_ROADMAP = 32 CMD_GET_ROADMAP = 33 CMD_LOAD_ROADMAP = 34 CMD_SAVE_ROADMAP = 35 CMD_SET_FRM_PLTF = 36 CMD_SET_PLTF_PARAM = 37 CMD_GET_PLTF_PARAM = 38 CMD_GET_PLTF_PARAM_VEC = 39 CMD_SET_PROGRAM = 40 CMD_GET_PROGRAM = 41 CMD_LOAD_PROGRAM = 42 CMD_SAVE_PROGRAM = 43 # special functions CMD_SPEAK_TEXT = 44 CMD_PLAY_SOUND = 45 CMD_GRAB_IMAGE = 46 CMD_SET_POS_HEAD_DRIVE = 47 CMD_SET_VEL_HEAD_DRIVE = 48 CMD_SET_POS_PAN_TILT_CAMERA = 49 # group debug CMD_GET_DEBUG_DATA = 50 CMD_DEBUG1 = 51 CMD_DEBUG2 = 52 CMD_DEBUG3 = 53 CMD_DEBUG4 = 54 CMD_MOUSE_MOVE = 55 CMD_SET_LOG_ENABLED = 56 CMD_SET_POST_PROCESS_FILENAME = 57 CMD_SET_EVENT = 58 CMD_GET_CAMERA = 59 CMD_GET_MAPIMAGE = 60 CMD_ENABLE_EXT_MAPPING = 61 CMD_DISABLE_EXT_MAPPING = 62 CMD_EXT_WRITE_MAPPING = 63 CMD_EXT_READ_MAPPING = 64 # Python interpreter functions: # only for debugging... CMD_EXEC_PYSTRING = 65 # starts uploaded file CMD_START_PYFILE = 66 # upload file CMD_SET_PYFILE = 67 # download file CMD_GET_PYFILE = 68 # restart interpreter to stop execution CMD_STOP_INTERPRETER = 69 # write on 2nd Line of LCD CMD_WRITE_LCD = 70 CMD_AUTOMATIC_CHARGE = 71 # start/stop motionthread to decrease load of computer for other tasks CMD_STOP_MOTIONTHREAD = 72 CMD_RESTART_MOTIONTHREAD = 73 # send current position of platform only CMD_GET_POSITION = 74 # group debug CMD_SHUTDOWN_HOST = 99 class MotionModes(object): MODE_MOTION_NO = 0 MODE_MOTION_JOYHARD = 1 MODE_MOTION_JOYSOFT = 2 MODE_MOTION_VEL = 3 MODE_MOTION_AUTOMATIC = 4 MODE_MOTION_PROGRAM = 5 MODE_MOTION_POST_PROCESS_REPLAY = 6 class BoardType(object): ############################################################## # Trick : "a, b, c, d, .... = range(n)" gives a=1, b=2, etc # ############################################################## TYPE_IOBOARD, \ TYPE_RELAYBOARD, \ TYPE_USBOARD, \ TYPE_RADARBOARD1, \ TYPE_RADARBOARD2, \ TYPE_GYROBOARD = range(6) class PlannerStates(object): PLANNER_STANDBY = 0 PLANNER_PLANNING = 1 PLANNER_NO_PATH = 2 PLANNER_PATH_FOUND = 3 PLANNER_COLLISION_START = 4 PLANNER_COLLISION_TARGET = 5 class EventTypes(object): EV_START_CHARGE, \ EV_STOP_ALARM, \ EV_START_POST_PROCESS_RECORDING, \ EV_STOP_POST_PROCESS_RECORDING, \ EV_START_POST_PROCESS_REPLAY, \ EV_STOP_POST_PROCESS_REPLAY, \ EV_BREAK_POST_PROCESS_REPLAY, \ EV_CONTINUE_POST_PROCESS_REPLAY, \ EV_START_ZERO_GYRO, \ EV_STOP_ZERO_GYRO = range(10) class AppErrTypes(object): APP_ERR_NONE = 0 APP_ERR_DOCKING = 1 class MouseEvent(object): MOUSE_PRESSED_BUTTON1, \ MOUSE_PRESSED_BUTTON2, \ MOUSE_PRESSED_BUTTON3, \ MOUSE_RELEASED_BUTTON1, \ MOUSE_RELEASED_BUTTON2, \ MOUSE_RELEASED_BUTTON3, \ MOUSE_DRAGGED_BUTTON1, \ MOUSE_DRAGGED_BUTTON2, \ MOUSE_DRAGGED_BUTTON3 = range(9) class StateOperation(object): ST_OP_STOPPED, \ ST_OP_RUNNING, \ ST_OP_BREAKED, \ ST_OP_NOT_INITIALIZED = range(4) class StateEmergency(object): ST_EM_NOT_ACTIVE, \ ST_EM_SCANNER_ACTIVE, \ ST_EM_STOP_ACTIVE, \ ST_EM_SCANNER_RESET, \ ST_EM_STOP_RESET = range(5) class PltfParams(object): # Types BOOLEAN = 0 INTEGER = 1 DOUBLE = 2 # Categories GEOM = 0 PLANNING = 1 IPO = 2 LOCALIZATION = 3 TRACKING_DETECTION = 4 COLLISION = 5 SURVEILLANCE = 6 MOTION_CTRL = 7 MAPPING = 8 USONIC = 9 INFRARED = 10 # Parameters PltfLength = ('PltfLength', GEOM, INTEGER) DistWheels = ('DistWheels', GEOM, INTEGER) DistPltfCenterToWheelAxis = ('DistPltfCenterToWheelAxis', GEOM, INTEGER) PlanningEnabled = ('PlanningEnabled', PLANNING, BOOLEAN) ViewPlanObstEnabled = ('ViewPlanObstEnabled', PLANNING, BOOLEAN) SimuOnlineEnabledPostDis = ('SimuOnlineEnabledPostDis', PLANNING, BOOLEAN) IpoTransVel = ('IpoTransVel', IPO, INTEGER) IpoTransAcc = ('IpoTransAcc', IPO, INTEGER) IpoRotVel = ('IpoRotVel', IPO, DOUBLE) IpoRotAcc = ('IpoRotAcc', IPO, DOUBLE) MotionBackwardEnabled = ('MotionBackwardEnabled', IPO, BOOLEAN) LineExtractMinSegLen = ('LineExtractMinSegLen', LOCALIZATION, DOUBLE) LineExtractMaxCov = ('LineExtractMaxCov', LOCALIZATION, INTEGER) LocalLocalization = ('LocalLocalization', LOCALIZATION, BOOLEAN) GlobalLocalization = ('GlobalLocalization', LOCALIZATION, BOOLEAN) MappingMode = ('MappingMode', LOCALIZATION, INTEGER) TrackingEnabled = ('TrackingEnabled', TRACKING_DETECTION, BOOLEAN) PersonDetectionEnabled = ('PersonDetectionEnabled', TRACKING_DETECTION, BOOLEAN) BallDetectionEnabled = ('BallDetectionEnabled', TRACKING_DETECTION, BOOLEAN) ChargeStationDetectEnabled = ('ChargeStationDetectEnabled', TRACKING_DETECTION, BOOLEAN) CollLaserMinDist = ('CollLaserMinDist', COLLISION, INTEGER) CollLaserMaxDist = ('CollLaserMaxDist', COLLISION, INTEGER) CollLaserEnabled = ('CollLaserEnabled', COLLISION, BOOLEAN) CollUSEnabled = ('CollUSEnabled', COLLISION, BOOLEAN) CollOptoEnabled = ('CollOptoEnabled', COLLISION, BOOLEAN) CollType = ('CollType', COLLISION, INTEGER) CollCircleMinDist = ('CollCircleMinDist', COLLISION, INTEGER) CollRectDistToFront = ('CollRectDistToFront', COLLISION, INTEGER) CollRectDistToBack = ('CollRectDistToBack', COLLISION, INTEGER) CollRectDistToSide = ('CollRectDistToSide', COLLISION, INTEGER) PIRSensorsEnabled = ('PIRSensorsEnabled', SURVEILLANCE, BOOLEAN) RadarSensorsEnabled = ('RadarSensorsEnabled', SURVEILLANCE, BOOLEAN) ScannerSurveillance = ('ScannerSurveillance', SURVEILLANCE, BOOLEAN) FlashlightEnabled = ('FlashlightEnabled', SURVEILLANCE, BOOLEAN) SurveillanceModeEnabled = ('SurveillanceModeEnabled', SURVEILLANCE, BOOLEAN) MotionCtrlType = ('MotionCtrlType', MOTION_CTRL, INTEGER) PositionStabilizationEnabled = ('PositionStabilizationEnabled', MOTION_CTRL, BOOLEAN) PathFollowParam1 = ('PathFollowParam1', MOTION_CTRL, DOUBLE) PathFollowParam2 = ('PathFollowParam2', MOTION_CTRL, DOUBLE) NonLinearCtrlParam1 = ('NonLinearCtrlParam1', MOTION_CTRL, DOUBLE) NonLinearCtrlParam2 = ('NonLinearCtrlParam2', MOTION_CTRL, DOUBLE) NonLinearCtrlParam3 = ('NonLinearCtrlParam3', MOTION_CTRL, DOUBLE) MinLineLenMap = ('MinLineLenMap', MAPPING, INTEGER) MinLineLenAux = ('MinLineLenAux', MAPPING, INTEGER)