0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

通过RS485串口实现开关信号的多点监测,提高总线的稳定性

牵手一起梦 来源:网络整理 作者:佚名 2020-01-08 16:22 次阅读

引言

工业现场经常要采集多点数据,模拟信号或开关信号,一般用到RS485总线,使用一主带多从的通信方式,该种方式接线方便只需要两根屏蔽电缆线,通信距离远最大可支持1500m,加中继器还可延长通信距离,采用差分信号方式抗电磁干扰好。但该方式通信速度不能太快,一般采用主从召唤的方式采集各子单元的数据,即主单元依次召唤各子单元(见图1),召唤到哪个单元哪个单元上传数据,总线的使用权完全由主单元分配,各子单元不能擅自占领总线。如果系统的单元多,主单元循环采集一周的时间就很长,子单元信息变化时不能及时发送给主单元,导致系统对突变事件的反应处理速度慢。本文通过总线状态检测、从机主动上发的方式解决。

通过RS485串口实现开关信号的多点监测,提高总线的稳定性

图1 常规RS485总线主从方式接口

硬件设计

整个系统由主单元和多个子单元组成(图2),主单元包括:ARM7微控制器、程序存储器、数据存储器、与子单元通信RS485、与主单元通信RS485、系统电源和通信隔离电源;子单元包括:MSP430单片机、与子单元通信RS485、系统电源和通信隔离电源。

通过RS485串口实现开关信号的多点监测,提高总线的稳定性

图2 系统框图

主单元

ARM微控制器是主单元的核心,采用三星32位ARM7TDMI内核芯片S3C44B0,该芯片最高处理速度可达76MHZ,总线开放,可外扩程序存储器FLASH和数据存储器SDRAM,该系统外扩了SST公司生产的39VF1601和现代生产的HY57V641620HG,2个UART串行接口,使用ADI的隔离RS485芯片ADM2483进行接口电平转换,总线状态检测使用74HC125三态门芯片。

子单元

子单元的微控制器使用TI的MSP430F133单片机,该单片机处理速度可达8MHz,8K字节片内FLASH存储,256K字节片内SRAM。

电源电路

电源电路采用开关电源供电,开关电源输入电压范围比较宽,输出直流电压5V,通过SP1117-3.3和SP1117-2.5芯片输出3.3V电源。RS485需要的隔离5V电源通过DC-DC模块得到。

总线检测电路

总线状态检测使用74HC125三态门芯片和单片机的两个I/O(图3),当系统都不使用总线时,每个单元的74HC125都输出高阻状态,此时总线为低电平,当有单元要使用总线时,他首先检测总线状态,如果总线为低电平,该单元迅速把74HC125改为输出状态,此时总线变为高电平,该单元占领总线,往总线上发送数据,发送数据完成再把74HC125改为高阻状态。如果检测到总线是高电平,等待检测,直到总线变低后再占领总线。

通过RS485串口实现开关信号的多点监测,提高总线的稳定性

图3 总线检测电路

隔离485电路

使用ADI的ADM2483芯片进行接口电平转换(图4),该芯片属于隔离485,双电源供电输入输出隔离。

通过RS485串口实现开关信号的多点监测,提高总线的稳定性

图4 隔离485电路

软件设计

主机程序部分需要实现各从机上传数据的接收、处理和上传。主机接收子单元信息通过一个RS485串口实现,数据格式为16进制,数据位8位,1个起始位,1个结束位,无寄偶校验位,波特率9600bps。采用串行口中断的方式接收,主机程序初始化完成后等待各从机发送信息,当主机接收到第一个字节后,判断该字节是否为设备号,如果不是设备号,接收个数清零,如果是设备号继续接收第二个字节;判定第二个字节是否为正确的功能码,如果功能码错误,接收个数清零重新接收,功能码正确;接收第三个字节,该字节为从单元发送信息的字节个数x,计算从单元发送总字节个数为M=X+3+2,3个开头字节和2个CRC校验码,主机接收到M个字节后,首先判断CRC校验码是否正确,错误舍弃所有信息,正确则把从单元的信息保存到数据区,该次接收结束,主机继续等待接收。

信息的上传通过一个RS232串口实现。当主机接收到从机信息后,进行数据的处理,发现从单元信息发生变化,主机准备把从机信息发送到上位机,首先重新初始化发送缓冲区,然后通过中断的方式依次发送信息到上位机,发送信息包括设备号、功能码、发送字节个数、信息字节和CRC校验码。

主机单元接收数据流程图示于图5。

通过RS485串口实现开关信号的多点监测,提高总线的稳定性

图5 程序流程图

结语

所设计的系统实现了开关信号的多点监测,一个主机单元,32个从机单元,每个从机单元监测32个开关,该系统共可监测1024个开关,使用9600bps的波特率。采用主从召换的方式,开关信号监测的反应时间一般要用20-30s,使用该种总线检测的方式,开关信号的反应速度最慢也不超过1s,快时只有几百ms,大大提高反应时间,并且由于不用时时召唤,总线数据流少,提高了总线的稳定性。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微控制器
    +关注

    关注

    48

    文章

    6812

    浏览量

    147662
  • 存储器
    +关注

    关注

    38

    文章

    7151

    浏览量

    162005
  • 总线
    +关注

    关注

    10

    文章

    2714

    浏览量

    87228
收藏 人收藏

    评论

    相关推荐

    rs485总线隔离应用与选型指南

    广泛的总线。而且在多节点的工作系统中也有着广泛的应用。 二、RS485总线典型电路介绍   RS485电路总体上可以分为隔离型与非隔离型。隔离型比非隔离型在抗干扰、系统
    发表于 07-27 11:08

    如何实现RS485无线通信

    时非常方便,可以省掉许多信号线。通讯标准采用平衡驱动及差分接收方式来驱动总线实现工业通信的物理层连接。RS485信号的抗干扰能力较强、结构
    发表于 09-19 10:23

    了解实现RS485无线通信

    RS485用于多点互连时非常方便,可以省掉许多信号线。通讯标准采用平衡驱动及差分接收方式来驱动总线实现工业通信的物理层连接。
    发表于 12-01 18:57

    RS485总线接口软件设计

    测试仪通过RS485工业总线与PC机进行通信,其硬件接口电路如图5所示。2 软件设计2.1 总体设计测试仪的软件开发环境采用的是Keil C,所有代码采用C语言编写。为了方便程序调试和提高
    发表于 06-14 05:00

    嵌入式教程_创龙教仪_实验操作:2-11 RS485 串口通信实验

    双绞线电缆的帮助下,对称通道显着提高信号稳定性并抑制了有用信号产生的电磁辐射。 (3)多点通信 RS
    发表于 06-21 09:51

    提高RS485总线通信速度的设计

    介绍一种通信总线RS485主从通信方式,提高RS485总线采集速度的方法,该方法解决了主从式通信慢的缺点,
    发表于 04-12 00:37 42次下载
    <b class='flag-5'>提高</b><b class='flag-5'>RS485</b><b class='flag-5'>总线</b>通信速度的设计

    基于RS485总线串口令牌环通信的研究

    针对串口RS232和RS485总线在工业实时控制检测系统中的广泛应用,本文介绍并分析了串口通信网络的典型拓扑结构及其特点和具体使用问题。根据
    发表于 02-21 15:09 32次下载

    485总线稳定性解决方法

    485总线稳定性解决方法 根据485 总线结构理论,在理想环境的前提下,485
    发表于 04-19 14:27 48次下载

    RS232转RS485转换器在485总线系统施工时注意事项分析

    。但RS485总线在抗干扰、自适应、通信效率等方面仍存在缺陷,一些细节的处理不当常会导致通信失败甚至系统瘫痪等故障,因此提高RS485总线
    发表于 10-17 15:26 2次下载

    RS485总线的基础知识详细说明

    RS485总线主要用在工业环境中,很多工业布线需要采集多点数据,模拟信号开关信号,就要采用
    的头像 发表于 04-12 11:31 1w次阅读

    弱电工程中rs485正确的接线方式与485总线常见通讯故障

    。 一、什么是RS485总线 工业现场经常要采集多点数据,模拟信号开关信号,一般用到
    的头像 发表于 01-12 16:39 4w次阅读

    超全弱电工程RS485总线知识合集

    。 一、什么是RS485总线 工业现场经常要采集多点数据,模拟信号开关信号,一般用到
    的头像 发表于 04-09 11:56 1.1w次阅读
    超全弱电工程<b class='flag-5'>RS485</b><b class='flag-5'>总线</b>知识合集

    RS485总线的说明与使用详解

    工业现场经常要采集多点数据,模拟信号开关信号,一般用到RS485总线
    的头像 发表于 06-17 18:41 1.3w次阅读
    <b class='flag-5'>RS485</b><b class='flag-5'>总线</b>的说明与使用详解

    RS485总线在连接时为什么要屏蔽接地?

    以下几个优势: 1. 抑制干扰:屏蔽接地可以有效地抑制来自周围环境的电磁干扰,确保数据传输的稳定性和可靠性。在工业环境中,有许多电气设备和传感器等,这些设备会产生电磁辐射干扰,如果不屏蔽接地,这些干扰信号可能会影响到RS485
    的头像 发表于 01-04 16:59 1036次阅读

    RS485集线器工作原理是什么?RS485集线器具有什么功能?

    以将一条RS485总线分为多个分支,每个分支上可连接多个RS485设备,同时提供了电气隔离和信号增强功能。RS485集线器的工作原理是
    的头像 发表于 02-03 16:25 1159次阅读