网站首页 > 技术教程 正文
西门子 SMART PLC 扫码串口通讯
西门子SMART PLC自集成485端口,另外可以外加一个信号板485/232串口通讯,扫码枪一般的都是232通讯,这时候你需要用485转232串口设备,扫码枪扫码到条码信息后通过232发送到PLC,PLC通过RCV接收报文,并在接收中断中接收后再次使能RCV接收
1. 先要设置通讯格式,集成的485用SMB30,信号板用SMB130设置,如下图设置成9,相当于是无奇偶校验,字符8位,波特率9600,自由端口模式,也可以用2进制写入2#1001
2.0 如下图,148相当于二进制的2#10010100,设置RCV使能,忽略SMB188,SMB189他们是字符开始结束
2.1 设置接收周期,超时时间,接收最大字符数
3.0 如下所示,集成485端口接收完成未23,这里把端口1接收完成后24触发中断程序绑定,ENI中断打开,RCV接收从VB600开始
4.0 中断程序,当收到SM86.2为1时代表字符间超时信息接收结束,这时候可以递加VB800,做接收计数,用VB1100擦干净接收的数据区域,然后把接收缓冲区VB600拷贝到VB840接收区中,这里还做了不清空,其实不用也可以
5.0 然后在中断中再次启动RCV接收就行了,PORT就是端口号,SMART的话要么0要么1,0就是集成端口,1就是信号板
另外要处理字符的话,可能会用到这几个指令
1.STR_FIND,寻找字符的指令,在VB900的第AC0位(AC0必须为1)开始寻找跟VB970相同的字符,如果没找到就把AV0为0,如果找到就显示把AC0编程那个位数
示例:
2. 改变字符串某一位的值,依次的注释如下,把&VB900在内存中的地址给到LD10,AC0(累加寄存器即32位暂存数据寄存器)为寻址到位数,把VD1600跟LD10的地址相加,比如AC0为5,减1得VD1600为4,那LD10是指向地址为VB904,而*LD10就是指向VB904这个地址在内存中的值,可以直接赋0到给*LD10,也就是给VB904赋0,LD10为临时双字存储区
猜你喜欢
- 2024-11-07 不懂485通讯?那高手的经典系列文章你一定要看!数据接收2/系列4
- 2024-11-07 技术大牛的经验好文!教你学懂RS-485,数据的接收2(系列4)
- 2024-11-07 S7-200smart 与超声波流量计之间的MODBUS通讯
- 2024-11-07 「玩转485」之数据的发送 485怎么传输数据
- 2024-11-07 PLC串口转网口的设备都有哪些? plc串口转网口的设备都有哪些
- 2024-11-07 写给初学者的博途教程(MODBUS-RTU通讯组态指令应用)
- 2024-11-07 RS-485总线扫盲贴!轻轻松松简简单单带你玩转RS-485
- 2024-11-07 灵活扩展-RS232串口I/O模块推荐 rs232串口接口定义
- 2024-11-07 「技术」清楚简单,一种串口触摸屏的开发流程和方法介绍
- 2024-11-07 西门子S7-200 SMART自由口通信参数如何设置?编写发送接收程序
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- sd分区 (65)
- raid5数据恢复 (81)
- 地址转换 (73)
- 手机存储卡根目录 (55)
- tcp端口 (74)
- project server (59)
- 双击ctrl (55)
- 鼠标 单击变双击 (67)
- debugview (59)
- 字符动画 (65)
- flushdns (57)
- ps复制快捷键 (57)
- 清除系统垃圾代码 (58)
- web服务器的架设 (67)
- 16进制转换 (69)
- xclient (55)
- ps源文件 (67)
- filezilla server (59)
- 句柄无效 (56)
- word页眉页脚设置 (59)
- ansys实例 (56)
- 6 1 3固件 (59)
- sqlserver2000挂起 (59)
- vm虚拟主机 (55)
- config (61)
本文暂时没有评论,来添加一个吧(●'◡'●)