NHK2017 octopus robot

Dependencies:   2017NHKpin_config mbed FEP ikarashiMDC PID jy901 omni HMC6352 omni_wheel

Fork of KANI2017v2 by NagaokaRoboticsClub_mbedTeam

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?

UserRevisionLine numberNew 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 }