Ramon Waninge / Mbed 2 deprecated Milestone1

Dependencies:   FastPWM mbed QEI biquadFilter HIDScope MODSERIAL

Committer:
efvanmarrewijk
Date:
Mon Oct 08 09:37:48 2018 +0000
Revision:
8:4f15670bc00b
Parent:
7:7c005b3cf288
Niet werkende versie

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Ramonwaninge 0:3ea1bbfbeaae 1 #include "mbed.h"
Ramonwaninge 0:3ea1bbfbeaae 2 #include "FastPWM.h"
efvanmarrewijk 8:4f15670bc00b 3 #include <math.h>
Ramonwaninge 0:3ea1bbfbeaae 4
Ramonwaninge 0:3ea1bbfbeaae 5 Ticker motor;
Ramonwaninge 0:3ea1bbfbeaae 6
Ramonwaninge 4:0c27632b453a 7 AnalogIn pot1(A1);
Ramonwaninge 5:047db32db712 8 AnalogIn pot2(A2);
efvanmarrewijk 6:3c9569087274 9 FastPWM pin5(D5); // Motor 2 pwm
efvanmarrewijk 6:3c9569087274 10 DigitalOut pin4(D4); // Motor 2 direction
efvanmarrewijk 6:3c9569087274 11 FastPWM pin6(D6); // Motor 1 pwm
efvanmarrewijk 6:3c9569087274 12 DigitalOut pin7(D7); // Motor 1 direction
efvanmarrewijk 6:3c9569087274 13 //float u1 = pot1;
Ramonwaninge 2:d8a552d1d33a 14
efvanmarrewijk 8:4f15670bc00b 15 //float rad1 = 1.0/4.0*PI; // Desired angle of motor 1 (needs to be calculated by the program)
efvanmarrewijk 8:4f15670bc00b 16 //float nrad1;
efvanmarrewijk 8:4f15670bc00b 17
Ramonwaninge 3:d39285fdd103 18 void draai(){
efvanmarrewijk 7:7c005b3cf288 19 float u1 = 2.0*(pot1 - 0.5); // Potmeter 1 connects to motor 1
efvanmarrewijk 8:4f15670bc00b 20 if (u1>0) // Determines direction of motor 1
efvanmarrewijk 8:4f15670bc00b 21 { pin4 = true;
efvanmarrewijk 8:4f15670bc00b 22 }
efvanmarrewijk 8:4f15670bc00b 23 else
efvanmarrewijk 8:4f15670bc00b 24 { pin4 = false;
efvanmarrewijk 8:4f15670bc00b 25 }
efvanmarrewijk 7:7c005b3cf288 26 pin5 = fabs(u1); // Determines pwm of motor 1
efvanmarrewijk 6:3c9569087274 27
efvanmarrewijk 7:7c005b3cf288 28 float u2 = 2.0*(pot2 - 0.5); // Potmeter 2 connects to motor 2
efvanmarrewijk 8:4f15670bc00b 29 if (u2>0) // Determines direction of motor 2
efvanmarrewijk 8:4f15670bc00b 30 { pin7 = true;
efvanmarrewijk 8:4f15670bc00b 31 }
efvanmarrewijk 8:4f15670bc00b 32 else
efvanmarrewijk 8:4f15670bc00b 33 { pin7 = false;
efvanmarrewijk 8:4f15670bc00b 34 }
efvanmarrewijk 7:7c005b3cf288 35 pin6 = fabs(u2); // Determines pwm of motor 2
Ramonwaninge 3:d39285fdd103 36 }
Ramonwaninge 1:e40e981acbf1 37 int main(){
efvanmarrewijk 8:4f15670bc00b 38
efvanmarrewijk 8:4f15670bc00b 39
efvanmarrewijk 7:7c005b3cf288 40 while(true)
efvanmarrewijk 8:4f15670bc00b 41 { //nrad1 = rad1/PI; // Normalised desired angle of motor 1
efvanmarrewijk 8:4f15670bc00b 42 pin5.period_us(50);
efvanmarrewijk 8:4f15670bc00b 43 motor.attach(draai, 0.001);
efvanmarrewijk 8:4f15670bc00b 44 pin6.period_us(50);
efvanmarrewijk 8:4f15670bc00b 45 motor.attach(draai, 0.001);
Ramonwaninge 3:d39285fdd103 46 }
Ramonwaninge 0:3ea1bbfbeaae 47 }