分享PLC数据记录和数据打印处理
整体构思:
软件严格分为“数据采集记录”和“数据打印”两部分,数据采集记录随工作流程记录发生的各种时间需要打印报表或者图形的数据,数据打印版本是待程序运行结束需要打印时集中打印处理程序。
数据采集记录:
首先定义一个数据结构,结构中包括表头,数据行,图形区,表尾几个部分,其中数据行和图形区安装几句容量的要求定义成结构数组,表头记录运行各要素,表尾记录运行的评价结果。
然后定义一个数据块,把上面定义的表结构作为成员,当你需要不止一个记录区的时候,多定义几个很方便灵活,当然这些东西需要定义成掉电保持的,这样及时用户系统掉电或者重启,没有覆盖之前所以的记录都是可以被打印的。
数据打印:
按照自己习惯选用微打,485还是232接口的自便,我一般选用232接口的,原因是方便用RTS-CTS硬件握手,检查打印机状态比如是否在线,是否缺纸,时候忙或者是故障。当然用485接口使用XON-XOFF也是一样的,软件处理起来比232麻烦一点。
数据打印拆分成文本行函数来完成,一般打印机都是收到回车换行才打印的,所以文本行专门做成一个函数使用及其方便。
在文本行打印行数中,可以检测各种打印机状态,打印机异常时候返回一个错误代码,本次行打印打印完成时返还一个TRUE标志,这样每次调用文本行打印就像执行普通指令一样方便,当前文本行打印完成后在看系统打印是否完成确定是周而复始还是结束。
图形区按照记录数据,直接在空闲内存区域生成微打支持的曲线或者图形打印代码,送打印机打印就可以了。
大家有更好的处理打印问题的方法,贴上来一起交流学习吧。