串口屏Modbus协议,串口屏的modbus协议资料,串口屏modbus通讯协议开发,串口屏之modbus协议使用技巧

本例程中用51单片机作为Modbus从机,从机的设备地址为2,从机有4个寄存器,寄存器地址分别为3,4,5,6,协议类型为保持寄存器,功能码为03和06。

第一步:新建一个工程,并在第一个画面上放置4个实时数据控件如下图1所示。

第二步:点击菜单【HMI变量】,弹出如下图所示界面。然后点【添加】,弹出图3所示界面。在这里我们可以添加4个HMI变量m_AD,m_AD_1,m_AD_2,m_AD_3,变量类型为无符号短整型,变量地址分别为58,60,62,64。

第三步:双击实时数据控件,弹出如图4所示窗口,点击【基本控制】,并关联我们刚才添加的HMI变量,4个实时数据控件分别关联HMI变量m_AD,m_AD_1,m_AD_2,m_AD_3,然后点【确定】。

到这里,我们添加控件完毕,下一步要做的就是映射,映射有两种方法,一种是高级映射,一种是直接映射,下面我们先讲高级映射的方法。

第一步:点击菜单【工程】里面的【系统参数设置】,弹出如图6所示窗口,在这里有两个串口设置,串口1适用于232通信,串口2适用于485通信,选择好串口后,设置好串口号和波特率,解码协议选择【Modbus RTU Master】,然后点【其它设置】,弹出图7所示窗口,点【高级设置】,弹出图8所示窗口。

第二步:在图8的界面中点【添加】,弹出图9所示窗口,PLC设备地址即Modbus从机地址,元件类型即Modbus协议中的功能码,其中【保持寄存器】即读写寄存器,功能码为03和06,元件编号即寄存器首地址,映射数量即要映射的寄存器个数;本例程中PLC设备地址为2,元件类型为【保持寄存器】,元件编号为03(这里填写的是寄存器首地址),映射数量为4(一次性映射多个寄存器时,寄存器的地址必须是连续的,不连续的要分开映射),由于控件关联的HMI变量的地址分别为58,60,62,64(一次性映射多个寄存器时,所关联的HMI变量的地址也必须是连续的),所以对应的HMI变量的起始地址为58,其他的不用改,然后点【确定】,映射完毕。

上面的是高级映射的方法,下面讲一下直接映射的方法。

第一步:双击实时数据控件,弹出【实时数据属性】对话框,如图10所示,点【基本控制】,在【连接目标】的下拉菜单中选择【<</span>串口1的PLC:Modbus RTU Master>和变量>】,如图11所示,弹出图12所示窗口。

图10

第二步:在图12中,站号即Modbus从机地址,功能码右边的方框就是寄存器的地址,功能码选【0x03(读保持寄存器)】。

图11

图12

以上是两种映射方法,两种方法相比,直接映射的方法比较简单,但是速度比较慢,而且不能一次性映射多个寄存器,所以建议使用高级映射方法。







串口屏Modbus协议,串口屏的modbus协议资料,串口屏modbus通讯协议开发,串口屏之modbus协议使用技巧的更多相关文章

  1. Modbus库开发笔记之三:Modbus TCP Server开发

    在完成了前面的工作后,我们就可以实现有针对性的应用了,首先我们来实现Modbus TCP的服务器端应用.当然我们不是做具体的应用,而是对Modbus TCP的服务器端应用进行封装以供有需要时调用. 这 ...

  2. 转载 C#开发串口总结,并提炼串口辅助类到公用类库中

    C#开发串口总结,并提炼串口辅助类到公用类库中 开发C#相关的项目有很多年了,一直没有接触串口的开发,近期由于工作的需要,需要了解熟悉对硬件串口的开发,通过对串口的深入了解,串口也不再是什么神秘的东西 ...

  3. [分享]我的LABVIEW快速开发串口测试软件实例

    LABVIEW是美国国家仪器公司(National Instruments,简称NI)的创新产品,它允许编程人员使用图形方式来进行编程,摒弃了艰涩难懂的代码,只需要拖动相应图形控件然后连线,进行简单的 ...

  4. Modbus库开发笔记之五:Modbus RTU Slave开发

    Modbus在串行链路上分为Slave和Master,这一节我们就来开发Slave.对于Modbus RTU从站来说,需要实现的功能其实与Modbus TCP的服务器端是一样的.其操作过程也是一样的. ...

  5. iOS开发 多屏尺的自动适配(转)

    [iOS开发]多屏尺的自动适配 AutoLayout (纯代码方式) (2014-09-19 09:35:47) 转载▼ 标签: autolayout ios开发 xcode ui 分类: Xcode ...

  6. 不懂怎么创建可视化大屏?手把手教你使用数据可视化BI软件创建工厂车间数据监控大屏

    灯果数据可视化BI软件是新一代人工智能数据可视化大屏软件,内置丰富的大屏模板,可视化编辑操作,无需任何经验就可以创建属于你自己的大屏.大家可以在他们的官网下载软件.   本文以工厂车间数据监控大屏为例 ...

  7. HTTP1.1协议-RFC2616-中文版课前资料收集

    1.http rfc大致讲了什么? 2.解决了什么问题? HTTP协议描述的是发送方与接收方的通信协议 协议功能: HTTP协议(HyperText Transfer Protocol,超文本传输协议 ...

  8. python 全栈开发,Day34(基于UDP协议的socket)

    昨日内容回顾 网络的基础概念arp协议 :通过ip地址找到mac地址五层模型 : 应用层 传输层 网络层 数据链路层 物理层tcp协议 : 可靠的 面向连接 全双工 三次握手 四次挥手udp协议 : ...

  9. 移动网络应用开发中,使用 HTTP 协议比起使用 socket 实现基于 TCP 的自定义协议有哪些优势?

    HTTP 是应用层协议,TCP 是传输层协议(位于应用层之下),放在一起类比并不合适.不过猜测楼主是想对比 “标准 HTTP 协议” 还是 “自定义的协议(基于 TCP Socket)” . 一般来说 ...

  10. 转载:Python Web开发最难懂的WSGI协议,到底包含哪些内容?

    原文:PSC推出的第二篇文章-<Python Web开发最难懂的WSGI协议,到底包含哪些内容?>-2017.9.27 我想大部分Python开发者最先接触到的方向是WEB方向(因为总是有 ...

随机推荐

  1. 【Zookeeper】源码分析之Leader选举(二)

    一.前言 前面学习了Leader选举的总体框架,接着来学习Zookeeper中默认的选举策略,FastLeaderElection. 二.FastLeaderElection源码分析 2.1 类的继承 ...

  2. 最近新版本的pangolin出现了点问题,我把可用的旧版本上传到了github

    经测试该版本编译没有问题. 下载地址:https://github.com/zzx2GH/Pangolin.git

  3. 前端基本知识(四):JS的异步模式:1、回调函数;2、事件监听;3、观察者模式;4、promise对象

    JavaScript语言将任务的执行模式可以分成两种:同步(Synchronous)和异步(Asychronous). “同步模式”就是一个任务完成之后,后边跟着一个任务接着执行:程序的执行顺序和排列 ...

  4. Java调度框架Quartz简单示例

    Quartz的大名如雷贯耳,这里就不赘述,而且本文也不作为深入探讨,只是看完Quartz的官方文档后,下个简单示例,至少证明曾经花了点时间学习过,以备不时之需. Quartz使用了SLF4J,所以至少 ...

  5. 基于Asp.Net Core Mvc和EntityFramework Core 的实战入门教程系列-2

    来个目录吧: 第一章 第二章 第三章 暂时就这么多.后面路线更新吧 Entity Framework Core Nuget包管理 如果你创建项目的时候启用了个人身份验证的话,项目中就已经包含了EFCo ...

  6. Caffe学习系列(一)Ubuntu16.04下搭建编译Caffe环境,并运行MNIST示例(仅CPU)

    前言: 正文: 1.安装必要依赖包: sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev l ...

  7. UVa 1588 换抵挡装置

    前言 题目 大意是说,两个槽能够插在一起,并保证每一列的高度不高于3,保证最短长度. 思路 思路很简单,取短字符串遍历长字符串的每一个位置,纪录下位置,并取最短即可. 实现 //习题3-11 换抵挡装 ...

  8. python 接口自动化测试(二)

    代码实现 1.XlsEngine.py # -*- coding:utf-8 -*- __author__ = 'yanghaitao' import xlrd import xlwt class X ...

  9. Python--定时给Ta讲笑话

    受到这篇文章的启发http://python.jobbole.com/84796/,我也动手写了个程序玩一玩. 接口请求说明: 接口请求地址http://api.1-blog.com/biz/bizs ...

  10. mongoose简单使用样例

    新建文件 app.js 内容如下: var mongoose = require('mongoose') , Schema = mongoose.Schema; mongoose.connect('m ...