Six crescent shaped legs

Dependencies:   mbed

Committer:
sim642
Date:
Tue Apr 19 14:01:04 2016 +0000
Revision:
22:bfc79c6ea2fd
Parent:
19:f21eb090a830
Child:
23:d844cc906b66
Adjust encoder turn count for new gearbox and all edge counting

Who changed what in which revision?

UserRevisionLine numberNew contents of line
phairero 0:0b7259fdb68a 1 #include "mbed.h"
sim642 3:2235787e78c4 2 #include "EncoderMotor.hpp"
sim642 19:f21eb090a830 3 #include "SyncGroup.hpp"
phairero 0:0b7259fdb68a 4
phairero 0:0b7259fdb68a 5 InterruptIn bt(USER_BUTTON);
sim642 2:cf0147952fb9 6 Serial pc(USBTX, USBRX);
sim642 2:cf0147952fb9 7
sim642 19:f21eb090a830 8 PIDData speedPIDData = {0.3f, 2.0f, 0.02f};
sim642 19:f21eb090a830 9 PIDData turnPIDData = {5.0f, 0.1f, 0.04f};
sim642 19:f21eb090a830 10 SyncGroup sync;
sim642 19:f21eb090a830 11
sim642 9:31e850271c4a 12 MotorData mData = {PB_0, PC_1, PC_0};
sim642 22:bfc79c6ea2fd 13 //EncoderData encData = {PA_0, PA_1, 100 * 64};
sim642 22:bfc79c6ea2fd 14 EncoderData encData = {PA_0, PA_1, 102.083 * 64};
sim642 13:dc5f5f19e4e8 15
sim642 19:f21eb090a830 16 EncoderMotor m(mData, encData, speedPIDData, turnPIDData, &sync);
sim642 8:c3af2a1c206c 17
sim642 4:4d54794b99a5 18 //PIDController ec(0.2, 0.1, 0.01);
sim642 13:dc5f5f19e4e8 19 // PIDController ec(0.3, 2.0, 0.02);
sim642 4:4d54794b99a5 20 //PIDController ec(0.75, 2.0, 0.015);
sim642 5:7f800f61cb13 21 //PIDController ec(0.8, 1.5, 0.017);
sim642 13:dc5f5f19e4e8 22 // PIDController ecRot(5.0, 0.1, 0.04);
sim642 13:dc5f5f19e4e8 23 //EncoderMotor m(mData, encData, ec, ecRot);
sim642 4:4d54794b99a5 24 //Motor m(PB_0, PC_1, PC_0);
phairero 0:0b7259fdb68a 25
sim642 2:cf0147952fb9 26 void rise()
sim642 2:cf0147952fb9 27 {
sim642 2:cf0147952fb9 28 pc.printf("rise\n");
sim642 3:2235787e78c4 29 m.drive(0);
sim642 2:cf0147952fb9 30 }
phairero 0:0b7259fdb68a 31
sim642 2:cf0147952fb9 32 void fall()
sim642 2:cf0147952fb9 33 {
sim642 2:cf0147952fb9 34 pc.printf("fall\n");
sim642 22:bfc79c6ea2fd 35 m.drive(0.25);
sim642 2:cf0147952fb9 36 }
phairero 1:8b0322a353f4 37
sim642 2:cf0147952fb9 38 int main()
sim642 3:2235787e78c4 39 {
sim642 3:2235787e78c4 40 bt.rise(&rise);
sim642 3:2235787e78c4 41 bt.fall(&fall);
sim642 3:2235787e78c4 42
sim642 19:f21eb090a830 43 m.setup();
sim642 5:7f800f61cb13 44
sim642 22:bfc79c6ea2fd 45 float turn;
sim642 2:cf0147952fb9 46 while(1)
sim642 2:cf0147952fb9 47 {
sim642 22:bfc79c6ea2fd 48 //scanf("%f", &turn);
sim642 22:bfc79c6ea2fd 49 //m.rotate(turn, 0.5);
sim642 22:bfc79c6ea2fd 50
sim642 22:bfc79c6ea2fd 51 printf("%ld %f\n", m.getEncoder().getCount(), m.getEncoder().getTurn());
sim642 22:bfc79c6ea2fd 52 wait(0.25);
phairero 0:0b7259fdb68a 53 }
sim642 2:cf0147952fb9 54 }