Measuring Cooperative Robotic Systems Using Simulation-Based Virtual Environment Xiaolin Hu Computer Science Department Georgia State University, Atlanta GA, USA 30303 Bernard P. Zeigler Arizona Center for Integrative Modeling and Simulation University of Arizona, Tucson AZ, USA 85721
23
Embed
Measuring Cooperative Robotic Systems Using Simulation-Based Virtual Environment Xiaolin Hu Computer Science Department Georgia State University, Atlanta.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Measuring Cooperative Robotic Systems Using Simulation-Based Virtual Environment
Xiaolin HuComputer Science Department
Georgia State University, Atlanta GA, USA 30303
Bernard P. ZeiglerArizona Center for Integrative Modeling and Simulation
University of Arizona, Tucson AZ, USA 85721
Agenda
• Background on DEVS and Model Continuity
• The Virtual Measuring Environment
• The Robotic Convoy Example
• Preliminary Simulation Results
• Future Work
• Derived from mathematical dynamical system theory
• Based on a formal M&S framework
• Supports hierarchical model construction Atomic model Coupled model
• Explicit time modeling
DEVS (Discrete Event System Specification)
Source
SystemSimulator
Model
Experimental Frame
SimulationRelation
ModelingRelation
behavior database
real
DEVS Formalism
A Discrete Event System Specification (DEVS) is a structure
M = <X,S,Y,int,ext,con,, ta> where
X is the set of input values. S is a set of states. Y is the set of output values.
int: S S is the internal transition function.
ext: Q Xb S is the external transition function, where Q {(s,e) | s ?S, 0 e ta(s)} is the total state set, e is the time elapsed since last transition, Xb denotes the collection of bags over X.
con: S Xb S is the confluent transition function.
: S Yb is the output function. ta: S R+
0, is the time advance function
A Background on Model Continuity for Robotic Software Development
The control logic tobe designed
Realenvironment
Sensor/actuator
Robotic system to be Designed
Controlmodel
Environmentmodel
VirtualSensor/actuator
Simulation & Test
Modeling
Controlmodel
Realenvironment
Sensor/actuatorinterface
System in Execution
Mapping
A Virtual Measuring Environment
A virtual measuring environment – an intermediate step that allows models and real robots to work together within a “virtual environment”
Simulation-based measuring using robot models and the environment model
Real system measuring with all real robots within a real physical environment
This virtual measuring environment will bring simulation-based study one step closer to the reality.
Realization of the Virtual Measuring Environment
• Model Continuity allows the same control models used in simulation to be deployed to real robots for execution. The couplings among these models are maintained from simulation to execution.
• The clear separation between the control model and sensor/actuator interface make it possible for the control model to interact with different types of sensors/actuators, as long as the interface functions between them are maintained.
• The control model of a real robot can use real sensors/actuators to interact with the real environment and virtual sensor/actuators to interact with a virtual environment.
• A real robot can communicate with robot models simulated on computers, resulting in a system with combined real and virtual robots.
virtual environment
virtual obstacle
virtual robots
computer
virtual counterpart of the real robot
ControlModel
virtual sensors HIL actuators
wireless communication
mobile robot
Architecture of the Virtual Measuring Environment
An Incremental Measuring Process
RobotModel
RobotModel
Virtual Environment
Virtual Sensor
Virtual Actuator
Virtual Sensor
Virtual Actuator
(a)
Conventional simulation
RobotModel
RealRobot
Virtual Environment
Virtual Sensor
Virtual Actuator
Virtual Sensor
HIL Actuator
(b)
Robot-in-the-loop simulation
RealRobot
RealRobot
Real Environment
Real Sensor
Real Actuator
Real Sensor
Real Actuator
(c)
Real system measurement
Experimental Frames
• input stimuli: specification of the class of admissible input time-dependent stimuli. This is the class from which individual samples will be drawn and injected into the model or system under test for particular experiments.
• control: specification of the conditions under which the model or system will be initialized, continued under examination, and terminated.
• metrics: specification of the data summarization functions and the measures to be employed to provide quantitative or qualitative measures of the input/output behavior of the model. Examples of such metrics are performance indices, goodness-of-fit criteria, and error accuracy bound.
• analysis: specification of means by which the results of data collection in the frame will be analyzed to arrive at final conclusions. The data collected in a frame consists of pairs of input/output time functions.
An Architecture with Experimental Frames
RobotModels
EnvironmentModel
ExperimentalFrames
Define input stimuli, control, metrics, analysis from the measuring point of view
Model how the environment reacts/interacts with robots
Control model of robots
Models of sensors and actuators
Robot2
BReadyIn
FReadyIn
FReadyOut
BReadyOut
Robot3
BReadyIn
FReadyIn
FReadyOut
BReadyOut
FReadyOutRobotn
FReadyInRobot1BReadyIn
BReadyOut……
A Robot Convoy Example
• Robots are in a line formation with each robot has a front neighbor and a back neighbor.
• The system try to maintain the coherence of the line formation
• A robot’s movements are synchronized with its neighbors
• A robot (except the leader robot) goes through a basic “turn – move – adjust – inform” routine.
• No global communication/coordination exists.
Avoid
Convoy
HWInterface activity
move
FReadyOutFReadyIn
moveComplete
moveComplete move
BReadyIn BReadyOut
FReadyOut
BReadyOut
FReadyIn
BReadyIn
• Based on Brooks’ Subsumption Architecture
• The Avoid model controls a robot to move away if the robot collides with anything. The Convoy model is fully responsible to control a robot to convoy in the team.
• HWInterface activity is responsible for the sensor/actuator hardware interfaces.
Robot Model
i
i-1 i
i-1
adi-1
di
D
RiRi-1
iRi-1
Ri
)cos(*
)sin(*
11
11
iii
iiii da
dtg
Dd
di
iiii
sin
)sin(* 11
iiiiii 11
Formula of Movement
move1 sensorData1
sensorDataN
startMove TimeManager1Robot1 t1
SpaceManager
Robot1 (x, y)
RobotN (x, y)
Obstacles (x, y)
moveComplete1
moveN startMove TimeManagerNRobotN tN
moveCompleteN
……
……
……
……
……
• This TimeManager determines how long it takes for a robot to finish a movement.
• The SpaceManager is a model of the experimental floor space, including the size, shape and position of the work area, the static objects and robots.
• In this example we have ignored the detailed dynamic processes of a movement.
Environment Model
Two Noise Factors
Random numbers are used to simulate the noises and variances in robots’ movement.
d
aD
Distance noise factor (DNF): the ratio of the maximum distance variance as compared to the robot’s moving distance.
Angle noise factor (ANF): the ratio of the maximum angle variance as compared to the robot’s moving distance.
The formation coherence is affected by the noise factors.
We use the average position error of the robot team as the indicator for the convoy system’s formation coherence: the smaller the error is, the more coherent the convoy system is.
The position error does not accumulate over time – coherent.
Position errors vs. noise factors
20
25
30
35
40
45
1
56
4
11
27
16
90
22
53
28
16
33
79
39
42
45
05
50
68
56
31
61
94
67
57
73
20
78
83
84
46
90
09
95
72
simulation steps
po
sit
ion
err
ors
Series1
Series2
Series3
Series 1: DNF = 0.04, ANF = 0.04, average = 35.08
Series 2: DNF = 0.1, ANF = 0.08, average = 35.69
Series 3: DNF = 0.2, ANF = 0.1, average = 36.61
Noise Sensitivity
The system is insensitive to the noise factors as long as these factors are within a safe boundary.
Position error vs. number of robots
15
20
25
30
35
40
0 10 20 30 40 50
number of robots
po
sit
ion
err
or
DNF=0.1, ANF=0.08
Scalability
• It shows that the average position error increases as the number of robot increases.
• If this trend holds true with more robots, the system is not scalable in the sense that it will eventually break as more robots are added into the system.
Robot_1 Robot_k Robot_n……
……
Environment Model
Real environment
abstract sensors – abstract motor
abstract sensors – HIL motor
real sensors – HIL motor
A Future Experimental Setup
For example, we can check the back robot’s position errors based on the position and direction of its front robot in the physical environment.