利用西门子S7-200自由通讯接口实现与条码扫描枪的通讯
2011-07-03朱晓民李文娟
许 静,朱晓民,程 金,李文娟,张 希
(北京机械工业自动化研究所,北京 100120)
0 引言
小型可编程控制器,一般结构小巧、多功能、价格低廉,本身集成CPU、I/O点、电源并且还提供了简洁、开放的通讯功能。性价比、通讯和实时性等方面的优点,使它成为制定较复杂自动化系统解决方案的理想之选。本文介绍的系统应用在奇瑞汽车厂缸盖装配线线上扫描条码识别机型。
1 系统功能
系统要求根据条码录用数据判断出产品装配工件的型号,从而执行该型号工件装配的相应程序段。条码信息可在人机界面上直接显示,使操作者一目了然。并且可以翻阅查看历史工件的相关信息。
2 系统配置
控制单元采用西门子的CPU226。CPU226集成两个串口,port0端口作为连接人机界面和CPU的接口,另一端口port1用于连接条码扫描枪,集成的I/O点用于控制装配的执行机构。由于条码扫描枪为232接口,而自由通讯口为485口,所以还需一个232-485转换模块,系统中选用了一根西门子编程电缆线。但是一般串口扫描仪大多用于与计算机相连,线的插头通常为孔状,而可编的接口也为孔状,因此需用一根两头针状的交叉式连接转接线(2,3交叉,5直通)否者通讯出现错误。
3 自由通讯接口介绍
S7-226有两个接口port0口,port1口,它们可以是PPI接口,也可以是自由通讯接口。可以通过程序来自由设定它们的通讯形式。
3.1 可利用的用于通讯的殊寄存器
1)控制字寄存器SM130: port1口的通讯模式协议通过SMB130设置,SMB130各位的含义如下图所示。本系统中设置SMB130为00001001即自由口协议,波特率为9600,数据长度8位,无校验。
图1 寄存器SM130
2)通讯接收字符缓冲器SMB2:SMB2是一个暂态寄存器,用于存放在自由通讯方式下接收到的当前字符,在下一步应从这里取走其中内容,通过编程控制将接收到的字符一个一个由SMB2移入接收缓存区。
3)通讯校验结果标志位SM3.0:PLC按SM130规定的奇偶校验方式对所接收到的数据作校验。如果校验有错,PLC自动将SM3.0置1,SM3.0表示奇偶校验正确。根据这个标志,决定对当前信息的取舍,在出错的情况下,将此错误位发给条码,请求重发。
4)工作方式标志位SM0.7:S7-200系列PLC只有处于运行(RUN)方式时才能进行自由口模式通讯,而在停止(STOP)方式时只能已PPI模式通讯。当PLC处于RUN方式是SM0.7=1,否则SM0.7=0,通过SM0.7的状态来确认自由口通讯的状态。
3.2 通讯中断方式实现接收数据
S7-200PLC的通讯port0口具有三个中断事件:接收字符8号中断,发送结束9号中断,接收信息23号中断。在用户程序中可用ENI指令开放全局中断,用DISI指令禁止所有中断;在全局中断开放的前提下,单个中断可用ATCH、DTCH指令独立的开放和禁止。通讯port1口具有24,25,26号三个中断事件。本系统中调用24号中断接收字符,程序如图2所示。
4 软件设计
1)SM0.1第一扫描周期接通,给port1口初始化。SMB130:00001001即波特率为9600,自由口协议。系统中SMB187=11110000。
3)SMB188=‘b’检测条码扫描枪的开始码为‘b’后开始记录数据。条码枪设置开始识别符为“b”。
4)SMB189=‘e’检测条码扫描枪结束符为‘e’为信息字符的结束。条码枪设置结束识别符为“e”。
5)SMB190为检测空闲时间5ms。在空闲时间结束后接收的新的字符为新信息的开始。
图3 接口定义
6)SMB194为接收字符的最大数。
7)接收完成事件连接到中断。
8)允许用户中断。
9)端口1的接收信箱缓冲区指向VB200。
在中断程序中调用9)语句,执行中断时,即将条码输送到VB200开始的寄存器中。
在人机界面上定义一个字符形式输出域,域变量为VB200,20个字符显示。那么每当扫描一次条码后人机界面上就可显示本次条码的值,方便、清晰。
本例中还可查询上一次录用的值。指令如图4所示。
图4 指令
当Q0.1的下降延到达时把本次的条码由VB200寄存器区存储到VB300开始的寄存器区,在此之前把VB300寄存器区的内容已传给VB400寄存器区存储。VB300为本次数据,而VB400为上一次数据。简单的做了一个数据存储。
那么在人机界面上定义两个字符形式输出域,域变量分别为VB300和VB400,即可查阅到本次条码和上次条码。同理还做多一些数据的存储。
5 结论
本文介绍了利用SIEMENS S7-226 PLC集成的自由通讯接口与条码扫描枪通讯的实例,阐述了自由接口通讯的相关知识。系统在奇瑞汽车厂缸盖装配线上运行多年,PLC与条码扫描枪间通讯安全可靠。整个系统成本低廉,体现了小型可编的优越性,为低成本实现通讯提供了一种解决方法。