labview类编程

1.父类的功能是通用功能,所有子类都含有父类的功能,重写会自动执行一次父类的功能。

2.每个子类都用了父类的注册vi,所以在调用的时候,出来的就是子类注册的vi,也就是window.vi

3.假如要设计一个父类的vi,首先是保存和读取,要能保存所有继承父类的子类。

20190705

管理类:实体类队列,参数类数组

参数类数组用于类型判断,实体类队列用于全局应用

实体类:参数类队列

参数类:设置簇

动态方法不允许动态调用,例如window需要重用,而且需要异步不阻碍其他线程

假如需要动态异步调用,则需要新增一个静态方法,这个静态方法去

调用动态方法

3.退出用用户注册的方法有时候无法退出,

用时间超时去读取父类队列的状态,判断父类是否销毁,

假如已经销毁则退出。

2019年8月30日10:13:29

1.VI设置为不可重入,然后设置为异步,可以正常插入子VI

2.window统一用队列状态退出为好

2020年2月26日09:36:36

1.继承windowclass是为了有窗口功能,包含para队列是为了将参数变为全局

2.保存用write

3.manager是一个总览页面

4.如果用window里面的setting作为参数基类来继承和自己写一个参数基类继承是一样功效的

因为windowclass建议少改,所以自己写一个参数基类来满足对应的功能会更好

5.manager中因为要输入路径 而父类create中是没有输入路径的接线端,所以要另外写一个

create

2020年2月27日11:57:11

1.xcotrol 判断状态是否更新,是用于更新寄存器的值

2020年3月3日15:23:43

1.manager类

包含所有设备类的para数组和所有设备类的队列

此处的param是基类的para

此处的queue是基类的queue

不能是子类的,这样会导致基类的参数不完善,也无法解释子类

(基类的意思是设备类,不是串口或者网口类)

para数组用于存储读取出来的para

para类用于存储para

在createmanager的时候读取para数组

在add device的时候,校验参数并赋值给设备类

manager不能直接用create,是因为路径需要开放输入端,父类-window类的create不包含路径的输入端

2.wnd方法里面要register一下vi,并且不能调用父类windows的wnd

2020年3月23日14:35:07

1.C继承B,B继承A,当参数是以A的方式保存下来,则读取的时候必须用A的成员函数来读取,而用B的成员函数读取会发生错误。

2.当出现保存project错误,说VI不在某个库,直接拖曳进去就行

3.全局用来缓存UnitManager,通过名称来获取对应的信号,来触发执行loop中的执行体

4.或者用通知器:比较正规,用名称来索引全局中的UnitManager

2020年3月25日15:34:54

1.在一个流程里面,同一时间只能执行一次。

2.表格要反映出之前的信号来源

增加start模块

增加end模块

来管控只执行一次的流程

必须全部短连接

1)长连接的另外处理

数据库

PLC

用子模块类索引

2)心跳类的另外处理

暂不处理

3)是否创建副本->不创建副本的话用哪个单元类,只限于用哪个单元类的连接参数

而不用功能参数->可用全局索引

2020年3月27日13:58:28

1.新建一个输出参数类。

2.单元类要给输出类配一个解释VI,该解释VI用于将输出类解释成另外的单元类能接受的类型

比如说OCV单元类的输出类包含电压,电流,而SQL单元类需要的格式是字符串数组,那么需要新建一个解释VI,用于将电压和电流解释成字符串数组。

这样可以保证单元类的输出是独立的,可以是任何类型。

通过解释VI中转来适应给到哪个单元类。

3.设置页面需要做成可以关闭的。设置完就不会在后台运行

4.触发有两种方式:

1)所有单元类循环不断读取输入触发源来执行功能,目前存在内存,CPU和界面设置不友好等问题。

2)所有单元类内部不做读取触发源的循环,谁触发谁执行通过一个统筹的应用程序类来管控,比如通过一个FOR循环按照顺序执行功能,目前存在一个问题是,无法解决并行的逻辑运算。

5.界面用图形的方式,通过拖曳的方式显示在画板上,在设置了输入输出后,生成箭头。

6.平台类单独写另外的单元类,而不用原有的类。

7.不停的出入队列对内存有影响,可以改为预览队列

相关推荐
AlfredZhao1 小时前
OCI 明明分配了 200G 系统盘,为什么 df 只看到 30G?
linux·oci
AlfredZhao16 小时前
vi 删除指定范围的行,不用再反复按 dd
linux·vi
用户9718356334661 天前
银河麒麟 KY10 申威(SW64) 安装 nginx-1.16.1-2.p01.ky10.sw_64.rpm 详细步骤
linux
猪脚踏浪1 天前
linux 拷贝文件或目录到指定的位置
linux
大树882 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠2 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质2 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
bush42 天前
嵌入式linux学习记录十四、术语
linux·嵌入式
载数而行5202 天前
Linux 11 动态监控指令top
linux
Inhand陈工2 天前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信