20.01.2014 Views

ORCA: A physics based, robotics simulator able to distribute ...

ORCA: A physics based, robotics simulator able to distribute ...

ORCA: A physics based, robotics simulator able to distribute ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

handle all environment processing through its server<br />

object. Consequently it can<br />

tackle the large computational<br />

costs that are<br />

inherent in complex robotic structuress and<br />

large environments, by sharing and distributing resources<br />

across simulation<br />

instances.<br />

This functionalityy<br />

is<br />

embodied through threee different properties in n the<br />

<strong>simula<strong>to</strong>r</strong>’s environment: (i) robot<br />

sharing, (ii)<br />

environment sharing, (iii) object sharing. Thesee are<br />

outlined below.<br />

A. Robot sharing<br />

One of the main characteristics of a simulated robot is<br />

that it utilizes resources that are modular, and can be<br />

described by<br />

an I/O convention. Consequently, in most<br />

cases, rendering a simulated robot is a computationally<br />

intensive task<br />

that outputs only a small set s of parameters.<br />

Consider for example the case where a “high degrees<br />

of freedom” manipula<strong>to</strong>r has <strong>to</strong> be processed within a<br />

large environment. At any<br />

given time, the <strong>simula<strong>to</strong>r</strong>r has<br />

the duty <strong>to</strong> process its kinematic chain, integratee the<br />

appropriate equations, and<br />

update the position of the joints<br />

of the hand<br />

<strong>to</strong> simulate it. Even though this process<br />

contains a large number of<br />

computations, it is only used <strong>to</strong><br />

output a small amount of<br />

information, , such as the end-<br />

with such a robot, it is usually important <strong>to</strong> have onlyy this<br />

point location<br />

of the hand. Consequently, when interacting<br />

piece of information avail<strong>able</strong>. Due <strong>to</strong> its design, <strong>ORCA</strong><br />

can facilitate<br />

processing of<br />

such roboticc structures locally,<br />

and <strong>distribute</strong> outputs from the simulation on demand,<br />

only when required (Fig. 6).<br />

simulation environments or being transmitted by the<br />

server.<br />

B. Environment sharing<br />

Another important feature of the <strong>ORCA</strong><br />

<strong>simula<strong>to</strong>r</strong> is<br />

its ability <strong>to</strong> share the processing requirements of large<br />

environments. Such feature is becoming increasingly<br />

important across research projects, and finds applications<br />

in a large number of fields including outdoor <strong>robotics</strong>,<br />

search and rescue simulations, swarm robots etc.<br />

In these typess of environments, usually<br />

the robot is<br />

located within a small manifold space, which must<br />

process. Upon initialization off an experiment, the serverr<br />

loads a virtual world file whichh contains the definitions of<br />

all objects that will be processed by simulation instances.<br />

These are createdd as physical entities and entered in<strong>to</strong> the<br />

world without processing any of their properties (Fig. 7).<br />

Figure 7. (right) The environment-sharing view of thee server showing<br />

how different robots are being processed using different subsets of an<br />

environment. (left) Rendered with redd is robot 1, green robot 2, while<br />

transparently are rendered the surroundings that are not n processed by<br />

any robot.<br />

As soon as a new simulation instance is i loaded in<strong>to</strong><br />

the new world, it communicates its location <strong>to</strong> the server.<br />

The<br />

server responds <strong>to</strong> the request of thee instance by<br />

transmitting the environment and object properties thatt<br />

are in the vicinityy of the roboticc client (Fig. 8).<br />

Figure 6. The environment-sharing view of thee server showingg how<br />

different robots are being processed using <strong>ORCA</strong>’s virtual robots. The<br />

simulation instances transmit all required infromation <strong>to</strong> a server, which<br />

for the given example, reduces the robot’s existence <strong>to</strong> a spatial x, y, z<br />

vec<strong>to</strong>r.<br />

To facilitate this feature, the latest <strong>ORCA</strong> release<br />

includes an extensive network pro<strong>to</strong>col that contains<br />

messages pertaining <strong>to</strong> information sharing amongst<br />

robots. Thesee messages are integrated within appropriate<br />

environment parsers, thatt reside on the server andd are<br />

responsible for filtering and transmitting <strong>to</strong> simulation<br />

instances only the appropriate environment information.<br />

In addition, the latest release uses virtual robots, simple<br />

graphic structures with no physical properties, that can be<br />

used <strong>to</strong> visualize information coming from other<br />

Figure 8. Local copy of o the <strong>simula<strong>to</strong>r</strong> that receives onlyy a partial view of<br />

the environment.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!