NHK2017Ateamかにろぼ

Dependencies:   2017NHKpin_config mbed FEP HMC6352 MotorDriverController PID QEI omni

classDiagram

    \ ̄\                   / ̄/ 
/l     \  \             /  / lヽ  
| ヽ  ヽ   |           |  /  / | 
\ ` ‐ヽ  ヽ  ●        ●         /  / ‐  / 
  \ __ l  |  ||___|| /  l __ / 
     \  \ /      \/ 
      /\|   人__人  |/\       
    //\|             |/\\     
    //\|             |/\\     
    /     . \_____/         \ 

                               ┏┓        ┏━┓┏┓              
     ┏┓         ┏┓┏┓   ┏┓    ┏┓┗┛     ┏┓ ┗┓┃┗┛              
┏┛┗━┓  ┃┃┃┃    ┃┃┏━┛┗┓┏┓┏┛┗━┓┃┃┏┓┏┓┏━━━┓ 
┗┓┏━┛  ┃┃┗┛    ┃┃┗━┓┏┛┗┛┗┓┏┓┃┗┛┗┛┃┃┗━━━┛    
┏┛┃┏━┓┃┗━━┓┃┃┏━┛┗┓      ┏┛┃┃┃        ┃┃              
┃┏┛┗━┛┗━━┓┃┃┃┃┏┓┏┛      ┗━┛┃┃        ┃┃┏┓          
┃┃┏━━┓┏━━┛┃┃┃┃┗┛┃         ┏┛┃        ┃┃┃┗━━┓    
┗┛┗━━┛┗━━━┛┗┛┗━━┛         ┗━┛        ┗┛┗━━━┛  

bot/bot.cpp

Committer:
uchitake
Date:
2017-08-30
Revision:
15:9a2dce34b660
Parent:
5:bc5ba4f070ad
Child:
16:86958857c739

File content as of revision 15:9a2dce34b660:

#include "bot.h"

Bot::Bot() : Controller(), MotorDriver(), PIDC()
{
}

void Bot::confirmAll()
{
    Controller::receiveState();
    PIDC::confirm();
    if(Controller::norm[1] > 0.5) PIDC::setSetPoint(radian[1] * (180.0 / M_PI));
}

void Bot::controllDrive()
{
    MotorDriver::goXY(Controller::stick[0],Controller::stick[1], PIDC::co);
}

void Bot::controllMech()
{
    if(!Controller::button1[0]) MotorDriver::moveSlider(ARM_MAX_SPEED);
    if(!Controller::button1[1]) MotorDriver::moveSlider(-ARM_MAX_SPEED);
    if(Controller::button1[0] && Controller::button1[1]) MotorDriver::moveSlider(0);

    if(!Controller::button1[3]) MotorDriver::shakeHead(ARM_MAX_SPEED);
    if(!Controller::button1[4]) MotorDriver::shakeHead(-ARM_MAX_SPEED);
    if(Controller::button1[3] && Controller::button1[4]) MotorDriver::shakeHead(0);

    if(!Controller::button1[5]) MotorDriver::swing(ARM_MAX_SPEED);
    if(!Controller::button1[6]) MotorDriver::swing(-ARM_MAX_SPEED);
    if(Controller::button1[5] && Controller::button1[6]) MotorDriver::swing(0);

    if(!Controller::button1[2]) {
        MotorDriver::destroy(DESTROY_MAX_SPEED);
    } else {
        MotorDriver::destroy(0);
    }

    if(!Controller::button2[0]) MotorDriver::release();
}