Završni rad NXP Cup
Dependencies: HBridgeDCMotor mbed FastPWM AutomationElements
Diff: main.cpp
- Revision:
- 0:1b75c7a92a5e
- Child:
- 1:50fc6689148e
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Fri May 06 18:48:56 2016 +0000 @@ -0,0 +1,58 @@ +#include "mbed.h" +#include "HBridgeDCMotor.h" + +DigitalIn fault(PTE20); + +HBridgeDCMotor motor_a(PTC3, PTC4); +HBridgeDCMotor motor_b(PTC1, PTC2); + +PwmOut servo(PTB0); +DigitalOut enable(PTE21); +Timer timer; + +int main() { + + float sampleTime = 50e-3, switchingFrequency = 5000, rampTime = 3; + timer.start(); + motor_a.configure(sampleTime, switchingFrequency, rampTime, rampTime); + motor_b.configure(sampleTime, switchingFrequency, rampTime, rampTime); + servo.period(0.020); + float pw=0,pw2=0; + servo.pulsewidth(0.00100); + wait(10); + while(1){ + + + + + /** if( timer.read()> 3 && timer.read()< 9 ){ **/ + motor_a.setDutyCycle(0.01); + motor_b.setDutyCycle(0.01); + /** } + else if( timer.read()> 9 && timer.read()< 15){ + motor_a.setDutyCycle(-0.01); + motor_b.setDutyCycle(-0.01); + } + else if (timer.read()>5 && timer.read()<12){ +**/ + for(pw=pw2; pw<0.00025; pw+=0.00001) { + servo.pulsewidth(0.001+ pw); + wait(0.1); + } + wait(3); + for(pw2=pw; pw2>-0.00025; pw2-=0.00001) { + servo.pulsewidth(0.001 + pw2); + wait(0.1); + } + wait(3); + /** } + else { + motor_a.setDutyCycle(0); + motor_b.setDutyCycle(0); + // enable=0; + } **/ + } + + + +}