Serial Data Classifier

It's almost always a good idea to visually examine data before programming a robot to respond to that data. Our serial data classifier application does just that, by collecting serial data and exporting it as a spreadsheet.

Originally required for the development of the barcode reader, we've made this program general enough that it can be used to collect any kind of serial data. Of course, this requires either the wired or wireless serial expansion. Wireless is easier to work with, since you don't have to hold a cable over the robot like a leash. And that's just degrading for the robot.

The serial data classifier program

The program is extremely easy to use. If you're using wired serial, connect the serial lines from the programmer to your 3pi (as well as the programmer ribbon itself), and plug the programmer into your PC. Wireless serial simply requires that you plug your Wixel module into your PC via USB, assuming the appropriate serial-forwarding apps have been flashed onto each Wixel. Select the port you wish to connect to, enter the appropriate baud rate, and click Open. If the port you want isn't listed, click Refresh first.

Any serial data received will be displayed in the large text field. When you're done, close the port and export your data to the desired location.

Serial data is classified in the following manner. We provide a small set of C "sdc" functions for sending serial data from the 3pi and prefixing it with an appropriate header (eg, "#x:") that indicates in which column that data should be placed inside the .csv file. Any data that is sent without this prefix is placed in an "unclassified" column. Once the .csv is exported, you can import it into a spreadsheet program (like Excel) and create charts for your data.

We've done our best to make this program as safe (and easy) to use as possible. Error situations are handled as gracefully as we can manage, but you should avoid doing something dumb like yanking out the programmer from either your PC or the robot during execution, and other things like that. A known issue (where the SDC program crashes) occurs when one attempts to close a port (or the program) while it is in the middle of receiving data.

Visit the downloads section for both the SDC library source files and the .NET application source files and binary.