タコ 腕

Dependencies:   2017NHKpin_config FEP ikarashiMDC

Fork of NHK2017_octopus2 by NagaokaRoboticsClub_mbedTeam

Committer:
number_key
Date:
Tue Nov 28 17:58:04 2017 +0900
Revision:
55:ccf2ac8f6f32
Parent:
54:857390145ac4
move

Who changed what in which revision?

UserRevisionLine numberNew contents of line
number_key 49:69a7235d837a 1 #include "tentacle_unit.h"
number_key 49:69a7235d837a 2
number_key 49:69a7235d837a 3 Tentacle::Tentacle(DigitalOut* RS485Controller, Serial* RS485) :
number_key 49:69a7235d837a 4 tentacleMotor({
number_key 55:ccf2ac8f6f32 5 {RS485Controller, 0, 3, SM, RS485},
number_key 55:ccf2ac8f6f32 6 {RS485Controller, 0, 0, SM, RS485},
number_key 49:69a7235d837a 7 }),
number_key 55:ccf2ac8f6f32 8 // right(LIMIT1,LIMIT0),
number_key 55:ccf2ac8f6f32 9 // left(LIMIT3,LIMIT4)
number_key 55:ccf2ac8f6f32 10 front({{LIMIT1},{LIMIT3}}),
number_key 55:ccf2ac8f6f32 11 back({{LIMIT0},{LIMIT4}})
number_key 49:69a7235d837a 12 {
number_key 49:69a7235d837a 13 tentacleMotor[0].braking = true;
number_key 49:69a7235d837a 14 tentacleMotor[1].braking = true;
number_key 49:69a7235d837a 15 }
number_key 49:69a7235d837a 16
number_key 49:69a7235d837a 17 void Tentacle::rightMove(float speed)
number_key 49:69a7235d837a 18 {
number_key 55:ccf2ac8f6f32 19 if(speed*front[0]>0) speed=0;
number_key 55:ccf2ac8f6f32 20 if(speed*back[0]<0) speed=0;
number_key 55:ccf2ac8f6f32 21 // if(speed*right.getPosition() < 0) speed = 0;
number_key 55:ccf2ac8f6f32 22 // if(speed*right.getPosition() > 0) right.resetPosition();
number_key 49:69a7235d837a 23 tentacleMotor[0].setSpeed(speed);
number_key 49:69a7235d837a 24 }
number_key 49:69a7235d837a 25
number_key 49:69a7235d837a 26 void Tentacle::leftMove(float speed)
number_key 49:69a7235d837a 27 {
number_key 55:ccf2ac8f6f32 28 if(speed*front[1]>0) speed=0;
number_key 55:ccf2ac8f6f32 29 if(speed*back[1]<0) speed=0;
number_key 55:ccf2ac8f6f32 30 // if(speed*left.getPosition() < 0) speed = 0;
number_key 55:ccf2ac8f6f32 31 // if(speed*left.getPosition() > 0) left.resetPosition();
number_key 49:69a7235d837a 32 tentacleMotor[1].setSpeed(speed);
number_key 49:69a7235d837a 33 }
number_key 49:69a7235d837a 34
number_key 49:69a7235d837a 35 void Tentacle::stop()
number_key 49:69a7235d837a 36 {
number_key 49:69a7235d837a 37 tentacleMotor[0].setSpeed(0);
number_key 49:69a7235d837a 38 tentacleMotor[1].setSpeed(0);
number_key 49:69a7235d837a 39 }