利用西门子S7-200自由通讯口实现与条码扫描枪的通讯
利用西门子S7-200自由通讯口实现与条码
扫描枪的通讯
利用西门子$7-200自由通讯口
实现与条码扫描枪的通讯
TheCommunicationBetweenS7.200FreeCommunicationPortandBarcodeScanner
l引言
S7—200系列PLC是西门子公司生
产的具有高性价比的小型可编程控制
器,由于它结构小巧,多功能,多用
途,价格低廉,在许多行业得到了广
泛的应用.S7,200系列可编的CPU单
元是集成CPU,I/O点,电源一体的控
制单元,有CPg212,CPU214,
CPU215~llCPU216.并且还提供了方
便,简洁,开放的通信功能,能使用
户很容易地进行组网,其通信和实时
性方面的优点,使它成为解决复杂自
动化方案的理想之选.
北京机械工业自动化所许静李文娟
XuJingLiWenjuan
摘要:本文详细介绍了西门子s7—200的自由通讯口,给出了其与条码扫描枪通信的编程实例.
关键词:S7-200可编程控制器通信自由通讯口条码扫描枪
Abstract:ThispaperintroducetheFreeCommunicationPortofSiemensS7-200.and
giveprogrammingexamplewithbarcodescanner.
Keywords:S7.200PLCCommunioationFreecommunicationportBarcodescanner
【中图分类号】TP273【文献标识码】B文章编号1606—5123(2011)09—0043—
02
2系统功能
根据条码录用数据判断出产品的 型号,从而执行该型号产品的相应程 序段.条码信息可在人机界面0P77上 直接显示出,使操作者一目了然,并 且通过0P77翻阅前面产品相关信息. 3系统配置
人机界面为0P77,控制单元采用 CPU226CPU226中的一个端口porti 作为连接0P77和CPU的接口,用一根 PPI电缆线简单连接即可,另一端口 port2用于连接条码扫描枪.由于条码 扫描枪为232接口,而自由通讯口为 485口,所以还需一个232—485转换模 块,本例中选用了一根西门子编程电 缆线.可是一般串口扫描仪大多用于 与计算机相连,所以线的插头为孔 状,而可编的断口也为孔状,因此必 需再做一根两头为针状的交叉式连接 的短接线(头2,3对接,5直连)连 在扫描仪和porto之间.
4自由通讯口
S7—216有两个端IZport1口,port2 口,它们可以是PPI口,也可以是自 《PLC&FA》43
————————1
由通讯口.可以通过程序来自由设定 它们的通讯形式.
4.1与自由口模式有关的特殊寄存 器及相关的位置(见附图)
溪蓬萋7;茬11奇柱验
11~300bps
110600bps
00038.400bps
o0PPll从机
1|保留
附图与自由口模式有关示意图 (1)控制字寄存器SM30.S7—
200PLC的通讯模式由SMB30设置, SMB30各位的含义如上图所示,当 mm=O1时PLC212作于自由口模式. (2)通信接受字符缓冲器SMB2. SMB2是一个暂态寄存器,用于存放在 自由通信方式下接受到的当前字符,用 户在下一步应从这里取走其中内容,通 过编程控制将接受到的字符一个一个由 SM/32移入接收缓存区.
(3)通讯校验结果标志位SM3.0. PLC按SM30规定的奇偶校验方式对所接 受到的数据作校验.如果校验有错, PLC自动将SM3.0置1,SM3.O
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
示奇偶 校验正确.根据这个标志,用户可决定 对当前信息的取舍,还可以在出错的情 况下,将次错误位发给对方,以便要求 它重发.
(4)工作方式标志位SM0.7. S7—200系列PLC只有处于运行
(RuN)方式时才能进行自由口模式 通信,而在停止(ST0P)方式时只 能以PPI模式通信.当PLC处于RuN 方式是sMO.7=1,否NsM3o.7=0,因 此可通过判断SM30.7的状态来打开或 关闭自由口通讯.
(5)发送器空标志SM4.5及收发 指令.S7,200PLC有专门的发送指 令:XMTTABLE,P0RT;TABLE
为发送数据的字节数即数据长度,最 大为225;PORT指定通讯口,自由口 模式下必须为0.当正发送数据信息 时,特殊存储器位SM4.5=0,当发送 完成后,SM4.5=1,因此可通过判断 44《PLC&FA》
r————一
SM4.5的状态来进行发送后处理,也 可直接用发送中断来处理.
4.2S7—200PLC的通讯中断
S7—200PLC的通信端口0具有三个 中断事件:接受字符8号中断,发送 结束9号中断,接受信息23号中断. 在用户程序中可用ENI指令开放全局 中断,用DISI指令禁止所有中断;在 全局中断开放的前提下,单个中断可 用ATCH,DTCH指令独立的开放和 禁止.另外CPU216的通信口1具有 24,25,26号三个中断事件.
5软件设计
(1)SMO.1第一扫描周期接通, 给port1口初始化.SMB30..00001001
即波特率为9600,自由口
协议
离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载
. (2)SMB187port1口接受信息状 态字节.
嫩藏
en:O=禁止接受信息功能.
l=允许接受信息功能.
Sc:0=忽略SM/388和SM188. 1=使用SMB189的值检测结束信息. Ec:0=忽略SMB89署口SM189. 1=使用SMB188的值检测起始信息. Il:0=忽略SMB90和SM190. 1=使用SMB190的值检测空闲状态. c/m:o=定时器是内部字符定时器. l=定时器是信息定时器.
T111r:0=忽略SMW92和
SMWl92.
1=当执行SMW92和SMW192时 终止接收.
SMB187=1l110000. (3)SMB188='b'检测条码扫描
枪的开始码为'b'后开始记录数据. (4)SMB189='e'检测条码扫描
枪结束符为'e'为信息字符的结束. (5)SMB190为检测空闲时间
5ms.在空闲时间结束后接受的新的 字符为新信息的开始.
(6)SMB194为接受字符的最大数.
(7)接受完成事件连接到中断. (8)允许用户中断.
(9)端口1的接受信箱缓冲区指 向VB200.
在中断程序中调用(9)语句,
执行中断时,即将条码输送NVB200 开始的寄存器中.
在0P77上定义一个字符形式输出 域,域变量为VB200,20个字符显示. 那么每当扫描一次条码后0P77上就可 显示本次条码的值,方便,清晰. 本例中还可查询上一次录用的 值.
当Q0.1的下降延到达时把本次的 条码由VB200寄存器区存储Nv~3oo 开始的寄存器区,在此之前把VB300 寄存器区的内容已传给VB400寄存器 区存储.VB300为本次数据,而
VB400为上一次数据.简单地做了一 个数据存储.
那么在0,P77上定义两个字符形式 输出域,域变量分别为VB300和 VB400,即可查阅到本次条码和上次 条码.同理还做多一些数据的存储. 6结束语
本文阐述了利用SIEMENSs7—226 PLC集成的串口与条码扫描枪通信的 编程实例.介绍了自由口通讯的相关 知识.本例中PLC与条码扫描枪间通
讯安全可靠,成本低廉,体现了小型 可编的优越性.
作者简介
许静现就职于北京机械工业自 动化所.
参考文献(略)