写点什么

称重驱动二次开发教程

作者:EquatorCoco
  • 2023-12-25
    福建
  • 本文字数:1334 字

    阅读完需:约 4 分钟

通过二次开发可以扩展新的设备型号,以插件的方式快速集成到系统。下面几个步骤快速实现一个简单的电子秤驱动。


预备动作,先了解一下系统介绍,文章最下面有下载链接。


称重系统免费下载,支持耀华、顶尖等多款设备型号


使用插件式开发称重仪表驱动,RS232串口对接各类地磅秤数据实现ERP管理


1、新建一个控制台工程(.Net 4.6 版本及以上)



2、添加引用 DDS.IOT.Weight.exe


文件在安装目录中获取




3、新建一个测试电子秤类


继承 DDS.IOT.Weight.WeightBase,并实现虚方法。



利用后台任务实现一个模拟电子秤,定时 2 秒输出一个随机重量。



完整代码


using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading;using System.Threading.Tasks;
namespace Demo{ public class TestWeight : DDS.IOT.Weight.WeightBase { /// <summary> /// 驱动类型,使用英文字符,保证唯一 /// </summary> public override string Type => "MyTestWeight"; /// <summary> /// 驱动名称 /// </summary> public override string Name => "我的测试秤"; /// <summary> /// 读取到重量事件 /// </summary> public override event ReadedWeight OnReadWeight; /// <summary> /// 初始化接口 /// </summary> /// <param name="port"></param> /// <param name="baudRate"></param> /// <param name="extendData"></param> /// <returns></returns> public override bool Init(int port, int baudRate = 9600, string extendData = null) { this.Port = port; // 再次实现打开串口等操作,下面是一段模拟定时输出随机重量的代码 Task.Run(() => { while (true) { if (OnReadWeight != null) { Weight = float.Parse((new Random().NextDouble() * 100).ToString("N1")); OnReadWeight(this.Id, Weight); } Thread.Sleep(2000); } }); return true; }
public override bool Open() { // 在此实现关闭串口 return true; } public override bool Close() { // 在此实现关闭串口方法 return true; } }}
复制代码


4、本机测试一下




5、集成到系统


a.拷贝编译后 exe 文件



b.粘贴到系统目录下 Plugins/Weight



c.启动系统



d.检查系统是否识别到新的驱动



e.设置后测试是否接收到重量



Ok,经过上面几个步骤一个简单的模拟秤就开发完成了,真实驱动开发时把模拟部分逻辑改成接收串口数据即可。

 

示例代码下载:https://files.cnblogs.com/files/yizhuqing/Demo1.zip?t=1703234473&download=true


文章转载自:木子清

原文链接:https://www.cnblogs.com/yizhuqing/p/17921902.html

体验地址:http://www.jnpfsoft.com/?from=001

用户头像

EquatorCoco

关注

还未添加个人签名 2023-06-19 加入

还未添加个人简介

评论

发布
暂无评论
称重驱动二次开发教程_技术_EquatorCoco_InfoQ写作社区