Oskar Weigl
/
Quadcopterv2
This is for ICRS\' second generation Quadcopter
motors.h@0:0bbf2f16da9c, 2011-11-18 (annotated)
- Committer:
- madcowswe
- Date:
- Fri Nov 18 18:23:33 2011 +0000
- Revision:
- 0:0bbf2f16da9c
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
madcowswe | 0:0bbf2f16da9c | 1 | |
madcowswe | 0:0bbf2f16da9c | 2 | void initmotor() { |
madcowswe | 0:0bbf2f16da9c | 3 | PWMleft.period_ms(20); |
madcowswe | 0:0bbf2f16da9c | 4 | PWMleft = NOPOWER; |
madcowswe | 0:0bbf2f16da9c | 5 | PWMright.period_ms(20); |
madcowswe | 0:0bbf2f16da9c | 6 | PWMright = NOPOWER; |
madcowswe | 0:0bbf2f16da9c | 7 | |
madcowswe | 0:0bbf2f16da9c | 8 | PWMfront.period_ms(20); |
madcowswe | 0:0bbf2f16da9c | 9 | PWMfront = NOPOWER; |
madcowswe | 0:0bbf2f16da9c | 10 | PWMrear.period_ms(20); |
madcowswe | 0:0bbf2f16da9c | 11 | PWMrear = NOPOWER; |
madcowswe | 0:0bbf2f16da9c | 12 | } |
madcowswe | 0:0bbf2f16da9c | 13 | |
madcowswe | 0:0bbf2f16da9c | 14 | void leftM(float thrust) { |
madcowswe | 0:0bbf2f16da9c | 15 | float output = (542 + 0.462 * thrust) / 10000; |
madcowswe | 0:0bbf2f16da9c | 16 | if (output > 0.0950) { |
madcowswe | 0:0bbf2f16da9c | 17 | PWMleft = 0.0950; |
madcowswe | 0:0bbf2f16da9c | 18 | motormaxled = 1; |
madcowswe | 0:0bbf2f16da9c | 19 | } else { |
madcowswe | 0:0bbf2f16da9c | 20 | PWMleft = output; |
madcowswe | 0:0bbf2f16da9c | 21 | } |
madcowswe | 0:0bbf2f16da9c | 22 | } |
madcowswe | 0:0bbf2f16da9c | 23 | |
madcowswe | 0:0bbf2f16da9c | 24 | void rightM(float thrust) { |
madcowswe | 0:0bbf2f16da9c | 25 | float output = (542 + 0.462 * thrust) / 10000; |
madcowswe | 0:0bbf2f16da9c | 26 | if (output > 0.0950) { |
madcowswe | 0:0bbf2f16da9c | 27 | PWMright = 0.0950; |
madcowswe | 0:0bbf2f16da9c | 28 | motormaxled = 1; |
madcowswe | 0:0bbf2f16da9c | 29 | } else { |
madcowswe | 0:0bbf2f16da9c | 30 | PWMright = output; |
madcowswe | 0:0bbf2f16da9c | 31 | } |
madcowswe | 0:0bbf2f16da9c | 32 | } |
madcowswe | 0:0bbf2f16da9c | 33 | |
madcowswe | 0:0bbf2f16da9c | 34 | void frontM(float thrust) { |
madcowswe | 0:0bbf2f16da9c | 35 | float output = (542 + 0.462 * thrust) / 10000; |
madcowswe | 0:0bbf2f16da9c | 36 | if (output > 0.950) { |
madcowswe | 0:0bbf2f16da9c | 37 | PWMfront = 0.0950; |
madcowswe | 0:0bbf2f16da9c | 38 | motormaxled = 1; |
madcowswe | 0:0bbf2f16da9c | 39 | } else { |
madcowswe | 0:0bbf2f16da9c | 40 | PWMfront = output; |
madcowswe | 0:0bbf2f16da9c | 41 | } |
madcowswe | 0:0bbf2f16da9c | 42 | } |
madcowswe | 0:0bbf2f16da9c | 43 | |
madcowswe | 0:0bbf2f16da9c | 44 | void rearM(float thrust) { |
madcowswe | 0:0bbf2f16da9c | 45 | float output = (542 + 0.462 * thrust) / 10000; |
madcowswe | 0:0bbf2f16da9c | 46 | if (output > 0.0950) { |
madcowswe | 0:0bbf2f16da9c | 47 | PWMrear = 0.0950; |
madcowswe | 0:0bbf2f16da9c | 48 | motormaxled = 1; |
madcowswe | 0:0bbf2f16da9c | 49 | } else { |
madcowswe | 0:0bbf2f16da9c | 50 | PWMrear = output; |
madcowswe | 0:0bbf2f16da9c | 51 | } |
madcowswe | 0:0bbf2f16da9c | 52 | } |