技术论坛

分享PLC数据记录和数据打印处理

作者 主题
侠士

经验值: 1315
发帖数: 238
精华帖: 0
主题:【分享】分享PLC数据记录和数据打印处理
推荐帖


只看楼主 楼主 2021-09-01 11:36:39

分享PLC数据记录和数据打印处理

 

整体构思:

软件严格分为“数据采集记录”和“数据打印”两部分,数据采集记录随工作流程记录发生的各种时间需要打印报表或者图形的数据,数据打印版本是待程序运行结束需要打印时集中打印处理程序。

 

数据采集记录:

首先定义一个数据结构,结构中包括表头,数据行,图形区,表尾几个部分,其中数据行和图形区安装几句容量的要求定义成结构数组,表头记录运行各要素,表尾记录运行的评价结果。

然后定义一个数据块,把上面定义的表结构作为成员,当你需要不止一个记录区的时候,多定义几个很方便灵活,当然这些东西需要定义成掉电保持的,这样及时用户系统掉电或者重启,没有覆盖之前所以的记录都是可以被打印的。

 

数据打印:

按照自己习惯选用微打,485还是232接口的自便,我一般选用232接口的,原因是方便用RTS-CTS硬件握手,检查打印机状态比如是否在线,是否缺纸,时候忙或者是故障。当然用485接口使用XON-XOFF也是一样的,软件处理起来比232麻烦一点。

数据打印拆分成文本行函数来完成,一般打印机都是收到回车换行才打印的,所以文本行专门做成一个函数使用及其方便。

在文本行打印行数中,可以检测各种打印机状态,打印机异常时候返回一个错误代码,本次行打印打印完成时返还一个TRUE标志,这样每次调用文本行打印就像执行普通指令一样方便,当前文本行打印完成后在看系统打印是否完成确定是周而复始还是结束。

 
图形区按照记录数据,直接在空闲内存区域生成微打支持的曲线或者图形打印代码,送打印机打印就可以了。


大家有更好的处理打印问题的方法,贴上来一起交流学习吧。



 
以下网友喜欢您的帖子:

  
重要声明:

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1713479&b_id=50&s_id=0&num=23

侠士

经验值: 1307
发帖数: 91
精华帖: 0
回复:分享PLC数据记录和数据打印处理


只看楼主 1楼 2021-09-01 13:17:25

灌水,赞一个


 
以下网友喜欢您的帖子:

  
版主

经验值: 69053
发帖数: 12266
精华帖: 59
回复:分享PLC数据记录和数据打印处理


只看楼主 2楼 2021-09-01 14:53:57

呃,实现了吗?


Q群:https://jq.qq.com/?k=9BDuEgf6
以下网友喜欢您的帖子:

  
侠士

经验值: 1315
发帖数: 238
精华帖: 0
回复:分享PLC数据记录和数据打印处理


只看楼主 楼主 3楼 2021-09-01 15:04:26
以下是引用RENHQ在2021-09-01 14:53:57的发言 >2楼

呃,实现了吗?

前几天随项目交付了,因为1214C PLC掉电保护RAM太小,目前只能保存2个全运行周期,每周期最大24小时,运行状态不变时记录周期2分钟,状态切换是随时记录。


 
以下网友喜欢您的帖子:

  
侠士

经验值: 1315
发帖数: 238
精华帖: 0
回复:分享PLC数据记录和数据打印处理


只看楼主 楼主 4楼 2021-09-03 13:56:11

模拟打印了一个样张,所有的行程指示表格都没意义,仅仅是测试样张。




 
以下网友喜欢您的帖子:

  
侠圣

经验值: 2300
发帖数: 442
精华帖: 1
回复:分享PLC数据记录和数据打印处理


只看楼主 5楼 2021-09-22 15:08:51

很有想法的实现


co771@qq.com,好难
以下网友喜欢您的帖子:

  
游民

经验值: 61
发帖数: 1
精华帖: 0
回复:分享PLC数据记录和数据打印处理


只看楼主 6楼 2021-12-29 13:23:33

楼主能发下案例吗?我要在200smart上弄  找不到思路。


 
以下网友喜欢您的帖子:

  
侠士

经验值: 1315
发帖数: 238
精华帖: 0
回复:分享PLC数据记录和数据打印处理
推荐帖


只看楼主 楼主 7楼 2021-12-31 11:13:51
以下是引用陌上谦在2021-12-29 13:23:33的发言 >6楼

楼主能发下案例吗?我要在200smart上弄  找不到思路。

主楼实现方法已经描述的很清晰了,在S7-200 SMART上实现困难一些,梯形图描述复杂的数据结构有些麻烦。

针对这样的问题,帮别人开发过一块接口板,通过MODBUS串口协议去实现,这样在PLC上就没有什么工作量了,但这样的东西也尽适合批量的产品,接口板需要个性化改写一些东西不算灵活,欢迎交流。


 
以下网友喜欢您的帖子:

  
奇侠

经验值: 8295
发帖数: 641
精华帖: 0
回复:分享PLC数据记录和数据打印处理


只看楼主 8楼 2022-01-03 08:20:54


涨知识了,学习中


努力向上
以下网友喜欢您的帖子:

  
新手

经验值: 37
发帖数: 1
精华帖: 0
回复:分享PLC数据记录和数据打印处理


只看楼主 9楼 2022-02-18 11:31:20

楼主,可以分享一下程序吗,也可以加您,有偿



 
以下网友喜欢您的帖子:

  
侠士

经验值: 1315
发帖数: 238
精华帖: 0
回复:分享PLC数据记录和数据打印处理


只看楼主 楼主 10楼 2022-02-20 15:32:24
以下是引用求学的菜鸟1在2022-02-18 11:31:20的发言 >9楼

楼主,可以分享一下程序吗,也可以加您,有偿


一楼的思路已经很清晰了,这个程序是给用户设计的商业程序一部分,不好提供,有问题可以一起讨论,谢谢。


http://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1711996&b_id=50&s_id=76&num=40#anch


 
以下网友喜欢您的帖子:

  
新手

经验值: 41
发帖数: 2
精华帖: 0
回复:分享PLC数据记录和数据打印处理


只看楼主 11楼 2022-04-01 10:34:34

楼主的打印接口数据块,没有接入到功能块里面,是怎么使用的?可以分享下吗


 
以下网友喜欢您的帖子:

  
至圣

经验值: 13021
发帖数: 1815
精华帖: 22
回复:分享PLC数据记录和数据打印处理


只看楼主 12楼 2022-04-01 12:29:17

微打有一种比较自由的方法是:打印的内容与出纸区行间距为0的最小分辨率的布尔量点阵矩阵区循环做或运算.



 
以下网友喜欢您的帖子:

  
侠士

经验值: 1315
发帖数: 238
精华帖: 0
回复:分享PLC数据记录和数据打印处理


只看楼主 楼主 13楼 2022-04-08 11:47:28
以下是引用holdkcsxyz在2022-04-01 12:29:17的发言 >12楼

微打有一种比较自由的方法是:打印的内容与出纸区行间距为0的最小分辨率的布尔量点阵矩阵区循环做或运算.


没看懂


你是不是说的是图形叠加?


一般来说,需要作图的话,还是使用打印机基本的图形打印命令更方便一些,我楼上的打印实例图形部分就是用这个来完成的。


 
以下网友喜欢您的帖子:

  
至圣

经验值: 13021
发帖数: 1815
精华帖: 22
回复:分享PLC数据记录和数据打印处理


只看楼主 14楼 2022-04-08 13:30:52
以下是引用一指禅_LYG在2022-04-08 11:47:28的发言 >13楼

没看懂


你是不是说的是图形叠加?


一般来说,需要作图的话,还是使用打印机基本的图形打印命令更方便一些,我楼上的打印实例图形部分就是用这个来完成的。

以下是引用holdkcsxyz在2022-04-01 12:29:17的发言 >12楼:微打有一种比较自由...

引用12楼详细内容:

微打有一种比较自由的方法是:打印的内容与出纸区行间距为0的最小分辨率的布尔量点阵矩阵区循环做或运算.


嗯 这样也不错


 
以下网友喜欢您的帖子:

  
至圣

经验值: 26316
发帖数: 5838
精华帖: 5
回复:分享PLC数据记录和数据打印处理


只看楼主 15楼 2022-04-09 08:08:01

得看看,学习学习,用用看。


天天学习,天天进步.
以下网友喜欢您的帖子:

  
至圣

经验值: 15085
发帖数: 2860
精华帖: 0
回复:分享PLC数据记录和数据打印处理


只看楼主 16楼 2022-04-11 08:25:40

感谢楼主分享。。。。。。。。。。


 
以下网友喜欢您的帖子:

  
奇侠

经验值: 5097
发帖数: 367
精华帖: 0
回复:分享PLC数据记录和数据打印处理


只看楼主 17楼 2022-04-11 19:07:24

敢想敢做,强



 
以下网友喜欢您的帖子:

  
侠士

经验值: 1097
发帖数: 125
精华帖: 1
回复:分享PLC数据记录和数据打印处理


只看楼主 18楼 2022-08-24 06:23:06
以下是引用一指禅_LYG在2021-09-01 11:36:39的发言 >楼主

分享PLC数据记录和数据打印处理

 

整体构思:

软件严格分为“数据采集记录”和“数据打印”两部分,数据采集记录随工作流程记录发生的各种时间需要打印报表或者图形的数据,数据打印版本是待程序运行结束需要打印时集中打印处理程序。

 

数据采集记录:

首先定义一个数据结构,结构中包括表头,数据行,图形区,表尾几个部分,其中数据行和图形区安装几句容量的要求定义成结构数组,表头记录运行各要素,表尾记录运行的评价结果。

然后定义一个数据块,把上面定义的表结构作为成员,当你需要不止一个记录区的时候,多定义几个很方便灵活,当然这些东西需要定义成掉电保持的,这样及时用户系统掉电或者重启,没有覆盖之前所以的记录都是可以被打印的。

 

数据打印:

按照自己习惯选用微打,485还是232接口的自便,我一般选用232接口的,原因是方便用RTS-CTS硬件握手,检查打印机状态比如是否在线,是否缺纸,时候忙或者是故障。当然用485接口使用XON-XOFF也是一样的,软件处理起来比232麻烦一点。

数据打印拆分成文本行函数来完成,一般打印机都是收到回车换行才打印的,所以文本行专门做成一个函数使用及其方便。

在文本行打印行数中,可以检测各种打印机状态,打印机异常时候返回一个错误代码,本次行打印打印完成时返还一个TRUE标志,这样每次调用文本行打印就像执行普通指令一样方便,当前文本行打印完成后在看系统打印是否完成确定是周而复始还是结束。

 
图形区按照记录数据,直接在空闲内存区域生成微打支持的曲线或者图形打印代码,送打印机打印就可以了。


大家有更好的处理打印问题的方法,贴上来一起交流学习吧。


您这个是必须流程全部结束后再一次性打印的吧?不是那种产生数据即时打印?谢谢


 
以下网友喜欢您的帖子:

  
侠士

经验值: 1801
发帖数: 338
精华帖: 0
回复:分享PLC数据记录和数据打印处理


只看楼主 19楼 2022-08-24 09:10:55


不错不错!!!!!


 
以下网友喜欢您的帖子:

  
收起
分享PLC数据记录和数据打印处理
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。