工作日记:如何计算限制电流

1、问题场景

        当出现硬件电流保护的状况时,我们的产品出现短按按键能实现加档的画面,但是电机却无法实现加档的转速,只有重启才能恢复正常。之后我们对代码进行了修改,希望能在触发硬件限流保护的情况下,只需要短按就能重开机。如今需要进行一个代码验证,验证思路是这样的,我们要把限制电流调整到5A,这样就会迅速进入堵停,验证就能起作用。

2、计算限制电流原理

上面是OPA(运算放大器),Av( 电压增益),AP负责采样实际的电压(电流×0.01R),经过OPA的放大以后,进入比较器(CMP0)进行比较。

下面是OPCM(用来控制整个过流检测电路的功能和操作的寄存器),它是一个8位DAC寄存器,8bit的最大值为255。

3、计算过程

以上为官方给的计算参考过程。 

对照官方的计算参考过程,我们进行我们自己的计算

1、首先是OPA Av,根据下面的代码和芯片手册(datasheet),我们bit2~0设置的是010,所以OPA增益选择 Av = 10。

2、根据我们的代码,可知我们设置的限制电流的8bit数据为200,而8bit的最大值为2的8次方(255)

3、 根据芯片手册可知,OPA的工作电压为5V

4、根据以上的数据:200 / 255 = ( ?* 0.01R * 10 ) / 5 ,根据这个等式,我们就可以知道我们实际的限流值是多少了。 得出的结果是,实际限流值是39.2156862745098 A,实际的限流值这么大,设置的就很没有必要了,跟没有限流一样。例如,家用电器灯泡可能只使用不到1安培的电流,而一些大型电动机可能需要30安培或更多电流来运行。我们的产品那么小一个,根本用不到30A的限制电流。

4、灵活计算处理

1、假如我在之后的某个应用场景中,需要解除限流,我们可以有两个选择,一个解除限流,一个把实际限流值拉大到根本达不到那个值,也就是30多安培。

2、假设我要测定达到限流之后的某个功能是否正常,我就把实际限制电流调低到某个正常电流值,比如5A,2A,这个时候我们只需要修改200 / 255 = ( ?* 0.01R * 10 ) / 5,这两个数值,分别在.h文件里面的CURRENT_OVER和opms寄存器后三位的值。

x / 255 = ( 5 * 0.01R * 10 ) / 5,x = 255

200 / 255 = ( 5 * 0.01R * x ) / 5,x = 78.43137254901961

  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值