模拟4~20ma电流输出的设计

news/2024/5/19 1:14:42 标签: stm32, 单片机, 硬件

文章目录

    • 1. 原理
    • 2. 使用GP8102S或GP8212S进行设计
      • 2.1 共地型设计
      • 2.2 共源型设计
      • 2.3 其它电流需求
    • 3. 隔离光耦电源连接方案
    • 4. 利用GP8102S实现0-40V 的可编程电压输出

1. 原理

4 ~ 20ma电流输出的目的不用多说,今天就简单聊一下4 ~ 20ma电流输出是怎么设计出来的,并介绍一种国产集成芯片解决方案。

一般用分离器件搭建的实现原理都是通过单片机控制一个三极管,使其工作在放大区,因为放大区放大并不是线性的,因此需要在串接一个电阻,通过检测电阻电压,单片机来反馈调节三极管的输入,然后从而实现4~20ma电流输出。

今天我们介绍通过GP8102S芯片来实现4 ~ 20ma电流输出设计,还有另外一款芯片GP8212S,两者区别是一个是pwm转4 ~ 20ma电流输出,另外一个是I2C转4 ~ 20ma电流输出,同时精度略有区别,本文主要讲解GP8102S芯片。

GP8102S

它的实现原理通过控制PWM的占空比,控制三极管工作在放大区,在三极管上串联一个采样电阻,通过VFB反馈给芯片内部,从而控制输出,调节三极管。这只是一个简单的设计原理,下面我们看一下具体的设计。

2. 使用GP8102S或GP8212S进行设计

和平时我们使用GPIO输出有两种模式开漏和推完类似,4~20ma电流输出分为共地型和共源型,其主要表现为通信的电由哪一方提供。

2.1 共地型设计

共地型设计

LM321的作用是生成反馈电压,输入到IOUT2,来调节IOUT的输出。对于GP8102S中,Rs一般采用250Ω,GP8212S中,Rs一般采用100Ω。

相对采用1M的电阻,下面这种设计方案能够提高更高的精度。

提高精度

说明:

  1. 是0/4-20mA输出(共地型三线制), Q1选择TO252/SOT223等封装的NPN,作为功率管承受4-20mA所产生发热。
  2. Rs的精度至关重要,建议采用0.1%精度,同时因为其要流过4-20mA电流,因此要根据功率选择合理的封装。

2.2 共源型设计

共源型设计

说明:

  1. 0/4-20mA输出(共源型三线制),MOS管选择TO252/SOT223等封装的NMOS, 作为功率管承受4-20mA所产生发热 。
  2. 同样Rs的精度至关重要,建议采用0.1%精度,同时因为其要流过4-20mA电流,因此要根据功率选择合理的封装。
  3. 对于这种电是由外部提供的端口处,一定要添加一个TVS来保护芯片。

2.3 其它电流需求

有的时候我们可能因为设备特殊0/4-20mA输出满足不了需求,可能需要4-35mA输出,这里提供一种思路。

根据电流输出公式IOUT=5V * DPWM /Rs(DPWM为PWM信号的占空比) 可知,IOUT输出的上线跟电阻Rs有一定的关系,因此通过减小Rs电阻,可以提高IOUT输出范围。但是一定要考虑好三极管的选型,完美配合才能出现最佳效果,当然对于我们平时来讲,不需要把范围设计过大,因为过大的范围会降低输出的精度。

3. 隔离光耦电源连接方案

有的时候我们设计需要隔离,可以采用下面方法,在选择光耦的时候,频率的选择要格外注意。

在隔离应用中光耦电源有两种接法:

  1. V5V为光耦电源;
  2. V5V经过NPN管9013后作为电源。 前者电路简单,后者光耦引入误差小 .

隔离方案

下面是一个完整的隔离方案:

  1. 利用APC芯片GP9303将模拟信号4-20mA转换成PWM。
  2. PWM信号通过光耦隔离 。 TLP1488为低速光耦,适合应用在PWM频率低于500Hz的场合, TLP1788为高速光耦,适合应用在PWM频率低于25Khz的场合。
  3. 隔离后的PWM信号送给PAC芯片GP8102S后还原成电流输出。

完整隔离方案

4. 利用GP8102S实现0-40V 的可编程电压输出

GP8102S除了能实现模拟电流的输出,其实还可以实现模拟电压的输出,如下就是一个PWM 控制的线性稳压方案:

基于 GP8102S+2SD882 ,利用 GP8102S 与外接扩流三极管实现闭环控制,输出电压为 VOUT。VOUT=5V * DPWM * (R1+R2)/R2, DPWM为 PWM 信号的占空比,通过此电路可以实现 0-40V 的可编程电压输出 。

可编程电压源

公众号 | FunIO
微信搜一搜 “funio”,发现更多精彩内容。
个人博客 | blog.boringhex.top


http://www.niftyadmin.cn/n/4984204.html

相关文章

Weblogic漏洞(三)之 Weblogic 弱口令、任意文件读取漏洞

Weblogic 弱口令、任意文件读取漏洞 环境安装 此次我们实验的靶场,是vnlhub中的Weblogic漏洞中的weak_password靶场,我们 cd 到weak_password,然后输入以下命令启动靶场环境: docker-compose up -d输入以下的命令可以查看当前启…

Arduino RGBLED灯 模块学习与使用

Arduino RGBLED灯模块学习与使用 硬件原理制作衍生连接线Mixly程序Arduino程序演示视频 人生如逆旅,我亦是行人。 —— 苏轼江客:时荒 硬件原理 RGBLED灯三个引脚分别控制三个LED灯的亮度,RGB分别是red,green,blue的英文缩写&…

Ansible学习笔记8

group模块: 创建一个group组: [rootlocalhost ~]# ansible group1 -m group -a "nameaaa gid5000" 192.168.17.105 | CHANGED > {"ansible_facts": {"discovered_interpreter_python": "/usr/bin/python"}…

爬虫逆向实战(二十四)--某鸟记录中心

一、数据接口分析 主页地址:某鸟记录中心 1、抓包 通过抓包可以发现数据接口是front/record/search/page 2、判断是否有加密参数 请求参数是否加密? 通过查看“载荷”模块可以发现,请求参数是加密的 请求头是否加密? 通过查…

vuex详细用法

Vuex是一个专门为Vue.js应用程序开发的状态管理模式。它可以帮助我们在Vue组件之间共享和管理数据,以及实现更好的代码组织和调试。 在Vue.js中,组件之间的数据通信可以通过props和事件来实现。然而,随着应用程序规模的增长,组件…

微信小程序餐饮外卖系统设计与实现

摘 要 随着现在的“互联网”的不断发展。现在传统的餐饮业也朝着网络化的方向不断的发展。现在线上线下的方式来实现餐饮的获客渠道增加,可以更好地帮助餐饮企业实现更多、更广的获客需求,实现更好的餐饮销售。截止到2021年末,我国的外卖市场…

小白到运维工程师自学之路 第八十集 (Jumpserver堡垒机管理)2

5、登录普通用户进行测试 这里的操作和在linux系统中的终端操作一样 在Xshell中登录 创建一个普通文件 在web终端中查看 五、审计台 在审计台中可以看到服务器的各种详细操作 在这里可以看到哪个用户在哪个时间对服务器具体使用了什么命令,还可以看到录频回放。 …

ChatGPT如何处理用户提问的逻辑?

ChatGPT在处理用户提问的逻辑时,涉及到语义理解、上下文分析、信息提取和逻辑推理等多个方面。尽管ChatGPT在处理逻辑问题方面可能不如人类,但它在处理一定程度的逻辑问题上仍然具有一定的能力。以下将详细探讨ChatGPT如何处理用户提问的逻辑。 **1. 语…