MBus总线的基础学习

MBus总线的基础学习MBus总线是一种主从式半双工传输总线,采用主叫/应答的方式通信,即只有处于中心地位的主站(Master)发出询问后,从站(Slave)才能向主站传输数据。MBus的主要特点如下:1、两线制总线,不分正负极性,施工简单;2、采用独特的电平特征传输数字信号,抗干扰能力强,传输距离长;3、可以选着总线供电,降低维护成本;4、总线型拓扑结构,扩展方便,组网成本低;5、任一

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

Jetbrains全系列IDE稳定放心使用
    MBus总线是一种主从式半双工传输总线,采用主叫/应答的方式通信,即只有处于中心地位的主站(Master)发出询问后,从站(Slave)才能向主站传输数据。

MBus的主要特点如下:

1、两线制总线,不分正负极性,施工简单;

2、采用独特的电平特征传输数字信号,抗干扰能力强,传输距离长;

3、可以选着总线供电,降低维护成本;

4、总线型拓扑结构,扩展方便,组网成本低;

5、任一从站的故障不影响整个总线的功能;

6、专门设计的报文格式,满足能耗计量仪表联网和远程读数的需要;

两线电缆通常采用标准电话双绞线,没有正负极之分。

MBus物理层bit流传输具有独特的电平特征。主站到从站的bit流传输通过总线电平切换实现,而从站到主站的bit流传输通过电流调制实现。定义逻辑“1”为MARK,逻辑“0”为SPACE。

Bit                 Bit流的表示                    Bit流传输方向

逻辑“1”(MARK)   22V=<Vmark=<42                 主站到从站

                    0mA=<Imark=<1.5mA              从站到主站

逻辑“0”(SPACE)  12V=<Vspace=<Vmark-10          主站到从站

                    Imark+11mA=<Ispace=<Imark+20mA 从站到主站

MBus协议规定总线处于空闲状态是用逻辑“1”表示,即总线电压维持在Vmark,而每个从站取电流Imark≈1.5mA,即两线制总线上的总电流等于Imark*从站总数。这样无论总线处于空闲状态

还是数据传输状态,总线电压不低于Vspace,每个从站所取电流不小于Imark,这个电流就可用作从站电源。

1.2.2MBus数据链路层

规定了MBus的信号传输方式、字节表示、帧格式以及主从站的连接过程等。

根据物理层的特点,MBus采用半双工、异步串行信号传输方式,波特率为300~9600。

由于MBus的空闲位为逻辑“1”,所以起始位定义为逻辑“0”,而停止位定义为逻辑“1”。这样,一个字节的传输过程中包括起始、数据、校验、停止共11比特,其中至少有一个逻辑“1”

,满足MBbus从站的电平要求。

MBus采用FT1.2异步式字节传输帧格式(IEC870-5-2),由多个字节组成,传输时字节间不允许停顿。FT1.2定义了三种帧格式,分别是单字节(表1-3)、定长短帧(表1-4)和变长长帧(表1

-5)。

S:表示起始位;

D:未加说明均表示一个字节;

P:表示奇偶校验位;

E:表示停止位;

发送顺序从左至右,从上至下。

单字节(表1-3)

S    D    P    E

0    E5H  1    1

定长短帧(表1-4)

S    D        P    E

0    10H      1    1

0    C字段    P    1

0    A字段    P    1

0    CS字段   P    1

0    16H      1    1

变长长帧(表1-5)

S    D                     P    E

0    68H                   1    1

0    L字段                 P    1

0    L字段                 P    1

0    68H                   1    1

0    C字段                 P    1

0    A字段                 P    1

0    CI字段                P    1

0    用户数据区0~252字节   P    1

0    L字段                 P    1

0    L字段                 P    1

0    16H                   1    1

单字节帧E5H用于接收确认,

定长短帧用于主站向从站发送指令,

变长长帧用于主从站间的数据交换。

后两种格式除了起始字节(如10H,68H)、终止字节(16H)外,

C:控制字段或者叫功能字段,定义了帧的功能、数据流向,保证帧的正确发送和接收。根据C字段的不同,IEC870-5-2将报文帧命名为不同的功能代码,MBus常用的功能代码有SND_NKE(初始化

从站)、SND_UD(向从站发送数据)、REQ_UD2(请求从站发送数据)和RSP_UD(向主站发送数据)。

A:地址字段,范围0~255,表示接收数据或发送数据的从站地址。

L:长度字段,记录变长长帧的长度信息。

CS:校验和字段,通过对前面几个字段求和来检验报文帧是否出现传输错误。

CI:控制信息字段,主要两个方面的功能,一方面是完成主对从的一些配置功能,如设定波特率、从站地址等;另一方面在从站向主站发送测量数据是,CI字段设定了用户数据区的基本参数

,如字节顺序、数据结构等。

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

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

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


相关推荐

  • java线程join方法

    java线程join方法java线程join方法1.join方法​ join方法的作用是进行线程插队,也就是说调用了join方法的线程相对于调用它的上级线程拥有跟高的执行权。调用join方法的线程的上级线程必须等待调用join方法的线程执行完成才能继续执行。举个小例子:publicclasstestjoin{ publicstaticvoidmain(String[]args)throwsI…

    2022年5月5日
    43
  • win10桌面图标变成白色怎么恢复_win10图标变白但还能打开

    win10桌面图标变成白色怎么恢复_win10图标变白但还能打开1、桌面新建一个txt文档,打开输入:代码附上,可直接粘贴复制:@echoofftaskkill/f/imexplorer.exeCD/d%userprofile%\AppData\LocalDELIconCache.db/astartexplorer.exeecho2、将txt的记事本文档另存为.bat格式的文件;3、双击打开刚刚保存在桌面的“修复白图标”,即可从白图标恢复成原来的图标样式。…

    2022年10月19日
    2
  • 虚函数表详解

    虚函数表详解本文转自:https://blog.csdn.net/lihao21/article/details/50688337关键词:虚函数,虚表,虚表指针,动态绑定,多态一、概述为了实现C++的多态,C++使用了一种动态绑定的技术。这个技术的核心是虚函数表(下文简称虚表)。本文介绍虚函数表是如何实现动态绑定的。二、类的虚表每个包含了虚函数的类都包含一个虚表。我们知道,当一个类(A)继承另一个类(B)时…

    2022年7月26日
    7
  • 使用GAppProxy时安全证书无效的解决办法「建议收藏」

    使用GAppProxy时安全证书无效的解决办法「建议收藏」使用GAppProxy做代理,登录Echofon时却老是弹出”api.twitter.com:443使用了无效的安全证书。该证书因为其发行这证书位置而不被信任sec_error_unknown_issuer”的对话框,导致登录失败。搜索了一下,可尝试手动将api地址加入信任列表。以FireFox4.0为例(3.6也差不多)具体做法如下:依次选择选项->高级->加…

    2025年6月20日
    1
  • mysql有多少个端口号_mysql默认端口号(mysql端口号是多少)[通俗易懂]

    mysql默认端口号(mysql端口号是多少)2020-05-0722:14:36共10个回答mysql的默认端口号是多少mysql默认端口号为3306,修改端口号方法:修改配置文件/etc/my.cnfmysql使用的默认端口号是哪个端口mysql的默认端口是3306,可以编辑用户目录下的.my.cnf文件进行修改.sqlserver默认端口号为:1433oracle默认端口号为:1521DB…

    2022年4月18日
    92
  • LeetCode – Refresh – Valid Palindrome

    LeetCode – Refresh – Valid Palindrome

    2021年9月4日
    77

发表回复

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

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