![](/media/cache/group/default_image.jpg.50x50_q85.jpg)
control for robotic arm that can play chess using a granular gripper
Dependencies: Encoder mbed HIDScope Servo MODSERIAL
Fork of chessRobot by
main.cpp@51:1e6334b993a3, 2015-10-09 (annotated)
- Committer:
- annesteenbeek
- Date:
- Fri Oct 09 13:32:29 2015 +0200
- Revision:
- 51:1e6334b993a3
- Parent:
- 50:b0cf07ca53cf
- Child:
- 56:f730962fbb53
wrote own PID library
Who changed what in which revision?
User | Revision | Line number | New 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 | 50:b0cf07ca53cf | 15 | float motorCall = 0.01; |
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 | } |