Project

General

Profile

Revision 1988

This is a working version of the code for the demo. It works on Bot 7, and partially on Bot 14. Due to the number of changes here, I'll list them by file:

traffic_navigation.h
I added a #define for sendGraph, so its main won't be compiled unless defined. Uncomment the #define line at the top of this file to turn its main on. Make sure you also comment out the #define for main-new. Also, has the new #define for the node wireless packet type.

readSerial.sh
I changed the output to print to stdout, instead of a file.

sendGraph.c
sendGraph.h
I modified the struct that stores and sends node data so it has a wireless packet type (80), and is 1 byte larger to hold it.

validTurns.c
One of the intersections on the map was placed incorrectly, and the robot drives off the line if it gets there. I added 2 if statements to control how the robot turns if it is at that intersection. The intersection has barcode numbers 13 and 16.

Makefile
I changed the target to main-new because that was what I was testing. If you're testing something else, make sure you change this line.

main-new.c
I changed the speed at which the robot drives at. I lowered it from 200 to 180, although this value depends on which bot it was used on. I also changed all of Alex's #ifdef debugging code into #define that takes up less space and makes the code look cleaner.

View differences:

traffic_navigation.h
3 3
/* Debug Options - These must go before includes */
4 4
#define MAIN_NEW
5 5
#define ORB_INTERSECTION
6
//#define SENDGRAPH
6 7

  
7 8
#include <dragonfly_lib.h>
8 9
#include <wl_basic.h>
......
65 66
#define WPINGQUEUE 32 //[type, fromBot, toBot]
66 67
#define WPINGREPLY 33 //[type, fromBot, toBot]
67 68
#define WCOLLISIONAVOID 41 //[type, bot, intersection, collision-int] //Note: collision is an int and thus takes two spaces
69
#define WGRAPHDATA 80
68 70

  
69 71
/*Wireless Parsing Status
70 72
 * For wireless parsing - status codes describing various errors/statuses with wireless

Also available in: Unified diff