control for robotic arm that can play chess using a granular gripper

Dependencies:   Encoder mbed HIDScope Servo MODSERIAL

Fork of chessRobot by a steenbeek

Committer:
annesteenbeek
Date:
Fri Oct 09 13:06:14 2015 +0000
Revision:
56:f730962fbb53
Parent:
51:1e6334b993a3
Child:
57:43f707648f2b
Working, changing buttons for PID tuning

Who changed what in which revision?

UserRevisionLine numberNew contents of line
annesteenbeek 12:61759f94c07a 1 #include "mbed.h"
annesteenbeek 13:4837b36b9a68 2 #include "config.h" // settings and pin configurations
annesteenbeek 13:4837b36b9a68 3 #include "actuators.h"
annesteenbeek 15:5fa388ba22cb 4 #include "buttons.h"
annesteenbeek 25:874675516927 5 #include "debug.h"
annesteenbeek 6:b957d8809e7c 6
annesteenbeek 51:1e6334b993a3 7 int a = 3;
annesteenbeek 30:a20f16bf8dda 8 Ticker switches, debug, motor;
annesteenbeek 30:a20f16bf8dda 9 volatile bool switches_go=false, debug_go=false, motor_go=false;
annesteenbeek 0:525558a26464 10
annesteenbeek 30:a20f16bf8dda 11 void switches_activate(){switches_go=true;};
annesteenbeek 30:a20f16bf8dda 12 void debug_activate(){debug_go=true;};
annesteenbeek 30:a20f16bf8dda 13 void motor_activate(){motor_go=true;};
annesteenbeek 29:e4f3455aaa0b 14
annesteenbeek 56:f730962fbb53 15 float motorCall = 0.001;
annesteenbeek 50:b0cf07ca53cf 16
annesteenbeek 5:73bfad06b775 17 int main(){
annesteenbeek 26:0a9e4147a31a 18 motorInit();
annesteenbeek 32:2006977785f5 19 // calibrateMotors();
annesteenbeek 29:e4f3455aaa0b 20
annesteenbeek 47:e493567999d7 21 switches.attach(&switches_activate, 0.02f);
annesteenbeek 47:e493567999d7 22 debug.attach(&debug_activate, 0.03f);
annesteenbeek 50:b0cf07ca53cf 23 motor.attach(&motor_activate, motorCall);
annesteenbeek 32:2006977785f5 24
annesteenbeek 0:525558a26464 25 while (true) {
annesteenbeek 3:47c76be6d402 26 // readEMG();
annesteenbeek 3:47c76be6d402 27 // servoControl();
annesteenbeek 30:a20f16bf8dda 28 if(switches_go){
annesteenbeek 30:a20f16bf8dda 29 switches_go=false;
annesteenbeek 30:a20f16bf8dda 30 checkSwitches();
annesteenbeek 30:a20f16bf8dda 31 }
annesteenbeek 30:a20f16bf8dda 32 if(debug_go){
annesteenbeek 30:a20f16bf8dda 33 debug_go=false;
annesteenbeek 30:a20f16bf8dda 34 debugProcess();
annesteenbeek 30:a20f16bf8dda 35 }
annesteenbeek 30:a20f16bf8dda 36 if(motor_go){
annesteenbeek 30:a20f16bf8dda 37 motor_go=false;
annesteenbeek 30:a20f16bf8dda 38 motorControl();
annesteenbeek 30:a20f16bf8dda 39 }
annesteenbeek 0:525558a26464 40 }
annesteenbeek 0:525558a26464 41 }