S7-200-PLC的自由口通信工程应用

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

笫1章S7-200PLC的自由口通信工程应用本章由浅到深循序渐进地例举了S7-200PLC自由口通信的三个工程应用实例。分别从任务描述、任务剖析、解决方案、实施步骤和常见故障及排故方法这五个方面进行了描述。第一个实例“智能立体车库系统中IC卡的应用”讲述了S7-200PLC的自由口通信的只读功能实现方法,第二个实例“RFID在AGV(AutomatedGuidedVehicle)中的应用”讲述了S7-200PLC的自由口通信的读写功能实现方法,第三个实例“S7-200PLC在无线通信上的应用”讲述了S7-200PLC的自由口通过自定义通信协议实现一对多的无线通信功能。1.1智能立体车库系统中IC卡的应用1.1.1任务描述智能立体车库系统要求采用刷卡方式完成车辆自动出入立体车库。当司机刷卡并设定密码后,卡信息与车辆进行绑定,车辆将自动进入车库相应的车位,当司机想取出车辆时,司机只需刷卡并通过密码验证,系统将自动从车库中寻找该卡对应的车辆并将车取出到车库。其中控制车辆进出的控制器采用西门子S7-200系列CPU226型可编程控制器来实现。1.1.2任务剖析智能立体车库要求采用刷卡方式作为车辆出入立体车库的凭证,这就要求控制系统能读出卡上的信息,利用卡的信息作为身份识别把卡和车辆绑定起来。选用在弱电系统中作为门禁或停车场系统使用者身份识别的ID卡就能满足要求。ID卡全称为身份识别卡(IdentificationCard),是一种只读的感应卡,每张ID卡有一个全球唯一的芯片编码。它靠读卡器设备感应供电并读出存储在芯片EEPROM中的唯一卡号,该卡号在封卡前一次写入,封卡后不能更改,该ID卡完全能满足车辆身份识别的要求。同时S7-200PLC的自由口通信能实现通过读卡器设备读出卡上信息从而完成车辆身份识别的功能。1.1.3解决方案该任务实现的关键是要求S7-200PLC能读出ID卡的信息,考虑到大多数的ID读卡器设备提供了与电脑直接通信的RS232通信方式,而S7-200CPU的通信口电气上是标准的RS-485半双工串行通信口,因此硬件上需要通过RS-232到RS485转换器把ID读卡器设备连接到S7-200CPU的通信口上,由于PC/PPI电缆本质上就是RS-232到RS485的转换,所以也可以通过PC/PPI电缆把ID读卡器设备连接到S7-200CPU的通信口上。软件上则需要通过编程把S7-200CPU通信口缺省的PPI通信设置成自由口通信,通过对S7-200PLC进行自由口通信来读取ID卡号。1.1.4实施步骤1、了解所选读卡器和ID卡的技术参数本实例中选用的读卡器为纽贝尔CHD603B,通信方式为RS232,USB口供电。工作环境:温度-10~50℃、相对湿度5~95%。电压:额定值12V/范围值12V-18V;电流:静态30mA-40mA/动态60mA-70mA。通信速率:9600BPS。8个数据位,无校验位。ID卡上能读出的信息为19位字符。如下图所示。2、连接读卡器设备和S7-200PLC因为纽贝尔CHD603B读卡器通信方式为RS232,而S7-200CPU的通信端口是RS485接口,所以需要通过RS-232转RS485接口转换器或S7-200PLC的编程电缆PC/PPI电缆把读卡器设备连接到S7-200CPU的通信端口Port0上,同时通过USB接头外接12V电源给读写器设备供电。3、对S7-200PLC的通信端口进行自由口通信编程1)设置自由口控制寄存器SMB30(口0)或SMB130(口1)自由口控制寄存器各位的定义如下:本实例中读卡器设备连接到S7-200CPU的通信端口Port0上,通信速率:9600BPS,8个数据位,无校验位。对照上表应设置控制字SMB30,相应各位的设置如下:70ppDbbbmm00001001pp=00不校验d=08位/字符bbb=0109600波特mm=01自由口协议由此可见SMB30应该设置为9。2)设置接收信息控制寄存器SMB87接收信息控制寄存器各位的定义如下:本实例中允许接收信息,无信息起始位(即忽略SMB88),结束字符是ASCII码13(即使用SMB89并设置成“16#0D”),使用SMW90检测空闲状态,定时器使用内部字符定时器,忽略SMW92。对照上表设置控制字SMB87,相应各位的设置如下:70enscecilc/mTmrbk010110000忽略SMB88(即无信息起始位)定时器使用内部字符定时器忽略断点条件允许接收信息使用SMW90检测空闲状态使用SMB89作为结束信息忽略SMW92由此可见SMB87应该设置为16#D0。3)按照步骤2中的说明设置相关特殊内存寄存器SMB89设置成结束字符“16#0D”;SMW90设置成检测空闲时间5(即空闲时间超过5ms后收到的第一个字符是新信息的开始);SMB94设置成最大接收字符数20。4)用ENI指令启用所有中断5)用ATCH指令将接收信息完成中断(即事件号23)与中断处理程序相关联6)用RCV指令指定端口接收的信息存储在指定的数据缓冲区中7)在中断处理程序中把接收到的信息存到相应的内存单元中1.1.5常见故障及排故方法

1 / 6
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功