接口/总线/驱动
rs-485采用平衡发送和差分接收方式实现通信:发送端将串行口的ttl电平信号转换成差分信号a,b两路输出,经过线缆传输之后在接收端将差分信号还原成ttl电平信号。由于传输线通常使用双绞线,又是差分传输,所以又极强的抗共模干扰的能力,总线收发器灵敏度很高,可以检测到低至200mv电压。故传输信号在千米之外都是可以恢复。rs-485最大的通信距离约为1219m,最大传输速率为10mb/s,传输速率与传输距离成反比,在100kb/s的传输速率下,才可以达到最大的通信距离,如果需传输更长的距离,需要加485中继器。rs-485采用半双工工作方式,支持多点数据通信。rs-485总线网络拓扑一般采用终端匹配的总线型结构。即采用一条总线将各个节点串接起来,不支持环形或星型网络。如果需要使用星型结构,就必须使用485中继器或者485集线器才可以。rs-485总线一般最大支持32个节点,如果使用特制的485芯片,可以达到128个或者256个节点,最大的可以支持到400个节点。
根据RS485工业总线标准,RS485工业总线为特性阻抗120Ω的半双工通讯总线,其最大负载能力为32个有效负载(包括主控设备与被控设置)。
当使用较细的通讯电缆,或者在电磁干扰较强的环境使用本产品,或者总线上连接有较多的设备时,最大传输距离相应缩短;反之,最大距离加长。主干网上的设备,如围墙机、管理机、主机等均分配一个ID号,即通信联络地址。
主干网对讲线,一般都是用一芯线(地线除外),是一种半双工方式。视频用一根同轴电缆。如果要求有多对访客住户同时进行对讲(所谓多通道),则必须增加音频线和视频线。
主机(副机)与分机一般不能直接连接,中间必须增加解码器,这有利于系统的稳定和增强抗干扰能力。主机(副机)与解码器均通过一个叫做网络联接器的设备在弱电井内连接,解码器与解码器之间总线方式或是星型方式连接。每个解码器也有一个ID号,是主机与之通信的联络地址。(二进制编码)
主机与解码器之间的连线,叫楼内总干线,所用电缆芯数因厂家不同而有所区别。
485总线结构布线图
CAN是控制器局域网络(Controller Area Network, CAN)的简称,是由研发和生产汽车电子产品著称的德国BOSCH公司开发了的,并最终成为国际标准(ISO11898)。是国际上应用最广泛的现场总线之一。 在北美和西欧,CAN总线协议已经成为汽车计算机控制系统和嵌入式工业控制局域网的标准总线,并且拥有以CAN为底层协议专为大型货车和重工机械车辆设计的J1939协议。近年来,其所具有的高可靠性和良好的错误检测能力受到重视,被广泛应用于汽车计算机控制系统和环境温度恶劣、电磁辐射强和振动大的工业环境。
CAN总线以广播的方式从一个节点向另一个节点发送数据,当一个节点发送数据时,该节点的CPU把将要发送的数据和标识符发送给本节点的CAN芯片,并使其进入准备状态;一旦该CAN芯片收到总线分配,就变为发送报文状态,该CAN芯片将要发送的数据组成规定的报文格式发出。此时,网络中其他的节点都处于接收状态,所有节点都要先对其进行接收,通过检测来判断该报文是否是发给自己的。
由于CAN总线是面向内容的编址方案,因此容易构建控制系统对其灵活地进行配置,使其可以在不修改软硬件的情况下向CAN总线中加入新节点。
(1)多主机方式工作:网络上任意节点可在任意时刻其他节点发送数据,通信方式灵活;
(2)网络上每个节点都有不同的优先级,可以满足实时性的要求;
(3)采用非破坏性仲裁总线结构,当两个节点同时向网络上传送信息时,优先级高的优先传送;
(4)传送方式有点对点、点对多点、点对全局广播三种;
(5)通信距离可达6km;通信速率可达1MB/s;节点数可达110个;
(6)采用的是短帧结构,每帧有8个有效字节;
(7)具有可靠的检错机制,使得数据的出错率极低;
(8)当发送的信息遭到破坏后,可自动重发;
(9)节点在严重错误时,会自动切断与总线联系,以免影响总线上其他操作;
现在的总线格式很多,CAN相对于其他的总线有什么特点啊?有什么特别的优势,让我们必须选择这种总线呢?这个问题问的好,所以我想与其它总线做一下比较,首先呢,就比较一下大家耳熟能详的485总线吧。其实485总线与232差不多,它们只定义了物理层,规定了电平标准。下面我们进行详细的对比。
1)CAN控制器工作于多主方式,网络中的各节点都可根据总线访问优先权(取决于报文标识符)采用无损结构的逐位仲裁方式竞争向总线发送数据,且CAN协议废除了站地址编码,而代之以对通信数据进行编码,这可使不同的节点同时接收到相同的数据,这些特点使得CAN总线构成的网络各节点之间的数据通信实时性强,并且容易构成冗余结构,提高系统的可靠性和系统的灵活性。而利用RS-485只能构成主从式结构系统,通信方式也只能以主站轮询的方式进行,系统的实时性、可靠性较差。
2)CAN总线通过CAN控制器接口芯片82C250的两个输出端CANH和CANL与物理总线相连,而CANH端的状态只能是高电平或悬浮状态,CANL端只能是低电平或悬浮状态。这就保证不会出现像在RS-485网络中,当系统有错误,出现多节点同时向总线发送数据时,导致总线呈现短路,从而损坏某些节点的现象。而且CAN节点在错误严重的情况下具有自动关闭输出功能,以使总线上其他节点的操作不受影响,从而保证不会出现象在网络中,因个别节点出现问题,使得总线处于“死锁”状态。
3)CAN具有完善的通信协议,可由CAN控制器芯片及其接口芯片来实现,从而大大降低了系统的开发难度,缩短了开发周期,这些是只仅仅有电气协议的RS-485所无法比拟的。
CAN总线与485总线对比表
全部0条评论
快来发表一下你的评论吧 !