Eurobot2012_Primary

Dependencies:   mbed Eurobot_2012_Primary

Committer:
narshu
Date:
Sat Apr 28 19:39:08 2012 +0000
Revision:
13:57ea4e520dbd
Parent:
9:377560539b74
Child:
14:24f994dc2770
PID tuned. Modified ai signalling logic at target location.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
narshu 9:377560539b74 1
narshu 9:377560539b74 2 #include "ai.h"
narshu 9:377560539b74 3 #include "rtos.h"
narshu 9:377560539b74 4 #include "globals.h"
narshu 9:377560539b74 5
narshu 9:377560539b74 6 AI::AI() :
narshu 9:377560539b74 7 thr_AI(aithreadwrapper,this,osPriorityNormal,1024) {
narshu 13:57ea4e520dbd 8 targetnumber = 0;
narshu 9:377560539b74 9 flag_terminate = false;
narshu 9:377560539b74 10 //printf("aistart\r\n");
narshu 9:377560539b74 11 }
narshu 9:377560539b74 12
narshu 9:377560539b74 13 void AI::settarget(float targetX, float targetY, float targetTheta, bool targetfacing) {
narshu 9:377560539b74 14 targetlock.lock();
narshu 9:377560539b74 15 target.x = targetX;
narshu 9:377560539b74 16 target.y = targetY;
narshu 9:377560539b74 17 target.theta = targetTheta;
narshu 9:377560539b74 18 target.facing = targetfacing;
narshu 13:57ea4e520dbd 19 targetnumber++;
narshu 9:377560539b74 20 targetlock.unlock();
narshu 9:377560539b74 21 }
narshu 9:377560539b74 22
narshu 9:377560539b74 23 void AI::settarget(Target targetin) {
narshu 9:377560539b74 24 targetlock.lock();
narshu 9:377560539b74 25 target = targetin;
narshu 13:57ea4e520dbd 26 targetnumber++;
narshu 9:377560539b74 27 targetlock.unlock();
narshu 9:377560539b74 28 }
narshu 9:377560539b74 29
narshu 9:377560539b74 30 AI::Target AI::gettarget() {
narshu 9:377560539b74 31 targetlock.lock();
narshu 9:377560539b74 32 Target temptarget = target;
narshu 9:377560539b74 33 targetlock.unlock();
narshu 9:377560539b74 34 return temptarget;
narshu 9:377560539b74 35 }