Swarm Robot Project E-puck Code
This page documents the e-puck code for the Swarm Robotics project. The code on the e-puck was written in C and compiled using Microchip's MPLAB C Compiler for dsPIC DSCs (student version).
Go back to Swarm_Robot_Project_Documentation
Description of the files:
- main.c: This contains the entry point of the code and contains the initialization routines, main loop, and interrupt service routines.
- e_epuck_ports.h: Contains I/O pin definitions.
- main.h: Contains global variables, macros, and the delay function.
- e_init_port.h/.c: Initializes the ports on the e-puck. File is from the standard e-puck library.
- e_led.h/.c: Handes LED manipulation functions. File is from the standard e-puck library.
- e_motors_swarm.h/.c: Motor control and dead reckoning functions. This is a modified version of the standard e_motors.h/.c library file, with dead reckoning functions added.
- dsPIC_XBeePackets.h: Contains functions and data structures for assembling and receiving XBee packets.
- PI_consensus_estimator: Contains functions and data structures for the PI consensus estimator.
This contains the entry point of the code and contains the initialization routines, main loop, and interrupt service routines.
This is the entry point of the code, and contains initialization routines and the main (infinite) loop.
void __attribute__((__interrupt__,auto_psv)) _T1Interrupt(void)
This is the interrupt service routine for Timer1. This is the "system tick" and triggers every 0.2 seconds. It sets a flag to indicate that the interrupt has been triggered.