
Test programma voor de encoder
Dependencies: Encoder MODSERIAL mbed
main.cpp@0:f5c7335c5903, 2015-09-18 (annotated)
- Committer:
- roosalyn
- Date:
- Fri Sep 18 13:48:47 2015 +0000
- Revision:
- 0:f5c7335c5903
- Child:
- 1:8a78b9be5e0e
we found that 360 degrees of the shaft is 42000 counts in the encoder. and it works!!
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
roosalyn | 0:f5c7335c5903 | 1 | #include "mbed.h" |
roosalyn | 0:f5c7335c5903 | 2 | #include "encoder.h" |
roosalyn | 0:f5c7335c5903 | 3 | #include "MODSERIAL.h" |
roosalyn | 0:f5c7335c5903 | 4 | |
roosalyn | 0:f5c7335c5903 | 5 | Encoder encoder1(D13,D12); |
roosalyn | 0:f5c7335c5903 | 6 | DigitalOut motor2direction(D4); //D4 en D5 zijn motor 2 (op het motorshield) |
roosalyn | 0:f5c7335c5903 | 7 | PwmOut motor2speed(D5); |
roosalyn | 0:f5c7335c5903 | 8 | MODSERIAL pc(USBTX,USBRX); |
roosalyn | 0:f5c7335c5903 | 9 | |
roosalyn | 0:f5c7335c5903 | 10 | int main() |
roosalyn | 0:f5c7335c5903 | 11 | { |
roosalyn | 0:f5c7335c5903 | 12 | encoder1.setPosition(0); |
roosalyn | 0:f5c7335c5903 | 13 | pc.baud(9600); |
roosalyn | 0:f5c7335c5903 | 14 | motor2direction = 1; |
roosalyn | 0:f5c7335c5903 | 15 | motor2speed = 0.2f; |
roosalyn | 0:f5c7335c5903 | 16 | |
roosalyn | 0:f5c7335c5903 | 17 | while (true) { |
roosalyn | 0:f5c7335c5903 | 18 | pc.printf("pos: %d, speed: %f\r\n", encoder1.getPosition(), encoder1.getSpeed()); |
roosalyn | 0:f5c7335c5903 | 19 | |
roosalyn | 0:f5c7335c5903 | 20 | if (encoder1.getPosition()>42000){ //4200 is gelijk aan 360 graden!!!! :D |
roosalyn | 0:f5c7335c5903 | 21 | motor2speed=0.0; |
roosalyn | 0:f5c7335c5903 | 22 | } |
roosalyn | 0:f5c7335c5903 | 23 | |
roosalyn | 0:f5c7335c5903 | 24 | } |
roosalyn | 0:f5c7335c5903 | 25 | } |