打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
CM1241-RS232与标签打印机的通信案例---

踏入工作有十几个年头了,说实话摸爬滚打中了解一些工控的知识,也算是在蹉跎岁月的同时找到一个混口饭吃的手艺。毕竟大多数的工控人都是应用阶段,无非是上位机的种类,PLC的品牌不同,但是基本停留于应用层,给本手册研究半天,凭多年的经验总能折腾出个三五二。

我一直在使用ABplc,对于其他的控制器可以说用的很少,早期还折腾过台达,西门子200这些后来基本没有涉及过了。凑巧,受人之托要求使用S7-1200完成一套溶液配置的小项目,让我有幸和西门子来了一次亲密接触。话不多说看项目说话。

如上图,两种溶液按照一定的比例混合,并循环搅拌一定时间,只是涉及几个阀门和泵按照顺序动作而已还算简单,最后要求在混合完成后,通过标签打印机打印溶液的浓度,PH值等信息。写到这忍不住想吐槽一下第一次使用西门子,被FB,FC折磨的够够的,对于定时器的使用更是恨的牙痒痒。这个单独在开篇说说自己第一次使用的经历。

   打印标签使用的是一个串口通信的打印机,使用西门子CM1241-RS232模块,打印机兼容ESC打印指令具体如下:

                         

CM1241和打印机串口接线为交叉线,如下图:

硬件连接完毕,接下来是软件的使用情况。

首先按照打印机的通信要求设置CM1241串口的波特率,数据位,停止位以及校验,如下图:

至于其他的组态传送消息和接收消息的设定,如果不是复杂的消息,采用默认即可。采用这里的组态方式那么在程序里面就无需在利用port_Configure,send_config以及recive_Config这些指令,除非你想把这些设置放在触摸屏上变成一种可以更改的参数。

发送消息指令:

其实发送消息指令就是Buffer中的数据在request=1时,按照指定的length通过port发送出去。同时返回发送完成,是否错误等状态。其实到这打印机设置和打印的过程就算结束了。是不是太简单了,不错,本来打印标签调用串口指令这些并不难,难的是如何配置标签的内容。

标签打印机结束的指令和字符均为16进制,数字以及字母都是ASCII字符的形式,汉字则是按照GB2312编码编制的416进制数字。例如 “浓”的编码为C5 A8  “B6 C8.如果要打印“浓度”则需要发送”C5 A8 B6 C8”至打印机。

假设我们要打印的标签格式如下图:

                     混合液

品名:酸性   PH值:10.5

浓度:25%

操作员:

日期:2019-09-26  18:31:25

其中酸性,10.5252019-09-26 18:31:25这些参数都是变动的,因此我们需要先建立一套没有参数的模板,然后将变动参数传送入对应的位置即可。

标签模板如下图:

框中数据为需要传送的数据位置,在新的溶液配置完成时,将数据送入这个位置即可:如下

如此以来就可以得到自己需要的标签了。希望这些简单的说明,能够为大家提供一些思路,当然了现在还在使用串口打印的已经不多了,基本都是MES系统或者上位机辅助,但是仍然希望能够给一些困惑的同学带来些启迪。。

注释:打印机指令:OD 换行,OA打印并换行

以上内容作者:柳红岩

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
S7-200PLC与PC自由口通讯的多种实现方法,应用案例,工控商务网
弱电入门知识常见通讯协议入门
uart,RS232,RS485串口接口有哪些区别,使用该注意哪些?
串口通信的原理,IO口模拟UART串口通信
基于短消息模式的学生校讯通信息管理系统
[接口总线]基于RS485总线的PC机与多单片机系统的串行通信(转) -- 程序之巢200...
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服