在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

SimpleFOC之多路PWM驅(qū)動(dòng),相電流監(jiān)測2

jf_78858299 ? 來源:云深之無跡 ? 作者:云深之無跡 ? 2023-04-24 11:29 ? 次閱讀

低側(cè)電流測試

低側(cè)電流檢測可能是最常見的電流檢測技術(shù)。主要原因是它既不需要高性能PWM抑制電流檢測放大器(如在線檢測放大器),也不需要支持高壓的放大器(如高側(cè)放大器)。

采樣電阻始終置于低側(cè)MOSFET和地之間,確保放大器的端子上始終具有非常低的電壓。這種方法的主要缺點(diǎn)是,由于只有相應(yīng)的低側(cè)mosfet開啟時(shí),通過采樣電阻的電流才是相電流,而我們只能在這些時(shí)刻測量到相電流。PWM頻率通常為20至50 kHz,這意味著低側(cè)MOSFET每秒開關(guān)20000至50000次,因此PWM設(shè)置和ADC采集之間的同步非常重要。

目前這個(gè)在開發(fā)中。

圖片

這個(gè)是高測測量一般也不用

https://www.ti.com.cn/product/cn/INA240
https://m.xsypw.cn/analog/202007151246626.html
https://zhuanlan.zhihu.com/p/401573207
https://www.sohu.com/a/439655421_468638
https://baijiahao.baidu.com/s?id=1753450617334241521&wfr=spider&for=pc
https://m.elecfans.com/article/1107269.html
https://m.xsypw.cn/d/1412716.html
// IN1     pwm1    9  27
// IN2     pwm2    6  26
// IN3     pwm3    5  25
// INH1   enable1  8  12
// INH2   enable2  7  13
// INH3   enable3  4  14
// in-line current sense - phase 1/A 35
// in-line current sense - phase 1/C 34


#include 


class LowPassFilte
{
public:
    LowPassFilte(float Tf); // 低通濾波器時(shí)間常量
    ~LowPassFilte() = default;
    float operator()(float x);
    float Tf; //!< 低通濾波器時(shí)間常量
protected:
    unsigned long timestamp_prev; //!< 上次執(zhí)行時(shí)間戳
    float y_prev;                 //!< 經(jīng)過上次執(zhí)行后過濾到的值
};


LowPassFilte::LowPassFilte(float time_constant)
    : Tf(time_constant), y_prev(0.0f)
{
    timestamp_prev = micros();
}


float LowPassFilte::operator()(float x)
{
    unsigned long timestamp = micros();
    float dt = (timestamp - timestamp_prev) * 1e-6f;


    if (dt < 0.0f || dt > 0.5f)
        dt = 1e-3f;


    float alpha = Tf / (Tf + dt);
    float y = alpha * y_prev + (1.0f - alpha) * x;


    y_prev = y;
    timestamp_prev = timestamp;
    return y;
}


LowPassFilte LF_a(0.01); // 原始數(shù)據(jù)濾波器
LowPassFilte LF_b(0.01); // A相電流濾波器
LowPassFilte LF_c(0.01); // C相電流濾波器


// AS5600編碼器支持spi,iic和模擬量三種數(shù)據(jù)傳輸方式,這里用iic(同時(shí)也是最常用的方式)
//  magnetic sensor instance - I2C
MagneticSensorI2C sensor = MagneticSensorI2C(AS5600_I2C);
TwoWire I2Cone = TwoWire(0);


// BLDC motor & driver instance
BLDCMotor motor = BLDCMotor(11);
BLDCDriver3PWM driver = BLDCDriver3PWM(27, 26, 25, 12, 13, 14);


InlineCurrentSense Cs_motor(0.001, 50.0, 35, 36, 34);


// voltage set point variable
float target_voltage = 5.0;
// instantiate the commander
Commander command = Commander(Serial);
void doTarget(char *cmd)
{
    command.scalar(&target_voltage, cmd);
}


void setup()
{
    // initialise magnetic sensor hardware
    I2Cone.begin(18, 5, 400000);
    sensor.init(&I2Cone);
    // link the motor to the sensor
    motor.linkSensor(&sensor);


    // power supply voltage
    driver.voltage_power_supply = 12;
    driver.init();
    motor.linkDriver(&driver);


    // aligning voltage
    motor.voltage_sensor_align = 5;
    // choose FOC modulation (optional)
    motor.foc_modulation = FOCModulationType::SpaceVectorPWM;
    // set motion control loop to be used
    motor.controller = MotionControlType::torque;


    // use monitoring with serial
    Serial.begin(115200);
    // comment out if not needed
    motor.useMonitoring(Serial);


    // initialize motor
    motor.init();
    // align sensor and start FOC
    motor.initFOC();


    // add target command T
    command.add('T', doTarget, "target voltage");


    Serial.println(F("Motor ready."));
    Serial.println(F("Set the target voltage using serial terminal:"));
    _delay(1000);


    Cs_motor.init();
}


void loop()
{


    // main FOC algorithm function
    // the faster you run this function the better
    // Arduino UNO loop  ~1kHz
    // Bluepill loop ~10kHz
    motor.loopFOC();
    // Motion control function
    // velocity, position or voltage (defined in motor.controller)
    // this function can be run at much lower frequency than loopFOC() function
    // You can also use motor.move() and set the motor.target in the code
    motor.move(target_voltage);


    // Cs_motor.getPhaseCurrents();
    Serial.print(LF_b((Cs_motor.getPhaseCurrents()).a));
    Serial.print(",");
    Serial.println(LF_c((Cs_motor.getPhaseCurrents()).c));


    //  Serial.print(LF_a(analogRead(35)));
    //  Serial.print(",");
    //  Serial.print(LF_b((3.3 * ((float)analogRead(35) - 1930) / 4096.0) * 20.0));
    //  Serial.print(",");
    //  Serial.println(LF_c((-3.3 * ((float)analogRead(34) - 1930) / 4096.0) * 20.0));


    // user communication
    command.run();
}
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 開關(guān)
    +關(guān)注

    關(guān)注

    19

    文章

    3274

    瀏覽量

    94977
  • IGBT
    +關(guān)注

    關(guān)注

    1278

    文章

    4032

    瀏覽量

    253687
  • MOS
    MOS
    +關(guān)注

    關(guān)注

    32

    文章

    1346

    瀏覽量

    96359
  • 功率器件
    +關(guān)注

    關(guān)注

    42

    文章

    1921

    瀏覽量

    92287
收藏 人收藏

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    一個(gè)PWM控制周期如何取得兩相電流數(shù)據(jù)

    電機(jī)控制單電阻采樣機(jī)制是在一個(gè)PWM波形內(nèi)采集兩相電流ADC數(shù)據(jù),但某些扇區(qū)邊界條件下只能獲得一路電流ADC數(shù)據(jù), 需要對PWM波形進(jìn)行變形用于構(gòu)造
    的頭像 發(fā)表于 09-13 17:50 ?1.3w次閱讀
    一個(gè)<b class='flag-5'>PWM</b>控制周期如何取得兩<b class='flag-5'>相電流</b>數(shù)據(jù)

    一個(gè)PWM波形內(nèi)采集兩相電流ADC數(shù)據(jù)

    電機(jī)控制單電阻采樣機(jī)制是在一個(gè)PWM波形內(nèi)采集兩相電流ADC數(shù)據(jù),但某些扇區(qū)邊界條件下只能獲得一路電流ADC數(shù)據(jù), 需要對PWM波形進(jìn)行變形用于構(gòu)造
    的頭像 發(fā)表于 09-18 18:55 ?1.9w次閱讀
    一個(gè)<b class='flag-5'>PWM</b>波形內(nèi)采集兩<b class='flag-5'>相電流</b>ADC數(shù)據(jù)

    步進(jìn)電機(jī)相電流怎么測

    的重要性 步進(jìn)電機(jī)作為一種重要的自動(dòng)化設(shè)備,廣泛應(yīng)用于各種工業(yè)和民用領(lǐng)域。相電流是步進(jìn)電機(jī)驅(qū)動(dòng)的核心參數(shù)之一,直接影響電機(jī)的力矩、速度和精度。因此,準(zhǔn)確測量步進(jìn)電機(jī)相電流對于確保電機(jī)正常運(yùn)行、提高生產(chǎn)效率、優(yōu)
    的頭像 發(fā)表于 12-13 15:47 ?5452次閱讀

    基于MSP430的三相電流監(jiān)測系統(tǒng)的設(shè)計(jì)的程序

    組建基于MSP430單片機(jī)的三相電流監(jiān)測系統(tǒng);能夠同時(shí)測量被測負(fù)載的3路電流的瞬態(tài)信號;每路測試速率不小于10k點(diǎn)/秒;測試不確定度小于1%。求大神指導(dǎo)一下程序應(yīng)該怎么寫!!!
    發(fā)表于 05-28 23:09

    無刷電機(jī)相電流比母線電流大?

    三相無刷直流電機(jī),帶三相線性霍爾反饋電機(jī)轉(zhuǎn)子位置,就是可以根據(jù)霍爾的電壓來控制PWM占空比從而生成正弦波電流驅(qū)動(dòng)電路使用3相H橋雙極驅(qū)動(dòng),使用三組6路互補(bǔ)SPWM控制,在
    發(fā)表于 01-19 10:42

    相電流跟蹤型PWM逆變電路

    相電流跟蹤型PWM逆變電路
    發(fā)表于 09-09 13:06 ?2683次閱讀
    三<b class='flag-5'>相電流</b>跟蹤型<b class='flag-5'>PWM</b>逆變電路

    基于組合載波控制的三相電流PWM逆變器研究_黃鈺

    基于組合載波控制的三相電流PWM逆變器研究_黃鈺
    發(fā)表于 12-30 14:37 ?1次下載

    什么是相電流和線電流

    三角連接方式:如果3個(gè)線電流與3個(gè)相電流相對稱,那么線電流等于√3*相電流;如果是非對稱的情況,那就需要計(jì)算各相負(fù)載的性質(zhì),算出電流和電壓的
    發(fā)表于 03-11 10:43 ?19.7w次閱讀
    什么是<b class='flag-5'>相電流</b>和線<b class='flag-5'>電流</b>

    SimpleFOC -foc電流-力矩控制代碼

    #include #include // 無刷直流電機(jī)及驅(qū)動(dòng)器實(shí)例BLDCMotor motor = BLDCMotor(1
    發(fā)表于 12-16 16:51 ?16次下載
    <b class='flag-5'>SimpleFOC</b> -foc<b class='flag-5'>電流</b>-力矩控制代碼

    SimpleFOC -位置控制代碼

    #include #include // 無刷直流電機(jī)及驅(qū)動(dòng)器實(shí)例BLDCMotor motor = BLDCMotor(6
    發(fā)表于 01-14 12:56 ?6次下載
    <b class='flag-5'>SimpleFOC</b> -位置控制代碼

    SimpleFOC之多路PWM驅(qū)動(dòng)相電流監(jiān)測1

    開關(guān)元器件的和嚴(yán)格意義并不是相同的。IGBT,MOS并不是理想開關(guān)器件,其開通時(shí)間和關(guān)斷時(shí)間不是嚴(yán)格一致的,如果兩端有電壓,將導(dǎo)致直流電源短路,損壞橋臂功率器件,稱之為“橋臂直通”。所以在驅(qū)動(dòng)開關(guān)元器件門極的時(shí)候需要增加一段延時(shí),確保另一個(gè)開關(guān)管完全關(guān)斷之后再去打開這個(gè)開關(guān)元器件,通常存在兩種情況;
    的頭像 發(fā)表于 04-24 11:29 ?3825次閱讀
    <b class='flag-5'>SimpleFOC</b><b class='flag-5'>之多路</b><b class='flag-5'>PWM</b><b class='flag-5'>驅(qū)動(dòng)</b>,<b class='flag-5'>相電流</b><b class='flag-5'>監(jiān)測</b>1

    電流相電流的關(guān)系

    電流相電流是電力系統(tǒng)中重要的概念。在三相交流電系統(tǒng)中,線電流相電流之間存在一定的關(guān)系。本文將詳細(xì)介紹線電流
    的頭像 發(fā)表于 12-01 14:27 ?1.2w次閱讀

    怎么區(qū)分相電流與線電流的區(qū)別

    相電流與線電流是電力系統(tǒng)中的兩個(gè)重要概念,它們在電路分析和電力系統(tǒng)設(shè)計(jì)中扮演著關(guān)鍵角色。本文將介紹相電流與線電流的區(qū)別。 一、相電流與線
    的頭像 發(fā)表于 07-17 10:08 ?7265次閱讀

    相電流和線電流的相位關(guān)系

    在電力系統(tǒng)中,電流的相位關(guān)系對于系統(tǒng)的正常運(yùn)行和設(shè)備的安全使用至關(guān)重要。本文將探討相電流和線電流的相位關(guān)系,以及它們在電力系統(tǒng)中的作用和影響。 一、相電流和線
    的頭像 發(fā)表于 07-17 10:18 ?4034次閱讀

    負(fù)載電流是線電流還是相電流

    負(fù)載電流既可以是線電流也可以是相電流,這取決于具體的電路和負(fù)載連接方式。 線電流相電流的定義 線電流
    的頭像 發(fā)表于 10-08 16:23 ?1907次閱讀
    主站蜘蛛池模板: 在线精品国产第一页 | 成人在线精品 | 日本视频不卡 | 天堂网ww| 亚洲理论在线观看 | 日韩美女奶水喂男人在线观看 | 欧美日韩一日韩一线不卡 | 免费爱爱视频网站 | 午夜1000集 | 日本电影在线观看黄 | 日韩在线视频免费观看 | 午夜在线视频观看版 | 精品精品国产高清a毛片牛牛 | 性夜影院爽黄a爽免费视频 性瘾高h姚蕊全文免费阅读 | 中文在线天堂网www 中文在线资源链接天堂 | 精品视频卡1卡2卡3 精品视频免费看 | 日日夜夜狠狠 | 欧美天天在线 | 色综合一区二区三区 | 一本大道高清在线视频 视频 | 久综合网 | 色偷偷成人网免费视频男人的天堂 | 夜夜夜夜夜操 | 国内一区二区三区精品视频 | 亚州视频一区 | 亚洲黄网站wwwwww | 激情文学亚洲色图 | 在线观看黄网 | 国产handjob手交在线播放 | 在线免费视频观看 | 琪琪午夜免费影院在线观看 | 精品女视频在线观看免费 | 天天爱夜夜爱 | 天堂8在线天堂资源在线 | 一级免费看片 | 男啪女色黄无遮挡免费视频 | 午夜在线观看视频 | 久久视频精品36线视频在线观看 | 在线 你懂 | 亚洲人成网站在线观看妞妞网 | 伦理片第一页 |