当前位置: 首页 > wzjs >正文

淘客app网站是怎么做的动画制作流程图

淘客app网站是怎么做的,动画制作流程图,免费咨询贷款,wordpress首页五格ModBus协议是莫迪康公司为了让PLC之间进行数据通信而设计出来的协议。它是一种总线协议,是一种一对多,上下级的关系。 它的应用广泛,具有免费开源,操作简单的有点,并且可以兼容串口和网络通讯,兼容也不错。…

ModBus协议是莫迪康公司为了让PLC之间进行数据通信而设计出来的协议。它是一种总线协议,是一种一对多,上下级的关系。

它的应用广泛,具有免费开源,操作简单的有点,并且可以兼容串口和网络通讯,兼容也不错。

数据类型:输入布尔(输入线圈),输入寄存器,输出布尔(输出线圈),输出寄存器

布尔就是bool值,寄存器可以是int或者float类型

常用功能码

1、读取

读取输出线圈(Read Coils) 0x01

读取输入线圈 (Read DisCrete Input)0x02,(主机只读)

读取输出寄存器(Read Holding Registers)0x03,

读取输入寄存器(Read Inpute Registers)0x04,(主机只读)

2、写入

写入单个线圈(Write Single Coil)0x05

写入单个寄存器(Write Single Register)0x06

写入多个线圈(Write Multple Coils)0x0F

写入多个寄存器(Write Multple Register)0x10

三种传输类型

1、ModbusRTU,用于串口通信,传递字节码,效率更高

流程是主机向从机发出请求,从站响应请求后,主站才能接收到数据。

主机报文:从站地址+功能码+起始地址+数据长度+校验位(从站地址,功能码占1个字节,起始地址、数据长度、检验位占2个字节)

数据长度可以看做是读取的行数

例如:从机的设备地址是01,功能码是读取输出寄存器03,起始寄存器地址是从第0开始读取,读取的数量是9,得出的报文就是:01 03 00 00 00 09 XX XX

从机报文:从站地址+功能码+数据的字节位数+数据+校验位(从站地址,功能码,数据的字节位数占1个字节,数据、检验位占2个字节)

例如:从机的设备地址是01,功能码是读取输出寄存器03,每次读取4个字节,从机传输的值都是65,得出的报文就是:01 03 04 00 41 00 41 XX XX

2、ModBusAscii,用于传递Ascii码

3、ModBusTCP,用于网络传输

4、ModBusUDP,用于网络传输

5、ModBusRTUOverTCP/UDP

6、ModBusAsciiOverTCP/UDP

使用C#完成ModBus的RTU和TCP通讯

进行测试前需要用到Modbus Slave开启一个ModBus服务

1、RTU通讯(串口通讯)

    var modbus = new HslCommunication.ModBus.ModbusRtu();modbus.SerialPortInni(cfg => {cfg.BaudRate = 9600;cfg.PortName = "COM2";cfg.Parity = System.IO.Ports.Parity.None;cfg.DataBits = 8;cfg.StopBits = System.IO.Ports.StopBits.One;// 每次写falsecfg.RtsEnable = false;});// 设置超时时间modbus.ReceiveTimeOut = 5000;// 设置起始地址是否从0开始,有些情况是从1开始modbus.AddressStartWithZero = true;// 设置数据大小端modbus.DataFormat = HslCommunication.Core.DataFormat.CDAB;// 设置设备地址modbus.Station = 1;modbus.Crc16CheckEnable = true;modbus.IsClearCacheBeforeRead = false;var openResult = modbus.Open();if(openResult.IsSuccess == false){MessageBox.Show("打开ModBus失败");return;}// 读取数据,从第0位开始,读取5个数据var readResult = await modbus.ReadInt16Async("0", 5);if(readResult.IsSuccess == true){this.textBox1.Text = this.textBox1.Text + string.Join(",", readResult.Content) + Environment.NewLine;}// 继续读取另一个设备地址的Bool类型modbus.Station = 2;var readBool = await modbus.ReadBoolAsync("5");if (readResult.IsSuccess == true){this.textBox1.Text = this.textBox1.Text + readBool.Content + Environment.NewLine;}// 写入数据modbus.Station = 1;var writeResult = await modbus.WriteAsync("0", (short)90);if (writeResult.IsSuccess == true){this.textBox1.Text = this.textBox1.Text + "写入成功" + Environment.NewLine;}

2、TCP通讯

    var modBus = new HslCommunication.ModBus.ModbusTcpNet("127.0.0.1");modBus.Port = 502;modBus.Station = 1;modBus.ConnectTimeOut = 10000;modBus.ReceiveTimeOut = 5000;modBus.AddressStartWithZero = true;modBus.IsStringReverse = false;modBus.DataFormat = HslCommunication.Core.DataFormat.CDAB;// 读取数据var result = await modBus.ReadInt16Async("0");if (result.IsSuccess){this.textBox1.Text = this.textBox1.Text + result.Content + Environment.NewLine;}// 写入数据var resultWrite = await modBus.WriteAsync("1", 66);if (resultWrite.IsSuccess){this.textBox1.Text = this.textBox1.Text + "写入成功" + Environment.NewLine;}

http://www.dtcms.com/wzjs/536661.html

相关文章:

  • 辽源网站seo开发一个网站需要哪些技术
  • 北京著名的网站制作公司自己开发聊天软件
  • 网站设计思想网站不足之处
  • 三明商城网站开发设计高端建材项目
  • 新网网站空间购买品牌设计图片
  • 全椒县城乡规划建设局网站网页游戏排行榜2014年
  • 嘉陵 建设 摩托车官方网站深圳人口1756万
  • 西宁商城网站建设公司广州海珠区发布
  • 织梦网站源码转换成wordpresswordpress文章背景
  • 做网站 先上线再调整门户网站是以什么为主
  • 企业网站主题wordpress怎么上传源代码
  • 外贸网站用什么语言中交建设集团网站
  • 试析媒体网站品牌建设网站建设用语言
  • 南宁网站制作工具互联网舆情研究中心
  • 湖南专业建站按效果付贿软件下载网站哪个好用
  • 网站 前台 后台seo平台优化
  • 一般做网站需要什么框架化妆品网站建设规划书范文
  • 永年做网站做网站排名需要多少钱
  • wordpress站内私信互联网开发工程师证书
  • 小型网站搭建中国做的最好的网站建设公司
  • 专业做网站咨询wordpress 最强大主题
  • 企业品牌营销推广深圳市网络seo推广平台
  • 网站友链外链短链接制作
  • 建设银行网站安全分析秦皇岛黄金海岸景点介绍
  • 做的好的淘宝客网站石家庄到底怎样了
  • 想在百度做网站宜昌网站设计公司
  • 有没有网站学做总结网站建设成都云
  • 制作自助网站用ps怎么做网站背景
  • 深圳企业网站seo橙色的网站模板
  • 解析网站现在ps做网站的尺寸