labview实时监控
2.对板卡扫描的周期
暂定1s对板卡扫描一次,本周期是可调的,但该周期要大于循环程序的时耗(大约500ms)。
3.一组数据的表示形式
一组数据共17个字节,第一个字节是字母k,表示该组数据是开关量信号。从第2个字节到第17个字节分别对应板卡的16路输入。每一个字节表示形式为低6位表示信号名称,这样可以有64种信号,足够该系统14种信号的使用了,并有一定的余量。第6为表示该信号的状态,“1”表示信号为高,“0”表示信号为低。
板卡采集到的数据全部存储在C:\Documents and Settings\All Users\Documents处。文件名为d+时间,无后缀名。数据可以分ASCII码和BCD码两种形式存储。
6.数据的串口发送
数据每30秒发送一次,数据量是537字节(BCD码是530字节)。由于串口向缓冲区写入需要一定的时间所以在写入时加上了500ms的延时,这样在读取时不会丢失数据。GPRS设备直接连接到串口上,这样从串口发送出去的数据直接就通过GPRS设备发送出去了。
提交的
程序及
说明
程序名称:
通过串口发送PCI数据
文件格式:
.rar
编辑时间:
2012年1月31日
提交时间:
2012年2月6日
程序概述:
[环境]
Labview8.6
[功能]
开关量数据采集及存储
[指标]
程序实现对PCI-1730U板卡的数据采集,并对采集到的数据进行存储。取出已存储的数据通过串口发送到PGRS设备上。
项目名称:
远程监控系统
项目代号:
V01
项目开始时间:
2011年11月16日
项目结束时间:
2012年2月6日
开发人员:
部门:
硬件开发
开发平台:
Labview8.6
调试工具:
Labview8.6
周任务:
1.利用PCI-1730U板卡采集开关量信号
2.将采集到的数据存储起来(以ASCII码和BCD码两种方式存储)
4.一帧数据的数据量
暂定每帧数据加入30组扫描数据(该组数是可调的),即每完成一帧数据要耗时30s。数据格式为#(BCD码是*)+时间+邮编+锅炉编号+30组数据+CRC+@(对应字节数为ASCII码1+15+6+2+510+2+1=537字节/BCD码1+8+6+2+510+2+1=530)。
5.数据的存储
3.将采集到的数据通过串口发送出去,利用GPRS设备。
任务完成状况:
已完成
本周开发中主要解决的问题:
1.建立输入输出模型
PCI-1730U板卡共16路开关量输入和16路开关量输出。建立16个开关对应16路输入,开关高亮对应有信号输入,反之无信号输入。建立16个指示灯对应16路输出,当有信号输出时指示灯高亮显示,反之为暗。
3.由按钮控制输出时需要先按下“按钮控制”按钮,完成后要恢复该按钮。
4.程序框图中双击“已用时间”控件可以更改每次扫描板卡的周期。
5.程序框图中下方有一个数值输入控件“组数”,该控件可以改变每帧数据包含多少组板卡数据。
6.界面下方的“通道配置”控件是更改信号类型的,暂时预留了15种信号,最多可以增加到64种。
附件:通过串口发送pci数据.rar
测试步骤:
用户界面
[方法]序开始采集数据。
2.在用户界面的右边有多个测试用控件。字符串显示控件“CRC-CCITT”和“CRC-CCITT2”是在对发送出去的数据加入CRC校验后,方便观察传输前后校验位的变化。文件存储路径控件“存储串口接收到的数据”选择串口接收到的数据的存储位置,这样可以方便观察串口接收到的数据。“按钮控制显示”控件是显示16路输出的状态的指示灯数组。该控件与“输出端口控制”相连,可以观察按钮控制时各路输出的信号状态。在程序框图中的串口写入和读取部分还添加了测试部分,写入部分对每次发出的数据进行了存储,路径是C:\Documents and Settings\All Users\Documents\新建文件夹\发出数据,读取部分对每次读取的30组数据进行了存储路径是C:\Documents and Settings\All Users\Documents\新建文件夹\多组数据,读取部分还对每次读取的单帧数据和全部数据都进行了存储路径分别是“C:\Documents and Settings\All Users\Documents\新建文件夹\一帧数据”和C:\Documents and Settings\All Users\Documents\2。以上各测试控件在项目正式完成后将全部去掉或者隐藏起来,只保留用户界面边框条内部的部分。
7.锅炉编号的输入控件最多可以写入65536个编号(0~65535)。
8.启动用户界面方法,双击builds\应用程序\中“应用程序.exe”。
[结果]
程序可以实现对PCI-1730U板卡的数据采集,并对采集到的数据进行存储。然后取出已存储的数据通过串口发送到PGRS设备上。
[评估]
未解决的问题:
协同请求