STM32|4-20mA输出电路

  为工业场合开发的设备通常情况下都会具有4-20mA输出接口,在以往没有DAC模块的单片机系统,需要外加一主片DAC实现模拟量的控制,或者采用PWM来摸拟DA,但也带来温漂和长期稳定性问题。在以STM32为中心的设备中,使用它自带的DAC即可非常方便的实现4-20mA的输出接口,具有精度高、稳定性好、漂移小以及编程方便等特点。

  在STM32单片机系统中,100脚以下没有外接出VREF引脚,但这样使得DAC的参考端和VCC共用,带来较大误码差,为解决这一问题,可以使用廉价的TL431来解决供电问题,TL431典型温漂为30ppm,所以在一般应用中已非常足够。选用两只低温漂电阻,调整输出使TL431的输出电压在3V-3.6V之间,它的并联稳压电流可达到30mA,正好能满足一般STM32核心的功耗需求。

  利用TL431解决了供电问题,余下的就是4-20mA的转换电路,如下图:

  

  上图即为非常精确的转换电路,OPA333是一颗非常优异的单电源轨至轨运算放大器,其工作电压为2.7-5.5V,其失调电压仅为10uV,实测最低输出为30uV,最高输出可达VCC-30uV。电路组成压控恒流源,其关键在于OPA333这颗芯片的优异性能,使得以上电路获得了极高的精度和稳定性。DACOUT来自于STM32的DAC1或者DAC2输出,由C25进行数字噪场滤波之后进入运算,进行1:1缓冲,后经过Q2进行电流放大,在R7上形成检测电压,C17进行去抖动处理。4-20mA信号由AN_OUT+/AN_OUT-之间输出。

  上图中,负载中的电流在R7上形成压降,经运放反馈后得到Vdacout=Vr7=I*R7,所以:I=Vdacout/R7,当Vdacout在400mV到2000mV之间变化时,可得到4-20mA的输出。改变R7的大小,便可改变DACOUT的需求范围。电路中,R2的基射极之间将有0.7V左右的偏压,所以Vb[MAX]=2V+0.7V=2.7V,这正好在OPA333的输出范围之内。电路中R14做为输出端的限流电流,使得输出端的最大输出电流Imax=Vcc/(R7+R14),若Vcc取6V,则Imax=6V/200 O=30mA,若没有R14,则最大电流可能有60mA,这时R7上的耗散功率为0.06*0.06*100=0.36W,若选用0805贴片电阻,将导致R7烧坏,或者由于温度升高太严重导致R7阻值变化太大输出引起较大偏差。加入R14之后,R7上的最大耗散功率为:0.03*0.03*100=0.09W,此时在正常的范围之内。

  电路中R14不可省去,C17不可省去,由于外负载可能的微小干扰或波动将导致OPA333组成的深度负反馈电路形成振荡,使输出电流波动,加入C17能抑制这种波动,使输出更稳定,但是C17的值不宜过大。

  使用STM32编程应注意,其内部不应当开DAC缓冲,因以上电路已经为一个高输入阻抗的缓冲电路。由STM32内部缓冲电路将损失掉输出线性度。

  • 15
    点赞
  • 169
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
### 回答1: 4-20mA采集电路是一种常用的电流测量电路,可用于测量各种工业设备的电流信号。这种电路使用RS485通信协议将采集到的电流信号传输给STM32F103单片机进行处理。 4-20mA采集电路主要由电流传感器、变送器和RS485转换器组成。电流传感器是用来将待测电流转换为电压信号的装置,可以通过与待测电流回路串联的方式进行接入。变送器是将传感器信号进行放大和转换,将4-20mA电流信号转换成0-5V的电压信号。RS485转换器是用来将电压信号转换成数字信号,并通过RS485通信协议将数据发送给STM32F103单片机。 STM32F103是一款性能强大的32位ARM微控制器,拥有丰富的外设资源和强大的计算能力。它可以通过串口接收RS485转换器传输的数据,并进行相应的数据处理和控制。 在实际应用中,4-20mA采集电路可用于监测温度、压力、液位等工业参数。传感器将待测信号转换为电压信号后,变送器将其转换为标准的电流信号,方便传输和处理。通过RS485通信协议,采集到的数据可以传输给STM32F103单片机,进行数据存储、显示或控制等操作。 总之,4-20mA采集电路的RS485输出可以与STM32F103单片机结合使用,实现对各种工业设备电流信号的采集和处理。 ### 回答2: 4-20mA采集电路RS485输出STM32F103是一种常见的工业控制系统电路设计。这种电路可以将4-20mA模拟信号转换为数字信号,并通过RS485通信协议输出STM32F103单片机进行处理。 其中,4-20mA采集电路用于将传感器产生的模拟信号转换为电流信号。将输入信号与电阻相连,通过电流随信号变化而改变。通过适当选取电阻值,可以使得输入信号范围为4-20mA。这样设计的好处是电流信号抗干扰能力强,传输距离远,适合工业环境使用。 RS485是一种工业标准通信协议,具有双向、多点、抗干扰等特点。RS485采用差分信号传输机制,能够在长距离、高噪声环境下稳定传输数据。通过RS485接口,将4-20mA转换为数字信号,并输出STM32F103进行后续处理。 STM32F103是一款常用的32位ARM Cortex-M3内核微控制器。它具有高性能、丰富的外设资源和丰富的通信接口。在这个电路中,STM32F103负责接收RS485输出的数字信号,并进行相应的数据解析、计算、控制等操作。 总的来说,4-20mA采集电路RS485输出STM32F103是一种将模拟信号转换为数字信号,并通过RS485通信协议输出STM32F103进行处理的工业控制系统电路设计。这种设计适用于各种工业情况下的信号采集和数据处理需求。 ### 回答3: 4-20mA采集电路实现了将外部电流信号转换成4-20mA电流输出。而RS485是一种常用的工业串口通信协议,具有传输距离远、抗干扰能力强等特点。STM32F103是一款常用的单片机芯片,具有丰富的外设资源和高性能的处理能力。 在这个应用中,我们可以使用STM32F103来实现4-20mA采集电路,并通过RS485进行通信输出。具体实现方法如下: 1. 选择合适的电流传感器:根据实际需求选择合适的电流传感器,如Hall传感器或Shunt电阻等。该传感器将外部电流信号转换成电压信号。 2. 连接电流传感器和STM32F103:将电流传感器的输出端与STM32F103的模拟输入引脚连接,以读取电压信号。根据外部电路的要求,可能需要使用运放等电路进行信号放大。 3. 编程配置ADC采集:使用STM32F103的内置ADC模块,编写相应的程序来配置和读取ADC采集结果。根据电流传感器的输出范围和精度要求,设置合适的ADC采样精度和采样速率。 4. 数据处理和传输:将ADC采集结果进行数据处理,将其转换为4-20mA电流信号范围。然后,使用STM32F103的UART或USART模块,配置RS485通信协议,并将数据通过RS485转换成差分信号输出。 5. 连接RS485转接电路和外部设备:通过RS485转接电路将RS485差分信号转换成正常的RS485信号,并与外部设备连接,如PLC、HMI等。确保在通信过程中使用合适的通信协议和位速。 通过以上步骤,我们可以实现4-20mA采集电路的数据采集和通过RS485进行通信输出。这样的设计可以广泛应用于工业自动化控制领域,实现远距离和可靠的数据传输。
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值