Hydra

From Northern Lights Tactical Wiki
Jump to: navigation, search
Splash402.png


How to use this document:

Use the Introduction to familiarize yourself with the technical terms used in the content.
Start with the Interface section to help you find your way around.
Learn about the elements of your mission planning by visiting the Mission Components section.
Wherever you see → Usage , click on it to dig deeper in how to use the controls.




Contents



  Important Safety Instructions

WARNING: THIS PRODUCT SHOULD ONLY BE OPERATED BY TRAINED PERSONNEL. MAINTAIN SAFE DISTANCE BETWEEN ROBOTS AND PEOPLE OR PROPERTY. ALWAYS OPERATE WITHIN VISUAL LINE-OF-SIGHT.

  1. Read and understand this instruction manual before using.
  2. Do not expose the unit to rain or drive the unit through water.
  3. Disconnect battery before repairing or servicing the unit.
  4. Do not touch or short circuit exposed electrical connections.
  5. Do not unplug battery connections by pulling on wires. Only pull connector housings.
  6. Do not operate unit in crowded environments.
  7. Place barriers between people and unit to reduce the risk of injury.
  8. Dispose of batteries in environmentally appropriate manner.
  9. Do not discharge weapons directly at unit.


ALL GUNS ARE ALWAYS LOADED. NEVER POINT YOUR MUZZLE AT ANYTHING YOU DO NOT WISH TO DESTROY. KEEP YOUR FINGER OFF THE TRIGGER UNTIL YOUR SIGHTS ARE ON THE TARGET. ALWAYS BE SURE OF YOUR TARGET AND WHAT IS BEYOND.

  Introduction

System

Hydra Mission Planner is a software/hardware suite to allow your targeting robots to execute controlled complex motions over time, repeatedly.
It is designed to be simple to use without expert knowledge of navigation and robotics.
The only prerequisite is to make sure your range is covered be a WIFI signal that Hydra is going to use to communicate with the robot hardware → WIFI Setup .
Once you have WIFI, you can start Hydra Mission Planner and establish your range map by either using your address or longitude and latitude of your location.
The longitude and latitude can easily be gotten by using a map application such as Google, Bing, or Apple Maps. You can also use a handheld GPS or smartphone to find your current position.
The Mission Planner map will be cached once it has been downloaded from the web and no further internet connection is needed.
You can plan your missions by creating → Routes and → Scripts offline and then test them with → Simulations.
Later on the field, you can establish contact with the actual robot and assign the mission route or script at that time.
Once the mission is assigned and saved it stays with that robot until a new mission is created and assigned.

Geodesic Location

A geodesic location is a specific point on the earth's surface and is at the heart of the mission planner.
A location on a sphere (like the earth) are expressed as two angles:

First, the latitude starts from the equator (0 degree) and ends up at a pole (90 degrees).
In order to distinguish which pole, the north pole is a positive angle and the south pole is a negative angle.
Second, the longitude starts at the Prime Meridian (0 degree at Greenwich, UK) and wraps to 180 degrees around the international time line.
Here, again the direction west or east is indicated by the sign of the number where negative is west and positive goes east.

Global Position System

Hydra Mission Planner uses GPS (Global Position System) to locate the robot's position on your range.
Due to various factors such as satellite coverage, atmosphere, and hardware limitations you can expect, on the average,
an accuracy of 1 meter (3.2 feet) of your actual robot's location. When planning mission, please keep this in mind and
allow ample space between obstacles for your robots to move freely even when the GPS coverage is less then ideal.
The user interface does provide you helpful graphical information to show you if you might run into an obstacle
and you can check the state Global Position System by attaching a GPS unit to the base station. → How To

Navigation

Waypoints are an important part of a successful navigation.
These are named points of interest that can be both a physical feature and/or simply a GPS location.
There are used to indicate the start, destination, and direction changes and when used together constitutes a route or path to navigate.

The connecting line between waypoints is a leg.
Legs can be straight as the crow flies or curved as part of a smooth route.

Compass Rose.png
Orientation is the direction you are pointed at.
Orientation is based on true north expressed in degrees.

0° points to true north.
90° points east.
180° or -180° is south.
270° or -90° is west.


Using Google Satellite Maps

In order to use Google Satellite Maps to create your missions, you will need to obtain an API Key.
Follow this link to get your key: https://developers.google.com/places/web-service/get-api-key
Once you have this key, you can copy & paste it into the Google Access Key edit box in the Settings screen of Mission Planner.
Note: Maps are cached on your computer so you don't need download them unless you change the mission's map size or location. Satellite imagery does get updated periodically, so you may want to check that you have the most recent maps.

  User Interface


Main Overview Anotated.png

 1   Arena View


Arena Map View.png

This is the main viewing area of the user interface.
The operational arena and surrounding area are shown as background.
On top of that graphic, all elements of the mission are superimposed.
These include no-fly zones, routes, scripts, rulers, markers, and current location of robots as icons.

Arena Map Compass.png This compass graphic is purely decorative and indicates the map's orientation.
Arena Map Constellation.png This constellation graphic appears only when a GPS receiver is attached and active. → Setup

Additional there are controls to help you navigate.

Click Arena Zoom In.png to zoom into the map.
Click Arena Zoom Out.png to zoom out of the map.
Click Arena Zoom Reset.png to reset the map to the midpoint of the map.

For trackpads, the computer's gestures to swipe move and pinch zoom the map can be used as well.

 2   Tool Palette

This dockable strip of icons allows a tool to be selected. → Usage

 3   Element List

This resizable area shows the list of elements that the selected tool represents.
Selecting the route tool, for instance, displays all routes of the mission in this list.

 4   Global Controls

The controls in this area start/stop the mission .

 5   Time Line

This shows the global timing of the mission as well as the timing of the currently editable script.

 6   Popup View

Popup view displays scripts editors or robot telemetry based on which tool is active and the element selected.

 7   Viewbar


View Bar 2.png


The view controls what page is currently being displayed:

Arena show the Arena View as well as undo/redo/save controls and the current time.
Missions shows the mission creation/management page → Usage
Settings displays the global settings of Hydra Mission Planner. → Usage
Equipment display the current and archived equipment (robot) list and their configuration. → Usage
About displays Mission Planner version.

Clicking on the sort control SortByNameAZ.png sorts the current list by name.

NOTE: Sorting is not undoable.

Clicking on the save control Save.png saves the current state of the mission.
Clicking on the undo control Undo.png will undo the previous action taken including any redo.
Clicking on the redo control Redo.png redoes the previous undo, effectively canceling the undo.

NOTE: Undoable actions are recorded until memory is full. In practice, this will take a long time.


For convenience, the system clock's current time is displayed on the right side of the bar.

 8   Arena Information Bar


Information Bar.png

Click the GPS control Control GPS.png to record the base station's GPS receiver antenna at the reported location.
it also shows whether a GPS receiver has been attached and is actively receiving GPS location information.
Usage requires GPS receiver to be attached to the base station and actively reporting back the current GPS location. → Setup

Click the WIFI control Control WIFI.png to reset all communication channels to the robots on the field.

Click the broadcast control Control Broadcast.png to activate or deactivate the broadcast signal to automatically connect robots:

Control Broadcast.png indicates active.
Control Broadcast Off.png indicates inactive.

This is useful, if you want to temporarily halt any communication and suspend operations for awhile without shutting down Hydra.
NOTE: Make sure to reset the communication after the broadcast has been deactivated. See WIFI control Control WIFI.png.

The current location and altitude at the mouse position as it hovers over the Arena View's map.
The coordinate format displayed can be changed in the Settings screen.
The empty space after the location information is used for simple messages that arise during operations.
This may include state changes and error messages.

  Components of a mission

Tool Maps.png
Arena Map

The arena map is the birds-eye view of the operational area in which the robot is operating. → Usage

Tool Marker.png
Markers

Markers are graphic indicators for locations of interest.
These include home locations of robots and the antenna location of the base station. → Usage

Tool Route.png
Routes

Routes are paths used by the robot to travel from waypoint to waypoint. → Usage

Paths

TBD

Tool Script.png
Scripts

One of the more powerful features of planning a mission is using a script to describe a unique motion per robot.
While routes give you basic motion from A to B with a specific speed, script allows you to stop, turn,
and vary the speed from waypoint to waypoint based on timing. → Usage

Tool Zone.png
No-fly zones

No-fly zones are areas where the robot are not allowed to travel to or through.
These include obstructions such as buildings and difficult terrains to traverse.→ Usage

Tool Ruler.png
Rulers

This feature allows you to measure distances and orientation angle relative to true north. → Usage

Tool Device.png
Robots

Devices are all robots, both online and offline, that are present in the current mission. → Usage

File Icon.png
Mission Files

Mission files are are used to store the current state of a mission.
Whenever Mission Planner saves a mission, it updates these suite of files to save the mission at that moment to be later restored.
They are saved in the operating system's documentation directory under "HydraMissions" directory.
Each mission has its own directory where it stores all necessary mission information.

NOTE:
While all files are human readable, it is NOT recommended to try editing them outside Mission Planner.
They contain important information necessary for the correct function of a mission.


  Mission Control

Mission View NoHeader.png

This view is the mission control where mission care created, removed, or switched.
When entering the sub-views you will see these icons to help navigate the process:

Back Button.png generally will take you back to the previous view, effectively canceling the current action.
Next Button.png generally will take you to the next view to process the next steps.

Create

Create a new mission using this view:

Mission Create View NoHeader.png

Pick the method to create a new mission and hit the control.
Return to the main view, hit Back Button.png.

Use Location

Enter the location as latitude, followed by a comma, then the longitude.
Enter the zoom level for the map. 19 is best but some locations may not have the best imagery available so you can try a lower number.
Enter the number of tiles to show the entire arena.
Hitting return key, will start the download of the map to validate the location.
Use the on-screen controls to zoom in and out of the map.

Mission Create Map NoHeader.png

Hit "Create Map" button to accept the location.
Hit the icon Back Button.png to return to the previous panel.
Hit the icon Next Button.png to go to to the panel to name the new mission.

Mission Create Name NoHeader.png

For convenience, all existing mission are listed to help name the new mission.
Hit the icon Next Button.png to accept the new mission.

Use Address

Creating a mission arena map using an address is similar to using geodesic locations. Instead of latitude, and longitude, an address in form of city, state, country, or house number, street, city, state, country is used instead.
Enter the number of tiles to show the entire arena.
Hitting return key, will start the download of the map to validate the location.
Use the on-screen controls to zoom in and out of the map.


Mission Create Map NoHeader.png
NOTE: Same screen except that Location is now Address.

Hit "Create Map" button to accept the location.
Hit the icon Back Button.png to return to the previous panel.
Hit the icon Next Button.png to go to to the panel to name the new mission.

Mission Create Name NoHeader.png

For convenience, all existing mission are listed to help name the new mission.
Hit the icon Next Button.png to accept the new mission.

Use Mission List

Selecting an existing mission for a new mission is akin to cloning it.
Select the mission to show its arena map as well.

Mission Create Clone NoHeader.png

Hit the icon Back Button.png to return to the previous panel.
Hit the icon Next Button.png to go to to the panel to name the new mission.

Mission Create Name NoHeader.png

For convenience, all existing mission are listed to help name the new mission.
Hit the icon Next Button.png to accept the new mission.

Use Custom Map

This option allows you to load in map imagery from sources other than Google Maps e.g. aerial photos from a UAV.

Use Floor Plan

This option allows you to load in a floor plan for in indoor operating environment.

Open

Open a new mission using this view:

Mission Open 2 NoHeader.png

Select the mission and click the "Open" button.
A popup window reminds you to save the current mission before the new mission is loaded.
Return to the main view, hit Back Button.png.

Copy

Export

The current mission and associated files are bundled into a "zip" file of your choosing.
This file may be later imported into other Mission Planner PC software.
NOTE: This is the preferred way to share missions.

Import

Import a "zip" file generated by Mission Planner during exporting a mission.
The "zip" file contains all supporting files of the exported mission.
NOTE: This is the preferred way to share missions.

Delete

Delete a new mission using this view:

Mission Delete NoHeader.png

Select the mission and click the "Delete" button.
Return to the main view, hit Back Button.png.

Rename

Rename the current mission using this view:

Mission Rename NoHeader.png

Type in a new new name and hit return.
All files supporting the current mission will be renamed and the interface will now reflect the new name.
NOTE: For convenience, a list of all missions is displayed to avoid duplicate names.

Revert to saved

This button will reload the current mission from the most recently saved state.

  About the Tool Palette


Tool Palette 2.png

Tool Interface

The Tool Palette lists all tools to create, manage, and edit all parts of a mission.
Click on the tool's icon, to pick the current tool.
Some tools have sub-tools indicated by a red triangle in the bottom-right corner of the icon.
Click on the tool icon and hold to pop out the list of sub-tools, move the mouse to the sub-tool, and select it.

Tool Tips

Positioning the mouse cursor over various controls and tool pallet icons will show a short description of the control's purpose.

Accessing a Tool’s related Sub-Tools

Click and drag the mouse out of the icon's area to pop out the sub-tools.
Click on the sub-tool to activate it.

Tool Visibility

Some Tools allow its graphic elements to viewable in the Arena View even if they are not active.
By design, an active tool always shows its graphic elements in the Arena View.
Click on the eyeball icon in the bottom left corner of the tool icon to show/hide the graphic.

Special Tool Functions

Double clicking selected tools will bring up dialogs for optional operations.




Tool Palette List

Tool
Selection
Tool
Name
Tool
Visibility
Tool
Double Click
Tool Info.png Info Tool No No
Tool Maps.pngTool Maps Relocate.pngTool Maps Offset.pngTool MapsRescale Off.png Map Tool → Usage No Edit Location and offset → Usage
Tool Marker.pngTool Marker Edit.pngTool Marker Base.png Marker Tool → Usage Yes No
Tool Route.pngTool PathSketchOff.pngTool Path Move.pngTool Path Insert.pngTool Path Edit.pngTool Path Clone.png Route Tool → Usage Yes No
Tool Human.pngTool HumanSketchOff.pngTool Human Move Off.pngTool Human Insert Off.pngTool Human Edit Off.pngTool HumanCloneOff.png Path Tool Yes No
Tool Device.png Robot Tool Yes Create robot simulator → Usage
Tool Zone.pngTool Zone Wall Off.pngTool Zone Rect.pngTool Zone Rect 3Point.pngTool Zone Circle 2Point.pngTool Zone Circle 3Point.pngTool Arena.png No-Fly Zone Creation → Usage Yes No
Tool Zone Edit.pngTool ZoneInsertOff.pngTool Zone Move.png No-Fly Zone Editing → Usage Yes No
Tool Ruler.pngTool Ruler Edit.png Ruler Tool → Usage Yes No
Tool Script.pngTool Script Move.png Script Tool → Usage Yes Create script from route. → Usage

Tool Palette Location

The Tool Palette is a dockable window and can be moved from its default location on the left side to any other side including top and bottom.
Click the title bar region on the top of the tool palette icons and simple drag it to its new location.
If you wish to make it a floating window, simply drag it away from any sides and release it.

  Arena Map

The arena map is the mission's location satellite view used to pick locations for all mission elements.
It is centered around the mission's base location and consists of 1 or more tiles depending on coverage needs.
When a new mission is created, the satellite view is downloaded from the internet which necessitates a live connection.
Once the map tile(s) are downloaded, they are cached onto the computer's internal storage and used without an internet connection.

Note: If the base location is modified, the satellite imagery will need to be downloaded again from the internet.

During download, you will see this graphic below, indicating a download is in progress.
Map Tiling.png
Click the cancel button Button Close.png to stop the download.
To resume download, double click on the Map Tool to bring up the Map Configuration Dialog.
Click the "Update" button.

Map Configuration

Map Wizard.png

Double click on the Map Tool to bring up the above dialog to modify the map numerically.

Change the Latitude and Longitude of the Arena map center.

Change the Area tiles to change the map size and coverage.
Each map tile will cover an area of 150 by 150 meters, or 164 by 164 yards.
comfortably fitting three football fields side by side.

Map area coverage is as follows each side:
1 Tile = 150 meters
9 Tiles = 450 meters
25 Tiles = 650 meters
49 Tiles = 1050 meters

Change the East and North Offset in meters to adjust for GPS inaccuracy.

Click "Update" to affect the changes.

NOTE: The map will reload if the location and tiling have been modified.

Robot shifting

Select the robot shift tool Tool Maps Relocate.png to interactively shift the robot's position.
Normally, this is not necessary and only used in extraordinary circumstances.

Map shifting

Select the shift tool Tool Maps Offset.png to interactively shift the map off its center.
This is a simple numerical offset of the graphic elements to adjust for GPS inaccuracy.
Normally, this is not necessary and only used in extraordinary circumstances.

Floor Plan Scale

Select the Floor Plan Scale tool Tool MapsRescale Off.png to scale a floor plan style map.
This tool assumes that you have a fairly accurate measurement for a wall on the plan.
Click one end of a wall and drag to the other end. A dialog will then appear asking you to specify the length of the wall.

  Markers

Marker View.png

Markers are used to indicate points of interest in the arena.
They also indicate special locations such as the base station's GPS antenna and home location for a robot to return to.
Markers are indicated by Marker Pin.png in the arena view and selecting a marker will show its name.
A special marker indicated by Marker Home.png shows the location of the home position of a robot.
The optional GPS antenna location is shown with this Marker Base.png graphic indication.

Creating a marker

To add a marker, select the create marker icon Tool Marker.png in the tool palette.
Click on the arena map to place the new marker. The bottom tip will be the exact location.

Editing a marker

To move a marker, select the edit marker icon Tool Marker Edit.png in the tool palette.
Click on the marker and move it to a new location.

Optional Base Station Marker

To indicate the base station's GPS antenna location, use the GPS icon Tool Marker Base.png from the maker tool palette.
Click on the map to create it, or click on the existing marker to move it.
NOTE: Only one antenna location is allowed.

Management

Marker Element.png

The markers location can be modified here in the element list.
"Lat" refers to the latitude while "Lon" indicates the longitude of the marker's location. → Definition

Renaming

Marker's name can be renamed by selecting the name and editing it.

Removing

To delete a marker, click on the delete icon Button Close.png.

Visibility

Click on the check box to the left of the name to show or hide the marker in the map view.

Locking

Click on the icon Icon Unlock.png to lock or Icon Lock.png to unlock the marker from being modified.

  Rulers

Ruler Selected.png

Creating a ruler

Click on the ruler icon Tool Ruler.png to add a new distance ruler to the map.
In the arena view, click on the starting point of the measurement and drag the destination point.
The distance and orientation will be displayed in real time while the ruler is created.
Once the ruler is added, it will display its length in a fine print when unselected.
When selected, both distance and orientation are displayed.

NOTE:
Hold the mouse while dragging to the destination point.

Editing a ruler

Click on the ruler edit icon Tool Ruler Edit.png to edit an existing ruler.
Click on either end to reposition it, or click on the line connection the two ends to move the whole ruler.

Management

Ruler Element.png

Renaming

A ruler can be renamed by selecting the name in the element list view to the right of the map view.

Removing

Click on the delete icon Button Close.png.

Visibility

Click on the check box to the left of the name to show or hide the ruler in the map view.

Locking

Click on the icon Icon Unlock.png to lock or Icon Lock.png to unlock the ruler from being modified.

  No-fly Zones

NoFly Zone.png

Zones can be convex Zone Convex.png as well as concave Zone Concave.png and must have a minimum of 3 vertices Zone Triangular.png.

Zones cannot have holes Zone Hole.png or intersect Zone Intersect.png itself.

Creating a No-fly zone

Creating a no-fly zone can be done with a variety of shape tools.

Selecting the zone tool:

Tool Zone Wall Off.png creates a zone intended for identifying walls in a floor plan.
Tool Zone Rect.png creates a zone aligned along north-south and east-west.
Tool Zone Rect 3Point.png creates a rectangle using the third point to rotate it to an arbitrary direction.
Tool Zone Circle 2Point.png creates a circular zone anchored at the first point and using the second point to specify the diameter.
Tool Zone Circle 3Point.png creates a circular zone using 3 points.
Tool Zone.png creates a free-form zone with as many points as necessary to fit the area.

NOTE: Zones are either concave Zone Concave.png or convex Zone Convex.png and cannot intersect itself Zone Intersect.png.


The first click establishes the first vertex.
While dragging around the mouse for the second click, the potential side of the zone is displayed in real time before setting down the next vertex.

NOTE:
Do not hold the mouse while dragging.
Just click, release, and move the mouse to new location.
Repeat.

Each subsequent click will add another vertex until the first vertex is clicked, closing the zone and terminating the current zone creation.
At any time, the user may hit the return key to automatically close the zone and terminate the operation.
Hitting the delete/backspace key while in zone creation will remove the last vertex.

Arena Boundary Zone

The arena boundary serves as the outermost area of allowable robot movement usually restricted to the training ground.

NOTE: Only one arena boundary is allowed.

An arena boundary is created using this free-form tool Tool Arena.png

Editing a No-fly zone or Arena boundary zone

Existing no-fly zone can be edited using these:

Tool Zone Edit.png allows vertices to be moved and removed.

Select a vertex by clicking on it or
Select a side to select its end vertices.
Hitting delete/backspace removes the selected vertices.

Tool Zone Move.png moves the whole zone to a new location.

Management

Zone Element.png

Renaming

The zone's name can be changed by selecting the name and editing it.

Removing

To delete a zone, click on the delete icon Button Close.png.

Visibility

Click on the check box to the left of the name to show or hide the zone in the map view.

Locking

Click on the icon Icon Unlock.png to lock or Icon Lock.png to unlock the zone from being modified.

  Routes

Route Straight II.png

Routes are the named pathways that are used by robots to drive along.
They also are the basis for creating scripts governing the robots behavior and movement.


Elements of a route

Waypoints

A waypoint is a location where the route either begins, ends, or changes direction.
The first waypoint is the starting position. This is indicated by a square enclosing the location in the map view Route Part Starting.png.
The last waypoint is the destination position. This is indicated by a triangle enclosing the location on the map view Route Part Destination.png.
Waypoints in between are indicated by circle enclosing the location on the map view Route Part Waypoint.png.

Legs

Route Part Leg.png
A leg is the connecting path between two waypoints.
An arrow on the leg midway between the two waypoints indicate the travel direction from the starting to the destination waypoint.
The number in small type at the midway of the leg is the leg's length in meters.

Confidence

Route Confidence.png
The robot's accuracy in following the route may vary depending on GPS accuracy and terrain condition.
An area superimposed on the route with an adjustable width is shown to indicate worst case offset of the robot from the route.
This allows the operator to adjust the route around potential obstacles.

Looping

When a route is looped, the connecting leg between the starting and destination point is indicated by a dashed line.

Curved Paths

Routes can be either straight or smooth between waypoints.

Violations

Routes that start, end, or cross a no-fly zone or area boundary are indicated in red.
No-fly zones, and arena boundaries are used to indicate obstacles and dangerous areas where the robot is not allowed to roam.

Creating a route

Click on the Route Tool Tool Route.png to activate the route tool.
The first click creates the starting waypoint of the route with every subsequent click adding more waypoint.

NOTE:
Do not hold the mouse while dragging.
Just click, release, and move the mouse to new location.
Repeat.

After the destination (last) waypoint has been creating, hitting the "Enter" will terminate the route creation and
allow for the next route to be created.
Hitting the delete or backspace key will remove the last waypoint created while creating the route.
It is possible to void the route by deleting the last waypoint until the starting waypoint is deleted as well.

While creating the route, an invalid path that crosses a No-fly zone will be be indicated by a color change to red.
Route Create Invalid.png

When this happens you will also see a dashed line appear showing a suggested route around the No-fly zone.
Route Create Automatic.png

This is the shortest route around the obstacle. Note that this is just a possible route and you are free to edit this detour as needed.
Route Create Solved.png

At this point, setting down a new waypoint at the mouse location will create a route using this suggested detour.
It is entirely possible to create a route that will avoid many No-fly zones by simply creating the starting and destination waypoint only.

Sketching Routes

Select the sketch tool Tool PathSketchOff.png allows you to draw a route in a free-form manner.
Click and hold while moving the cursor around on the screen like a pen. Waypoints will be added as needed; more for complex motion; less for straighter motion.
Note: due to physical limitations of the robots, the actual path driven may not precisely follow the sketched path particularly if there is a lot of fine detail.

Moving waypoints

Select the route's edit tool Tool Path Edit.png to change the location of an waypoint on the route.
Click on the waypoint and move it to a new location. Clicking on the leg between two waypoints will move both waypoints.
Hitting delete or backspace while the waypoint is highlighted will remove it.

Inserting waypoints

Select the route's insert tool Tool Path Insert.png allows a new waypoint to be added on a leg of a route.
While the mouse is hovering above the path between two waypoints, the potentially inserted waypoint is shown as a circle on the path.
Click the mouse will insert a new waypoint.

Translating a route

Select the route's move tool Tool Path Move.png to translate (move) the entire path to a new location.

Click on any part of the route to move it.

Duplicating a route

Select the route's copy tool Tool Path Clone.png to duplicate a route.
This tool allows quick creation of similar paths.
Click on the path to be duplicated and move it to a new location.

Repairing a route

Routes with legs that are shorter then 0.1 meters are considered to be inconsequential.
This means that the robot will still follow the path, but, that short leg is completely ignored and un-necessary.
They display distances that are too small to be considered.

Route Invalid.png
Example: 0.01 m on top of second waypoint is a un-necessary short leg.

The route can be repaired very easily by clicking on the "Fix" button to remove these short legs. → Usage

Management

Route Element.png

Renaming

The zone's name can be changed by selecting the name and editing it.

Removing

To delete a zone, click on the delete icon Button Close.png.

Visibility

Click on the check box to the left of the name to show or hide the zone in the map view.

Locking

Click on the icon Icon Unlock.png to lock or Icon Lock.png to unlock the zone from being modified.

Repair

The "Fix" button will show up if the route contains short legs that are inconsequential.
Route Fix Element.png

Additional Controls

Click the check box next to "Closed Loop" to indicate a closed route with a leg connection the starting location and destination waypoint.
Click the check box next to "Smooth Path" for curved or straight legs between waypoints.
Click the check box next to "Confidence" to superimpose the confidence area of the route.

The radius of confidence can be changed by editing the value. The confidence radius is in meters.

  Scripts

A typical script is structured like this:

# Automatic script for path "Route G"
# NOTE: All scripts require a version

    version 1.0

# 
# Path Specification
# 

    waypoint WP_1 at 34.1043337, -117.7239717
    waypoint WP_2 at 34.1043255, -117.7237885
    waypoint WP_3 at 34.1041385, -117.7237898
    waypoint WP_5 at 34.1041590, -117.7238949
    waypoint WP_4 at 34.1042097, -117.7239816

# 
# Move to home position of path
# 

    move to waypoint WP_1 at 2.00 m/s

# 
# Stop and turn to face first waypoint
# 

    stop
    turn to waypoint WP_2 for 2.0 seconds

# 
# Start mission on path
# 

    move to waypoint WP_2 at 2.00 m/s
    stop
    turn to waypoint WP_3 for 2.0 seconds
    move to waypoint WP_3 at 2.00 m/s
    stop
    turn to waypoint WP_5 for 2.0 seconds
    move to waypoint WP_5 at 2.00 m/s
    move to waypoint WP_4 at 1.00 m/s
    move to waypoint WP_1 at 2.00 m/s

# 
# Halt mission at last waypoint
# 

    halt

A script consists of both executable and non-executable lines.
Non-executable lines are either comments that you can use to document or empty lines.
A comment line always starts with # (pound sign) followed by an optional line of text.
Empty lines are typically used for formatting purposes to easier read the script.

Executable lines have a single command with options that perform some kind of action.
Only one command per line is allowed.
Every command is terminated by a carriage return.

Command Set

Command Description Usage
version This is required as the first executable.

It indicates the version of the script for proper execution.

version < float >
< float > is the version number.
waypoint This command specifies a named waypoint.

Waypoints are destinations on the map as latitude, longitude.→ Definition

waypoint < name > at < longitude >,< latitude >
< name > is the a string without a space naming the waypoint
< longitude > is a floating point number
< latitude > is a floating point number
stop Stop the robot with optional time until next command is executed. stop
Stop and execute next command.

stop for < time > seconds

< time > is a floating point value in seconds

stop for < time > minutes

< time > is a floating point value in minutes
halt Stop the robot and terminate the script. Optional at the end of the script.
drive Switch between forward or backward driving modes. drive < mode >
< mode > is either forward or backward
repeat Repeat the previous commands by traveling to
the next waypoint after the specified tag.
repeat < tag > < count > times
< tag > is the tag line to repeat from,
< count > is an optional integer to indicate how many times to repeat.
NOTE:
The robot will travel to the next waypoint specified after the tag line.
No area avoidance will be performed while the robot travels
back the the first waypoint.
retrace Retrace the previous commands in reverse order
until specified tag has been reached.
retrace < tag > < count > times
< tag > is the tag line to retrace to,
< count > is an optional integer to indicate how many times to retrace.
The robot will turn around and travel back to the specified tag in the reverse order.
Upon reaching the tag, the robot will turn around and repeat the the same path.
oscillate Repeat the previous commands by traveling backwards
in reverse order to the specified tag.
oscillate < tag > < count > times
< tag > is the tag line to oscillate to,
< count > is an optional integer to indicate how many times to repeat.
NOTE:
The robot will travel backwards to the tag line and then move
forward to the oscillate command.
turn Turn the robot by either an angle or towards a waypoint. turn < angle > for < time > seconds >

turn < angle > for < time > minutes >

< angle > is a floating point value in degrees added to the current orientation.
< time > is a floating point value in seconds or minutes.
Positive angle turn clockwise, while negative angle turns counter-clockwise.

turn to waypoint < name > for < float > seconds
turn to waypoint < name > for < float > minutes

< name > is a waypoint that the robot turns until it points to it.
< time > is a floating point value in seconds or minutes.
The robot will use smallest angle to accomplish this task.
move Drive the robot at the specified speed towards its destination move at < speed > m/s for < time > s
< speed > is the speed in meters per second .
< time > is a floating point value in seconds.
Drive the robot in straight line along its current orientation.

move to waypoint < name > at < speed > m/s

< name > is the name of the waypoint
< speed > is the speed in meters per second.
Drive the robot towards the waypoint at speed.

move to location < longitude >, < latitude > at < speed > m/s

< longitude > is a floating point number
< latitude > is a floating point number
< speed > is the speed in meters per second.
Drive the robot towards the location at speed.

move to < name > at < speed > m/s

< name > is the name of the waypoint.
< speed > is the speed in meters per second.
Equivalent to move to waypoint.
ramp Drive the robot starting at the current speed and ending at the specified speed. ramp at < speed > m/s for < time > s
< speed > is the speed in meters per second .
< time > is a floating point value in seconds.
Drive the robot in straight line along its current orientation.

ramp to waypoint < name > at < speed > m/s

< name > is the name of the waypoint
< speed > is the speed in meters per second.
Drive the robot towards the waypoint accelerating or decelerating to the specified speed.

ramp to location < longitude >, < latitude > at < speed > m/s

< longitude > is a floating point number
< latitude > is a floating point number
< speed > is the speed in meters per second.
Drive the robot towards the location at accelerating or decelerating to the specified speed.

ramp to < name > at < speed > m/s

< name > is the name of the waypoint.
< speed > is the speed in meters per second.
Equivalent to ramp to waypoint.
tag Specify a location in the script to jump to or repeat from. tag <name>
< name > is the unique name of the tag.
Use that name in the repeat, retrace, and oscillate command

Creating a Script

Scripts are created by double clicking the script tool.
You will be asked to specify an existing route or a blank script.

Script Creator.png

If no route is specified, a simple blank script is created without any commands.
If a route is specified, a fully functional script with the route's waypoints and appropriate commands to traverse the route.
This is the easiest way to create functional script.
Once the creation dialog is dismissed, the new script will appear in the script list.
You may change the name of the script in the script list by simply clicking on the name and editing it.

Editing a Script

Click on the edit icon Script Action Edit.png to edit the script in the editor. The editor pane is divided into three parts.

Script Editor.png

The top line indicates the name of the script and shows the syntax check and close button.
The bottom line shows important messages.
Finally the middle part is the editor itself displaying the script for modification.
Each line of the script is numbered to the left of the script text.
This is useful in fixing syntax errors.

The editor uses color to tag correct syntax.
Any text that is gray indicates either a syntax error or optional words not necessary for the execution.
Cyan (bluish) lines are comments.
Purple words are commands and required keywords.
Yellow are numbers.

Click the check mark Script Editor Check.png on the top line to verify the syntax of the script.
if the script is correct, the message "Script OK" will appear in the message line.
if the syntax is not correct, the message will indicate the line number and syntax problem followed by "Script Error" below.

To close the editor, click the close button Script Editor Exit.png.

Waypoints locations may be edited using the editor or, better yet, graphically on the map.
Each script is shown as a blue route.
Clicking on the waypoint of a script route and moving it will modify the script to record the new waypoint location.
The script is then automatically saved.

Writing Effective Scripts

An effective script starts with a path that the robot will travel.
Decide first where the robot will move.

Pro Tip:
Build the path of the robot using Route tool first, then convert to a script.
Geodesic locations are numerically very sensitive. Let Mission Planner put those numbers in for you.


Structure

The first command that needs to be included is the version command.
It is important to let the script processor know what commands to expect for both verification and execution.

The next group of commands are any named waypoints and their geodesic location.
These must be specified first before using them.
Using named waypoints makes the script easier to read.
Instead of guessing what the geodesic location number represents, you simply name them to be reused throughout your script.

Pro Tip:
By naming waypoints, it's also easier to edit the numerical coordinates of a particular location in
one place of the script rather than searching and editing all the move and turn commands in the script that use this particular location.


With a series of move and turn commands, the robot will then be instructed to travel along the specified path.

Turn commands are optional, but are created by the script creator to instruct the robot to turn at corners of more than 60 degrees.

Pro Tip:
The robot has to stop and turn on waypoints whose directional change from the previous to the next waypoint exceeds 90 degrees.
This is normal behavior even if the script does not indicate a stop and turn command at that waypoint.
It's best to add a stop and turn command to better control the rate of turn.


Add a "halt" command at the end of the script for clarity.

Pro Tip:
Always specify what you want to happen, even if it's implied.


Retrograde Motion

Retrograde Motion is an important concept that allows the robot to traverse the same path over again.
Think of a sentry guard walking his periphery. He utilizes the same path going back and forth.
The scripting makes this easy by including tags and repeating commands to traverse the same path multiple times or forever.

Tags are placeholders that the repeating commands use to return back to and from by executing all other commands between it and the tag.

Pro Tip:
Retrograde motion are calculated automatically but need to have a previous location to refer.
Place any Tags after the first move command for retrace and oscillate commands.
This will define the first waypoint as the prior location in the retrograde motion.


Motion Style

The repeat command repeats the loop by driving from the last waypoint directly to the first waypoint of the loop.

Pro Tip:
The robot will not respect any no-fly zones while driving directly from the last to the first waypoint of the loop.
Place the last waypoint of the loop as close to, or even overlap, the first waypoint of the loop.


The retrace command repeats the loop by turning around and repeating all commands in reverse order.
Once it reached the tag command, it turns around and repeats all command as written back to the retrace command.

The oscillate command repeats the loop by driving backwards while repeating all commands in reverse order.
Once it reaches the tag command, the robot will drive forwards as specified back to the oscillate command.

Timing Graph

Timing are edited using the timeline editor on the bottom of the main interface.
To show the timing graph, click on the timing edit icon Script Action Timing.png of the script element.

Time Graph.png

The timing graph shows the script's timeline in a graphical way.
The horizontal dimension shows the time starting at zero while the vertical dimension represents the speed in meters per second.

The yellow line represents the speed of the robot in time.
The blue areas shows motion along waypoints at speed indicated by the yellow graph.
The green areas are time intervals where the robot is turning in place.
The red areas are timed stop intervals.

There are several pick points or handles that allow you to edit the speed and timing of the script.
The gray squares and vertical lines separating actions can be selected and dragged horizontally to change the time interval of the prior area.
The yellow circles allow you to change the speed of move and ramp commands.
These changes will be indicated in the script and automatically saved.
While changing the time interval of a motion (blue) region, you will notice that the script will correspond by changing the speed.
Increasing the time interval will lower the speed (slow down).
Decreasing the time interval will raise the speed (speed up). This is due to basic physics. While the motion distance stays the same, the robot has to travel faster if the time to traverse that path segment is less. Otherwise, it has to slow down when the time to reach the end of that section is increased.

The speed of the robot can be manipulated as well by selecting the speed graph (yellow line) and modified by moving up or down.
When changing the speed, you will notice that the time interval is modified as well.
Timing is adjusted as the speed is changed since the distance traveled stays the same.

Ramp commands accelerate or decelerate the robot to the specified speed over the length of the associated path segment.
The robot will start the change in speed from the speed it was previously moving at. If the robot was stopped or turning in place, that speed is zero.

Editing Script Path

An active and selected script will show its path on the map.

The default script tool Tool Script.png allows you to interactively edit each waypoint by clicking on it and dragging it to a new location.
Select the script move tool Tool Script Move.png to drag the entire scripted path to a new location.

NOTE:
Hold the mouse while dragging to the new destination.

Simulating a script

Simulating a script is the same as simulating a robot.
Startup a robot simulation and set the robot's mission to the script.
Execute the robot's mission.

Management

Script Element.png

The number to the right of the script name is the overall time in seconds it takes to execute the script's operations.
From the element view a script can be edited by clicking on the edit icon Script Action Edit.png. → Usage
Clicking on the timing icon Script Action Timing.png, activates the scripts timing in the timeline view. → Usage

Renaming

The script's name can be changed by selecting the name and editing it.

Removing

To delete a script, click on the delete icon Button Close.png.

Visibility

Click on the check box to the left of the name to show or hide the script in the map view.

Locking

Click on the icon Icon Unlock.png to lock or Icon Lock.png to unlock the script from being modified.

  Robot & Simulator Operation

Robots can be added manually for simulation, or by discovery after configuring a physical robot → Setup WIFI.
Once a robot has been added it will remain with the mission until removed from the robot element list.

Management

The robot element list shows all active and inactive robots. Field robots will be become active automatically as long as they are powered and correctly configured to the base station's WIFI router.
An inactive robot is shown with their name and ID only, as well as controls to simulate or remove it from the list.
Any inactive robot can be simulated and mission reconfigured, even those that were discovered during a previous session.

Only inactive robots can be removed from the mission → Usage

Robot View.png

While the robot's device is active or simulated, its current position will be reported using an icon and a heading indicator.
The robot's name and battery condition will be shown as a floating label when selected.
This label is always visible and connected to the robot's map position by a line even when the robot's position is offscreen.
A 2 meter radius safety zone is shown surrounding the robot's position.

Adding a Simulator

To manually add a simulated robot, double-click the Robot Tool to show the following dialog:

Robot Creation.png

Specify the name of the simulator. Although the name does not need to be unique, it helps to find the device in the element list.
Specify the MAC address of the simulator. This can be a the physical's robots MAC address or any type of text.
Specify steering type of the simulator. Zero-turn is a standard TRACS robot while Two-wheel is an Ackerman steering vehicle such as The Kraken.

NOTE:

The MAC address text must be unique from all other robots already in the mission planner for proper functioning.
Physical robots already have unique MAC addresses and will be automatically added to the mission planner.
Robots for simulation purposes can use any string other then a MAC address format (six number separated by dashes).

Setup the mission parameters → Usage.
Click "'Create" button to add the robot to the mission planner.

Drag & Drop Driving

Clicking on the robot's icon center and dragging the cursor around on the map creates a temporary user-defined route that the selected robot will follow rather than heading straight to the end point. For example, if the robot's programmed path has been set to follow a twisted trail or roadway and you need to bring it back to some point on that trail, you simply drag the cursor along the trail.

NOTE:
Hold the mouse while dragging to the destination point.
If a straight path intersects a no-fly zone, Mission Planner will make a suggestion for a path that avoids the zone.
The operator has control over whether or not to use that suggested path or modify it before the robot executes the resulting pre-programmed path.

Device Status Display

Each robot has all necessary device indicators and controls to setup the robot's mission.

Device name

The device name is a user specified name for identification purposes.
The name will appear in the Arena View as a floating label when a robot is selected, as well as in the Equipment View.

NOTE:

Device names need not to be unique but are recommended to be unique for the user to be able to associate the correct information and location.

New robots are shipped with unique factory name and can be changed in the Equipment View → Usage
Make sure to uniquely name simulated robots as well. → Create

Mission assignment

The assigned mission is indicated as follows:

<Type>:<Name> @ <speed>
where
<Type> indicates the type of path as either route ( R ) or script ( S ),
<Name> is the name of the route or script, and
<speed> is the speed at which to execute the mission as meters per second.
Example: R: Route A @ 1.5

Heartbeat indicator

Next to the Device Name is the Heartbeat indicator. When the Mission Planner is connected to a robot and communication is stable, this indicator will pulse green.
As the throughput decreases, the size of the green circle will get smaller. If communication is interrupted, the indicator will turn red with a yellow X as shown below.
Offline Indicator.png

RF Link Quality indicator

Below the Heartbeat indicator is a graphical representation of the RF Link Quality value.

Battery indicator

To the right of the RF Link Quality indicator is a graphical representation of the Battery Percentage value

INS Status

During operation, the INS hardware module will report its current status.

On startup, the status will be INIT indicating a cold start. At the point the GPS system is working on a position solution. Heading will be inaccurate at this point.
In an environment with good sky visibility, the robot will typically acquire a GPS fix on the primary Antenna within 30 to 60 seconds.
Do not attempt to operate the robot during this period.


Typically within a minute of acquiring the GPS fix, the internal GPS compass will begin calculating candidate heading solutions. This state is indicated as WAIT.
Do not attempt to operate the robot during this period.


After the GPS compass calculations have converged, the INS filter will initialize, the mode will switch to ALIGN. It is important to note that the carrier phase measurements that are required to perform the GPS compass calculations are more difficult to track than the code phase and Doppler measurements that are required to calculate position and velocity measurements. It typically takes about 3 to 10 minutes for the GPS compass calculations to converge on the correct solution; however, this startup time is dependent on both the environment and configuration settings. Factors that can lead to longer startup times include nearby objects obstructing, attenuating, or creating multipath reflections of the GPS signals e.g. tree cover, buildings, etc. During this period, you will see the robot's heading value change along with a corresponding yaw rate. The orientation of the robot drawn on the map will also change as it settles on the solution. You can operate the robot manually during this phase but do not attempt to run any programmed path operations. It’s best to allow the robot to acquire an accurate heading solution before moving it.


Once the INS has arrived at a solution within a specified tolerance of approximately 4 degrees, the state will change to LOCK. It may take a few more seconds for the internal Kalman filters to stabilize after LOCK mode occurs so it’s a good idea to wait a bit longer before running programmed path operation.

While the robot is operating, the state will often change between LOCK to TRACK indicating that the system heading solution is very good.

If the received GPS signals become weak, the unit may revert back to the ALIGN state. A heading solution will still be available but it will begin to degrade and become inaccurate in a few minutes. Robot operation is not recommended in this case.

Operational Controls

Robot Element.png

This graphic shows the connectivity indicator, RF link quality, and battery charge, along with percentages.

Button Track.png Device Track Display

Each robot's GPS position is recorded as a track as it moves. Tracks can be drawn in one of eight colors. Click the icon to invoke the popup menu.
Display of a robot's track on the arena view can be turned off by using the Off menu choice.
The track history can be erased by choosing the Clear menu item.
The track history of every active robot can be erased by choosing the Clear All menu item.

GPS Mode
If the Track Display menu is set to GPS, track segments will be colorized based on the GPS signal quality seen at that GPS location.
This can be helpful in a site survey to determine where poor GPS availability is and therefore poor position accuracy of the robot

RF Signal Mode
If the Track Display menu is set to RF, track segments will be colorized based on the WIFI signal quality seen at that GPS location.
Best quality is blue, then green, yellow, and the lowest signal quality is red.
You can use this feature as a way of performing a site survey of the operating area to determine where you might have poor connectivity. Using this feature can help identify where one might place WIFI repeater units for best coverage.

Recorder.png Record/Playback Control

Using this control, the robot's GPS position can be used to create motion paths. Clicking on this icon brings up the Record/Playback menu.
RecordPlaybackMenu.png

From this menu, you can Start and Stop the recording, clear the recording, replay it in the forward direction (from start to end), or replay it in the backward direction (from end to start).
Once the system is in Record mode, you can see the length of the recorded path by hovering the cursor over the Record/Playback Control.
If you like the motion path you have driven on, you can use the Upload menu item at the bottom to create a Route. The created Route will likely have a lot of waypoints though it will try to simplify straight parts while leaving curves intact. As with any Route, you can edit the details as you like or even convert it to a Script.

One of the main uses of this feature is to allow you to create routes when the satellite imagery doesn't show useful detail on the ground where you want the robot to operate such as under heavy tree cover, when temporary structures or vehicles are present, or on large, featureless shooting ranges.
Use either the Joystick in Manual mode or better yet, use the R/C Transmitter radio control to drive the robot around where ever you like.
The resulting motion path will have more detail than you would easily be able to create by drawing a similar motion path.
Note: This feature does not record the speed of the robot. Instead, a constant speed is set by the user when converted to a Route or variable speed when further converted to a Script.

Button Settings.png Mission Assignment

Clicking on the this control will show the following dialog:

Robot Assignment.png

This dialog allows the mission to be assigned to the robot.
The "Home" pop-up picks the location of the selected marker where the robot can be instructed to home to.

NOTE: While picking the name of the home location, the marker will be hi-lighted in the Arena View.
Along with the home position, the top speed to return to it can be edited as well.


The "Route" pop-up selects an existing path from the route list.

NOTE: While picking the name of the route from this control, the route's path will be hi-lighted in the Arena View.
Along with the route, the top speed can be specified as well.


The "Script" pop-up selects and existing script from the script list.

NOTE: While picking the name of the script from this control, the script's path will be hi-lighted in the Arena View.
Along with the script, the speed multiplier speeds up or slows down the script's speed instructions.
A value of 2.0 doubles the execution speed, while a value of 0.5 cuts the execution speed in half.
The default value 1.0 runs the mission at normal speed.


Both, routes and scripts can be assigned but are mutually exclusive.
Only one can be specified for the mission.
Enable the selection button in front of the route and script pop-ups to indicate which to use.

Click "Apply" to save selection, or "Close" to exit without changes.
When working with a simulated robot, you may need to quickly reposition it at the beginning of the assigned route or script.
The "Relocate" button will cause the simulated robot to jump to that location and orient itself along the first leg of that route or script.
This makes testing out routes and scripts easier. Note: this button has no effect on a real robot.

Button Halt.png Stop

Click to immediately stop the moving robot and stop its current mission.

Action Go.png Action Pause.png Play/Pause

Clicking the "Play" button will begin the currently set mission for the robot and usually perform these steps:

  • Travel to the start of the (scripted) route using the shortest path avoiding all No-fly zones.
  • Turn to face the second waypoint.
  • Begin the mission and travel along its route using a specified speed or by script.

The "Play" button also becomes the "Pause" button.
Clicking the "Pause" button will stop the robot's motion and let it wait until the "Play" button is clicked.

Action Backward.png Action Foreward.png Playback direction

Looking at the image below, you can see small arrows between the waypoints. These arrows show the forward direction.
Route Straight II.png
When the Direction control is set so that it points to the right, the robot will run the path from the first waypoint drawn to the last in the same direction as the arrows.
Conversely, if the Direction control points to the right, the robot will run the path from the last waypoint drawn to the first in the opposite direction of the arrows.
Scripts are not currently reversible so this control has no effect when using a script.

Action Repeat.png Repeat/Oscillate

When this control is turned on, the robot will run continually.
If the path is an open loop, the robot will run the path from one end to the other, stop briefly, and then run the path in reverse. Note that the robot does not turn around at the end but instead backs up. This is useful when a 2D target is mounted on the robot and it should be facing up range while it traverses.
If the path is closed loop, the robot will run the path from one end to the other finishing back at the first waypoint. It will then stop briefly and run the path again.
Note: Scripts are not currently repeatable so this control has no effect when using a script.

Action Head.png Go to beginning

Clicking this button causes the robot to move to the first waypoint created on the route or script.

Action Tail.png Go to end

Clicking this button causes the robot to move to the last waypoint created on the route or script.

Action Lineup.png Line Up

Clicking this button essentially sets up the robot to be ready to run the assigned route by moving it to the initial waypoint (taking into account the playback direction) and aiming the robot down the first leg of the route.
Note: Currently, scripts are not reversible so Line Up always goes to the first waypoint in the script.

Action Home.png Go to Home

Stop the current mission and instruct the robot to return to its assigned home position.
A pre-programmed path will be used to avoid all No-fly zones between its current position its assigned home position before execution.

Action Manual.png Manual

Halt current mission and control the robot with an attached joystick if available.

Non-Operational Controls

Robot Inactive 2.png

The inactive view shows the name, MAC address, and any assigned mission route or script.
Click on the delete icon Button Close.png to remove an inactive robot.
Click on the "Simulate" button to start the robot simulator for off-line operation to check motion.

  Robot telemetry

Telemetry View.png

The Robot Telemetry displays highly technical information about the current state of the Robot device.
This is used to check the health of the device while it is performing its function and to trouble-shoot malfunctions as they occur.
During common usage, it is not necessary to pay attention to the information displayed.
Master Alarms are the exception and need to be heeded.
Should an Master Alarms occur, the robot's selection area will turn red
In that case, double click the robot selection area to pop up the telemetry view.
The Debug Panel → Usage will show the problem reported by the device.
You can reset the Master Alarms by clicking the "Reset Master Alarm" button.

Data Panel

This panel displays the current motion parameters.
Speed is the current vehicle speed as reported by the IMU and the GPS sub-systems.
Goal Speed is the desired speed as given by the most recent Route or Script.
Heading is identical to the Yaw value in the IMU panel.

Debug Panel

This panel displays the debug messages and hosts the "Reset Master Alarm" button -> Usage

The checkbox preceding the name and ID of the device enables or disables the message listing below.
Include the data and time of each message by enabling "Include Date and Time" checkbox.

Log the messages by enabling "Log" checkbox.

NOTE: Logs are written in the Documents directory under the "Logs" sub-directory as a text file.

The log file's name is a combination of the date, robot name, and robot's ID (MAC address).
For example: "2017-02-12_14-45-29_HydraTarget1_01-02-03-04-05-06.txt", where
"2017-02-12" is the date,
"14-45-29" is the time,
"HydraTarget1" is the name, and
"01-02-03-04-05-06" is the ID.

"Clear" button clears the message list. "Save" button takes all message thus far and saves them into a user specified text file.
"Reset Master Alarm" button resets the Master Alarms.

Geodesic Panel

The Geodesic Panel displays the GPS location, heading, and confidence parameters.
The "Show" checkbox will display these cached numbers graphically in the Arena View along with the robot's icon.
Clicking "Clear" clears cached GPS information.
Clicking "Save" saves the cached GPS information in GPX file.

IMU Panel

This panel displays the current state of the IMU (Inertial Measurement Unit).
Yaw, Pitch, and Roll are shown in degrees. Yaw is in degrees from True North. Pitch and Roll are degrees from level.
Yaw, Pitch, and Roll rates are shown in degrees per second.
During initialization, the values and rates will change as the system settles into the correct heading.

MCU Panel

This panel displays the status of the MCU (Motion Control Unit).
This section is separated into the left and right side motors (as viewed from the rear of the robot).
Motor Amps shows the approximate current draw of the motors.
Battery Amps shows the approximate current being drawn from the battery by each side.
RPM shows the revolutions per minute at the wheels.
Command shows the requested motor command.
Applied shows the actual applied motor command. This number might be higher than the Command value if, for example, the robot is climbing a slope in order to maintain a constant speed.
MCU Status will show an error condition if one exists. The Master Alarm System works in conjunction with this value.

Net Panel

This panel display the network communication address and data throughput.
The address is the robot's IP address.
Latency shows the the number of milliseconds between data received by the base station (PC).
DataRate shows the number of bytes per second being transmitted between the base station and the robot.

Power Panel

This panel displays the voltage levels reported by the MCU.
Battery is the current main battery voltage and is the most important. While this value can be used as a way of evaluating the state of charge of the battery, during operation, this value will fluctuate depending on the load.
Internal should always be close to 12 volts. Five should always be close to 5 volts. If the MCU reports an error (with an associated Master Alarm), these values can help diagnose the failure.

Thermal Panel

This panel displays the current temperature as reported by the MCU.
IC is the temperature of the MCU's internal computer. M1 and M2 are the temperatures of the power stage electronics.
If a thermal overload is detected and reported, you can look at these values to help diagnose the overload.

 Master Alarm

Master Alarms are error conditions that will cause the robot to stop until the cause of the error has been addressed. Currently, there are two master alarms. The first is a tip-over condition which occurs if the pitch and/or roll of the vehicle exceeds 30 degrees. Generally, if this happens during normal operation, the vehicle is trying to operate on a steep slope or it's trying to roll over something too large. This alarm will also be set if you open the cover of the robot.
The second type relates to motor controller error conditions. Overheating, stalled motors, and electrical failures are some examples. Further details of the nature of the error can be seen in the Debug area of the Telemetry view.

Once you have addressed the error condition, you can reset the Master Alarm by clicking on the "Reset Master Alarm" button.

Note: Low battery level is not a Master Alarm but is indicated in the Device Status area.

  Scenario Operation

A Scenario is a collection of robots each with their assigned mission (route or script).
An example might be three robots emerging from behind a building to engage trainees moving down the street.

Home Button

The Home button will cause all active robots to go to their assigned Home Marker.

Play Button

The Play button will cause all the active robots to first "Deploy" to the beginning of their assigned mission and then execute their assigned mission.

Stop Button

The Stop button will cause all active robots to stop executing their assigned mission.

Joystick-controlled Playback Speed

If you have a joystick connected and selected in the Settings page, the joystick will govern the playback speed of the scenario as a whole.
Think of the throttle trigger as a multiplier on the robot's assigned mission speed. Full trigger means playback at normal speed. Half trigger means playback at half speed.

  Mission Planner Settings

Distance Units

Several tools such as rulers and paths display length on screen. This popup menu allows you to change the units between Metric and Imperial.

Coordinate Format

This popup menu allows you to change the coordinate format between Decimal Degrees, Degrees-Minutes-Seconds, Universal Transverse Mercator, and Military Grid Reference System. Currently, this only applies to the map view status display and the telemetry position display.

Maximum Speed

This is a global speed limit imposed upon all robots in the scenario. Note that using a value larger than the robot is capable of has no effect.

Max Track Samples

As the robots move, their GPS position is recorded and plotted on screen as a colorized trail. The total number of positions stored can be adjusted with this setting.

Track sample spacing

A track sample is generated not by time but rather by distance. A new track sample is saved when the distance between the previous recorded position and the current position is greater than or equal to this value. Since all GPS unit wander slightly even when stationary, this setting filters out small changes in position.

Telemetry samples

Internally, the raw GPS position, the position as given by the INS, and the dead-reckoning position are all being recorded at their own internal time increments. This setting controls the number of samples to be plotted on screen. Plotting of telemetry is mainly used for debugging purposes and can be turned off under normal operations with the checkbox in the Telemetry view.

Playback Controller

This setting specifies which input device to use as a playback speed control for scenario operations.

Google Access Key

Mission Planner uses the Google Static Maps API to access satellite imagery. Google now requires everyone to have their own access key.
Follow this link to get your own key:
Get Google Static Maps API Key

Once you have your key, you can paste it into the edit box and click the Save button to store it on your computer.
You can use the same key on many different computers.
Maps imagery for a mission file usually only needs to be downloaded once because the images are saved in the mission folder on your computer.
You can copy a mission folder from one computer to another as needed.
If you change the map in the mission either by changing its location or changing the number of tiles, new imagery will be downloaded.
Map imagery is periodically updated so you may want to fetch the most recent images.

Local GPS unit

GPS Constellation.png

A GPS unit can be attached to the base station computer to check the satellite configuration and quality of the signal.
Using a USB port, attach the GPS Unit and make sure it is powered up and the antenna has an unobstructed view of the sky.

In the Settings View, set the serial speed, data size, parity, and stop bits that your GPS device uses.
Consult the GPS's manufacturer and model for these settings.
Usually, consumer GPS devices have a serial speed of 9600 baud, 8 bits data, no parity, and 1 stop bits.

Pick the Serial port, labeled "Device".
If you don't know what to pick, just select "Scan...".
Hydra Mission Planner will scan the serial ports for standard NEMA messages to connect to the GPS device.

Once the Mission Planner is connected, the graphic below will show the satellite constellation and plot the accuracy
by measuring the position drift from the first sample.



The GPS graphic shows you the satellites that are currently in view and their signal strengths.
The top row is the list of satellites (numbered ID) at their signal strength as a bar

No bar means lost or no signal
The red portion is poor signal strength, although, given enough satellite is still enough to compute a position.
Yellow is good signal strength.
Green is excellent signal strength.

The spherical horizon show the view from your location above in the sky.

The colored circles are the satellite and their position in the sky at your location.
The cyan (blue-green) circles and trace is the location drift from the first acquired location signal.
Dirft is both in distance and direction.

The plot blow the horizon indicates the drift plotted in time.
After a minute, the drift will reset itself and start its calculation from a newly acquired location.
Double clicking on the plot forces the calculation to restart.

  Equipment Settings

Equipment View.png

The Equipment view lists all devices in the mission and their operational configuration.
Here, the configuration as well as the firmware of the device can be updated via WIFI link.

Equipment/Device List

Equipment Element.png

The equipment/device list shows all devices currently presented in the mission.

Active

This cell is currently unused.

Image

Depending on the device type, this icon will change.

Name

Shows the current name of the device. By default, this is the name stored on the hardware.
You can change the name by double-clicking on the name box. Press Enter to complete the change.

Type

Shows the type of equipment, currently Robot or Simulator.

Equipment

When OK is shown in this table cell, the device's equipment settings match those stored locally on the computer running Mission Planner in the Mission file.
SyncEquipmentButton.png

When a button labelled Sync is shown, that means that the settings on the robot and those stored locally do not match. The button gives you the opportunity to retrieve the settings from the robot or to send new settings to the robot.
Under normal conditions, you will not need to use this feature.

If you click the Sync button, you will be presented with a dialog allowing you to choose the direction of the settings transfer.
SyncEquipmentDialog.png

MAC Address

Shows the hardware MAC address of the wifi adapter on the robot.
In the case of a simulator, this will be the user-defined address specified when the simulator was added to the mission.

IP Address

Shows the IP address assigned to the robot by the wifi router.
In the case of a simulator, this value will be the IP address of the computer running Mission Planner.

Status

This shows the connected state of the robot either Online or Offline.

Version

This section of the table shows the current firmware version on the hardware device.
When the device is online, a button labeled Update Firmware... will be visible.
Version Firmware.png

Clicking Update Firmware... will bring up a standard file selection dialog. Note: only valid firmware files can be uploaded.

Device Settings

NOTE:

Most users will never need to change these settings.
If you're unsure, it's best to leave the values set to their defaults unless otherwise instructed to by Northern Lights Tactical'.


Equipment Panel.png

Maximum Speed

This value limits the maximum speed of the vehicle in meters per second.
The hardware has theoretical top speed which is based primarily on the wheel size. This value is reduced slightly to allow the control algorithms to increase power when climbing a slope.
The current stage of charge of the battery will also affect the top speed.
A good rule of thumb for a 12-inch tire is 3.5 meters per second.

Staging Speed

Certain driving operations such as Go To Home, Line Up, Go To Beginning/End, and Drag-and-drop driving run at the speed defined by this setting in meters per second.
We recommend using a comfortable walking speed.

Max Turn Rate

This value limits the rate of turn of the robot during pre-programmed path operation.
You should never need to change this setting.

Chase Distance

During pre-programmed path operation, the robot looks ahead on the pre-programmed path for steering.
Decreasing this number can result in more precise paths but can also result in fish-tailing.
Increasing this number reduces fish-tailing but will greatly soften cornering.
You should never need to change this setting.

Turn Rate Boost

This value boosts the rate of turn of the robot during pre-programmed path operation to achieve sharper turns.
You should never need to change this setting.



Wheel Base

This value represents the distance between the front and rear axles of the vehicle in meters.
You should never need to change this setting.

Wheel Diameter

This value represents the diameter of the wheels in meters.
You should never need to change this setting.

Wheel Track

This value represents the distance between the left and right wheel center lines in meters.
You should never need to change this setting.

Body Width & Body Length

Some robots such as The Kraken can have a body shell that's larger than the size of the chassis.
These values allow you to specify the size of this body in meters. A rectangle of that size will be drawn on screen allowing you a visualization of its footprint on the map.

Steering Type

This popup menu sets the steering type of the robot.
Zero-turn is used for a standard TRACS skid-steering type robot.
Two-wheel is used for Ackerman steering such as in The Kraken vehicle system.
WARNING: Never change this setting for real hardware.

INS Offset

This setting represents the location of the Inertial Navigation System hardware module relative to the center of rotation of the vehicle.
The X axis is the forward axis of the robot. The Y axis is left/right on the robot and the Z axis is up/down.
You should never need to change these values.

GPS Antenna Offset

This setting represents the location of the primary GPS antenna on the right side of the robot (when viewed from the rear) relative to the INS hardware module inside the brain box.
You should never need to change these values.

GPS Baseline

This setting represents the location of the secondary GPS antenna on the left side of the robot (when viewed from the rear) relative to the primary GPS antenna.
You should never need to change these values.

GPS Uncertainty

This setting represents any uncertainty in the location of the GPS antennas.
Some uncertainty is necessary in order for the algorithms to arrive at a solution in a reasonable amount of time.
You should never need to change these settings.

Update settings

Clicking this button will transmit changes to the selected robot hardware.

Default Settings

Should you make a mistake altering any of the above settings, this popup menu will allow you to reset them to factory defaults.

  Obstacle Detection

There are several types of obstacle detection in the Hydra ecosystem. Detection only serves as a safety mechanism to stop robots.
As such, it is very important to understand that the robots have no ability to plan their movements.
A virtual bumper zone exists for each robot and extends in the direction of travel and to a length related to the speed of the robot.
This bumper zone is drawn on the map as a light blue rectangle.

BumperZone.png

Between Robots

When the bumper zone of a robot intersects the bumper zone of another robot, a Master Alarm is indicated and the robot is stopped.
This type of detection is active whenever a robot is driving a route or script, during the Line-up or Go Home operations, or during Drag-and-Drop driving.

Under Manual Control

When a robot is operating under joystick control and the bumper zone intersects with another robot or a No-fly Zone, a Master Alarm is indicated and the robot is stopped.
However, it is still possible to reverse direction and back away from the obstacle.

Optional LIDAR Sensor

When equipped with the optional LIDAR Sensor accessory, any obstacles either moving or static that are seen will cause the robot to stop.
In the case of a moving obstacle e.g. a person walking in front of the robot, once the obstacle is no longer seen, the robot will resume the mission assigned by the operator.

  Robot Communication Setup

Before the first use, new robots need to be configured in order to allow WIFI connection to the base station.
A good quality ethernet patch cable will be needed to connect the robot to a browser capable PC with an ethernet jack.

Proper configuration of your WIFI router is important.
Since the robot's ethernet ports are configured with a static IP address of 192.168.0.50 and 192.168.1.100,
your WIFI router's gateway address cannot be 192.168.0.1 or 192.168.1.1.
At a minimum, you need to change the third number to some other number such as 150. Example: 192.168.150.1

As a safety precaution, we strongly recommend placing the robot up on blocks so that the wheels are free to turn.

A tutorial video can be viewed here: Configuring Hydra Wifi

Connecting to the Robot

Open the top of the robot and locate the connector access cover on the right side of Hydra brain box. Remove the upper screw and rotate the cover to expose the connectors inside. You can leave the lower screw in place. There are two RJ-45 jacks inside. Use the one closest to the Type-A USB jacks. It is configured for a static IP address.

PC Preparation

Connect the physical ethernet patch cable to the RJ45 ethernet jack of the PC.
Configure the cable ethernet connection to a different address than the robot's default address at 192.168.0.50
Usually, setting the PC's address to 192.168.0.51 will be sufficient.
Set the subnet mask value to 255.255.255.0.
Switch on the robot and wait a minute for it to boot up.

Note: If your PC is connected to a WIFI network and that network uses 192.168.0.1 as its router address, this will conflict with the robot's ethernet connection. You can temporarily turn off the PC's WIFI by turning on Airplane Mode to eliminate this conflict.

Portal User Interface

Start the browser of your choice and type in the robot's address: 192.168.0.50.
Hit return to show Hydra's portal pages in the browser:

WIFI Portal Dashboard.png

On the left side is the list of selectable views:

Dashboard
Configure Client
Configure Wireless TCP/IP
Configure Ethernet TCP/IP
System

The right side shows the information of the selected view:

The Dashboard view displays current network information and WIFI access point.
The Configure Client view lists the WIFI access points which can be added, removed, or updated.
The Configure Wireless TCP/IP view allows you to configure the WIFI for DHCP or Static IP addressing.
The Configure Ethernet TCP/IP view allows you to configure the secondary Ethernet port for DHCP or Static IP addressing.
The System view presents the system's information and allows the robot's software to be rebooted or shutdown.


Dashboard View

Click on the Dashboard option to show the interface configuration and information:
WIFI Portal Dashboard.png
Stop wlan0 stops the robot to communicate with WIFI.

Start wlan0 starts the robot to communicate with WIFI.

Refresh refreshes the dashboard information.


Configure Client View

Click on the Configure Client option of the Hydra Portal to add your WIFI id and password:
WIFI Portal Configure.png
Find the name of the base station's WIFI router, enter that WIFI's password, and click the Add button.
If you need to remove old, obsolete, or unrelated WIFI routers, click the Delete button.
If you need to update the password of an already added router, type in the new passcode, and click the Update button.


Configure Wireless TCP/IP View

Click on the Configure Wireless TCP/IP option of the Hydra Portal to change the method of IP addressing for the onboard WIFI:
ConfigWifiTCP.png


Configure Ethernet TCP/IP View

Click on the Configure Ethernet TCP/IP option of the Hydra Portal to change the method of IP addressing for the secondary ethernet port:
ConfigEthernetTCP.png


System View

Click on the System view to present the current system information such as version, processor type, and memory used..
WIFI Portal System.png

Restart Robot restarts the robot's mission planner communication and navigation.

Reboot reboots the robot's operating system and navigation software.

Shutdown shuts down the robot. Power cycling to hardware will reboot the operating system and navigation.

Refresh refreshes the system information.


Firmware updating via ethernet

  1. Plug in ethernet cable
  2. Set PC to manual IP address 192.168.0.51 mask 255.255.255.0
  3. Open browser to 192.168.0.50
  4. Go to Dashboard. Click Stop wlan0.
  5. Click Refresh. Make sure that it says “Interface is down”
  6. Go to System. Click Restart Robot.
  7. Launch Mission Planner.
  8. Perform firmware upgrade.
  9. Verify that new firmware is running.
  10. Quit Mission Planner
  11. Open browser to 192.168.0.50
  12. Go to Dashboard. Click Start wlan0.
  13. Disconnect ethernet cable.
  14. Open browser to robot name e.g. Hydra-170401-1.local
  15. Go to System. Click Restart Robot.
  16. Launch Mission Planner.
  17. Verify connectivity.

  Working with The Kraken

TBD