精华内容
下载资源
问答
  • 电机电流采样电路
    千次阅读
    2020-10-29 16:30:39

    一、电路分享
    在这里插入图片描述
    二、电路详解
    电路中电流采样主要通过电阻R1和芯片LTC6102进行
    1、LTC6102简介
      LTC®6102/LTC6102HV 是多功能、高压、高边电流检测放大器。高电源电压额定值使其可用于许多高端应用,而低漂移和失调则能保证其在各种工作状况下的精度。 LTC6102-1 是 LTC6102 的一个版本,提供低功耗禁用模式以节省系统待机功耗。
      LTC6102/LTC6102HV 通过外部检测电阻 (分流电阻) 两端的电压来监测电流。内部电路将输入电压转换为输出电流,使得大共模电压上的小检测信号可以转换为以地为基准的信号。低直流失调电压支持使用非常小的分流电阻值和较大的增益设置电阻。结果,分流器中的功率损耗得以降低。
      宽工作电源电压和高精度使 LTC6102 成为从汽车到工业和电源管理的各种应用的理想选择。 2V的最大输入检测电压支持监测宽范围的电流和电压。快速响应使 LTC6102 成为负载电流警告和关断保护控制的出色选择。LTC6102 的所有版本均提供 8 引脚 MSOP 和3mm × 3mm DFN 封装。
    特点
    ■ 电源电压范围:
    4V 至 60V, 70V 最大值 (LTC6102)
    5V 至 100V, 105V 最大值 (LTC6102HV)
    ■ 输入失调: ±10μV (最大值)
    ■ 输入失调漂移: ±50nV/°C (最大值)
    ■ 快速响应: 1μs 阶跃响应
    ■ 通过两个电阻配置增益
    ■ 低输入偏置电流: 3nA (最大值)
    ■ PSRR: 130dB (最小值)
    ■ 输出电流最高可达 1mA
    ■ 工作温度范围: –40°C 至 125°C
    ■ 禁用模式 (仅限 LTC6102-1): 1μA (最大值)
    其他具体请参考手册
    1、LTC6102简介

    三、输出电压计算

    Vout = VR1*VR5/VR4

    四、LTC6102中文资料下载
    LTC6102中文资料下载

    更多相关内容
  • 电子政务-伺服电机电流采样电路.zip
  • 针对某型号无刷直流电机的控制要求,本文设计了一种高精度采样及保护电路,该电路可以对无刷直流电机工作时的三相电流进行实时采集,以便于控制系统进行闭环控制,并对电机和控制系统快速实施保护.最后通过实验证明了该...
  • 日前,德州仪器 (TI) 宣布推出一款集成多个组件的完整电流采样监控器比较解决方案,该解决方案在 14 引脚微小型封装中集成了一个高测电流感应放大器、两个比较器以及一个电压基准。凭借这种独特集成性与功能,INA206...
  • 前言&&准备材料 我这里用的控制器是esp32,它...采用内置电流采样,具体电流采样电路如下图: 双向 参考链接: 1.【INA240】产品参数介绍、INA240数据手册、中英文PDF资料下载-TI资...

    目录

    前言&&准备材料

    arduino程序

    参考链接:


    前言&&准备材料

    我这里用的控制器是esp32,它的adc采集器分辨率是12位,工作电压是3.3V。因此我们读取到的模拟数值0~4096就是对应的0~3.3V。

    这里我的ina240型号是I240A2。也就是说ina240的增益是50V/V。

    我的驱动器型号是simplefoc v0.2。采用内置电流采样,具体电流采样电路如下图:

     双向

    arduino程序

    /**
       使用电压控制回路的扭矩控制示例。
       大多数低端无刷电机驱动器没有电流测量功能,因此SimpleFOC为您提供了一种通过设置电机电压而不是电流来控制电机扭矩的方法。
       这使无刷直流电机有效地成为直流电机,您可以以相同的方式使用它。
    */
    // 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 <SimpleFOC.h>
     
    class LowPassFilte {
      public:
        LowPassFilte(float Tf);//低通滤波器时间常量
        ~LowPassFilte() = default;
        float operator() (float x);
        float Tf; //!< 低通滤波器时间常量
      protected:
        unsigned long timestamp_prev;  //!< 上次执行时间戳
        float y_prev; //!< 经过上次执行后过滤到的值
    };
     
    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);//原始数据滤波器
    LowPassFilte LF_b(0.01);//A相电流滤波器
    LowPassFilte LF_c(0.01);//C相电流滤波器
     
     
    //AS5600编码器支持spi,iic和模拟量三种数据传输方式,这里用iic(同时也是最常用的方式)
    // 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();
    }

    串口打印效果:

     

    参考链接:

    1.【INA240】产品参数介绍、INA240数据手册、中英文PDF资料下载-TI资料-电子发烧友

    2. 

    展开全文
  • 在伺服驱动控制系统中,为实现磁场定向控制,需要至少对两相电机绕组的电流进行采样,这两路电流采样将作为电流反馈信号使伺服驱动实现电流闭环,可以这样说,电流...本文就来介绍一下伺服驱动器中电流采样电路的设计。
  • 本文设计了一种高精度采样及保护电路,该电路可以对无刷直流电机工作时的三相电流进行实时采集,以便于控制系统进行闭环控制,并对电机和控制系统快速实施保护。最后通过实验证明了该电路精度高、可靠性好,可以有效...
  • 常见的如下几种电流采样电路的检测方案: 至于电流采样的传感器,在制作快速样件进行算法验证阶段可以选用线性hall电流采样芯片,在规模化量产阶段,使用高精度电流采样电阻成本优势更大,因此今天主要就...

    在永磁同步电机FOC控制算法中,控制目标是电机的相电流,因而电流反馈信号也相当重要。

     

    常见的如下几种电流采样电路的检测方案:

     

     

    至于电流采样的传感器,在制作快速样件进行算法验证阶段可以选用线性hall电流采样芯片,在规模化量产阶段,使用高精度电流采样电阻成本优势更大,因此今天主要就采样电阻就这种方式来展开。由于相线电流采样的方式,信号上有较大的共模电压,因此一般预驱芯片自带的运放都不能使用,需要用到如下图所示的专用的放大电路芯片,芯片中的放大倍数一般不会超过30倍,20倍较为普遍;因为采用相线采样的方式,必然需要检测正负两个方向的电流,还需要设置一个2.5V的偏置电压。

     

     

    采样电阻的选择:

     

    采样电阻选择过大,电流测量的量程小,采样电阻本身的发热损耗也会过大,对采样电阻的功率要求也相应提高;

     

    采样电阻选择过小,测量到的电流信号分辨率降低,容易受噪声的影响。

     

    假设期望检测的电流范围为正负100A,那么采样电阻阻值应该不大于4V/(200A*20)=1毫欧。(只选用4V的原因是输出0-0.5V和4.5V到5V这一段的线性度比较差,而且要留着这一段区间用来进行故障诊断)

     

    AD采样的时间选择:

     

    以PWM中心对齐的控制方式为例,其电机相电流在微观上存在一个2倍频于PWM频率的纹波信号。

     

     

    【t0  t1】时段,三个MOS均关闭,A相电流下降;

    【t1  t2】时段,A相导通,BC相关闭,A相电流上升;

    【t2  t3】时段,AB相导通,C相关闭,相电流下降;

    【t3  t4】时段,ABC三相均导通,相电流下降;

    【t4  t5】时段,AB相导通,C相关闭,相电流上升;

    【t5  t6】时段,A相导通,BC相关闭,相电流上升;

    【t6  t0】时段,三相均关闭,相电流下降;

     

    由于PWM开关的频率很快,这个电流的纹波一般都比较小(1A以内),但是对于控制来说,我们希望得到在一个PWM周期内的电流平均值,可以用T/2时刻的采样值作为这个平均电流的近似。在软件中,在PWM周期的中心点触发一个中断去启动相电流的采样。

     

    至于左对齐或者右对齐的方式,请读者自行脑补。

     

    偏置电压对控制性能的影响

     

    Simulink力矩闭环模型中,不改变任何其它参数,只是将偏置电压变化50mv(软件中都是按照2.5V的偏置计算电流值),得到的力矩输出波形如下:

     

     

    从数据可知,偏置电压的精度对力矩输出波动的贡献巨大。软件上针对偏置电压的处理一般有两种方法:

     

    1.ECU下线检测过程中,检测每一个电路的REF电压并写入NVM,软件根据NVM的REF值计算实际电流

     

    2.软件online实时学习并补偿电流采样电路零漂

     

    放大电路Gain及对称性对控制性能的影响

     

    (1) Simulink力矩闭环模型中,控制算法计算电流时认为Gain为20倍,但Plant模型中将电路的实际放大倍数分别设为20,20.5,19.5;仿真结果如下:

     

     

    可见如果两相电流采样电路的放大倍数虽与理论值有偏差但如果能保持一致,对控制性能的影响主要体现在电机出力与目标指令力矩有偏差,但力矩纹波不明显。

     

    (2) Simulink力矩闭环模型中,控制算法计算电流时认为Gain为20倍,但在但Plant模型中将两相电路的实际放大倍数分别设为20.5和19.5,仿真结果如下:

     

     

    从仿真可见,放大电路不对称对输出力矩波动有较大影响。

     

    软件上一般都是在EOL测试过程中将放大倍数写入NVM,根据NVM中存储的值计算实际电流值。

    展开全文
  • 电压、电流采样电路设计以及放大倍数计算

    万次阅读 多人点赞 2021-01-25 10:53:44
    电流、电压采样以及放大倍数计算 电压采样电路图 电压放大增益计算 电流采样电路图 电流放大增益计算 因为FOC运算需要用到电机的线电流值和母线电压值,所以ADC采样功能必不可少。但是单片机的IO口输入电压范围是0~...


    因为FOC运算需要用到电机的线电流值和母线电压值,所以ADC采样功能必不可少。但是单片机的IO口输入电压范围是0~3.3V,所以为了保证安全,需要把测量电压保持在这个范围之内。

    计算运放电路的放大倍数之前,需要先明确几个模电的概念-------虚短、虚断
    虚短:运放的两个输入端视为同等电位;
    虚断:因为流入运放输入端的电流往往不足1uA,所以输入端可以视为等效开路。

    电压采样电路图

    在这里插入图片描述
    电压采样电路如上图所示。

    电压放大增益计算

    假设上图中Vcc为48V,R1 = 47K,R2 = 1K。则根据电阻分压,Vi = 48 * (1/48)=1V。
    因为虚短:V+ = V-。 (式1)
    因为虚断:反向输入端无电流输入输出,通过R3和R4的电流相等,假设电流为I,则由欧姆定律得:
    I = Vout / (R3 + R4)。
    由图和(式1)知:Vi = V+ = V- = R4上的分压。
    即:Vi = I * R4
    即:
    在这里插入图片描述
    在这里插入图片描述

    Vi已知,只要保证Vout在0~3.3V之间就可以进行电压的采集,进而对电路中电阻阻值进行设置。

    电流采样电路图

    在这里插入图片描述
    电流采样电路图如上图所示。

    电流放大增益计算

    ADC采集电流实际上还是采集电压,如上图,R9就是电流采样电阻。采集R9两端电压,然后根据欧姆定律得到电流值。
    先假设:V = i * R9。 (式1)
    由虚断知:运放输入端没有电流流过,则流过R5和R8的电流相等;R6和R7的电流相等。
    则有如下公式:
    在这里插入图片描述
    由虚短知:Vx = Vy (式3)
    联合(式1)和图可知:V1 = V2 + V。 (式4)
    将(式4)和(式3)带入(式2)的第一个等式得:
    在这里插入图片描述
    假设!!R5 = R6。R7 = R8。
    (式5)-((式2)的第二个等式)可得到:
    在这里插入图片描述
    进而得到:
    在这里插入图片描述
    因为电流范围已知,所以V就已知,然后R5和R6相等(自由设置),R8和R7相等(自由设置)。
    只要保持Vout在0~3.3V之间,就可以对电路电阻进行设置。

    展开全文
  • 【硬件】详解电流采样电路

    千次阅读 2021-10-07 13:15:12
    MSK4300 芯片的具体参数:最大电机供电电压为75V; 最 大 供 电 电 流 为 10A,6 个 N 沟 道 MOSFET;PWM 斩波频率可达 100kHz;短路或交叉导通保护;欠压锁定保护;死区时间可控制;低电平使能关断。 芯片死区...
  •  由于电机的宽范围调速以电机自身不能获得理想的正弦气隙磁场,导致在系统控制时采样的相电流含有不规则的高次谐波和随机干扰,再加上电流采样电路的不稳定性和A/D转换单元偏差的存在,更是加大了及高速特性,加上...
  • 电流环在伺服驱动系统中占有重要地位,直接决定伺服系统的好坏,很多文献都对电流采样进行了研究。
  • 在伺服驱动控制系统中,为实现磁场定向控制,需要至少对两相电机绕组的电流进行采样,这两路电流采样将作为电流反馈信号使伺服驱动实现电流闭环,可以这样说,电流信号采样是伺服控制系统硬件的一个重要模块,也是一...
  • 电流环涉及一个最基础的问题,那就是电流采样。本文主要介绍电阻采样,常用于低功率电机控制中。 所谓的电阻采样方法,就是在逆变电路的下桥臂串联电阻,通过采集电阻两端的电压来计算三相电流,准确的说,通过这种...
  • 本文介绍了一种专门适用于电机驱动电流检测的光耦隔离运放HCPL-7800的结构和特点,并重点介绍了此隔离运放的应用。
  • 介绍无刷直流电机矢量控制中的电流采样理论,采用单电阻方案,梳理了基本思路
  • FOC——13.电流采样与运放电路

    千次阅读 2021-07-15 22:30:08
    电流采样方案1.1.不同数量的采样电阻方案1.2.采样电阻的位置1.3.采样窗口问题2.运放电路2.1.运放和比较器2.2.差分放大2.3.偏置电压2.4.运放放大倍数的选择2.5.运放选型 1.电流采样方案 1.1.不同数量的采样电阻方案 ...
  • 电路图+电源采样电路(INA226)+RS485收发器+防反接电路+12V降压3.3V电路+3.3V升压5V电路
  • 实际情况如下:在28V电机运行时,在高压侧检测电机运行时流经母线的电流大小,可以串接一个检流电阻,电流流经检流电阻根据U=IR可以得到电阻两端的电压。利用运算放大器进行差分电压放大就可以将电阻两端电压进行...
  • 还是采用匠心科技的无刷电机套件,采样电路如下 对应的 adc 的 io 是 #define __ADC_MODE__ 4 无刷电机学习板 采用 PA6 PA7 PC4 进行电机电流采样 先上adc采样的程序 #include "includes.h" #ifndef __ADC_...
  • 一种专用于 交流伺服电机 电流采样 的光电隔离放 大器 HC P L ~ 7 8 4 0 ,其输入取 自电机任意两相的线电流, 输 出经偏置放 大后送到 AD 转换器件进行变换处理。实时的电机电流通过一个外部采样 电阻得到模拟 ...
  • 电机线电流---电流传感器---滤波器---A/D转换器---电流控制器 电流测量系统受噪声、工作温度和使用时间的影响,导致每一相偏置和增益都不尽相同。而偏置、增益误差和采样延迟会给传动系统带来电流和转矩的波动。 ...
  • 直流有刷电机电流环相关问题说明

    千次阅读 2019-05-05 08:48:05
    1、MCU选择问题:实测stm32F405运算速度足以满足简单算法要求,实现20us一次电流环...3、电流采样电路设计问题:电流环需确保基准电压稳定,采样电阻电压电路布局为平行走线,需保证这两点不易受到干扰,否则电流...
  • 电流采样电路如下图所示,可以看到采样电阻为0.01R,所以此处设为0.01R。 Amplification on board (电流检测放大电路是否在外部): 一般不会用片内的,一般都是用片外的调理电路,所以这个直接打勾就可以,...
  • 前面的话最近做的电机控制项目,之前纠结电流采样的方案,在这里简单总结了一下;晚风轻轻飘荡,让欢畅更欢畅,幻想更幻想,就像你还在身旁文/陈婧霏推荐一首歌晚风,一开始一听到这首歌居然有种王菲的...
  • 电机控制系统中,电流采样是重中之重,无论是变换和无位置传感器控制策略,这个地方的精准采样,都是实现整个控制框架的基础。 这个地方主要的选项卡为Current reading topology ,这里面分为三种,三电阻采样...
  • 本文作为电流采样的进阶篇,当然得有些技术含量,否则体现不出价值来,且让我一一道来。主要采样负载RL的电流,采集电流之后再乘以负载工作电压就可知道当前的功率。负载工作电压值容易获得,对负载电压用电阻进行分...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,203
精华内容 1,681
关键字:

电机电流采样电路