INTRODUCTION
Overview
Download and Install
Quick Start
Documentation
Publications

NONFRAMEWORK CODE
Driver Interfaces
Drivers
Libraries
Utilities

FRAMEWORK CODE
Interfaces
Components
Libraries
Utilities

Full Software Listings

DEVELOPER
Tutorials
Examples
Dev Guide
Dashboard

PEOPLE
Contributors
Users

SourceForge.net Logo
Project
Download
Mailing lists

 

         

Orca Units and Coordinate Systems

Note:
Reviewed for release 2.3.0.

Units

Inter-Component Communication

All inter-component communication is done in S.I. units (Systeme International d'Unites, International System of Units).

Component Configuration

All component configuration is done in S.I. units with one exception: angular quantities are configured in degrees rather than radians, because humans generally think better in degrees. This also applies to angular rates, accelerations, etc.

Component Code

Internally, unless there is a good reason for doing otherwise, S.I. units are used everywhere (including for angular quantities).

Display

All quantities are displayed in S.I. units with one exception: angular quantities are displayed in degrees rather than radians, because humans generally think better in degrees.

Coordinate Frames

Orca uses a right-handed coordinate system.

All angles are defined from -pi to pi, NOT 0 to 2pi.

Inidvidual Coordinate Frames

There are two kinds of coordinate frames (CF): frames that are rooted in a global map, and a platform's local coordinate frame.

coord_frames.png

A global cartesian coordinate frame is shown on the left. Angles are defined anti-clockwise from the x-axis, with zero degrees along the x-axis. The y-axis is at +90 degrees. The z-axis points up.

A local cartesian coordinate frame is shown on the right. The x-axis extends forward from a platform or a sensor, with the y-axis out to the left. The z-axis points up. Zero degrees is directly in front, with angles increasing to the left and decreasing to the right.

Coordinate Frames in a System

Commonly, a system with even one platform must consider several coordinate frames: GPS coordinates are in one, coordinates according to a local map are in another, laser returns are in a third one. Multiple platforms add to the complexity. For various reasons (mapping, display) you may need to bring data from different CF's together.

coord_frames_sys.png

When running a system, one must choose an arbitrary CF to be "global", in a sense that all other ones will refer to it. In practice, it is often convenient to pick one existing CF to be global instead of defining an entirely new one.

Examples of frames:

  • a local projection of GPS coordinates, e.g. MGA94 used in Australia.
  • a locally-built map, e.g. feature map, occupancy grid map, etc.
  • a image of Earth surface.
  • GUI frame used to diplay a portion of the environment

The figure above also illustrates two types of robotic sensors:

  • sensors which make observations in the sensor CF, e.g. laser scanners, sonars, cameras, inertial measurement units, WiFi receivers, etc., and
  • sensors which make observations in non-local CF, e.g. GPS receivers.
 

Webmaster: Tobias Kaupp (tobasco at users.sourceforge.net)


Generated for Orca Robotics by  doxygen 1.4.5