SmartFestoFleetCom 16.04

From RobotinoWiki
Revision as of 12:12, 9 December 2013 by Tianlan (talk | contribs) (TCP/IP Communication Protocol B/W Fleet Manager and SmartFestoFleetCom)

TCP/IP Communication Protocol B/W Fleet Manager and SmartFestoFleetCom

Commands in both the directions has the format, CommandName CommandArgument1 CommandArgument2 ie, Space between command name and its arguments, and additional commands appended with a newline character.

FleetManager to SmartSoft
Command Usage Example Description
DeliverFromTo SourceStationID SourceBeltID DestinationStationID DestinationBeltID DeliverFromTo 1 1 2 2 Drive to Position 1, dock to Belt 1, Load, Undock, Drive to Position 2, dock to Belt 2, Unload, Undock
GotoPosition PositionID GotoPosition 1 Drives to Position 1
DockTo BeltID DockTo 1 Docks to Belt 1
Undock Undock Undocks if already docked
LoadBox LoadBox Loads on Box if no box already loaded on the belt and transport station ready to load
UnloadBox UnloadBox Unloads the Box if box present on the belt and transport station ready to receive
<NOT YET> Stop Stop Halt the Robotino, put the task on hold
<NOT YET> Continue Continue Resumes the task if a task is on hold
<NOT YET> EndTask EndTask Terminates the ongoing task and go to Home Position
TeachPosition PositionID x y phi TeachPosition 1 0.54 23.5 45.0 Teach Position with ID 1, in global coordinates x(in meters):0.54, y(in meters):23.5, phi(in degrees):45 If position ID already exists position is overwritten.
TeachPositionWithName PositionID x y phi "name" TeachPositionWithName 1 0.54 23.5 45.0 "Station #1" Teach Position with ID 1, in global coordinates x(in meters):0.54, y(in meters):23.5, phi(in degrees):45 with name "Station #1". If position ID already exists position is overwritten.
DeletePosition PositionID DeletePosition 3 Delete position with PositionID. If there is no position with PositionID nothing happens.
TeachCurrentPosition PositionID TeachCurrentPosition 1 Assign the current global position the ID 1
GetAllPosition GetAllPosition Reads the list of all taught positions with its ID and Name
SetNameForPosition PositionID name SetNameForPosition 1 RedParts Sets a tag RedParts for PostionID 1 if exists
GetMapStorageDirectory GetMapStorageDirectory Get the fullpath to the directory where maps are stored.
GetPositionStorageFileName GetPositionStorageFileName Get the full path of the file positions are stored in.
ReloadPositionStorage ReloadPositionStorage Triggers a reload of the position storage file. This is neccessary after transfering a position storage file from another Robotino.
SetDefaultMap "filename" SetDefaultMap "factory4" Set the given map as the default map. When (re)starting navigation the default map is used. filename is relative to the map storage directory.
GetDefaultMapName GetDefaultMapName Returns the filename (relative to map storage directory) of the default map.
StartMapping StartMapping Start creation of a new map.
StopMapping StopMapping Stop map creation. Map is saved as new map with date and time (map-YYYY-MM-DD_HH-MM-SS), in the MapStorageDirectory. (eg. map-2013-11-28_10-00-18.yaml map-2013-11-28_10-00-18.pgm)
ReLoadDefaultMap ReLoadDefaultMap ReLoadDeafault map for navigation and localization. Global localization is used unless SetRobotPose is called afterwards.
SetRobotPose x y phi SetRobotPose 1.2 2.5 90 Set the current pose of the robot x y in meter phi in DEG.
GetSystemState GetSystemState Get a SystemState message once
SmartSoft to FleetManager (Cyclic every 500ms)
RobotPose x y phi RobotPose 0.5 12.56 12.5 Position of robot in x=0.5(in meters),y=12.56(in meters)and angle=12.5 in degree
BatteryState voltage voltageLow BatteryState 18 1 Battery voltage is 18Volts and voltage low is true
SystemState CurrentCommand CommandArgs
CurrentCommand: NoJob, StartJob, JobDone, JobError
SystemState NoJob Robot Idle and waiting for task
SystemState Setup Robot in Setup state, mapping etc.
SystemState StartJob DeliverFromTo 1 1 2 2 A Job has been started to Drive to Position 1, dock to Belt 1, Load, Undock, Drive to Position 2, dock to Belt 2, Unload, Undock
SystemState JobDone DeliverFromTo 1 1 2 2 Box transported from Position 1, Belt 1, to Position 2,Belt 2
SystemState JobError DeliverFromTo PATH_BLOCKED Robot path blocked to complete the task
SystemState JobError GoToStation PATH_BLOCKED Robot path blocked to complete the task
SystemState JobError DockTo NO_DOCK_STATION Robot not close to the docking station(If the laser scanner intensity value is not as desired)
SystemState JobError LoadBox BOX_PRESENT Robot is already having a box on top(detected by "Box available" digital signal)
SystemState JobError LoadBox NO_RESPONSE_FROM_STATION The transport station has nothing to load(detected by "Station Ready" digital signal)
SystemState JobError LoadBox NO_BOX The box was not sucessfully loaded from the transport station(detected by "Box available" digital signal)
SystemState JobError UnloadBox NO_RESPONSE_FROM_STATION The transport station is not ready to receive a box(detected by "Station Ready" digital signal)
SystemState JobError UnloadBox NO_BOX No box on top of the Robot(detected by "Box available" digital signal)
SystemState EndJob UnloadBox BOX_PRESENT Task terminated but a box is still present on the robot(detected by "Box available" digital signal)
SystemState EndJob UnloadBox BOX_ABSENT Task terminated no box on the robot(detected by "Box available" digital signal)
Progress Progress 40 40% of the Job is complete

GetAllPosition

Return value format

GetAllPosition id x y phi "name",id x y phi "name" ...

name must not contain comma (0x2C)

GetMapStorageDirectory

Return value format

"fulldirectorypath"

Smartsoft