This is an implementation of a SCR client controller using a Finite State Machine. Code was tested on Ubuntu 14.04 with TORCS 1.3.6.
- TORCS 1.3.4 (or higher). Be sure to install it from the Source Package, and not a binary distribution (better yet, use the instructions below for installing the SCR patch).
- SCR patch as described in "Simulated Car Racing Championship Competition Software Manual" (v2 - April 2013),
A Makefile is provided in hopes of simplifying the build process. Assuming you've downloaded the code, FSMDriver can be compiled with:
cd path/to/fsmdriver
make
make DRIVER=FSMDriver3This creates the default driver executable (FSMDriver3) and also FSMDriver5.
To test it (assuming you started a properly configured race), just run:
./bin/FSMDriver3To build a controller with ABS implemented, a makefile is provided for each ABS implementation and can be compiled with:
cd path/to/fsmdriver/ABS_Implementations/FSMDriverPID
makethis creates a FSMDriver3 controller with a PID ABS implemented.
Documentation (and further explanations) for the code is available in the source code files, and can be extracted via Doxygen. The Makefile provides the info target for this, and the output directory can be changed with in the DOC_OUTPUT variable. By default, the documentation is placed in the same directory as the Makefile.
make info DOC_OUTPUT=/doc/fsmdriverAlso there is avaiable the work report about the modularization of the (FSMDriver3) at the file "Relatório de trabalho.pdf"