小日向さんのMDライブラリ

Dependents:   00_yotsuba 10_motor-test 00_yotsuba 200_yotsuba_21 ... more

kohiMD.cpp

Committer:
THtakahiro702286
Date:
2020-01-27
Revision:
1:87d96da7a474
Child:
2:103c3a6c7389
Child:
5:89c4237ef94a

File content as of revision 1:87d96da7a474:

#include "kohiMD.h"
#include "mbed.h"

KohiMD::KohiMD(PinName pwmPin) : pwmMD(pwmPin),
mdlpf(1.0/300,0.005),
pc(USBTX,USBRX,115200)
{
    pwmMD.period(1.0/25000.0);
    pwmMD.write(0.5);
//    threadMD.start(callback(this, &HaseMD::MDloop));
    drive.attach(callback(this,&KohiMD::MDloop),1.0/200.0);
}

void KohiMD::setSpeed(double speed_)
{
    speed = speed_;
//    pc.printf("%f \n\r",_pwmMD);
}

void KohiMD::MDloop()
{
//    while(true){
        _pwmMD = mdlpf.path_value(speed);
        _pwmMD = 0.5 + _pwmMD /2.0;
        if(_pwmMD > 0.9) _pwmMD = 0.9;
        if(_pwmMD < 0.1) _pwmMD = 0.1;
        pwmMD.write(_pwmMD);
//        pc.printf("%f \n\r",_pwmMD);
//        ThisThread::sleep_for(1000.0/400);
//        threadMD.wait(1000.0/400);
//        }
}