Difference between revisions of "Robotics-lab6-data"

From Earlham CS Department
Jump to navigation Jump to search
(First Entry)
 
(Comma Separated Value (CSV) Data Format)
 
(9 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 +
[https://wiki.cs.earlham.edu/index.php/Robotics-2010 Robotics Main Page] >
 +
[https://wiki.cs.earlham.edu/index.php/Robotics-lab6-tasks Lab 6 Tasks] > Data Format
 +
----
 +
 +
= Comma Separated Value (CSV) Data Format =
 
We are looking to store the following information for each data point in our data file
 
We are looking to store the following information for each data point in our data file
* identifiers for each of our compass sensors [S1, S2, ... Sn]
+
* identifiers for each compass sensors used to take the reading(s) [S1, S2, ... Sn]
* which room we are in [{D124, D128, D129}]
+
* the room where the reading was taken [{D124, D128, D129}]
* from which tile we are measuring [x,y]
+
* when the measurement was taken [timestamp: seconds since epoch]
* when we took the measurement [timestamp: seconds since epoch]
+
* from which tile the readings were taken [x,y]
* what values we expected to get [E1, E2, ... En]
+
* what value(s) we expected to get [E1, E2, ... En]
* what values we actually read [R1, R2, ... Rn]
+
* what value(s) we actually measured [A1, A2, ... An]
 +
 
 +
Please note that E1 and A1 relate to S1, E2 and R2 relate to S2 and so on. The order is significant.
 +
 
 +
The following example shows the readings from a single tile (n lines, one for each sensor) in the data file. It represents the readings from a tile at position (7, -10) in Dennis 128. In the CSV format, strings are enclosed in quotation marks only if they contain special characters (commas, newlines etc.). Spaces are omitted unless they are part of the data, blank entries are represented as "" and quotation marks within the data are escaped by placing a second quotation mark beside it.
 +
== Old Format ==
 +
1,4,7,12,D128,1270320318,7,-10,0,90,180,270,355,83,174,265
 +
# or more generally
 +
S1,S2,S3,S4,{D124,D128,D129},timestamp,x,y,E1,E2,E3,E4,R1,R2,R3,R4
 +
 
 +
== New Format ==
 +
1,4,7,12,D128,1270320318,7,-10,0,90,180,270,355,83,174,265
 +
1,4,7,12,D128,1270320318,7,-10,0,90,180,270,355,83,174,265
 +
1,4,7,12,D128,1270320318,7,-10,0,90,180,270,355,83,174,265
 +
1,4,7,12,D128,1270320318,7,-10,0,90,180,270,355,83,174,265
 +
# or more generally
 +
S1,{D124,D128,D129},timestamp,x,y,E1,R1
 +
S2,{D124,D128,D129},timestamp,x,y,E2,R2
 +
S3,{D124,D128,D129},timestamp,x,y,E3,R3
 +
S4,{D124,D128,D129},timestamp,x,y,E4,R4
  
The following example shows a single line in the data file. It represents the readings from a tile at position (7, -10) in Dennis 128. In the Comma Separated Value (CSV) format, strings are enclosed in quotation marks only if they contain special characters (commas, newlines etc.). Spaces are omitted unless part of the data and a blank entry is represented as "".
+
= Collecting Data =
 +
The data synthesis group decided that it would be more efficient to have bots create their own data file rather than editing and updating an existing full template of the room. This allows for smaller data files with a high percentage of data / structure.
  
sensor 1,sensor 4,sensor 7,sensor 12,D128,7,-10,1270320318,0,90,180,270,355,97,186,265
+
* [http://cs.earlham.edu/~carrick/courses/cs282/lab6/record_data_lib.py Proposed data writing function]
 +
* [http://cs.earlham.edu/~carrick/courses/cs282/lab6/record_data_example.py Usage example]
 +
* [http://cs.earlham.edu/~carrick/courses/cs282/lab6/bot-9_D128.dat Output produced by example]
  
or generally
+
= Analyzing Data =
 +
Data files (multiple per room) will be placed in a central location where we all have read write access. These files can then be compiled on the fly and displayed graphically. It is currently planned to do this through a PHP web page enabling each group seeing a dynamic view of room map and facilitating their further mapping efforts.
  
S1,S2,S3,S4,{D124,D128,D129},x,y,timestamp,E1,E2,E3,E4,R1,R2,R3,R4
+
Initial brainstorming has led to the identification of the following tile states in the map:
 +
* unknown
 +
* good (needs to be defined, but something about two compasses giving headings within 5 degrees of truth)
 +
* bad (needs to be defined)
 +
* suspect (some combination of good and bad from different data files)
 +
* inaccessible

Latest revision as of 21:24, 14 April 2010

Robotics Main Page > Lab 6 Tasks > Data Format


Comma Separated Value (CSV) Data Format

We are looking to store the following information for each data point in our data file

  • identifiers for each compass sensors used to take the reading(s) [S1, S2, ... Sn]
  • the room where the reading was taken [{D124, D128, D129}]
  • when the measurement was taken [timestamp: seconds since epoch]
  • from which tile the readings were taken [x,y]
  • what value(s) we expected to get [E1, E2, ... En]
  • what value(s) we actually measured [A1, A2, ... An]

Please note that E1 and A1 relate to S1, E2 and R2 relate to S2 and so on. The order is significant.

The following example shows the readings from a single tile (n lines, one for each sensor) in the data file. It represents the readings from a tile at position (7, -10) in Dennis 128. In the CSV format, strings are enclosed in quotation marks only if they contain special characters (commas, newlines etc.). Spaces are omitted unless they are part of the data, blank entries are represented as "" and quotation marks within the data are escaped by placing a second quotation mark beside it.

Old Format

1,4,7,12,D128,1270320318,7,-10,0,90,180,270,355,83,174,265
# or more generally
S1,S2,S3,S4,{D124,D128,D129},timestamp,x,y,E1,E2,E3,E4,R1,R2,R3,R4

New Format

1,4,7,12,D128,1270320318,7,-10,0,90,180,270,355,83,174,265
1,4,7,12,D128,1270320318,7,-10,0,90,180,270,355,83,174,265
1,4,7,12,D128,1270320318,7,-10,0,90,180,270,355,83,174,265
1,4,7,12,D128,1270320318,7,-10,0,90,180,270,355,83,174,265
# or more generally
S1,{D124,D128,D129},timestamp,x,y,E1,R1
S2,{D124,D128,D129},timestamp,x,y,E2,R2
S3,{D124,D128,D129},timestamp,x,y,E3,R3
S4,{D124,D128,D129},timestamp,x,y,E4,R4

Collecting Data

The data synthesis group decided that it would be more efficient to have bots create their own data file rather than editing and updating an existing full template of the room. This allows for smaller data files with a high percentage of data / structure.

Analyzing Data

Data files (multiple per room) will be placed in a central location where we all have read write access. These files can then be compiled on the fly and displayed graphically. It is currently planned to do this through a PHP web page enabling each group seeing a dynamic view of room map and facilitating their further mapping efforts.

Initial brainstorming has led to the identification of the following tile states in the map:

  • unknown
  • good (needs to be defined, but something about two compasses giving headings within 5 degrees of truth)
  • bad (needs to be defined)
  • suspect (some combination of good and bad from different data files)
  • inaccessible