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

Most Popular Topics

Quick Start Instructions

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

Language Support

Arabic Table of Contents Internet connection required, results not guaranteed
Chinese Table of Contents Internet connection required, results not guaranteed
Deutsch Table of Contents Internet-Verbindung erforderlich, ergebnisse nicht garantiert
English Table of Contents
Espanol Tabla de contenidos Requiere conexion a Internet, los resultados no garantizados
Francaise Table des matieres Connexion Internet requise, resultats non garantis
Italiano Indice dei contenuti Richiesta una connessione Internet, I risultati non garantiti
Japanese Table of Contents Internet connection required, results not guaranteed
Korean Table of Contents Internet connection required, results not guaranteed
Nederlands Inhoudsopgave Internetverbinding nodig, resultaten niet gegarandeerd
Norske Innholdsfortegnelse Internett-tilkobling kreves, resultater Ikke Garantert
Russian Table of Contents Internet connection required, results not guaranteed
Suomalainen Sisallysluettelo Vaatii Internet-yhteyden, tulokset ole taattu
Svenska Inneholl Internetanslutning kravs, resultat garanteras inte

About this Document

Document Navigation

You can navigate through the documentation to specific topics using the menu, or step through sequentially using the Next and Previous arrowhead buttons. The Next button will step you from the current topic to the next topic at the same level unless the current topic has a sub-topic. If the current topic has a sub-topic, the Next button will step you into the first sub-topic. The Previous button works similarly, but in reverse sequence. Your current location within the document is shown as a "breadcrumb" trail at the top of each page under the document title. You can click on any level of the breadcrumb hierarchy to go that location. You can also use the following keyboard shortcuts:

ACTION KEYSTROKE or BUTTON
Previous Page Alt-p or
Next Page Alt-n or
Up one level of the breadcrumb hierarchy Alt-u

Links are shown in brown font.

Finding Information

This document includes a Table of Contents, Glossary / Index and Google search on each page. You must be connected to the Internet in order to be able to use the Google search, and you can select whether to search VideoRay's online document library only (the default) or the Internet.

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.

The Highlight icon is used to indicate that a section of text can be highlighted. Clicking on the icon will reload the page with the text highlighted. This may be useful for printing a page with highlights or to send someone a link to a page with specific text highlighted when they open the page. Try it here - click on this highlight icon.
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.
The Manual Cross Reference icon is used to link to reference material elsewhere in this document or in an external resource. To view the reference, click on the Manual Cross Reference icon.
The Play Video icon is used to link to a video about the topic. To view the video, click on the Play Video icon.
The Hand icon is used to indicate an interactive element of the page. When you hover your mouse over the Hand icon, an image on the page will change to reflect the information in the text immediately prior to the hand icon. Try it here - hover your mouse over the following text and Hand icon to turn the Hand icon to the left blue: Interactive Text .

Document Customization - My_Notes

This document has been developed to allow local online versions to be customized using the My_Notes feature. Users can add their own notes to each page. See the Customizing this Document page for more information about how to customize this document.

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.

Alternate Formats

Single HTML Page Format
This document is available as a single HTML page that can be viewed and/or printed by the viewer.

Portable / Printable Format
An abbreviated print version of this document is also available in HTML and PDF formats in Letter and A4 sizes for viewing and/or printing. A free PDF Reader is available from Adobe. Printed versions of this document are available from VideoRay.

HTML File Set
This document set is also available for download as a self extracting zip archive for installation on your local device.

Customize this Documentation - My_Notes

My_Notes are easy to incorporate directly into the pages of this manual. They can be used to clarify content, add additional information, or document your custom settings, operational tactics or procedures. My_Notes are page specific and display at the bottom of the desired page under the "My_Notes" heading. No programming is required - it is as simple as saving a file with your notes.

Creating My_Notes

My_Notes can be written in HTML or plain text. HTML allows for more flexible formatting and inclusion of images or links to other web pages.

To add a My_Note, create an HTML or text file containing the note and save it in the VideoRay\My_Notes\ folder, which can be found in the computer account user's documents folder (Documents\ for Windows 7, or My Documents\ for Windows XP).

The file should be named the same as the page in which you want the note to appear, with a "my_" prefix (without the quotes). For example, if you want a My_Note to appear at the bottom of this page, the name of the file to create is: my_custom_my_notes.html. The name of the page being viewed can be found in the address bar of the browser being used to display this documentation.

Even if you are using a text file, the file name must end with the ".html" extension.

All My_Notes files are processed as HTML, so if you are using a plain text file, you will need to add "<pre>" (without the quotes) at the beginning of the file and "</pre>" (without the quotes) at the end of the file if you want to preserve the layout. The "<pre>" and "</pre>" will not show up in the display.

When using HTML, the My_Notes folder serves as the root for relative links. An images folder is included for you to store images. You may add other folders or files as desired.

Viewing My_Notes

When you reload the page, your My_Note will appear - there is nothing else to install or configure. A sample My_Note file has been included to display the My_Note below. You can use this file as a model for creating your own My_Notes.

Updating My_Notes

To update a My_Note, simply edit and re-save the My_Note file.

Removing My_Notes

My_Notes can be removed by deleting or renaming the My_Note file.

Sizing My_Notes Display (Optional)

The default vertical size for My_Notes is set to 200 pixels, which is used for the sample My_Note below. Due to browser limitations, My-Notes do not size dynamically. This means that a long My_Note may display a scroll bar in order to view the whole My-Note. You can adjust the size to eliminate the need for the scroll bar. To set the size of a My_Note, you need to edit the file named "my_notes_size_table.js" in the My_Notes\ folder (location defined above). The file contains one line for each page of this document using the following format:

    window.page_name = size_in_pixels;

Find the line for the page that includes the My_Note you want to resize and replace the value of size_in_pixels with the desired size in pixels. The page names are listed alphabetically. Example line from the "my_notes_size_table.js" file for this page:

    window.custom_my_notes = 200;

Note that ".html" in not included in the page name, and the line must end with a ";" Also, the optimum size required is dependent upon the size and aspect ratio of the browser window.

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