二总线-MBus_二总线与CAN对比

二总线-MBus_二总线与CAN对比二总线的定义二总线是一种相对于四线系统(两根供电线路、两根通讯线路),将供电线与信号线合二为一,实现了信号和供电共用一个总线的技术。二总线节省了施工和线缆成本,给现场施工和后期维护带来了极大的便利。在消防,仪表,传感器,工业控制等领域广泛的应用。在时间的维度上最早且典型二总线技术就是M-BUS。M-BUSM-Bus(MeterBus)的开发是为了满足众多仪表的远程读数,例如每户的天然气表…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

二总线的定义

二总线是一种相对于四线系统(两根供电线路、两根通讯线路),将供电线与信号线合二为一,实现了信号和供电共用一个总线的技术。二总线节省了施工和线缆成本,给现场施工和后期维护带来了极大的便利。在消防,仪表,传感器,工业控制等领域广泛的应用。在时间的维度上最早且典型二总线技术就是M-BUS。
二总线布线方式

M-BUS

M-Bus(Meter Bus)的开发是为了满足众多仪表的远程读数,例如每户的天然气表以及水表。这种总线由总站统一控制读取各个从站(仪表)的度数,并能够给终端提供一定电流的供电。M-Bus对物理层,数据链路层,网络层(可选的),以及应用层均有相应的定义。
M-Bus应用层定义了测量记录的数据类型和数据结构。从站利用这些数据类型和结构将测量记录进行编码处理并传送给数据链路层进行发送处理;主站则根据这些数据类型和结构的定义,对应用层的数据进行相应的解码,从而获取从站的测量数据。
M-Bus定义了多种数据类型,包括无符号BCD整型、二进制整型、无符号二进制整型、布尔型、32bit复合型(表示测量类型、物理单位等)、32bit日期时间型、16bit日期型、浮点型。在这些数据类型的基础上,M-Bus定义了两种数据结构:固定数据结构和可变数据结构。 M-Bus的应用层同时定义了一些对链路层的”配置命令”的定义,包括波特率等。
应用层定义的数据类型和数据结构的定义对于M-Bus在抄表业的应用具有重要的现实意义,因为本身这种总线就是脱胎于仪表的计数读取这种需求,而这不是我们关心的重点,于是就不再这里赘述了。

M-BUS链路层

链路层作为保证数据传输完整以及可靠性的通信层。它定义了由起始位,数据位,奇偶校验为以及停止位构成的帧格式(与串口一致),并定义了单字节报文,短报文,以及长报文和长报文的特例控制报文四种报文格式。其中C-Field中的后四位规定了5种报文作用。
第一种命名为SND_NKE,其见于短报文中,用于主站发送给从站让其进行初始化,从站在接收之后回复单字节报文表示收到。
第二种命名为SND_UD,其见于长/控制报文,用于主站发送给从站数据。
第三种和第四种分别为REQ_UD1/REQ_UD2,见于短报文,用于主控制器发送给从站,请求级别1、级别2的数据回复。
第五种RSP_UD,见于长/控制报文,为从站回复的数据,在主控制发送请求数据的报文之后。
C-Field在由主站发送的报文REQ_UD1/REQ_UD2 中,如果第六位FCV置位,则第五位FCB每次发送都会置反。这样从站就能通过FCB来判断回复上一条信息还是新的信息。从站在判断FCV置位的基础上,如果FCB与上一条报文FCB保持一致,则回复历史信息,如果与上一条报文的FCB不一致,则回复新的信息。主站如果发送REQ_UD1/REQ_UD2,从站如果未回复RSP_UD ,则FCB保持一致,并不置反。
在这种机制下,主站需要针对每个从站保存一个FCB位,而每个从站需要保存一个上一条报文的FCB位。
报文格式

M-BUS物理层

M-Bus采取电平特征传输数字信号,下行电压,上行电流。
总线两端稳定电压:Vmark时表示逻辑Bit1,Vspace= Vmark-12V表示逻辑Bit0。主站通过Vmark与V Vspace的电压跳变脉冲向从站发送帧数据。
总线稳定电流=Imark*从站个数,表示逻辑Bit1。设总线上只有一个从站,那么总线稳定电流= Imark,则Ispace=Imark+(1120)mA,表示逻辑0.即从站从总线上吃掉1120mA电流发送Bit0。从站发送高度为(11~20)mA的电流脉冲向主站发送帧数据。
Mbus物理电平
M-Bus总线为单工,异步的通信这是因为如上图所示,从站向主站发送数据的时候,会引起总线上的电压被拉低。所以当从站发送数据的时候,主站无法发送数据。

M-BUS物理层/主站发送电路

主站的发送电路设计主要考虑发送Bit0与Bit1的电压变化量要大于等于12V;电路驱动几十上百个智能表不能影响发送电压低于12V。
出于这两个问题的考虑,用两个直流稳压器应该可以满足满足要求,下面左边是发送电路的框图,右边是发送电路原理图。
M-BUS主站发送电路

M-BUS物理层/主站接收电路

接口电路接收部分的主要难点是不要误读。在一个稳压电路中要读取它的电流,就象是在测它的纹波一样,串一个取样电阻是需要的。首先稳压电路本身纹波很小,取样电阻大了影响发送时的稳压效果,小了又取不出可用值。其实是要排除负载的变化对接收波形的影响,左边为主站接收电路框图,右边为电路原理图。
M-BUS主站接收电路

M-BUS物理层/从站接口电路

TSS721A接口芯片是MBus协议组织与TI公司合作开发的MBus协议从站专用接口芯片,遵循EN1434-3标准。借助TI公司的强大技术力量,TSS721A接口芯片实现了MBus协议对物理层的各项规定要求,有力地推动了MBus协议的推广。根据MBus总线物理层的相关定义,TSS721A从站接口芯片具备检测总线电压(接收数据)和调制总线电流(发送数据)的功能。TSS721A除了MBus通信功能外,还对MBus总线远程供电和电池供电提供了很好的支持。
TSS721接口芯片可以提供通过VDD引脚输出的3.3v稳压给MCU供电。芯片引脚PF直接接到外接MCU,用于掉电信号报警,当PF引脚有效时,MCU应保存相应数据。VS引脚会根据输电压VDD的状态,自动切换使用VDD或者电池进行供电。
TSS721电路

M-BUS的迭代

因为M-BUS在布线上具有得天独厚的优势(两根线),很多现场总线的应用场景都把这种技术作为考虑的方案之一,但是因为其对单个从站在功耗上的严苛要求,以及对整个总线上设备总量的限制和布线长度的要求,使得其针对各种仪表信息的数据采集非常适用,但是对其余的应用场景不适用。
现在市面上迭代了能够拉取更高静态电流的从站模块以应对那种带有电动阀的仪表,甚至有成对的主从芯片来提供M-BUS的物理层实现,不用再搭建主站的收发电路,且从站能有更高的功耗。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/181677.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • jediscluster api_java.lang.throwable

    jediscluster api_java.lang.throwable由于redis的集群rediscluster不支持keys这样的多key操作(具体原因由于sharding后,不同的key属于不同的slot,难以支持原子操作)。所以如果一个对外需要对缓存做失效处理时比较棘手。所以本类提供工具方法再rediscluster查找按照hashTags处理的keys和一般的keys。基于jediscluster实现。有优化空间,现在懒得改了importjav…

    2022年10月14日
    2
  • leetcode 链表相加_数据结构与算法链表

    leetcode 链表相加_数据结构与算法链表给你一个整数数组 nums ,请你找出数组中乘积最大的连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。示例 1:输入: [2,3,-2,4]输出: 6解释: 子数组 [2,3] 有最大乘积 6。示例 2:输入: [-2,0,-1]输出: 0解释: 结果不能为 2, 因为 [-2,-1] 不是子数组。/** * Definition for singly-linked list. * struct ListNode { * int val; *

    2022年8月9日
    3
  • ringbuffer是什么_Buffer

    ringbuffer是什么_BufferRingBuffer的高级用法(类似内核KFIFO)环形缓冲区(ringbuffer),环形队列(ringqueue)多用于2个线程之间传递数据,是标准的先入先出(FIFO)模型。一般来说,对于多线程共享数据,需要使用mutex来同步,这样共享数据才不至于发生不可预测的修改/读取,然而,mutex的使用也带来了额外的系统开销,ringbuffer/queue的引入,就是为了有效地解…

    2025年10月24日
    2
  • 数码视讯Q5刷armbian+squeezelite

    数码视讯Q5刷armbian+squeezelite数码视讯Q5刷armbian+squeezelite数码视讯Q5机顶盒介绍:数码视讯Q5CPU:晶晨S905M4核1.5G内存:1g存储:8G显卡:Mali-450接口:HDMIUSB2.0(两个)AVTF卡槽RJ45(1000M)带2.4无线电源:DC12V1A目前闲鱼的售价在:50-70元。购买数码视讯Q5时,必须问清楚,是否可以插tf卡打游戏,可以插tf卡打游戏才买,可以插tf卡打游戏才买,可以插tf卡打游戏才买,以…

    2025年6月13日
    2
  • MySQL JDBC URL各参数详解

    MySQL JDBC URL各参数详解参数名称参数说明缺省值最低版本要求user数据库用户名(用于连接数据库)password用户密码(用于连接数据库)useUnicode是否使用Unicode字符集,如果参数characterEncoding设置为gb2312或gbk,本参数值必须设置为truefalse1.1guseSSLMySQL在高版本需要指明是否进行SSL连接在mysql连接字符串url中加入ssl=true或者false即可characterEncoding…

    2022年7月16日
    13
  • igmp是负责ip组播成员管理的协议_IGMP协议

    igmp是负责ip组播成员管理的协议_IGMP协议组播协议分为主机-路由器之间的组成员关系协议和路由器-路由器之间的组播路由协议。组成员关系协议包括IGMP(互连网组管理协议)。组播路由协议分为域内组播路由协议及域间组播路由协议。域内组播路由协议包括PIM-SM、PIM-DM、DVMRP等协议,域间组播路由协议包括MBGP、MSDP等协议。IGMP(InternetGroupManagementProtocol)作为因特网组管理协议,是TCP/IP协议族中负责IP组播成员管理的协议,它用来在IP主机和与其直接相邻的组播路由器之间建立、维护组播组成员关

    2022年9月14日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号