Library version for DC_Stepper_Controller_Lib with PWM speed control

Dependencies:   mbed QEI PID

Dependents:   DR-ArmServoTest Auto_DC_pick_class MBed_TR1 ros_button_2021

Committer:
stivending
Date:
Mon May 31 09:44:13 2021 +0000
Revision:
15:87df75ee8731
Parent:
14:c9611cf036ad
button to init;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
stivending 12:3949fd23be49 1 /*******************************************************
stivending 12:3949fd23be49 2 DC MODOR CONTROLLER LIBRARY
stivending 12:3949fd23be49 3 *******************************************************
stivending 13:675456f1f401 4 IMPORTANT: GO TO README FOR DOCUMENT!
stivending 12:3949fd23be49 5 ********************************************************/
stivending 12:3949fd23be49 6
cheukming0607 2:6bc435f4ffec 7 #include "mbed.h"
aberk 0:bcff39fac858 8 #include "QEI.h"
stivending 5:c040faf21e07 9 #include "DC_Motor_Controller.h"
aberk 0:bcff39fac858 10
stivending 9:49b59b308767 11
stivending 13:675456f1f401 12 DC_Motor_PID motor(D6,D3,D4,D5,792); //M1, M2, INA, INB, PPR
stivending 15:87df75ee8731 13 DigitalIn but(D9);
stivending 4:b242191ed0cf 14
stivending 12:3949fd23be49 15 // angle = 412 degree to move from one to another
stivending 12:3949fd23be49 16 // angle = 100 degree to
stivending 9:49b59b308767 17
stivending 12:3949fd23be49 18 int main() {
stivending 12:3949fd23be49 19
stivending 15:87df75ee8731 20 motor.set_pid(0.008, 0, 0, 0.10);
stivending 12:3949fd23be49 21
stivending 12:3949fd23be49 22 Serial pc(USBTX, USBRX); // tx, rx
stivending 12:3949fd23be49 23 pc.baud(9600);
stivending 12:3949fd23be49 24
stivending 15:87df75ee8731 25 but.mode(PullDown);
stivending 15:87df75ee8731 26
stivending 15:87df75ee8731 27 while(1){
stivending 15:87df75ee8731 28
stivending 15:87df75ee8731 29 wait(0.5);motor.set_out(0.4,0);
stivending 15:87df75ee8731 30 /*while(1)
stivending 12:3949fd23be49 31 {
stivending 15:87df75ee8731 32 if(but) {motor.set_out(0.4,0); pc.printf("\nbegin: %d \n", motor.get_pulse()); break;}
stivending 15:87df75ee8731 33 }
stivending 15:87df75ee8731 34
stivending 15:87df75ee8731 35 wait(2);
stivending 15:87df75ee8731 36 */while(1)
stivending 15:87df75ee8731 37 {
stivending 15:87df75ee8731 38 if(but) { motor.set_out(0,0); pc.printf("\nend: %d \n", motor.get_pulse()); break;}
stivending 12:3949fd23be49 39 }
stivending 12:3949fd23be49 40
stivending 15:87df75ee8731 41 wait(0.5);
stivending 15:87df75ee8731 42 motor.reset();
stivending 12:3949fd23be49 43 wait(0.5);
stivending 15:87df75ee8731 44 motor.move_angle(615);
stivending 15:87df75ee8731 45 wait(2);
stivending 15:87df75ee8731 46
stivending 15:87df75ee8731 47 motor.move_angle(412); // speed, 0 to 1
stivending 15:87df75ee8731 48 wait(2);
stivending 13:675456f1f401 49 motor.move_angle(412); // speed, 0 to 1
stivending 15:87df75ee8731 50 wait(2);
stivending 15:87df75ee8731 51 motor.move_angle(412); // speed, 0 to 1
stivending 15:87df75ee8731 52 wait(2);
stivending 13:675456f1f401 53 motor.move_angle(412); // speed, 0 to 1
stivending 15:87df75ee8731 54 wait(2);
stivending 13:675456f1f401 55 motor.move_angle(120); // speed, 0 to 1
stivending 15:87df75ee8731 56 wait(2);
stivending 15:87df75ee8731 57 }
stivending 10:fe56f6800a72 58
cheukming0607 2:6bc435f4ffec 59 }