Eurobot2012_Primary

Dependencies:   mbed Eurobot_2012_Primary

Committer:
narshu
Date:
Sat Apr 28 22:21:03 2012 +0000
Revision:
15:acae5c0e9ca8
Parent:
14:24f994dc2770
functioning motion control code

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 9:377560539b74 8 flag_terminate = false;
narshu 9:377560539b74 9 //printf("aistart\r\n");
narshu 9:377560539b74 10 }
narshu 9:377560539b74 11
narshu 9:377560539b74 12 void AI::settarget(float targetX, float targetY, float targetTheta, bool targetfacing) {
narshu 9:377560539b74 13 targetlock.lock();
narshu 9:377560539b74 14 target.x = targetX;
narshu 9:377560539b74 15 target.y = targetY;
narshu 9:377560539b74 16 target.theta = targetTheta;
narshu 9:377560539b74 17 target.facing = targetfacing;
narshu 15:acae5c0e9ca8 18 target.reached = false;
narshu 9:377560539b74 19 targetlock.unlock();
narshu 9:377560539b74 20 }
narshu 9:377560539b74 21
narshu 9:377560539b74 22 void AI::settarget(Target targetin) {
narshu 9:377560539b74 23 targetlock.lock();
narshu 9:377560539b74 24 target = targetin;
narshu 9:377560539b74 25 targetlock.unlock();
narshu 9:377560539b74 26 }
narshu 9:377560539b74 27
narshu 9:377560539b74 28 AI::Target AI::gettarget() {
narshu 9:377560539b74 29 targetlock.lock();
narshu 9:377560539b74 30 Target temptarget = target;
narshu 9:377560539b74 31 targetlock.unlock();
narshu 9:377560539b74 32 return temptarget;
narshu 9:377560539b74 33 }