2017_Bteam_alpha_master_ashi

Dependencies:   Alpha_Movements BoolProcess DataCaller MD_PID mbed angle

Fork of 2017_Bteam_alpha_master by taiyou komazawa

ArrowShooter.cpp

Committer:
hirotayamato
Date:
2017-09-27
Revision:
10:94527f9ac652
Parent:
3:8d143b23df2a

File content as of revision 10:94527f9ac652:

#include "ArrowShooter.h"

ArrowShooter::ArrowShooter(I2C *_master, double _strt_inval)
:   to_slave(alpha_a::sht_pwr, alpha_a::unsig, alpha_a::s2_addr, _master),
    _MD(&i2c_md),
    motor(_MD, _strt_inval)
{
    time.reset();
    time.start();
}

double ArrowShooter::fire()
{
    
    if(2.5 > time.read())
    {
        //printf("ypaaa!!");
        set_pwm(1.0);
    }
    else if(3.8 > time.read())
    {
        set_pwm(0.0);
    }
    else 
    {
        time.reset();
    }        

    
    //printf("%d\r\n",i2c_md.get_output());
    
    return time.read(); 
       
}

void ArrowShooter::set_pwm(double pwm, double inval)
{
    motor.reform_inval(inval);
    motor.drive(pwm);
    to_slave.write((uint8_t)i2c_md.get_output());  
}