Convert .csv to GSS .yml
Operator's Manual, 1.00.00

Copyright Notice

This material is copyright protected. No material may be reproduced or transmitted in any form or by any means for any purpose without expressed written consent of VideoRay LLC.

Copyright © 2021, VideoRay LLC - The Global Leader in Micro-ROV Technology

Convert .csv to GSS .yml
Operator's Manual, 1.00.00

Convert .csv to GSS .yml
Operator's Manual, 1.00.00

About this Document

Online Manual

This printed Quick Start Guide is a subset of the full version of this manual, which is available on the Convert .csv to GSS .yml control panel and online in the following formats:

  • Installed on the Convert .csv to GSS .yml control panel at: convert_csv_yml for viewing the HMTL locally.

  • http://download.videoray.com/convert_csv_yml for viewing the HMTL online.

  • http://download.videoray.com/documentation/convert_csv_yml/pdf/videoray_doc_convert_csv_yml.pdf for viewing the PDF online.

  • http://download.videoray.com/documentation/convert_csv_yml/zip/videoray_doc_convert_csv_yml.exe for downloading the HTML and PDF files.

Document Conventions

Several symbols are used throughout this documentation to add emphasis and to assist in relocating important information. The following table describes these symbols and their uses.

SYMBOL DESCRIPTION
The Danger icon is used to indicate there is a potential risk of personal injury or death. Extra care should be taken to understand the risks, and all personnel should exercise caution. It may also be appropriate to warn others in the immediate vicinity.
The Caution icon is used to indicate there is a potential risk of damage to the equipment or surrounding property. Personnel should receive training in the appropriate procedures before attempting to operate or maintain the equipment.
The Do Not icon is used to indicate that an action or activity should NOT be performed.
The Note icon is used to highlight a specific detail or point of information.
The Tip icon is used to highlight a suggestion or recommendation.

Beyond this Document

There is no substitute for experience and/or training, especially with respect to the real purpose for which you plan to use this equipment. We encourage you to explore options beyond the scope of these materials to expand your knowledge and skills necessary to support your applications. In addition to this documentation, VideoRay offers training and technical support and hosts a general user discussion forum and user image gallery.

We also realize that collectively, users of our products spend considerably more time operating our systems than we do ourselves. Users also encounter more diverse operating environments across an extremely broad range of applications. We highly value this vast experience base, and invite and encourage you to share your experiences and suggestions with us. Please feel free to contact us by any of the methods listed below.

Quality Commitment

VideoRay strives to design, manufacture, deliver and support the highest quality products and services, including this documentation. We have made every effort to ensure that this documentation is accurate and provides you with the most up-to-date information.

If you find any errors in this documentation or have suggestions for improvements, each page contains a "Help us improve this document" feedback link in the left margin (you must be connected to the Internet to use this link).

Address  
VideoRay LLC
212 East High Street
Pottstown, PA 19464
USA
 
 
Email  
info@videoray.com General Information and Sales
support@videoray.com
 
Technical Support
Telephone  
+1 610-458-3000 Office
+1 610-458-3010 Fax

Disclaimer

This document is deemed accurate at the time of its writing, however it is not a legal contract and the information contained herein should not be construed to represent any form of commitment. This document as well as the associated products and services are subject to change without notice.

Convert .csv to GSS .yml
Operator's Manual, 1.00.00

How to Get Help

Help for your Convert .csv to GSS .yml is available through several channels.

All Hours Self-Service / Crowd-Source Tools

Operator's Manuals and Standard Operating Procedureswww.videoray.com/support/manuals.html
Software Downloadswww.videoray.com/support/downloads.html
Frequently Asked Questionswww.rovfaq.com
ROV User Forumwww.rovinfo.com

Global Support

Emailsupport@videoray.com
Phone+1 610-458-3000 (select option 1)
Additional messaging services are available.Contact us using one of the above methods for options supported.
Remote Sessionswww.videoray.com/support/remote-support.html (by appointment )

Regional Support

VideoRay Authorized Dealers and Service Centerswww.videoray.com/dealer.html

Training

Emailtraining@videoray.com
Phone+1 610-458-3000 (select option 1)
Training OpportunitiesTraining Overview

Operational Strategies and Tactics Support

If you need help understanding how to apply your system to a specific project, contact VideoRay or you local VideoRay dealer. We can provide guidance or help you find a certified consultant.

>

Before Contacting Support

Please make sure to consider the following information before contacting VideoRay's Technical Support to report a problem. The following information should available:

  • User name and contact information
  • Name of the owner if not the same as the user
  • System model
  • Serial Number of the affected component(s)
  • Accessories in use
  • Detailed information about the issue:
    • Symptoms
    • Operating conditions that create the symptoms
    • Anything new or unusually about the system or operations

Once you have collected the recommended information, visit the "How to Get Help" page for contact information.

In addition, please review VideoRay's Support website for additional information about:

  • Principles of Customer Interactions
  • Customer Care Philosophy
  • Technical Support Policy
  • Third Party Accessory Support Statement
  • Use of Non-VideoRay Supplied Computers
Convert .csv to GSS .yml
Operator's Manual, 1.00.00

Convert .csv to .yml Overview

convert_csv_yml.py converts a coordinate file in .csv format into a Greensea .yml mission file.

It is designed to be as easy to use as possible:

  • You configure the program to match your requirements, rather than the program forcing you to modify all of your .csv data files
  • Values for any data element can be assigned as a default
  • The column order can be user defined
  • Unused columns can be ignored by the program so you don't have to delete them from your data
  • The Lat/Lon Degrees format is flexible (DD, DDM, DMS; use +/- or N/S; use "," "'" and """ or not)

The program can run on Ubuntu on the Control Console or on Windows on a PC / Laptop.

Before converting your .csv file, you will likely need to set up the defaults to match your data requirements. This manual will explain how to do that.

Convert .csv to GSS .yml
Operator's Manual, 1.00.00

Quick Start

Installation

The program and necessary files are delivered as a zip file. These files can be downloaded and unzipped to the folder of your choice.

First Time Program Execution

To start the program:

Ubuntu on the Control Console

Open a terminal window and navigate to the folder where the program was installed. Enter:

python convert_csv_yml.py

Window on a PC / Laptop

Navigate to the installation folder and click on the convert_csv_yml.exe file.

When the program starts, click on the Show / Set Defaults button. Check and set the defaults according to your preference. See the Setting Defaults page for more information.

Addition information about the data format and defaults is provided in the remainder of this manual.

A sample .csv data file, mission.csv, is included as part of the installation for a test execution.

After the defaults are set as desired, save the defaults by clicking on Save Defaults to File button and then click on the Convert button.

Subsequent Program Executions

For future executions using data in the same format, you will only need to start the program, select the filenames and click on the Convert button.

Convert .csv to GSS .yml
Operator's Manual, 1.00.00

Files and Formats

In addition to the program itself, convert .csv to .yml requires a configuration file (a .cfg file), and input file with data about the mission and waypoints in .csv format.

Additionally, two template files, one for the mission and one for the waypoints, are used in the background to create the .yml file.

When executed, it creates a Greensea mission file in .yml format for use in Greensea's Workspace ROV control program.The files will be described on the following pages, starting with the .yml mission file.

The .yml File Format and Information

Greensea mission files contain general information about the mission, such as its name, and a series of waypoints. Mission files are stored in a .yml files. The .yml file is in text format that is easy to read. An example mission file with two waypoints is shown here:

####################################################
### Greensea Workspace Waypoint Data
###  Created by VideoRay: 2021-05-23  20:21:09
##########################
mission_data:
  - id: "{2fa9aade-537d-494d-b260-c236e459ae7c}"
    name: mission
    color: "#00ffff"
    color_propagate: false
    locked: false
    waypoints:
      - id: "{b1cb7cc1-c655-4444-8bce-81cae366d76d}"
      - id: "{5541b691-276e-405c-bb68-ef5d1707fb55}"
waypoint_data:
  - id: "{b1cb7cc1-c655-4444-8bce-81cae366d76d}"
    mission_id: "{2fa9aade-537d-494d-b260-c236e459ae7c}"
    name: A
    color: "#ffff00"
    x: -75.5
    y: 41.5
    z: 0.9144000000000001
    tolerance: 1.8288000000000002
    z_alt: false
    z_matters: true
    speed: 0.1524
    use_speed: true
    effort: 70
    display_rb: false
    locked: false
    heading: 0
    heading_mode: NONE
  - id: "{5541b691-276e-405c-bb68-ef5d1707fb55}"
    mission_id: "{2fa9aade-537d-494d-b260-c236e459ae7c}"
    name: B
    color: "#ffff00"
    x: -75.08722666666667
    y: 41.36926166666667
    z: 0.6096
    tolerance: 1.8288000000000002
    z_alt: false
    z_matters: true
    speed: 0.1524
    use_speed: true
    effort: 70
    display_rb: false
    locked: false
    heading: 0
    heading_mode: NONE

You may notice that there are many parameters associated with the mission and each waypoint. The program allows you to set defaults for all of these values so you do not have to include these data elements in your file if you do not want to. Here is the full list of .yml data elements with descriptions. Additional information about each these parameters can be found on the CFG File page.

Mission Data

Mission ID (Auto generated by the program)

Mission Name (Text)

Mission Color (Hex RGB color value, range: #000000 - #9999FF; the program includes a graphic color picker.)

Mission Color Propagate (True / False)

Mission Locked (True / False)

List of Waypoint IDs (Auto generated by the program)

Waypoint Data

Waypoint ID (Auto generated by the program)

Waypoint name (Text)

Waypoint color (Hex RGB color value, range: #000000 - #FFFF00; the program includes a graphic color picker.)

Waypoint y [North] (Number - Degrees value)

Waypoint x [East] (Number - Degrees value)

Waypoint z [Depth / Altitude] (Number, meters)

Waypoint tolerance (Number)

Waypoint z_alt [Z is Altitude] (True / False)

Waypoint z_matters [Use Depth Lock] (True / False)

Waypoint speed (Number, speed in meters/second)

Waypoint use_speed [Use Speed Lock] (True / False)

Waypoint effort [% Effort] (Number, range: 1 - 100)

Waypoint display_rb (True / False)

Waypoint locked (True / False)

Waypoint heading (Number, range: 0 - 360)

Waypoint heading_mode (NONE / ALONG_LINE / FIXED)

Within the .yml, the Units Type is Meters and the Degrees Format is always Decimal Degrees. Your .csv file can contain units of feet and other degrees formats (Degrees Decimal Minutes or Degrees Minutes Seconds) by specifying these as default units to use.

The .cfg File Format and Information

The Configuration file is used to store default values for the program and can be modified to meet your data requirements. This table provides comprehensive information about the data and default values. An initial configuration file is provided as part of the installation and there are tools within the program to modify it.

CFG RowNameDescriptionData Type / Explanation
1showHelpShow Help On Start-upTrue / False
True - Show help on start-up
False - Do not show help on start-up
3outFileOutput .yml File NameText
4mission_nameMission NameText
5mission_colorMission ColorHex RGB Color Value, range: #000000 - #FFFFFF;
the program includes a graphic color picker.
6mission_color_propagatereservedTrue / False
True -
False -
7mission_lockedMission LockedTrue / False
True - Mission is locked
False - Mission is unlocked
8unitsTypeUnits of MeasureFeet / Meters
Feet - .csv units are in feet
Meters - .csv units are in meters
9degreesFormatDegrees FormatDD / DDM / DMS
DD - .csv uses Decimal Degrees
DDM - .csv uses Degrees Decimal Minutes
DMS - .csv uses Degrees Minutes Sections
10autoIncrementAdd a sequential number to waypoint names True / False
True - Add a 3 digit sequential number to the waypoint name
False - Do not add a 3 digit sequential number to the waypoint name
11N/AReservedInternal Note
User DefinednameWaypoint Prefix>Text, added to as a prefix to the waypoint name
User DefinedcolorWaypoint ColorHex RGB Color Value, range: #000000 - #FFFFFF;
the program includes a graphic color picker.
User DefinedyWaypoint Latitude (North/South)Number, Degrees Value
Variable format -
User DefinedxWaypoint Longitude (East/West)Number, Degrees Value
Variable format -
User DefinedzWaypoint Depth (or Altitude)Number, depth or altitude in selected units
User DefinedtoleranceWaypoint ToleranceNumber, tolerance in selected units
User Definedz_altWaypoint Depth ReferenceTrue / False
True - z is the waypoint altitude
False - z is the waypoint depth
User Definedz_mattersWaypoint Depth LockTrue / False
True - Waypoint depth is locked
False - Waypoint depth is unlocked
User DefinedspeedWaypoint SpeedNumber, waypoint speed in selected units per second
User Defineduse_speedWaypoint Speed Lock True / False
True - Waypoint speed is locked
False - Waypoint speed is unlocked
User DefinedeffortWaypoint EffortNumber, % of effort to achieve waypoint
User Defineddisplay_rbReservedTrue / False
True - display_rb is True
False - display_rb is False
User DefinedlockedWaypoint LockedTrue / False
True - Waypoint is locked
False - Waypoint is unlocked
User DefinedheadingWaypoint HeadingNumber, waypoint heading in degrees azimuth, range 0 - 360
User Definedheading_modeWaypoint Heading ModeNONE / ALONG_LINE / FIXED
NONE -
ALONG_LINE
FIXED

This configuration file is provided with the initial installation:

showHelp=false
inFile=mission.csv
outFile=mission.yml
unitsType=feet
degreesFormat=ddm
autoIncrement=false
mission_name=mission
mission_color=#00ffff
mission_color_propagate=false
mission_locked=false
--You may change any of the =values in this file to set your own defaults, and you may change...
name=
y=
x=
z=
color=#ffff00
tolerance=6
z_alt=false
z_matters=true
speed=0.5
use_speed=true
effort=70
display_rb=false
locked=false
heading=0
heading_mode=NONE

The configuration file is named convert_csv_yml.cfg and is a text file. It can be edited using the Show / Set / Save Defaults feature provided within the program, or manually in a text editor. Either method can be used. You may use whichever is more comfortable for you.

The .csv File Format and Information

The .csv file contains your data. It may be manually created or generated by another program. If you are not familiar with .csv files, you can view a brief .csv primer.

For the purposes of using the convert_csv_yml.py program, the data represents coordinates or waypoints with one waypoint per line. Here is a sample of a typical coordinate file in .csv format with a header row.

Name,Latitude,Longitude,Depth
A,41 30,-75 30,3.0
B,41 22.1557,-75 5.2336,2.0
C,41 11.0544,-75 4.2312,1.0

Commas are not allowed within a value, because they are used as the separator between values.

In addition to the list of coordinates/waypoints, the program requires that the first line of the .csv file provide information about the mission, and the header row either needs to be removed or identified as a comment by using a "#" as the first character. Lines with the "#" symbol as the first character on the line are considered comments. You can also use the "#" to exclude specific coordinates from the conversion.

Here is the required mission information:

Name,Color,Color Propagate,Locked,Units Type,Degrees Format,Auto Increment Waypoint Names

The sequence of the mission data elements must be in the order listed above, and this order cannot be modified like it can be for waypoint data elements.

Here is an example of a working .csv file that the program can read and convert correctly (defaults must be set accordingly). This example conforms to the defaults as defined in the initial installation.

My Mission,#00FFFF,False,False,Feet,DDM,False
#Name,Latitude,Longitude,Depth
A,41 30.2,-75 30,3.0
B,41 22.1557,-75 5.2336,2.0
C,41 11.0544,-75 4.2312,1.0

Mission Information

  • Mission Name = My Mission
  • Mission Color = #00FFFF (Blue, Default colors can be selected using a color picker.)
  • Mission Color Propagate = False (Do not propagate mission color)
  • Mission Locked = False (The mission is not locked)
  • Units Type = Feet(the values are in feet)
  • Degrees Format = DDM (The degrees format is Degrees, Decimal Minutes)
  • Auto Increment = False (Do not add an auto incremented number to waypoint names)

Waypoint 1 Information

  • Waypoint Name = A
  • Waypoint Latitude = 41 degrees, 30.2 minutes (North)
  • Waypoint Longitude = -75 degrees, 30 minutes (The - indicates West)
  • Depth = 3.0 Feet

You may notice that this data does not include many of the .yml parameters. The program will insert the default values for any missing parameters. You can also omit entire columns as long as they are at the end of the rows.

For more information about data elements and their definitions, see the CFG File page.

A sample data set is included in the mission.csv file that is included as part of the installation. It uses a blank line as the first line - All mission data is defined by defaults and not the .csv file.

Template Files

The program uses template files to structure the .yml. These files should not be modified without training. They are presented here for your information.

Mission Template

####################################################
### Greensea Workspace Waypoint Data
###  Created by VideoRay: <!--##creation_time##-->
##########################
mission_data:
  - id: "{<!--##mission_id##-->}"
    name: <!--##mission_name##-->
    color: "<!--##mission_color##-->"
    color_propagate: <!--##color_propagate##-->
    locked: <!--##mission_locked##-->
    waypoints:

Waypoint Template

  - id: "{<!--##waypoint_id##-->}"
    mission_id: "{<!--##mission_id##-->}"
    name: <!--##waypoint_name##-->
    color: "<!--##waypoint_color##-->"
    x: <!--##x##-->
    y: <!--##y##-->
    z: <!--##z##-->
    tolerance: <!--##tolerance##-->
    z_alt: <!--##z_alt##-->
    z_matters: <!--##z_matters##-->
    speed: <!--##speed##-->
    use_speed: <!--##use_speed##-->
    effort: <!--##effort##-->
    display_rb: <!--##display_rb##-->
    locked: <!--##locked##-->
    heading: <!--##heading##-->
    heading_mode: <!--##heading_mode##-->

Convert .csv to GSS .yml
Operator's Manual, 1.00.00

Setting Defaults

The program includes tools to set or modify the defaults. To set the defaults, start the program and click on the Show / Set / Save Defaults button.

Enter or select the values for the defaults for each piece of information listed.

If you want to reorder the waypoint data elements or specify columns to ignore, click on the Reorder Waypoint Data button.

This will bring up a list of the waypoint data elements. You can select an element and use the Move Up or Move Down buttons to achieve the order that matches your data. Any data elements that you do not plan to include in your data should be moved to the bottom and the columns for these data elements do not need to be included in your .csv file.

If your data includes columns that are not required by the .yml file format, you can specify that these columns should be ignored or not used. To designate that a column should be ignored and not used click on the Insert Unused Column button and then move the "Unused" column marker to the correct position to match you data. For example, if your data has a date in the first column, insert an Unused column marker and move it to the top of the list. If you no longer want to use the Unused column marker, you can remove it by selecting it and clicking on the Remove Unused Column button.

When you are finished reordering the data elements, click on the Update Waypoint Column Order button. If you decide you do not want to reorder the columns, click on the Close without Updating button.

At this point, the default values are enabled, but not saved. If you execute the conversion, the defaults will be used as assigned. However, tif you want to save these defaults for future executions of the program, click on the Save Defaults to File button. If you only want to use the defaults this one time, click on the Close without Saving to File button.

Convert .csv to GSS .yml
Operator's Manual, 1.00.00

Appendices

Download

CSV Primer

Download the convert_csv_yml Program Files

Download convert_csv_yml.zip

CSV File Format Primer

The .csv file format is a general purpose method of storing data. CSV stands for Comma Separated Values and is generally used to store data the can be arranged in rows and columns. Each row represents a record and the columns represent data values (or fields) for that record. A simple example for the use of a .csv file is an address book. The data could include a record (or row) for each person and the records might contain the following information: name, street address, city, state and zip code.

Example address book in .csv file format with a header (or title) row:

Name,Street Address,City,State,Zip Code
John Video,10 Main Street,Springfield,PA,19331
Mary Ray,18 Oak Lane,Lincoln,WA,92231