RS-232 至RS-485/RS-422 智能转换器制作方法

[复制链接]
查看12386 | 回复88 | 2006-7-31 21:59:00 | 显示全部楼层 |阅读模式
  摘 要:本文详细地介绍了如何从RS-232信号线上高效率地产生电源如何实现RS-232接口与RS-485/RS-422接口的智能转换同时也给出了具体的硬件设计及软件设计方法Abstract: This paper detailed introduces how to high-efficiently generate a supply from RS-232’s signal lines and how to intelligently convert a standard RS-232 interface to a RS-485/RS-422 interface, and also presents the method of hardware and software design.
  关键词 RS-232 RS-485/RS-422 接口 智能转换器
  
  1. 概述
   随着计算机在工业的广泛应用控制局域网络也深入应用到各行各业之中现行的诸多控制系统若采用单机控制方式已越来越难以满足设备控制的要求因为往往我们所控制的设备只是整个系统的一个基本单元它既需要外部输入一些必要的信息同时也需要向外部输出自身的运行参数和状态所有这些都要求我们采用控制网络技术将众多设备有机地连成一体以保证整个系统安全可靠地运行.
   目前在我国应用的现场总线中RS-485/RS-422 使用最为普遍当用户要将基于标准的RS-232 接口设备如PC 机连接至由RS-485/RS-422 构成的通讯网络时则必须作RS-232和RS-485/RS-422之间的电平转换传统的做法是在设备内扩展一个通讯适配卡由通讯适配卡实现电平转换内部主机再通过并行总线读出或写入数据显然这种设计方法存在下列缺点
   1)由于适配卡是基于某一种总线标准扩展的而不是基于RS-232电平标准所以其应用范围受到限制只能一种适配卡适用一种总线如ISA 适配卡不可能插入STD总线或用户自定义的总线其通用性较差
   2)虽然实现的仅仅是电平转换但是由于需要考虑与扩展总线的接口和增加一个标准的UART 并且需要占用系统的其它宝贵资源使硬件和软件变得过于复杂
   3)复杂的硬件设计大大增加了元器件的数目和电路板面使适配卡的成本过高
   4)由于采用内置插卡方式使变更通信方式比较麻烦如将半双工通信方式设置为全双工方式等另外维修和测试也比较麻烦
   5)对于现有的基于RS-232的设备在无法变动系统软件和硬件的情况下显然适配卡无法将这些设备连成基于RS-485或RS-422通信网络的分布式系统
   为了克服上述缺点同时考虑到RS-232 接口的自身特点我们设计了一种小巧的
  无须外部供电的智能收发转换器实现RS-232和RS-485/RS-422之间的电平转换
  2. 功能描述及结构框图
   本智能转换器作为一个独立的电平转换控制器涉及线上取电发送和接收状态的智能切换通信方式设置RS-232电平与RS-485/RS-422电平之间的转换等方面具体描述如下
   1)从RS-232接口上取电
  由于不采用外部供电方式则必须从RS-232接口线取电为内部元器件供电我们知道标准的RS-232接口定义中TXD RTS和DTR是RS-232电平输出设计一个DC-DC转换器从这些信号上能够为系统提供一定的电源功率低功耗微处理器微处理器通过监测TXD信号的变化决定是否允许数据发送和数据接收另外有关通信方式波特率和半/双工工作方式选择也是通过TXD 信号或I/O 口来设定的
   2)RS-232电平与TTL电平之间的转换
   3)RS-485/RS-422电平与TTL电平之间的转换其内部电路结构示意图如下
  

  3. 工作原理
  该智能转换器必须解决两个关键问题即如何从RS-232线上获得电路和RS-485/RS-422接口驱动所需的功率和如何智能控制RS-485/RS-422的收发使能
  3.1.电源方案
   标准的RS-232 定义中有三个发送信号TXD RTS 和DTR 每根线上的典型输出电流为8mA/ 12V 考虑到TXD为负电平处于停止发送或发送数字1 时的时间较多因而电源转换决定采用负电源输入以最大限度地增加电源输入功率升压至所需的工作电源从RTS和DTR上输入功率=2*8*12mW=192mW,另外由于通讯为间歇工作方式所以输入电源端的储能电容和TXD 为负电平时能够补充一定的功率假设我们设计一个效率为85% 输出电压为3V 的DC-DC 转换器则输出电流可达54.4mA
  3.2.智能控制收发使能
   RS-232通讯接口采用电平方式传输适用于点-点通讯无须专门的收发使能控制而对于RS-485/RS-422通讯接口则不同由于采用差分电平方式传输且允许在一条通讯总线上挂接多个节点必然要求各个节点能够独立地控制总线驱动器关断或打开保证不会影响到其它节点的正常通讯为了简化与转换器RS-232 接口端相连的软件工作更重要的是为了提高本转换器的通用性和灵活性即插即用无须要求用户更改任何相关软件和硬件本转换器内置微处理器实现收发使能的智能控制具体方法微处理器在检测到UART 的通信起始位后打开发送使能允许串行数据发送至RS-485/RS-422 通讯网络微处理器根据所设定的波特率延时至UART 停止位
  发送一半时例如11位格式时延时10.5T,T=1/fBAUD ,开始检测是否有下一个起始位到来在时间T内若有下一个起始位到来则保持发送状态否则将关闭发送使能结束数据发送
  4. 硬件设计
   由于本转换器供电来自RS-232信号线其输入功率受到限制因而在本设计中将尽可能地采用+3V供电的低功耗器件保证总电流小于54.4mA 主要包括4个部分DC-DC转换器RS-232接口RS-485/RS-422接口和微处理器分别介绍如下
  4.1. DC-DC转换器
   显然还没有一个DC-DC 转换器能够直接实现-12V 输入+3V 输出的IC 但是如果我们利用现有的IC 稍作改动即可实现该功能图2 所示的DC-DC 转换电路就是利用MAX761 实现的-12V 输入+3V 输出效率高于85%的升压DC-DC 转换器该转换器实际输入电压范围为-2.5V 至-13.5V 静态工作电流仅I1=120 A 具有输出电流大于54.4mA的能力如果前端输入功率未受到限制则输出电流可达300mA以上由于MAX761采用高效率的PFM 控制方式,而且在本电路中,开关损耗较小(因为开关电流小于负载电流),所以能够达到比MAX761 典型应用更高的效率(MAX761 典型应用效率为86%) 输出电压由下列方程确定VOUT=VREF*R1/R2+0.7(V) 其中VREF=1.5V选取R2=100K 根据所需要的输出电压计算R1.
  
  

  图2 -12V至3V 效率高于85%的DC-DC转换器
  4.2. RS-232接口
   本转换器只需要一片单发/单收RS-232接口就可以满足要求但必须要求+3V单电源工作工作电流尽可能地小的接口电路MAX3221/MAX3221E 带15kVESD保护刚好能够满足上述要求具有1TX/1RX 其工作电压+3V至+5.5V, 仅1 A的静态电流负载电流小于I2=2mA
  4.3. RS-485/RS-422接口
   为兼顾RS-485/RS-422 接口中半双工和全双工的要求本转换器采用MAX3491 作为RS-485/RS-422 接口电路其主要指标为+3V 至+3.6V 单电源工作工作电流1mA,驱动60负载时半双工时两个120 终端匹配电阻的并联值峰值电流可达I3=3V/60 =50mA半双工和全双工工作方式是通过跳线器来设置的
  4.4. 微处理器
   在本转换器中微处理器所要完成的任务很简单仅需要几根I/O 线即可实现参数的设置和发送使能的自动控制实际选择中采用Microchip公司的PIC12C508A其主要指标为工作I4<1.0mA(工作电压3V 频率4MHz),6 条I/O 线512kByte 的OM 其中GP0 GP1 GP4和GP5四个引脚设定对应于16 种常用波特率300 600 1200至38.4Kbps等8 种以及900 1800 至
  115.4Kbps等8种的延时时间GP3对应于10位或11位串行数据格式GP2为TXD输入用来检测UART何时发送和停止数据GP1为复用输出引脚用来控制MAX3491的发送使能控制端GP0也为复用输出引脚用来控制MAX3491的接收使能
  

  
   本转换器的最大电流总和  器的最小输出电流54.4mA 因而通过RS-232信号线为本电路供电是完全可行的实际上由于输入电源端的储能电容E1 和TXD 为负电平时能够为电路补充一定的功率所以设计上留有较大的电源功率裕量
  5. 软件设计
   本转换器的软件设计较为简单微处理器复位后将所有的I/O 口设为输入并读入所有的I/O 状态保存到寄存器将GP2 和GP3 改设为输出状态并输出低电平使RS-485/RS-422 接口处于禁止发送允许接收的状态CPU 根据GPIO 的初始状态确定出用户设定的通讯波特率和串行数据格式从而预置内部的延时设定CPU 检测到UART开始通讯后打开发送使能经内部预置延时后开始在一个位宽时间内检测是否有下一个起始位到来如检测到则重新延时等待否则关闭发送使能结束当前通讯重新检测UART的起始位对于半双工通讯方式允许发送使能前应该关闭接收使能而在发送使能关闭后才打开接收使能对于全双工通讯方式其接收使能可以不受此信号控制而可以直接通过跳线接地始终允许接收
  6. 结论
   在本RS-232到RS-485/RS-422接口的智能转换器设计中除了本身这个产品具有较高的应用价值外文中所涉及的RS-232信号线供电方案由于其高效率大电流输出能力在许多基于RS-232 接口的应用中都能够很好地满足应用另外这种智能控制RS-485/RS-422 接口的收发使能的思想在扩展基于RS-485/RS-422 接口的网络分支及延伸通讯距离都能够得到很好的应用。
  本文由刘武光提供,工控网整理
匿名回复:
好文章
  比较详细
匿名回复:
太麻烦了,MAX202 + 75176 搞定。
匿名回复:
不错。二楼的用MAX202+75476怎么搞定的??
匿名回复:
文章很好
匿名回复:
我 也 想 知 道 二 楼 的 用 MAX202+75476 怎 么 搞 定 的 ??能 不 能 那 出 来 大 家 共 享 ?//
   期 待 中 ~ ~ ~
匿名回复:
很有价值的文章,我收藏了.MAX761的详细资料有吗?
匿名回复:
文章很好,如果用SUNIX(三泰)的STD 1918 很容易就能完成
  SUNIX STD1918是RS-232转RS-422/485双向转换器,是为需要延伸RS-232传输距离和网络能力而设计的。当前许多重要的工业应用设备的接口是RS-232接口。但是RS-232是点对点的传输界面,传输距离仅为15M。为了克服这个缺陷,许多用户就需要RS-232转RS-422/485转换器,让RS-232设备连接RS-422或RS-485工业网络,使数据传输可达1.2 km。
  ◆产品特点
  RS-232转RS-422/485,支持RTS/CTS±
  RS-422/485自动识别切换,无需开关跳线
  壁挂和DIN-Rail导轨式安装
  600W浪涌保护和2.5KV光电隔离保护
  RS-485自动RTS信号控制(ARSCTM )
  外部12-48VDC接线端子供电,或12VDC电源接口
  简易的DTE/DCE开关切换
  光纤传输确保稳定避免干扰,降低信号冲突
  电源端口反极性保护
  自动检测波特率
  即插即用,尺寸紧凑
  
  ◆性能指标
  串口通讯
  接口类型:RS-232 DB9 针式接口
   RS-422/485接线端子接口
  RS-232信号:TxD,RxD,RTS,CTS,DTR,DSR,DCD,RI,GND
  RS-422/485信号:Tx+(Data+),Tx-(Data+),Rx+,Rx-,RTS+,RTS-,CTS+,CTS-
  RS-422/485切换:自动识别并切换RS-422/485
  RS-485自动RTS信号控制:ARSCTM
  波特率:RS-232最大460.8Kbps
   RS-422最大115.2Kbps
   RS-485最大460.8Kbps
  DTE/DCE切换:DTE/DCE开关切换
  浪涌保护:600W每条信号(可选)
  光电隔离保护:2.5KV每条信号及电源(可选)
  电源
  输入电压:12-48VDC外部电压,接线端子
   12VDC外部电压,直流电源接口
  电源反向保护:V+和V-反向保护
  功耗:<2.4W=12V*200mA
  机构特性
  尺寸(长*宽*高):120*67*24mm
   148*92*32mm(包括导轨安装件)
  外壳:金属和PC塑料
  工作环境
  操作温度:-20℃-60℃
  存储温度:-25℃-85℃
  
  更多信息请访问:www.bjhhl.com.cn
  电话 : 010-82611567 82613035
  联系人: 张晓峰
匿名回复:
文章很好,如果用SUNIX(三泰)的STD 1918 很容易就能完成
  SUNIX STD1918是RS-232转RS-422/485双向转换器,是为需要延伸RS-232传输距离和网络能力而设计的。当前许多重要的工业应用设备的接口是RS-232接口。但是RS-232是点对点的传输界面,传输距离仅为15M。为了克服这个缺陷,许多用户就需要RS-232转RS-422/485转换器,让RS-232设备连接RS-422或RS-485工业网络,使数据传输可达1.2 km。
  ◆产品特点
  RS-232转RS-422/485,支持RTS/CTS±
  RS-422/485自动识别切换,无需开关跳线
  壁挂和DIN-Rail导轨式安装
  600W浪涌保护和2.5KV光电隔离保护
  RS-485自动RTS信号控制(ARSCTM )
  外部12-48VDC接线端子供电,或12VDC电源接口
  简易的DTE/DCE开关切换
  光纤传输确保稳定避免干扰,降低信号冲突
  电源端口反极性保护
  自动检测波特率
  即插即用,尺寸紧凑
  
  ◆性能指标
  串口通讯
  接口类型:RS-232 DB9 针式接口
   RS-422/485接线端子接口
  RS-232信号:TxD,RxD,RTS,CTS,DTR,DSR,DCD,RI,GND
  RS-422/485信号:Tx+(Data+),Tx-(Data+),Rx+,Rx-,RTS+,RTS-,CTS+,CTS-
  RS-422/485切换:自动识别并切换RS-422/485
  RS-485自动RTS信号控制:ARSCTM
  波特率:RS-232最大460.8Kbps
   RS-422最大115.2Kbps
   RS-485最大460.8Kbps
  DTE/DCE切换:DTE/DCE开关切换
  浪涌保护:600W每条信号(可选)
  光电隔离保护:2.5KV每条信号及电源(可选)
  电源
  输入电压:12-48VDC外部电压,接线端子
   12VDC外部电压,直流电源接口
  电源反向保护:V+和V-反向保护
  功耗:<2.4W=12V*200mA
  机构特性
  尺寸(长*宽*高):120*67*24mm
   148*92*32mm(包括导轨安装件)
  外壳:金属和PC塑料
  工作环境
  操作温度:-20℃-60℃
  存储温度:-25℃-85℃
  
  更多信息请访问:www.bjhhl.com.cn
  电话 : 010-82611567 82613035
  联系人: 张晓峰
匿名回复:

匿名回复:

匿名回复:
能再具体点吗?
匿名回复:
能再具体点吗?
匿名回复:
能再具体点吗?
匿名回复:
基本能解决所需要求,谢谢!
匿名回复:
能不能再具体一些~~~~谢谢,
匿名回复:
不错,是个好产品!!!不知价格如何!!!谢谢
匿名回复:
不错不错
匿名回复:

匿名回复:
很好呀
匿名回复:
SUNIX(三泰)的STD 1918
  张晓峰同志:可能你是个销售人员,对你的敬业精神表示感动。
  我要说的是一点技术上的问题,楼主所说的这种转换器跟你推销的产品有关键的一点不同。楼主的智能转换器不需要外界电源,所需电源从串口上取得,而你推销的这个是有外接电源的。这个转换器本身rs-232转rs-485逻辑不难,难就难在从rs-232口取电。这个是关键技术,我所见过的几个同类产品都是掩膜封装,根本看不到里面是什么东西,呵呵。国内只有两三家公司能做出来。很佩服楼主的技术水平,有几个问题,你的这个转换器有没有产品化?数据传输速度下降到9600或者4800,1200甚至600,300会不会有问题?我也做过这个,速度低了就不行,欢迎跟我探讨技术上的问题,谢谢。rabbitzp@163.com
  
匿名回复:
RS-232 至RS-485/RS-422专用隔离电源模块
  
   (A / B / D / E / F)型: 定电压隔离系列、定电压高隔离系列DC/DC模块电源。
  (VA / VB / VD/ DW /WRA /WRB)型:传感、变送及便携电池升降压仪器专用宽电压输入,隔离稳压输出
  的DC/DC模块电源,具有自恢复过载、短路保护功能。
  (WRF / WRE)型: 电力及医疗行业专用宽电压输入,高隔离(3KV)、高精度(1%)
  高可靠性,具有自恢复过载及短路保护功能的DC/DC模块电源。
  ● 功率范围:0.1~25W。
  ● 输入电压(Vin):3.3V、5V、9V、12V、15V、24、48VDC等固定电压或宽范围电压。
  ● 输出电压(Vout):3.3V、5V、9V、12V、15V、24VDC等固定电压或稳压保护。
  ● 输出方式:单输出、正负双输出、双隔离双输出、三电压输出及多种电压输出。
  ● 稳压精度(%):±1 ±2 ±5
  ● 隔离电压:1000VDC、2000VDC、3000VDC、5000VDC。
  ● 引脚封装方式:SIP / DIP / SMD。
  B0505S-1W、B0505S-1W、IB0505S-W75这几款产品是RS-485/RS-422专用电源模块
  
  
  
  

[此贴子已经被作者于2007-4-29 8:23:46编辑过]
aji88 | 2006-8-1 11:41:00 | 显示全部楼层
sf
lntlym | 2006-8-8 10:54:00 | 显示全部楼层
谢谢了。
pyqppp | 2006-8-13 09:49:00 | 显示全部楼层
ok
billshan | 2006-8-13 16:14:00 | 显示全部楼层
dd
zgj_1982120 | 2006-8-30 19:38:00 | 显示全部楼层
3q
abcd8622 | 2006-9-5 22:01:00 | 显示全部楼层
[em01]
mrcooler | 2006-9-7 17:31:00 | 显示全部楼层
3q
mikewu | 2006-9-9 22:38:00 | 显示全部楼层
xx
laolui | 2006-9-10 15:47:00 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
wblzyz | 2006-9-16 17:37:00 | 显示全部楼层
xiexie
cainethk | 2006-9-16 18:00:00 | 显示全部楼层
asdfasfsafsaf
strongdick | 2006-9-18 16:32:00 | 显示全部楼层

谢谢,下载先.

select99 | 2006-9-26 14:06:00 | 显示全部楼层
谢谢
xuelang0123 | 2006-9-26 20:06:00 | 显示全部楼层
hehehehe!
qijunyang | 2006-10-11 11:46:00 | 显示全部楼层
DING
simbawang | 2006-10-12 16:15:00 | 显示全部楼层
看看先!
culiubaicai | 2006-10-13 09:20:00 | 显示全部楼层
怎么什么都要回复才可见阿
lyz803 | 2006-10-21 11:05:00 | 显示全部楼层
谢谢
liang_yw | 2006-10-22 12:37:00 | 显示全部楼层
wjejje ejieie ioo!!!!!!!!!!
pci800 | 2006-10-24 19:17:00 | 显示全部楼层
dd
jiankehou | 2006-10-24 22:43:00 | 显示全部楼层
好东西
qiushanwei | 2006-10-26 13:50:00 | 显示全部楼层
kankan
jdmelay | 2006-10-26 15:40:00 | 显示全部楼层

会个先!

qbq21 | 2006-10-26 23:55:00 | 显示全部楼层
kankan
hjc123abc | 2006-10-27 20:37:00 | 显示全部楼层

look

hjc123abc | 2006-10-27 20:37:00 | 显示全部楼层
look
wwwmm | 2006-10-27 20:47:00 | 显示全部楼层

我想看看

heart320 | 2006-10-30 17:54:00 | 显示全部楼层
学习一下,支持楼主发贴。
greatls | 2006-11-1 13:27:00 | 显示全部楼层

查收一下 呵呵

liuxing9699 | 2006-11-2 09:25:00 | 显示全部楼层

学习学习

SXD525115 | 2006-11-2 12:41:00 | 显示全部楼层

好的,我想看看

zhang999 | 2006-11-4 15:30:00 | 显示全部楼层

芝麻开门啦

panda737 | 2006-11-17 10:00:00 | 显示全部楼层
ok
wangjun024 | 2006-11-30 14:54:00 | 显示全部楼层
hao
shuilideyu | 2006-11-30 22:19:00 | 显示全部楼层
kankan
bj_ygh | 2006-11-30 22:52:00 | 显示全部楼层

kankan

hwqxjr | 2006-12-2 05:28:00 | 显示全部楼层
dd
luckys | 2006-12-7 20:52:00 | 显示全部楼层
3Q
xzx8888 | 2006-12-7 23:15:00 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
zhangmingxin | 2006-12-8 00:14:00 | 显示全部楼层
自己要是能做的话 就省喽
zhhayu | 2006-12-8 10:42:00 | 显示全部楼层

let me look it

caehxnn | 2006-12-16 10:55:00 | 显示全部楼层
回复一个
我是好家伙 | 2006-12-23 16:42:00 | 显示全部楼层

浏览一下

zjplc | 2006-12-23 21:06:00 | 显示全部楼层

谢了

[em01][em01][em01]
bukukele | 2006-12-29 16:25:00 | 显示全部楼层

让俺看看,学习学习

wayane | 2007-1-15 19:39:00 | 显示全部楼层
thanks
再年轻十年 | 2007-1-26 23:23:00 | 显示全部楼层
可以看看
ding208 | 2007-1-27 13:30:00 | 显示全部楼层
我需要看看
qwq123 | 2007-1-27 20:38:00 | 显示全部楼层
yun[em03]
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则