授人以鱼不如授人以渔,最快让你搭建运动控制软件框架 您所在的位置:网站首页 上位机框架 授人以鱼不如授人以渔,最快让你搭建运动控制软件框架

授人以鱼不如授人以渔,最快让你搭建运动控制软件框架

2024-07-12 18:12| 来源: 网络整理| 查看: 265

关于自定义指令特做编辑软下: 1.不论是特定义指令或是某种结构做逻辑等等,无非都是字典加上Switch,简单明了,根本用不着啥高级代码(撇开序列化) 2.将文本或是某种流程图等方式加载到字典里,通过线程Switch执行字典KEY去调用对应函数方法即可,啥流程都简单,不要复杂化! 3.如果只是简单的做项目,通用化,就不要搞的太复杂,如何让团队及新人最快接受熟悉使用的才是最好的,一人会不如人人会! 第一次发帖,先简单分享下个人运动控制框架思路,逐渐会上干货,先分享框架内部分功能实现,框架源码待后续更改后在上!

一 运控框架思路 1:启动-暂停-继续-急停-复位-启动。。。 以上思路就得多线程考虑周全,当然就这思路网上一搜一大把,主要是AutoResetEvent和ManualResetEvent 我使用的是ManualResetEvent,无非就是Set,Rest,WaitOne,其中逻辑自己根据所需嵌套判断即可,最重要的就是这里,这里逻辑嵌套做好封装即可;假如有:复位线程,报警线程,运行线程 private static ManualResetEvent _Rst = new ManualResetEvent(false); private static ManualResetEvent _Err = new ManualResetEvent(false); private static ManualResetEvent _Run = new ManualResetEvent(false); 2:异常报警响应处理。。。 单独使用线程实时判断,使用方法判断等响应给运行(事件委托,全局变量。。。)

3:数据处理存储发送。。。 数据单独线程处理 ⑴.数据处理:首先是变量定义(int,double,string等)多采用全局变量常量及局部变量常量等 ⑵.数据存储:常见就是TXT,EXcel,CSV等格式

4:串口,网口等通讯。。。 这个网上多如牛毛,封装方法,运行线程可随意调用即可

5:第三方硬件的开发 运动控制卡,激光,打印机等等,这些都是第三方提供的动态链接库,都有相关的使用Demo,根据所需功能,按照自己的方式添加即可,当然有很多种方法,比如适合多种类的开发使用有继承之类的

6:配置文件 常见的有ini,xml,txt格式

7:项目流程的开发与编辑 至于流程编辑就是逻辑思路了,至于语言因个人喜好C#或VB,实现用:TXT,Excel,脚本,拖拽控件,加自定义指令等

我使用的是:Scintilla开源脚本编辑器+自定义指令,可添加编辑多流程,不限制,支持监控,暂停,多种模式(逐行,断点,循环)等 如图:第1行到第3行为一个判断嵌套【IF-ENDIF】解释为---如果存储区(类似PLC寄存器D)“数字变量var1023”等于1的话,把存储区(类似PLC寄存器D)“字符串变量str0"赋值为字符串“可复位”

在这里插入图片描述 在这里插入图片描述 最新增加C#脚本,可增加断点调试,多线程,引用后可随意调用各函数功能,逐步完善中! 在这里插入图片描述 暂且这样,个人水平有限,表达不够清楚的欢迎大家点评,我会抽空逐一答复,大家如果有什么需要或是其他帮助都可以在此相互交流!



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有