RtcProfile
IDRTC:AIST INVENT:Controller:DriveControl:4.0.0
Version0.2
BasicInfo
NameDriveControl
ComponentTypeSTATIC
ActivityTypePERIODIC
ComponentKindDataFlowComponent
CategoryController
DescriptionDriveControl
ExecutionRate1000.0
ExecutionTypePeriodicExecutionContext
MaxInstances10
VendorAIST INVENT
Version4.0.0
CreationDate2010-03-02T10:57:10.619+09:00
UpdateDate2010-03-02T13:42:57.008+09:00
language
doc_basic
reference
licenseCopyright (c) 2008, National Institute of Advanced Industrial Science and Technology (AIST). All rights reserved. This program is made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html
creatorYusuke Nakajima (y.nakajima@aist.go.jp)
algorithm
inout[INPUT]
(1) current localized position data
[OUTPUT]
(1) Target Trans/Rot Velocity data
(2) Current distance data
description(1)getting current localized position from LocalizationRTC
(2)calculating Target Trans/Rot velocity values for controlling robot's velocity
(3)sending target Trans/Rot Velocity data to MotorControlRTC
(4)sending distance data between current position and target point to LocalPathPlanningRTC
actions
action_status/doc_action
OnInitializeimplementedtrue
postConditionnone
preConditionnone
descriptionset Configuration parameters
OnFinalizeimplementedfalse
OnStartupimplementedfalse
OnShutdownimplementedfalse
OnActivatedimplementedtrue
postConditionnone
preConditionnone
description(1) update INPORT's data
(2) open files for debugging
(3) initialize
(4) get robot's parameter
OnDeactivatedimplementedtrue
postConditionnone
preConditionnone
description(1)close files for debugging
OnAbortingimplementedfalse
OnErrorimplementedfalse
OnResetimplementedfalse
OnExecuteimplementedtrue
postConditionnone
preConditionnone
description(1)getting current localized position from LocalizationRTC
(2)calculating Target Trans/Rot velocity values for controlling robot's velocity
(3)sending target Trans/Rot Velocity data to MotorControlRTC
(4)sending distance data between current position and target point to LocalPathPlanningRTC
OnStateUpdateimplementedfalse
OnRateChangedimplementedfalse
OnActionimplementedfalse
OnModeChangedimplementedfalse
configuration/doc_configuration
1nameTransMaxVelocity
unit[m/sec]
defaultValue0.5
typedouble
constraintnone
range
unit[m/sec]
descriptionMax trans velocity of center of RobotMax trans velocity of center of Robot
defaultValue0.5
datanameTransMaxVelocity
2nameTransMaxAcceleration
unit[m/sec^2]
defaultValue1.0
typedouble
constraintnone
range
unit[m/sec^2]
descriptionMax trans acceleration of center of Robot
defaultValue1.0
datanameTransMaxAcceleration
3nameRotMaxVelocity
unit[rad/sec]
defaultValue0.7
typedouble
constraintnone
range
unit[rad/sec]
descriptionMax rotation velocity of center of Robot
defaultValue0.7
datanameRotMaxVelocity
4nameRotMaxAcceleration
unit[rad/sec^2]
defaultValue1.0
typedouble
constraintnone
range
unit[rad/sec^2]
descriptionMax rotation acceleration of center of Robot
defaultValue1.0
datanameRotMaxAcceleration
5namevelGainByLength
unitnone
defaultValue3.0
typedouble
constraintnone
range
unitnone
descriptionThe LENGTH element's gain for controlling velocity ([LENGTH] is the distance from Current position to Target path)
defaultValue3.0
datanamevelGainByLength
6namevelGainByDeltaLength
unitnone
defaultValue30.0
typedouble
constraintnone
range
unitnone
descriptionThe DELTA LENGTH element's gain for controlling velocity ([LENGTH] is the distance from Current position to Target path)
defaultValue30.0
datanamevelGainByDeltaLength
7namevelGainByTheta
unitnone
defaultValue1.8
typedouble
constraintnone
range
unitnone
descriptionThe THETA element's gain for controlling velocity ([THETA] is the differential Angle from Current posture angle to Target path's angle)
defaultValue1.8
datanamevelGainByTheta
8namevelGainByDeltaTheta
unitnone
defaultValue18.0
typedouble
constraintnone
range
unitnone
descriptionThe DELTA THETA element's gain for controlling velocity ([THETA] is the differential Angle from Current posture angle to Target path's angle)
defaultValue18.0
datanamevelGainByDeltaTheta
9nameRotFinBorder
unit[rad]
defaultValue0.05232
typedouble
constraintnone
range
unit[rad]
descriptionthe border of [ROTATION ANGLE] (the value of tolerance margin) 1[deg] = 0.01744[rad]
defaultValue0.05232 (=3deg)
datanameRotFinBorder
10nameRotDecBorder
unit[rad]
defaultValue0.1744
typedouble
constraintnone
range
unit[rad]
descriptionthe border of [ROTATION ANGLE] for start decreasing RotVel depend on rest angle
defaultValue0.1744 (=10deg)
datanameRotDecBorder
11nameGoalFinBorder
unit[m]
defaultValue0.05
typedouble
constraintnone
range
unit[m]
descriptionthe border value [m] of GOAL (the value of tolerance margin) (this value needs to be less than "Deviatinglen" in LocalPathPlanngRTC)
defaultValue0.05
datanameGoalFinBorder
12nameGoalDecBorder
unit[m]
defaultValue0.5
typedouble
constraintnone
range
unit[m]
descriptionthe border value [m] for decreasing velocty
defaultValue0.5
datanameGoalDecBorder
13nameObstacleFinBorder
unit[m]
defaultValue0.25
typedouble
constraintnone
range
unit[m]
descriptionthe border of controlling velocity by Obstacle
defaultValue0.25
datanameObstacleFinBorder
14nameObstacleDecBorder
unit[m]
defaultValue3.0
typedouble
constraintnone
range
unit[m]
descriptionthe border of controlling velocity by Obstacle
defaultValue3.0
datanameObstacleDecBorder
15nameobstacleWeight
unitnone
defaultValue0.6
typedouble
constraintnone
range
unitnone
descriptionThe OBSTACLE element's weight for controlling velocity (If Obstacles are close to myself, change Max velocity to multiplied this value.)
defaultValue0.6
datanameobstacleWeight
16namegoalWeight
unitnone
defaultValue0.4
typedouble
constraintnone
range
unitnone
descriptionThe GOAL element's weight for controlling velocity (If GOAL is close to myself, change Max velocity to multiplied this value.)
defaultValue0.4
datanamegoalWeight
17nameleftWheelID
unitnone
defaultValue0
typeint
constraintnone
range
unitnone
descriptionID number of left wheel of mobile robot.
defaultValue0
datanameleftWheelID
18namerightWheelID
unitnone
defaultValue1
typeint
constraintnone
range
unitnone
descriptionID number of right wheel of mobile robot.
defaultValue1
datanamerightWheelID
19nameradiusOfLeftWheel
unit[m]
defaultValue0.1
typedouble
constraintnone
range
unit[m]
descriptionradius of left wheel of mobile robot
defaultValue0.1(RefHard2 model)
datanameradiusOfLeftWheel
20nameradiusOfRightWheel
unit[m]
defaultValue0.1
typedouble
constraintnone
range
unit[m]
descriptionradius of right wheel of mobile robot
defaultValue0.1(RefHard2 model)
datanameradiusOfRightWheel
21namelengthOfAxle
unit[m]
defaultValue0.441
typedouble
constraintnone
range
unit[m]
descriptionlength of axle (from left wheel to right wheel)
defaultValue0.441(RefHard2 model)
datanamelengthOfAxle
22nameradiusOfBodyArea
unit[m]
defaultValue0.45
typedouble
constraint
range
unit[m]
descriptionlength of body radius (from center of Axle to corner of Body)
defaultValue0.45(RefHard2 model)
datanameradiusOfBodyArea
dataports/doc_dataport
1portTypeDataInPort
unit
subscriptionType
dataflowType
interfaceType
idlFile
typeIIS::TimedPosition
nameLocalizedPosition
positionLEFT
variableNameLocalizedPosition
operation
occerrence
unitX,Y data : [m], Angle : [rad], timeStamp: [sec],[nanosec]
semanticscurrent Localized Position data (the position of center of robots model)
[0]: X data
[1]: Y data
[2]: posture angle[rad]
number4 (x,y, posture angle) , timeStamp:1, error[]
typelocalized Position data: double, timeStamp:tm
descriptioncurrent Localized Position data
2portTypeDataOutPort
unit
subscriptionType
dataflowType
interfaceType
idlFile
typeIIS::TimedVelocity
nameTargetVelocity
positionRIGHT
variableNameTargetVelocity
operation
occerrence
unitTrans velocity [m/s], Rot velocity [rad/s], timeStamp: [sec],[nanosec]
semanticstarget Trans/Rot Velocity of robot's center data for PD control
[Trans Velocity]: translational velocity of robot's center [m/sec]
[Rot Velocity]: rotation velocity (swing velocity) of robot's center [rad/sec]
numberTrans velocity data:2, Rot velocity data:1, timeStamp:1
typeTrans/Rot velocity data: double, timeStamp:tm
descriptiontarget Trans/Rot Velocity of robot's center data for PD control
3portTypeDataOutPort
unit
subscriptionType
dataflowType
interfaceType
idlFile
typeTimedDouble
nameDeviantDistance
positionRIGHT
variableNameDeviantDistance
operation
occerrence
unitdistance data : [m], timeStamp: [sec],[nanosec]
semanticsdiviant distance from current position to the target point on the PATH
[0]: distance ([current position] -- [the point on the palnned PATH])
numberdistance data:1 , timeStamp:1
typedistance data: double, timeStamp:tm
descriptiondiviant distance from current position to the target point on the PATH
serviceport/doc_serviceport
1nameMapBuilderProv
positionLEFT
ifdescription[Provider]
(1) for receiving MapData
descriptionfor MapBuilderRTC
serviceinterface/doc_serviceinterface
1nameMapBuilderDrive
path/tmp/OpenINVENT-4.0.0/DriveControl_ver4.0.0
typeDrive
idlFile/tmp/OpenINVENT-4.0.0/DriveControl_ver4.0.0/DriveControlPro.idl
instanceNameMapBuilderDrive
directionProvided
docPostCondition
docPreCondition
docException
docReturnvoid
docArgumentSetMap()
MapData : map data (0,1..)
MapLengthX : X length of MAP [m]
MapLengthY : Y length of MAP [m]
GridSizeX : size of X GRID [m]
GridSizeY : size of Y GRID [m]
description[Provider]
(1) for receiving MapData
2nameMapMaintenanceProv
positionLEFT
ifdescription[Provider]
(1) for receiving Map update data (including ObstacleData)
descriptionfor MapMaintenanceRTC
serviceinterface/doc_serviceinterface
1nameMapMaintenanceDrive
path/tmp/OpenINVENT-4.0.0/DriveControl_ver4.0.0
typeDrive
idlFile/tmp/OpenINVENT-4.0.0/DriveControl_ver4.0.0/DriveControlPro.idl
instanceNameMapMaintenanceDrive
directionProvided
docPostCondition
docPreCondition
docException
docReturnvoid
docArgumentMapUpdate()
X : array number of X Map grid data
Y : array number of Y Map grid data
value: Presence of obstacle [0= not exists : 1= exists]
num : the number of array data
sec : Made time [sec]
nsec : Made time
description[Provider]
(1) for receiving Map update data (including ObstacleData)
3nameLocalPathProv
positionLEFT
ifdescription[Provider]
(1) for receiving LocalPathData
descriptionfor LocalPathPlanningRTC
serviceinterface/doc_serviceinterface
1nameLocalPathDrive
path/tmp/OpenINVENT-4.0.0/DriveControl_ver4.0.0
typeDrive
idlFile/tmp/OpenINVENT-4.0.0/DriveControl_ver4.0.0/DriveControlPro.idl
instanceNameLocalPathDrive
directionProvided
docPostCondition
docPreCondition
docException
docReturnvoid
docArgumentLocalPathCourse()
PathX : physical value of X path data
PathY : physical value of Y path data
num : the number of array data
direction : 1=[Ahead] 2=[Back]
description[Provider]
(1) for receiving LocalPathData
4nameInventGUIProv
positionLEFT
ifdescription[Provider]
(1) for changing MAX parameters
(2) for receiving start/finish etc.. commands
(3) for receiving start/goal position data
(4) for setting SafeMode
descriptionfor InventGUIRTC
serviceinterface/doc_serviceinterface
1nameInventGUIDrive
path/tmp/OpenINVENT-4.0.0/DriveControl_ver4.0.0
typeDrive
idlFile/tmp/OpenINVENT-4.0.0/DriveControl_ver4.0.0/DriveControlPro.idl
instanceNameInventGUIDrive
directionProvided
docPostCondition
docPreCondition
docException
docReturnvoid
docArgument(1) SetMaxValues()
TransMaxV : trans max velocity of robot
TransMaxA : trans max acceleration of robot
RotMaxV : rotation max velocity of robot
RotMaxA : rotation max acceleration of robot

(2) SetSafeMode()
mode : the number of safe mode (TODO: 0:??, 1:??, 2:??)

(3) SetPosition()
StartX : Start position X
StartY : Start position Y
StartAngle : Start Angle
GoalX : Goal position X
GoalY : Goal position Y
GoalAngle : Goal Angle
Direction : 1=[Ahead] 2=[Back]
description[Provider]
(1) for changing MAX parameters
(2) for receiving start/finish etc.. commands
(3) for receiving start/goal position data
(4) for setting SafeMode
5nameBumpProv
positionLEFT
ifdescription(1) for receiving bump command
descriptionfor BumpDetectionRTC
serviceinterface/doc_serviceinterface
1nameBumpDrive
path/tmp/OpenINVENT-4.0.0/DriveControl_ver4.0.0
typeDrive
idlFile/tmp/OpenINVENT-4.0.0/DriveControl_ver4.0.0/DriveControlPro.idl
instanceNameBumpDrive
directionProvided
docPostCondition
docPreCondition
docException
docReturnvoid
docArgumentvoid
description(1) for receiving bump command
6nameInventGUICons
positionLEFT
ifdescription[Consumer]
(1) for sending information of arriving to Goal.
descriptionfor InventGUIRTC
serviceinterface/doc_serviceinterface
1nameDriveInventGUI
path/tmp/OpenINVENT-4.0.0/DriveControl_ver4.0.0
typeInventGUI
idlFile/tmp/OpenINVENT-4.0.0/DriveControl_ver4.0.0/DriveControlCons.idl
instanceNameDriveInventGUI
directionRequired
docPostCondition
docPreCondition
docException
docReturn(1)Goal():
void
docArgument(1)Goal():
void
description[Consumer]
(1) for sending information of arriving to Goal.