NHK2017 octopus robot
Dependencies: 2017NHKpin_config mbed FEP ikarashiMDC PID jy901 omni HMC6352 omni_wheel
Fork of KANI2017v2 by
bot/tentacle_unit/tentacle_unit.cpp@26:7258d5ad0bff, 2017-10-25 (annotated)
- Committer:
- number_key
- Date:
- Wed Oct 25 03:25:06 2017 +0900
- Revision:
- 26:7258d5ad0bff
- Parent:
- 23:37bb9afe9fdc
no message
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
number_key |
23:37bb9afe9fdc | 1 | #include "tentacle_unit.h" |
number_key |
23:37bb9afe9fdc | 2 | |
number_key |
23:37bb9afe9fdc | 3 | Tentacle::Tentacle(DigitalOut* RS485Controller, Serial* RS485) : |
number_key |
23:37bb9afe9fdc | 4 | tentacleMotor({ |
number_key |
26:7258d5ad0bff | 5 | {RS485Controller, 1, 3, SM, RS485}, |
number_key |
23:37bb9afe9fdc | 6 | {RS485Controller, 1, 1, SM, RS485}, |
number_key |
23:37bb9afe9fdc | 7 | }), |
number_key |
26:7258d5ad0bff | 8 | right(PWM3, PWM6),left(PWM8,PWM10), |
number_key |
26:7258d5ad0bff | 9 | debugSerial(USBTX, USBRX, 115200) |
number_key |
23:37bb9afe9fdc | 10 | { |
number_key |
23:37bb9afe9fdc | 11 | tentacleMotor[0].braking = true; |
number_key |
23:37bb9afe9fdc | 12 | tentacleMotor[1].braking = true; |
number_key |
23:37bb9afe9fdc | 13 | } |
number_key |
23:37bb9afe9fdc | 14 | |
number_key |
23:37bb9afe9fdc | 15 | void Tentacle::rightMove(float speed) |
number_key |
23:37bb9afe9fdc | 16 | { |
number_key |
23:37bb9afe9fdc | 17 | if(speed*right.getPosition() < 0) speed = 0; |
number_key |
23:37bb9afe9fdc | 18 | if(speed*right.getPosition() > 0) right.resetPosition(); |
number_key |
23:37bb9afe9fdc | 19 | tentacleMotor[0].setSpeed(speed); |
number_key |
23:37bb9afe9fdc | 20 | } |
number_key |
23:37bb9afe9fdc | 21 | |
number_key |
23:37bb9afe9fdc | 22 | void Tentacle::leftMove(float speed) |
number_key |
23:37bb9afe9fdc | 23 | { |
number_key |
23:37bb9afe9fdc | 24 | if(speed*left.getPosition() < 0) speed = 0; |
number_key |
23:37bb9afe9fdc | 25 | if(speed*left.getPosition() > 0) left.resetPosition(); |
number_key |
23:37bb9afe9fdc | 26 | tentacleMotor[1].setSpeed(speed); |
number_key |
23:37bb9afe9fdc | 27 | } |
number_key |
23:37bb9afe9fdc | 28 | |
number_key |
23:37bb9afe9fdc | 29 | void Tentacle::stop() |
number_key |
23:37bb9afe9fdc | 30 | { |
number_key |
23:37bb9afe9fdc | 31 | tentacleMotor[0].setSpeed(0); |
number_key |
23:37bb9afe9fdc | 32 | tentacleMotor[1].setSpeed(0); |
number_key |
23:37bb9afe9fdc | 33 | } |
number_key |
26:7258d5ad0bff | 34 | |
number_key |
26:7258d5ad0bff | 35 | void Tentacle::debugPrint() |
number_key |
26:7258d5ad0bff | 36 | { |
number_key |
26:7258d5ad0bff | 37 | debugSerial.printf("right:%d left:%d\r\n",right.getPosition(),left.getPosition()); |
number_key |
26:7258d5ad0bff | 38 | } |