功能测试机设计--硬件--电流采样

        信号调理模块中,最重要的电路单元如下图。现就汽车车身控制器当中最大电流的采集为例说明。

        需采集的电流为30A,因为有些测试项只需采集逻辑信号,所以这里用一个能够承受30A电流的汽车专用继电器HFKC012-ZST进行切换。

        默认情况下,DR13ULN2003A实现)无电压,HFKC012-ZSTPIN4连到PIN3,这时可以进行逻辑采样,因为后雨刮电机慢过来的高电平是12V,用光耦TLP52112V电压转成5V,以便MCU采集。

        当需要测量30A电流时,DR13驱动拉到GNDHFKC012-ZST继电器闭合,PIN4连到PIN512V电压这时驱动RL8(0.4ohm的高功率电阻负载,用以模拟电机的工作)

        采样电阻RS8RS9分别是30.03ohm/6W电阻的并联,并联后就是0.005ohm/12W的采样电阻,当30A电流流过采样电阻时,产生的压降是30×0.005=0.15V,功耗是0.15V×30A=4.5W,功耗计算的目的是防止电阻被烧毁。

        用两个ADC通道AI15AI31 分别sense到采样电阻的两端,这两个ADC通道在后雨刮电机慢工作时测到0.15V的压差。用两个ADC的目的是,因为电流比较大,GND电压必定被抬高,只有测采样电阻两端电压,再除以采样电阻,才能比较准确的得到工作电流值。另一个好处是,ADC本身也有误差,两通道相减可以消除offset,这是差分的好处。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
设计思路: 本设计采用STC89C51单片作为控制核心,实现对三相异步电的星-△启动控制。利用单片的IO口控制三相继电器,实现对电的启动和停止控制。同时,采用AD转换器对电电流进行采样,通过单片的模拟输入端口进行数字化处理,实现对电的过载保护。 设计流程: 1. 确定硬件电路结构 三相异步电星-△启动控制器的硬件电路结构如下图所示: ![image-20211209102046692](https://i.loli.net/2021/12/09/SyLpFJ7kNlDnOcV.png) 其中,K1、K2、K3为三相继电器,用于控制电的启动和停止;R1、R2、R3为电流采样电阻,用于采集电流信号;V1为电供电电源,U、V、W为电三相输入端口。 2. 程序设计 程序设计分为三个部分:启动控制、停止控制、过载保护。其中,启动控制和停止控制通过单片的IO口对三相继电器进行控制,实现对电的启动和停止控制;过载保护通过AD转换器采样电流信号,通过单片的模拟输入端口进行数字化处理,实现对电的过载保护。 启动控制: ```c void start_motor() { P2 &= 0xf8; //P2.0-P2.2清零,用于控制三相继电器 P2 |= 0x01; //P2.0置1,控制K1继电器闭合,使U相与电源相连 delay(1000); //延时1s,使电加速到稳定运行状态 P2 &= 0xf8; //P2.0-P2.2清零 P2 |= 0x02; //P2.1置1,控制K2继电器闭合,使V相与电源相连 delay(1000); //延时1s,使电加速到稳定运行状态 P2 &= 0xf8; //P2.0-P2.2清零 P2 |= 0x04; //P2.2置1,控制K3继电器闭合,使W相与电源相连 delay(1000); //延时1s,使电加速到稳定运行状态 } ``` 停止控制: ```c void stop_motor() { P2 &= 0xf8; //P2.0-P2.2清零,用于控制三相继电器 P2 |= 0x04; //P2.2置1,控制K3继电器闭合,使W相断开 delay(1000); //延时1s,使电减速到停止状态 P2 &= 0xf8; //P2.0-P2.2清零 P2 |= 0x02; //P2.1置1,控制K2继电器闭合,使V相断开 delay(1000); //延时1s,使电减速到停止状态 P2 &= 0xf8; //P2.0-P2.2清零 P2 |= 0x01; //P2.0置1,控制K1继电器闭合,使U相断开 delay(1000); //延时1s,使电减速到停止状态 } ``` 过载保护: ```c void overload_protect() { while(1) { ADC_CONTR = 0x98; //启动AD转换器 while(!(ADC_CONTR & 0x20)); //等待转换完成 if(ADC_RES > 0x80) //判断电电流是否超过额定电流 { stop_motor(); //停止电运行 break; } } } ``` 3. 编写测试程序 编写测试程序,包括启动电、停止电、过载保护等功能。 ```c #include<STC89C5X.h> void delay(unsigned int count) //延时函数 { unsigned int i,j; for(i=0;i<count;i++) for(j=0;j<120;j++); } void start_motor(); //启动电 void stop_motor(); //停止电 void overload_protect(); //过载保护 void main() { while(1) { start_motor(); //启动电 delay(5000); //延时5s overload_protect(); //过载保护 delay(5000); //延时5s stop_motor(); //停止电 delay(5000); //延时5s } } ``` 4. 烧录程序 将程序烧录进STC89C51单片中,连接电路,即可进行测试。 总结: 本设计通过STC89C51单片控制三相继电器,实现对三相异步电的星-△启动控制。同时,通过AD转换器采样电流信号,实现对电的过载保护。该设计具有结构简单、功能实用、可靠性高等特点,适用于三相异步电的启动控制和过载保护。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值