Clase Motor. Se usa para crear objetos del tipo motor, que pueden ser continuos o PAP. se especifica los pines a los cuales estara conectado cada Motor. Se puede controlar la velocidad con encoders, encontrar la posición inicial. Se debe especificar la cantidad de pasos y se podrá girar por ángulos.

Dependencies:   mbed

Committer:
CCastrop1012
Date:
Fri Sep 03 05:02:09 2021 +0000
Revision:
0:87460b90b143
Clase Motor. Se usa para crear objetos del tipo motor, que pueden ser continuos o PAP. se especifica los pines a los cuales estara conectado cada Motor. Se puede controlar la velocidad con encoders, encontrar la posicion inicial. ;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
CCastrop1012 0:87460b90b143 1 #include "mbed.h"
CCastrop1012 0:87460b90b143 2 #include "Motor.h"
CCastrop1012 0:87460b90b143 3
CCastrop1012 0:87460b90b143 4 Serial PC(PA_2, PA_3);
CCastrop1012 0:87460b90b143 5
CCastrop1012 0:87460b90b143 6 MotorContinuo Mizq(PD_13, PD_11, PB_15, NC,NC,0);
CCastrop1012 0:87460b90b143 7 MotorContinuo motorprueba(PA_0, PA_1,PA_3);
CCastrop1012 0:87460b90b143 8 MotorDiscreto M1(PC_14, PE_6, 200, NC, NC, 0);
CCastrop1012 0:87460b90b143 9
CCastrop1012 0:87460b90b143 10
CCastrop1012 0:87460b90b143 11
CCastrop1012 0:87460b90b143 12 DigitalOut LED(PD_14);
CCastrop1012 0:87460b90b143 13
CCastrop1012 0:87460b90b143 14 int main() {
CCastrop1012 0:87460b90b143 15
CCastrop1012 0:87460b90b143 16 long SOH1;
CCastrop1012 0:87460b90b143 17
CCastrop1012 0:87460b90b143 18
CCastrop1012 0:87460b90b143 19 PC.printf("Hello World...\n");
CCastrop1012 0:87460b90b143 20 M1.Forward();
CCastrop1012 0:87460b90b143 21 M1.StepFreq(300);
CCastrop1012 0:87460b90b143 22 M1.RunRound(1);
CCastrop1012 0:87460b90b143 23
CCastrop1012 0:87460b90b143 24 while(1)
CCastrop1012 0:87460b90b143 25 {
CCastrop1012 0:87460b90b143 26 SOH1 = M1.getStepOnHold();
CCastrop1012 0:87460b90b143 27 PC.printf("StepOnHold M1 = %d ;\n" , SOH1);
CCastrop1012 0:87460b90b143 28 if(SOH1 < 10){ M1.StopT(); break; }
CCastrop1012 0:87460b90b143 29 wait(0.3);
CCastrop1012 0:87460b90b143 30 }
CCastrop1012 0:87460b90b143 31
CCastrop1012 0:87460b90b143 32 M1.Back();
CCastrop1012 0:87460b90b143 33 M1.StepFreq(350);
CCastrop1012 0:87460b90b143 34 M1.RunRound(1);
CCastrop1012 0:87460b90b143 35
CCastrop1012 0:87460b90b143 36 while(1)
CCastrop1012 0:87460b90b143 37 {
CCastrop1012 0:87460b90b143 38 SOH1 = M1.getStepOnHold();
CCastrop1012 0:87460b90b143 39 PC.printf("StepOnHold M1 = %d ;\n" , SOH1);
CCastrop1012 0:87460b90b143 40 if(SOH1 < 10){ M1.StopT(); break; }
CCastrop1012 0:87460b90b143 41 wait(0.3);
CCastrop1012 0:87460b90b143 42 }
CCastrop1012 0:87460b90b143 43
CCastrop1012 0:87460b90b143 44
CCastrop1012 0:87460b90b143 45
CCastrop1012 0:87460b90b143 46 long cont;
CCastrop1012 0:87460b90b143 47 while(1) {
CCastrop1012 0:87460b90b143 48
CCastrop1012 0:87460b90b143 49 PC.printf("run %d...\n", cont++);
CCastrop1012 0:87460b90b143 50
CCastrop1012 0:87460b90b143 51 //////// Giro sentido 1
CCastrop1012 0:87460b90b143 52 LED = 1;
CCastrop1012 0:87460b90b143 53 Mizq.Forward();
CCastrop1012 0:87460b90b143 54 Mizq.SpeedDuty(100);
CCastrop1012 0:87460b90b143 55 wait(2);
CCastrop1012 0:87460b90b143 56
CCastrop1012 0:87460b90b143 57 SOH1 = M1.getStepOnHold();
CCastrop1012 0:87460b90b143 58 PC.printf("StepOnHold M1 = %d ;\n" , SOH1);
CCastrop1012 0:87460b90b143 59
CCastrop1012 0:87460b90b143 60 Mizq.Stop();
CCastrop1012 0:87460b90b143 61 wait(0.5);
CCastrop1012 0:87460b90b143 62
CCastrop1012 0:87460b90b143 63 //////// Giro sentido contrario
CCastrop1012 0:87460b90b143 64 LED = 0;
CCastrop1012 0:87460b90b143 65 Mizq.Back();
CCastrop1012 0:87460b90b143 66 Mizq.SpeedDuty(100);
CCastrop1012 0:87460b90b143 67 wait(2);
CCastrop1012 0:87460b90b143 68
CCastrop1012 0:87460b90b143 69 SOH1 = M1.getStepOnHold();
CCastrop1012 0:87460b90b143 70 PC.printf("StepOnHold M1 = %d ;\n" , SOH1);
CCastrop1012 0:87460b90b143 71
CCastrop1012 0:87460b90b143 72 Mizq.StopT();
CCastrop1012 0:87460b90b143 73 wait(0.5);
CCastrop1012 0:87460b90b143 74
CCastrop1012 0:87460b90b143 75 }
CCastrop1012 0:87460b90b143 76 }