voicecoils
1 MW
I'm preparing to ride Perth to Sydney (~5000km) this August by ebike & recently did a shakedown test of the bikes myself & Maurice at Glow Worm are getting ready to ride.
I've wired up one of ebike.ca / GrinTech's lovely Cycle Analogger w/ GPS which can record stats from the Cycle Analyst and GPS info from the built in GPS module.
I want to take this data and transform it into a digestible form each day with the following constraints:
* Limited internet access (assume unavailable)
* Limited computing power (1 Ghz dual core netbook with 2 GB memory, ~3hr runtime)
* Limited time (assume 1hr or less - we'll be tired at the end of each day and need to pitch a tent, cook food and organise charging)
Accepting these limitations, for each day I'd like to generate:
* An map image showing our route and progress for the day
* A graph showing speed, elevation and battery voltage over distance or time
I can already do some of the above but not completely nor totally offline.
Here are my current roadblocks:
* Dealing with the quantity of data: At 5Hz logging, the Analogger spits out 180,000 lines of data in 10 hours of riding. I have Excel and it's supposed to be able to handle over a million lines but becomes slow after several 10s of thousands of rows and won't graph beyond 32,000 data points. Computing speed and memory may be a limitation here. I tried a program designed to plot straight off a CSV file called LivePlot which is fast and easy to use, but does not seem to be able to let you use one of the data series to form the axis to graph the other series against (namely having distance as the x-axis and then plotting speed, voltage etc above it.
* The Analogger populates 2 text files, one in CSV logging the CA data and one using NEMA GPS sentences described here. I need to be able to extract the latitude, longitude, altitude and perhaps time, date and ground speed from these 'sentences' and transpose them into the first CSV file in some relatively automated way. This probably needs a bit of scripting or programming which I don't have the skills to whip up.
* Offline mapping that has reasonable resolution and can import and plot the route using the GPS data. I've become so used to the internet-connected Google Maps and Google Earth that I'm totally out of my depths with off line offerings. It's pretty straightforward to get a route map and elevation plot through http://www.gpsvisualizer.com/ but I don't know of an off-line equivalent.
If you haven't played with an Analogger before, a snippet of the files it outputs are contained at the end of this post.
I know there's a huge amount of knowledge and skill in the E-S collective and if anyone can help or guide me through these roadblocks I'd be stoked!
Cheers,
Abraham
Cycle Analyst V3 w/ Thun output
NEMA sentences:
I've wired up one of ebike.ca / GrinTech's lovely Cycle Analogger w/ GPS which can record stats from the Cycle Analyst and GPS info from the built in GPS module.
I want to take this data and transform it into a digestible form each day with the following constraints:
* Limited internet access (assume unavailable)
* Limited computing power (1 Ghz dual core netbook with 2 GB memory, ~3hr runtime)
* Limited time (assume 1hr or less - we'll be tired at the end of each day and need to pitch a tent, cook food and organise charging)
Accepting these limitations, for each day I'd like to generate:
* An map image showing our route and progress for the day
* A graph showing speed, elevation and battery voltage over distance or time
I can already do some of the above but not completely nor totally offline.
Here are my current roadblocks:
* Dealing with the quantity of data: At 5Hz logging, the Analogger spits out 180,000 lines of data in 10 hours of riding. I have Excel and it's supposed to be able to handle over a million lines but becomes slow after several 10s of thousands of rows and won't graph beyond 32,000 data points. Computing speed and memory may be a limitation here. I tried a program designed to plot straight off a CSV file called LivePlot which is fast and easy to use, but does not seem to be able to let you use one of the data series to form the axis to graph the other series against (namely having distance as the x-axis and then plotting speed, voltage etc above it.
* The Analogger populates 2 text files, one in CSV logging the CA data and one using NEMA GPS sentences described here. I need to be able to extract the latitude, longitude, altitude and perhaps time, date and ground speed from these 'sentences' and transpose them into the first CSV file in some relatively automated way. This probably needs a bit of scripting or programming which I don't have the skills to whip up.
* Offline mapping that has reasonable resolution and can import and plot the route using the GPS data. I've become so used to the internet-connected Google Maps and Google Earth that I'm totally out of my depths with off line offerings. It's pretty straightforward to get a route map and elevation plot through http://www.gpsvisualizer.com/ but I don't know of an off-line equivalent.
If you haven't played with an Analogger before, a snippet of the files it outputs are contained at the end of this post.
I know there's a huge amount of knowledge and skill in the E-S collective and if anyone can help or guide me through these roadblocks I'd be stoked!
Cheers,
Abraham
Cycle Analyst V3 w/ Thun output
Code:
Ah,V,A,S,D,Deg,RPM,HW,Nm,ThI,ThO,Acc,Lims
0.3658,40.23,3.73,30.01,1.2394,0,75.4,161,17.8,0.865,2.701,-0.6,W
0.366,40.23,3.73,29.76,1.2406,0,74.2,161,17.7,0.864,2.675,-0.5,W
10786,0.3661,40.23,3.73,29.26,1.2418,0,74.6,161,18.4,0.864,2.693,-0.5,W
10787,0.3664,40.39,2.81,29.22,1.2442,0,72.6,138,18.2,0.864,2.668,0,W
10788,0.3665,40.39,2.81,28.84,1.2454,0,72.7,138,19.3,0.865,2.65,-0.8,W
10789,0.3667,40.39,2.81,28.61,1.2477,0,71.8,138,22.5,0.864,2.682,-0.4,W
10790,0.3669,40.23,3.82,28.28,1.2488,0,73.2,153,24.3,0.864,2.686,-0.4,W
10791,0.367,40.23,3.82,28.27,1.25,0,69.6,153,34.2,0.864,2.755,0,W
10792,0.3674,40.23,3.82,28.33,1.2523,0,71.7,153,35,0.865,2.748,0,W
NEMA sentences:
Code:
$GPGSA,A,3,29,18,21,26,16,15,,,,,,,3.1,1.6,2.6*35
$GPGSV,3,1,11,21,60,209,41,29,58,043,36,18,57,305,43,15,43,077,35*7B
$GPGSV,3,2,11,22,22,309,,26,22,124,28,16,20,233,34,06,09,222,*76
$GPGSV,3,3,11,25,05,355,,05,03,132,,27,,222,*49
$GPRMC,002527.000,A,3402.3784,S,15103.6867,E,26.83,242.78,280613,,,A*4F
$GPVTG,242.78,T,,M,26.83,N,49.7,K,A*03
$GPGGA,002528.000,3402.3818,S,15103.6786,E,1,06,1.6,65.2,M,20.8,M,,0000*78
$GPGLL,3402.3818,S,15103.6786,E,002528.000,A,A*47
$GPGSA,A,3,29,18,21,26,16,15,,,,,,,3.1,1.6,2.6*35
$GPGSV,3,1,11,21,60,209,41,29,58,043,36,18,57,305,43,15,43,077,35*7B
$GPGSV,3,2,11,22,22,309,,26,22,124,28,16,20,233,21,06,09,222,*72
$GPGSV,3,3,11,25,05,355,,05,03,132,,27,,222,*49
$GPRMC,002528.000,A,3402.3818,S,15103.6786,E,26.45,241.70,280613,,,A*4B
$GPVTG,241.70,T,,M,26.45,N,49.0,K,A*05
$GPGGA,002529.000,3402.3852,S,15103.6708,E,1,06,1.6,64.5,M,20.8,M,,0000*77
$GPGLL,3402.3852,S,15103.6708,E,002529.000,A,A*4E
$GPGSA,A,3,29,18,21,26,16,15,,,,,,,3.1,1.6,2.6*35
$GPGSV,3,1,11,21,60,209,40,29,58,043,37,18,57,305,43,15,43,077,35*7B
$GPGSV,3,2,11,22,22,309,,26,22,124,20,16,20,233,29,06,09,222,*72
$GPGSV,3,3,11,25,05,355,,05,03,132,,27,,222,*49
$GPRMC,002529.000,A,3402.3852,S,15103.6708,E,25.74,243.80,280613,,,A*4E
$GPVTG,243.80,T,,M,25.74,N,47.7,K,A*00
$GPGGA,002530.000,3402.3882,S,15103.6631,E,1,06,1.6,63.9,M,20.8,M,,0000*72
$GPGLL,3402.3882,S,15103.6631,E,002530.000,A,A*40
$GPGSA,A,3,29,18,21,26,16,15,,,,,,,3.1,1.6,2.6*35
$GPGSV,3,1,11,21,60,209,40,29,58,043,37,18,57,305,43,15,43,077,35*7B
$GPGSV,3,2,11,22,22,309,,26,22,124,25,16,20,233,32,06,09,222,*7D
$GPGSV,3,3,11,25,05,355,,05,03,132,,27,,222,*49
$GPRMC,002530.000,A,3402.3882,S,15103.6631,E,25.17,244.67,280613,,,A*4B
$GPVTG,244.67,T,,M,25.17,N,46.6,K,A*0B
$GPGGA,002531.000,3402.3911,S,15103.6553,E,1,06,1.6,64.0,M,20.8,M,,0000*71
$GPGLL,3402.3911,S,15103.6553,E,002531.000,A,A*4D
$GPGSA,A,3,29,18,21,26,16,15,,,,,,,3.1,1.6,2.6*35
$GPGSV,3,1,11,21,60,209,40,29,58,043,37,18,57,305,43,15,43,077,35*7B
$GPGSV,3,2,11,22,22,309,,26,22,124,31,16,20,233,33,06,09,222,*79
$GPGSV,3,3,11,25,05,355,,05,03,132,,27,,222,*49
$GPRMC,002531.000,A,3402.3911,S,15103.6553,E,24.95,245.26,280613,,,A*49
$GPVTG,245.26,T,,M,24.95,N,46.2,K,A*00
$GPGGA,002532.000,3402.3940,S,15103.6479,E,1,06,1.6,63.6,M,20.8,M,,0000*7E
$GPGLL,3402.3940,S,15103.6479,E,002532.000,A,A*43
$GPGSA,A,3,29,18,21,26,16,15,,,,,,,3.1,1.6,2.6*35
$GPGSV,3,1,11,21,60,209,40,29,58,043,37,18,57,305,43,15,43,077,35*7B
$GPGSV,3,2,11,22,22,309,,26,22,124,33,16,20,233,33,06,09,222,*7B
$GPGSV,3,3,11,25,05,355,,05,03,132,,27,,222,*49
$GPRMC,002532.000,A,3402.3940,S,15103.6479,E,24.13,244.44,280613,,,A*4C
$GPVTG,244.44,T,,M,24.13,N,44.7,K,A*0C
$GPGGA,002533.000,3402.3969,S,15103.6406,E,1,06,1.6,63.0,M,20.8,M,,0000*7A
$GPGLL,3402.3969,S,15103.6406,E,002533.000,A,A*41
$GPGSA,A,3,29,18,21,26,16,15,,,,,,,3.1,1.6,2.6*35