Modbus是一种串行通信协议,是莫迪康公司为PLC(编程逻辑控制器)通信而设计的协议。Modbus目前已经成为工业领域通信协议的业界标准,大部分的仪器仪表都支持该通信协议。很早以前就开发过基于Modbus协议的各种驱动,在2007年的时候还曾写了一篇《我的Modbus Slave/Client开发历程》的博客文章 。

YFIOs就是YFSoft I/O Server的简称,是一款物联网时代的轻量级嵌入式组态系统。支持策略和驱动二次开发,不过常规策略和驱动开发有些繁琐,由于大部分物联网设备都支持modbus协议,所以提供给一款快速开发的modbus驱动的工具,还是非常必要的。

本篇文章将介绍一款基于modbus协议的温湿度模块的快速驱动开发过程。

打开“YFIOsIDE”程序,启动后,单击“文件”主菜单下面的“modbus驱动开发向导”。

查温湿度传感器的说明书我们可以知道,温度和湿度在modbus寄存器的偏移地址是0和1(40000区),我们把标识符分别设置为“T”和“H”。看说明书我们可知,直接读取的值还不是温度和湿度,还需要除以10,所以我们配置一下运算表达式为“$Value/10.0”,其中$Value就是我们直接从指定地址区读到的原生值。

驱动名称和制造商等信息,可以根据实际进行填写就行,我们这里采用默认值。设备地址和串口参数,可以设置为该设备的默认参数。

参数配置好后,我们单击“编译”按钮进行驱动文件编译,为了让YFIOs管理程序方便加载我们新编译的驱动,我们选择目录为YFIOsManager程序下的“Driver”目录。

编译成功后,我们发现在指定的目录出现一个dll和pe文件,文件名就是我们配置的“驱动名称”。

我们打开YFIOsManager程序,单击“驱动列表”项,可以看到我们刚刚编译的驱动。

好,我们测试一下刚刚编译好的驱动,看看是否能正常工作。我们添加一个用户驱动,选择我们刚刚创建好的驱动。

YF3300的RS485为COM2。配置好后,数据配置里面就会自动出来对应的变量来,如下图所示:

我们让YF3300接一个温湿度模块,把相关的组态配置部署到YF3300中去。

YF3300采购链接(最后一个颜色分类是YF3300网关):

https://item.taobao.com/item.htm?spm=a1z10.1-c.w4004-10400358307.7.82854d48viZm7V&id=42910631014

部署运行后,我们在“数据监控”中看到温湿度已经可以正常读取了。

从以上可以看成,只要知道对应的属性地址,我们可以非常迅速的开发出一款比较实用的设备驱动。另外驱动的配置可以导出为xml文件,后续可以根据需要进行修改和扩展。如果要实现的驱动比较复杂,还可以导出为Visual Studio C#项目,可以更为自由的实现对应的驱动了。

单击“导出为C#工程”,选定好要导出的目录,然后就可以到一个完整的C#驱动程序了(一个驱动接口工程,一个驱动pe工程)。

想体验阿里云IoT平台的网友,可以单击如下链接:https://dev.iot.aliyun.com/sale?source=deveco_partner_yefan

【阿里云IoT+YF3300】9.快速开发modbus设备驱动的更多相关文章

  1. 【阿里云IoT+YF3300】11.物联网多设备快速通信级联

    我们见到的很多物联网设备,大都是“一跳”上网,所谓的“一跳”就是设备直接上网,内嵌物联网模块或者通过DTU直接上网.其实稍微复杂的物联网现场,往往网关下面连接若干物联网设备(如下图),并且这些物联网设 ...

  2. 【阿里云IoT+YF3300】1.时代大背景下的阿里云IoT物联网的现状和未来

    “未来十到二十年,大家基本已经形成了一个共识,那便是新格局的奠定将由 AI 和物联网技术来支撑.放眼国内,在这些互联网巨头之中,未来真正成为竞争对手厮杀的,阿里和华为是首当其冲,在这两个领域双方分别暗 ...

  3. 【阿里云IoT+YF3300】10.快速开发188协议设备驱动

    188协议的全称为CJ-T188-2004 <户用计量仪表数据传输技术条件>,是针对水表.燃气表.热量表和其他集中采集的一个国家行业标准协议. YFIOs就是YFSoft I/O Serv ...

  4. 【阿里云IoT+YF3300】8.物联网设备用户脚本开发

    除了我们必须熟悉的网页脚本,比如JavaScript.其实在工业自动化中,组态软件是必备脚本的,只是有的脚本语言风格类似C或类似Basic而已.比如昆仑通泰的组态屏中的组态软件.通过安装组态软件可以简 ...

  5. 【阿里云IoT+YF3300】6.物联网设备报警配置

    纵然5G时代已经在时代的浪潮中展现出了它的身影,但是就目前的物联网环境中,网络问题仍旧是一个比较突出的硬伤.众所周知,在当前的物联网规划中,与其说是实现万物互联,倒不如说是行业指标数据监控.对于一些特 ...

  6. 【阿里云IoT+YF3300】12.阿里云IoT Studio入门介绍

    阿里云IoT Studio是针对物联网场景提供的生产力工具,可覆盖各个物联网行业核心应用场景,帮助您高效经济地完成设备.服务及应用开发.物联网开发服务提供了移动可视化开发.Web可视化开发.服务开发与 ...

  7. 【阿里云IoT+YF3300】13.阿里云IoT Studio WEB监控界面构建

    Web可视化开发是阿里云IoT Studio中比较重要的一个功能,通过可视化拖拽的方式,方便地将各种图表组件与设备相关的数据源关联,无需编程,即可将物联网平台上接入的设备数据可视化展现. 目前支持的组 ...

  8. 【阿里云IoT+YF3300】14.阿里IoT Studio打造手机端APP

    在上一篇<13.阿里云IoT Studio WEB监控界面构建>中,我们介绍了用阿里云IoT Studio(原Link Develop)可视化构建WEB界面程序.本篇文章将介绍用阿里云Io ...

  9. 【阿里云IoT+YF3300】15.阿里云物联网小程序构建

    2013年8月,“轻应用”概念提出,但是仅仅活跃四年随后淡出 ,直到2017年1月9号借助微信小程序成功续命.一时间,以微信小程序和支付宝小程序为代表的轻应用解决方案迅速贯穿多个环节,成为“万物互联” ...

随机推荐

  1. SpringBoot+SpringCloud+vue+Element开发项目——集成MyBatis框架

    添加mybatis-spring-boot-starter依赖 pox.xml <!--mybatis--> <dependency> <groupId>org.m ...

  2. c# 日期和时间System.DateTime

  3. request-html 登陆百度

    import asyncio from requests_html import HTMLSession url = 'https://passport.baidu.com/v2/?login& ...

  4. linux 利用LDAP身份集中认证

    碰巧所在的公司用到了ldap 集中身份认证,所有打算研究下这套架构,但是看遍了网络上的很多教程,要么不完整,要么就是照着根本弄不出来,十月一研究了三天,结合八方资源终于弄出来了,真是不容易,哎,特此记 ...

  5. jmeter + ant + jenkins 自动化集成环境搭建

    所需工具 一.jmeter 工具下载 https://jmeter.apache.org/  配置环境JDK等及各种插件 二.Ant安装(http://ant.apache.org/) 安装Ant是为 ...

  6. linux系统编程之管道(三)

    今天继续研究管道的内容,这次主要是研究一下命名管道,以及与之前学过的匿名管道的区别,话不多说,进入正题: 所以说,我们要知道命名管道的作用,可以进行毫无关系的两个进程间进行通讯,这是匿名管道所无法实现 ...

  7. 0025SpringMVC的几种响应方式

    本文主要涉及到一下几种响应方式: 1.返回字符串2.返回void3.返回ModelAndView4.转发关键字forward和重定向关键字redirect返回字符串5.ajax调用返回json 具体实 ...

  8. 4.3 axios

    axios全局拦截器:

  9. python API _ 1 (EasyDict)

    作用:参数调用文件一:from easydict import EasyDict as edictimport numpy as np config = edict() config.IMG_HEIG ...

  10. 在idea中调试spark程序-配置windows上的 spark local模式

    spark程序大致有如下运行模式: standalone模式:spark自带的模式 spark on yarn:利用hadoop yarn来做集群的资源管理 local模式:主要在测试的时候使用, 这 ...