Rauno U
/
Miisu
Six crescent shaped legs
main.cpp
- Committer:
- sim642
- Date:
- 2016-04-19
- Revision:
- 23:d844cc906b66
- Parent:
- 22:bfc79c6ea2fd
- Child:
- 24:fb1827be6f7e
File content as of revision 23:d844cc906b66:
#include "mbed.h" #include "EncoderMotor.hpp" #include "SyncGroup.hpp" InterruptIn bt(USER_BUTTON); Serial pc(USBTX, USBRX); //PIDData speedPIDData = {0.3f, 2.0f, 0.02f}; //PIDData turnPIDData = {5.0f, 0.1f, 0.04f}; PIDData speedPIDData = {0.5f, 0.0f, 0.0f}; PIDData turnPIDData = {5.0f, 0.1f, 0.04f}; SyncGroup sync; MotorData mData = {PB_0, PC_0, PC_1}; //EncoderData encData = {PA_0, PA_1, 100 * 64}; EncoderData encData = {PA_0, PA_1, 102.083 * 64}; // https://www.pololu.com/product/2826 EncoderMotor m(mData, encData, speedPIDData, turnPIDData, NULL); //SpeedEncoder s(encData); //PIDController ec(0.2, 0.1, 0.01); // PIDController ec(0.3, 2.0, 0.02); //PIDController ec(0.75, 2.0, 0.015); //PIDController ec(0.8, 1.5, 0.017); // PIDController ecRot(5.0, 0.1, 0.04); //EncoderMotor m(mData, encData, ec, ecRot); //Motor m(PB_0, PC_1, PC_0); void rise() { pc.printf("rise\n"); m.drive(0); } void fall() { pc.printf("fall\n"); m.drive(0.25); } int main() { bt.rise(&rise); bt.fall(&fall); m.setup(); float speed; while(1) { //scanf("%f", &turn); //m.rotate(turn, 0.2); //scanf("%f", &speed); //m.drive(speed); //printf("%f %f\n", s.getTurnSpeed(), m.getSetSpeed()); //printf("%f %f\n", m.s, m.getSetSpeed()); //printf("%ld %f\n", m.getEncoder().getCount(), m.getEncoder().getTurn()); m.tick(); //printf("%f %f\n", m.getEncoder().getTurn(), m.getSetTurn()); wait(1.f / 60); } }