Team Six/Final Paper
(Created page with "lol") |
|||
Line 1: | Line 1: | ||
− | + | ==Introduction== | |
+ | Janky the cocoabot won the competition on MASLAB 2015. It had a very simple design and its code was very modular. | ||
+ | |||
+ | ==Software== | ||
+ | The whole code can be found on our github repository: [https://github.com/asraa/cocoabots/tree/master/src] | ||
+ | |||
+ | ===Language and Libraries=== | ||
+ | The whole code was written in C++11, with the exception of the code present in our Arduino, responsible for communicating with the color sensor, which was written in C. | ||
+ | |||
+ | We decided first to use C++ since most of the example code for the sensors was in C++ and no one in the group felt inclined about making use of JNI to interface with the hardware. Then later, we moved to C++11, to make use of the Thread support library "<thread>" and Date and time utilities "<chrono>". | ||
+ | |||
+ | We used Opencv for our computer vision code. We used standard C++ libraries, "string", "unistd", "cmath", "cstdio", "fstream", "iostream", "signal.h", besides libraries related to containers, such as vector. | ||
+ | |||
+ | ===Design=== | ||
+ | We had 8 threads running on the robot. A high level decision code, a motor control thread, a servo control thread, an actuator thread, a sensors thread, a logging thread, and two threads listening for interrupts for the encoders. | ||
+ | |||
+ | ====Actuator thread==== |
Revision as of 07:13, 2 February 2015
Contents |
Introduction
Janky the cocoabot won the competition on MASLAB 2015. It had a very simple design and its code was very modular.
Software
The whole code can be found on our github repository: [1]
Language and Libraries
The whole code was written in C++11, with the exception of the code present in our Arduino, responsible for communicating with the color sensor, which was written in C.
We decided first to use C++ since most of the example code for the sensors was in C++ and no one in the group felt inclined about making use of JNI to interface with the hardware. Then later, we moved to C++11, to make use of the Thread support library "<thread>" and Date and time utilities "<chrono>".
We used Opencv for our computer vision code. We used standard C++ libraries, "string", "unistd", "cmath", "cstdio", "fstream", "iostream", "signal.h", besides libraries related to containers, such as vector.
Design
We had 8 threads running on the robot. A high level decision code, a motor control thread, a servo control thread, an actuator thread, a sensors thread, a logging thread, and two threads listening for interrupts for the encoders.