Home

User Manual

image

Contents

1. Back Next gt __ Finish Cancel Check Out As Check Out As Select the method of check out Select the method of check out Choose how to check out folder RoboSim eat Check out as a project in the workspace Project Name RoboSim C Check out into an existing project lt Back Next gt Finish Cancel 4 Using Communication Model The explanation of Communication Model usage will be classified by main users which are the Control Panel and the Robot The Control Panel uses the Communication Model to set up parameters while Robot uses it for message passing Most of the functions are available in CommunicationsSystem object 4 1 Initialization The environment is responsible for initializing the Communication System 4 1 1 and registering robots to the system 4 1 2 4 1 1 Start up Communication System CommunicationsSystem comm new CommunicationsSystem new Environment env 4 1 2 Register a robot to the system All robots in the system must register to the communication system before starting communication session The registration process happens after each robot connected to the environment The environment registers a robot to the communication system after each robot connected to the environment within this method setupNewRobot EnvironmentObjectRobot robot The following sequence diagram explains how registerRobot method is used by the Environment Robot Environ
2. int probability comm getRobotDeliveryProb robotname2 robotnamel These two statements are the symmetric operations Both of these operations will return delivery probability between robotA and robotB Therefore using either one of these operations will return the same result 4 3 Functions for Robot Sending and Receiving messages are core functions provided for Robot Since messages are passed to the Robot via the Environment all these functions will be used by the Environment This sequence diagram describes how to send and receive message within the Environment package Sobor Environment EnvironmentObjectRobot CommunicationsSystem 1 sil aiae aad 2 prepGetEvents 3 queueE vents 4 processMessageE ventQueue timestep 5 myMessageEvent remove 0 6 action lt 7 sendMessage action message timestep loop until i myMessageEvent 8 sendoutAllTheMessages timestep IB eases 9 getMyID 10 ID I lt 11 getMessage ID timestep 12 messages lt 13 sendMessage message 14 output write message lt loop until messages is empty loop EnvironmentObjectRobot is the class that establishes TCP IP connection to Robot Each Environ
3. send messages out All receivers within e Positive this maximum distance from the sender will get the integer message System Delay e 0 no delay This parameter simulates traffic in the system It e Positive will delay messages to the receivers Unit of delay integer time is in time step which is set by the Environment Time step is about 500 milliseconds System e 0 100 This parameter simulates a message lost situation delivery It applies to all messages traversing in the system probability 0 means all messages are lost 100 means all messages are delivered Default value Table 1 System Parameter Description Table Parameter Possible Value Description Name Send link e True This parameter controls the outgoing link status of Outgoing e False a robot If it is set the robot cannot send any link messages out Receive link e True This parameter controls the incoming link status of Incoming e False a robot If it is set the robot cannot get any link messages from the other robots Range e norange The difference between System Range and Robot limit Range is that the Robot Range applies to a specific e Positive robot integer Delay e 0 no delay It is as same as the system one but applies to only e Positive messages sent by a specific robot to a particular integer robot Since this parameter will be set for each pair of robot Delivery e 0 100 It is as same as the system one but applies to only probability messages sent
4. Communication Model for Cooperative Robotics Simulator User Manual Version 1 0 1 Introduction This section will explain how to set up use and integrate the Communication Model with other parts in the system In addition it provides a brief overview of the Communication Model and its associated part 2 Overview Communication Model for Cooperative Robotics Simulator is a component of Cooperative Robotics Simulator It provides communication services to the simulation system The Communication Model component mainly interacts with the two parts the Environment and the Control Panel The Environment is the central component of the system It starts every service in the system including communication The Control Panel is a standalone system that connects to the environment simulator to monitor and control the current simulation The Control Panel provides the Communication Model a graphical user interface to set up communication parameters which will be delineated in the next section The Communication Model uses the Environment as a medium to transfer messages to a robot In addition it also links to the Control Panel via the Environment The following diagram shows how these parts link together Set parameters gt lt a Messages Robot Control Panel A Set parameters Messages Communication 3 Set up 3 1 Required Software e Java 1 4 2 or later http java sun com j2se 1 4 2 download ht
5. by a specific robot to a particular robot Since this parameter will be set for each pair of robot Default value Table 2 Robot Parameter Description Table In case of both system and robot parameter are set the value of each parameter will be as followed Range Summation of system range and robot range Delay Summation of system delay and robot delay Delivery Probability Average of system delivery probability and robot delivery probability 4 2 1 System Parameter Usage e Start up all link comm startupAllLink e Shutdown all link comm shutdownAllLink e Set system range limit In this example the system range is set to 20 comm setRange 20 e Set system delay time In this example the system delay is set to 5 comm setDelay 5 e Set system delivery probability In this example the system delivery probability is set to 90 comm setDeliveryProb 90 e Get system link status boolean status comm isLinkEnabled e Get system range limit int range comm getRange e Get system delay time int delay comm getDelay e Get system delivery probability 4 2 2 int probability comm getDeliveryProb Robot Parameter Usage All these parameters can be set only if the robot has been registered to the communication system e Start up robot s outgoing link The outgoing link of robotA is activated by the following code String robotname robo
6. e RequestHandler class in Environment package initiates a connection between the Environment and the EnvironmentControlPanel It is responsible for processing request and returning response back to the Environment ControlPanel The RequestHandler will determine what request is and call a CommunicationsSystem method correspond to that request Environment EnvironmentControlPanel CommunicationsSystem 1 EnvironmentControlPanelServer port env E EnvironmentControlPanelServer 2 new socket server port MMM 3 registerControlPanel connection al 4 ControlPanelConnection env connection ControlPanelConnection 5 RequestHandler env connection Roasio Requesthandier ia jinput read 7 request 8 output write response e loop There are two groups of communication parameters system parameters and robot parameters The following tables will describe each kind of parameters Parameter Possible Value Description Name System link e True This parameter controls all links status If it is set to status e False true the message passing is activated Otherwise it is not activated This means messages cannot be passed around the system System Range e no range This is a maximum distance limit which all robots limit are able to
7. e the symmetric operations Both of these operations will set delivery probability between robotA and robotB to 90 Hence using either one of these operations will give the same result e Get Robot Outgoing Link Status String robotname robotA boolean status comm isRobotSendEnabled robotname e Get Robot Incoming Link Status String robotname robotA boolean status comm isRobotReceiveEnabled robotname e Get robot broadcast capability status String robotname robotA boolean status comm isRobotBroadcastEnabled robotname e Get robot point to point capability status String robotname robotA boolean status comm isRobotP2PEnabled robotname e Get robot range limit String robotname robotA int range comm getRobotRange robotname e Get robot delay time robotA robotB String robotnamel String robotname2 int delay comm getRobotDelay robotnamel robotname2 or int delay comm getRobotDelay robotname2 robotnamel These two statements are the symmetric operations Both of these operations will return the delay time between robotA and robotB As a result using either one of these operations will return the same result e Get robot delivery probability String robotnamel robotA String robotname2 robotB int probability comm getRobotDeliveryProb robotnamel robotname2 or
8. h time step 1 for robotA String robotname robotA long timeStep 1 Vector msgAVector comm getMessage robotname timeStep
9. m 3 2 Recommended Software Eclipse http www eclipse org downloads index php 3 3 Required Files All source code and executable files are included in CommunicatonModel zip All files must be installed under folder edu ksu cis cooprobot simulator communication Or Using Eclipse to checkout the source code from the CVS as followed Select Menu File gt Import Select Create a new project by checking out an existing project from a CYS repository Select an import source gf Checkout Projects From CVS 3 Existing Ant Buildfile LS Existing Project into Workspace External Features E External Plug ins and Fragments J File system Team Project Set Zip file Checkout from CVS Enter Repository Location Information Finish Select RoboSim and click next the Communication module is included in RoboSim project Checkout from CVS Select Module Select the module to be checked out from CYS Use specified module name Use an exisiting module this will allow you to browse the modules in the repository H E alphashapes H E bnj amp bniv3 amp bnj v3 comp cis690 2003 team1 cis690 2003 team2 cis690 2003 team3 cis690 2004 team3 amp CI5690 2004 Team3 amp colt E CYSROOT E GECCOO4Poster amp MDS gt merit amp mlj E NewWeka E ReuseChar cmm E robosoccer E tools E weka E e A Ge Ge Ge 2 Ge 2 ee lt
10. ment CommunicationsSystem 1 EnvironmentRobotServer port env awarna e botServer T 2 new socket server port L 3 registerRobot connection lt 4 EnvironmentObjectRobot robot EnvironmentObjectRobot 5 setupNewRobot robot lt 6 requestMyID 7 myID 8 registerRobot myID commType e Register a robot with broadcast and point to point capability String robotname robotA Int commType communicationsSystem BROADCASTANDP2P comm registerRobot robotname commType e Register a robot with broadcast capability String robotname robotA int commType communicationsSystem BROADCAST comm registerRobot robotname commType e Register a robot with point to point capability String robotname robotA int commType communicationsSystem POINT2POINT comm registerRobot robotname commType 4 2 Functions for Control Panel As stated above the Control Panel is responsible for setting up communication parameters However the Control Panel have no direct access to the CommunicationsSystem it will pass request to the Environment and the Environment will call CommunicationsSystem method directly The following sequence diagram shows how CommunicationsSystem get request and send response back to the Environment Control Panel Th
11. mentObjectRobot has a queue to keep incoming message from robot In every time step the Environment will read messages in this queue and forward to the CommunicationsSystem by processMessageEventQueue method The process of receiving message is done by sendOutAllMessages method The Environment calls getMessage method from the CommunicationsSystem and forward these messages to the EnvironmentObjectRobot to write out to the socket that connects to the robot The Environment will process sending and receiving messages in every time step It will process sending message processMessageEventQueue and receiving message sendOutAllMessages respectively since receivers should get the message without delay at the same time step as sending time The following method gets messages at current time step from every robot and forwards to the communication system get message from robot forward to communication system processMessageEventQueue currentTime private void processMessageEventQueue long timestep for int i 0 i lt robots size i EnvironmentObjectRobot robot EnvironmentObjectRobot robots get i while robot myMessageEvents isEmpty RobotRequest action RobotRequest robot myMessageEvents remove 0 commSystem sendMessage action message timestep The following method retrieves each robot s messages from the communication system and forwards to the owner robot
12. message by message get message from communication system and forward to robot sendOutAllTheMessages currentTime private void sendOutAllTheMessages long timestep for int i 0 i lt robots size i EnvironmentObjectRobot robot EnvironmentObjectRobot robots get i Vector messages commSystem getMessage robot myID timestep while messages isEmpty Message mess Message messages remove 0 robot sendMessage mess robot sendMessage Message NULL MESSAGE 4 3 1 Send Message e Send Broadcast Message In case of sending broadcast message the receiver name within Message object must be broadcast create a broadcast message robotA is the sender String sender robotA String receiver broadcast 4 3 2 String content new String broadcast message from A Message msg new Message sender receiver content set current time step long timeStep 1 comm sendMessage msg timeStep e Send point to point message create a messag cobotA is the sender String sender robotA robotB is the receiver String receiver robotB String content new String sending a message to B from A Message msg new Message sender receiver content set current time step long timeStep 1 comm sendMessage msg timeStep Receive Message Get all messages wit
13. tA comm startUpSendLink robotname e Shutdown robot s outgoing link The outgoing link of robotA is deactivated by the following code String robotname robotA comm shutdownSendLink robotname e Start up robot s incoming link The incoming link of robotA is activated by the following code String robotname robotA comm startUpReceiveLink robotname e Shutdown robot s incoming link The incoming link of robotA is deactivated by the following code String robotname robotA comm shutdownReceiveLink robotname e Set range limit for a robot String robotname robotA int range 20 comm setRobotRange robotname range e Set delay time between a pair of robot robotA robotB String robotnamel String robotname2 int delay 5 comm setRobotRange robotnamel robotname2 delay or comm setRobotRange robotname2 robotnamel delay These two statements are the symmetric operations Both of them will set delay time between robotA and robotB to 5 Therefore using either one of these operations will give the same result e Set delivery probability between a pair of robot robotA robotB String robotnamel String robotname2 int probability 90 comm setRobotDeliveryProb robotnamel robotname2 probability or comm setRobotDeliveryProb robotname2 robotnamel probability These two statements ar

Download Pdf Manuals

image

Related Search

Related Contents

Nady Systems SRM-14X DJ Equipment User Manual  EMS Manual - your own free website  Scarica il catalogo accessori - Mercedes-Benz  洗面収納ユニット 取扱説明書 設置説明書  INSTALLATION MANUAL - PVK SIA. Official distributor of security  MODE D`EMPLOI DE LA CONFÉRENCE 25, 26 novembre 2015    

Copyright © All rights reserved.
Failed to retrieve file