前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >工业物联网驱动简介

工业物联网驱动简介

原创
作者头像
iioter
发布2022-06-05 22:24:21
3000
发布2022-06-05 22:24:21
举报
文章被收录于专栏:用户8386678的专栏

关于驱动

驱动是对传统的数据采集程序的标准化,驱动可以作为你的资产进行管理

  • 系统为每个设备创建一个驱动实例
  • 通过反射创建驱动实例
  • 驱动不可以静态
  • 驱动要继承IDriver接口
  • 驱动内需要通过web配置的属性(支持枚举等基本类型),上要加上Attribute[ConfigParameter("端口号")] public int Port { get; set; } = 666;
  • 系统通过反射为属性赋值
  • 若设备设置为启动,则进行连接读取的工作
  • 可以在驱动内,使用任何C#语法,记得在关闭和释放后释放你创建的资源,尤其是后台线程

驱动生命周期

  1. 构造 [DriverInfoAttribute("YourDriver", "V1.0.0", "Copyright iotgateway© 2022-06-04")] public class YourDriverClass : IDriver{ }
  2. 连接 public bool Connect(){ }
  3. 读取 [Method("方法中文名", description: "方法描述")] public DriverReturnValueModel Read(DriverAddressIoArgModel ioarg){ } public class DriverAddressIoArgModel { public string Address { get; set; } public DataTypeEnum ValueType { get; set; } } public class DriverReturnValueModel { public object Value { get; set; } [JsonConverter(typeof(StringEnumConverter))] public VaribaleStatusTypeEnum StatusType { get; set; } = VaribaleStatusTypeEnum.UnKnow; }
说明

你可以有多个读取数据的方法,只要加上MethodAttribute即可识别 DriverAddressIoArgModel.Address是通过前端传入的地址,你可以发挥想象(如使用逗号分隔符)传入更过的内容 DriverAddressIoArgModel.ValueType是通过前端传入的数据类型,你可以选择是否使用它 DriverReturnValueModel.Valueobject类型,你可以传出任何类型,或者与DriverAddressIoArgModel.ValueType呼应起来

  1. 断开public bool Close(){ }
  2. 释放public void Dispose(){ }

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 关于驱动​
  • 驱动生命周期​
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档