首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 维修教程知识 > 单片机栏
RS-485总线标准在海气边界层监测系统中的应用
来源:本站整理  作者:佚名  2009-07-15 09:40:08



  RS-485总线为并接式三线制(包含一个地)接口,总线上只要有一个节点发生故障就有可能将总线“拉死”。因此,数据端口A、B与总线之间应加以隔离。在这里我们的做法是,A、B与总线之间各串接一只100mA的PTC自恢复保险,同时与地之间各跨接5V的TVS二极管,以消除线路浪涌干扰。

  需要注意的是,许多人错误地认为RS-485是两线制。实际上RS-485总线的构成是一个信号差分对和一个地返回线,系统也许没有这个地返回线也可以工作,但是会处于极不可靠的状态之中。这是因为 RS-485总线在差模电压为-7V至+12V之间才可保证通讯的正确性。如果超过此范围,数据将丢失,端口也可能损坏。信号地线的功能是将每个节点的信号地连接到一个共同的地上,这个地的作用是用来保持共模电压。如果系统没有设计和连接地线,将影响系统总线的可靠性并带来噪声。

  海气边界层监测系统中,RS-485总线通讯的波特率是9600bit/s,最长距离是100m。总线并没有设计终端电阻。这是因为添加终端电阻的目的是减少信号的反射、吸收噪声,但是这样却显著增加了系统的功耗,并使系统设计复杂化。如果系统传输速率较高(通讯速率大于115.2K)并且是长距离的传输,才需要考虑终端电阻。

  系统软件设计

  RS-485总线是异步半双工的通信总线,即在某一个时刻,总线只可能呈现一种状态(收或发)。所以这种方式一般适用于主机对分机的查询方式通信,软件编程对系统的可靠性有很大影响。尤其要注意对485芯片收发控制端DE和RE的软件设计。为了可靠的工作,在RS-485总线状态切换时需要做适当延时,再进行数据的收发。具体的做法是在数据发送状态下,先将控制端置“1”,在9600bit/s的波特率下,延时1ms左右的时间,再发送有效的数据,一包数据发送结束后再延时1ms后,将控制端置“0”。

  海气边界层监测系统总线上的数据采集器处于主机地位,每隔3s轮询各节点一次,轮询到哪个节点则哪个节点上传数据,总线的使用权完全由主机分配,各子节点不能擅自占领总路线,也不允许主动发起通信。具体实现方法是,每隔3s,数据采集器发出索要第一个节点数据命令,并等待节点回传测量数据,超过规定的等待时间仍然没有收到节点返回的数据,认为该路结点通讯失败,延迟100ms后接着索要下路节点数据。值得一提的是,系统等待节点回传测量数据并不是采取软件死等的方法,而时采用分时多任务的方法来实现。具体实现方法是:在10ms定时器中断服务程序中设一个节点通信时间计数变量,进行减计数。数据采集器发出索要数据命令后,对这个变量重新赋超时限定值,主程序判断这个值为0时还未收到节点响应数据,才认为该节点通讯失败。采用这种调度机制,可以大幅提高数据采集器CPU的运行效率。

  结语

  RS-485总线具有线路设计简单、价格低廉、控制方便的特点,通过上述的软硬件设计方法,在海气边界层监测系统中得到了良好的应用。目前系统24小时连续开机,系统的通信始终处于正常状态,整个系统的性能满足了项目的需求。

上一页  [1] [2] [3]  下一页

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:284,703.10000 毫秒