任务名称 | 预计工作量 | 执行人 | 实际工作量 | 评审人 |
分析文档 | ||||
编程文档 | ||||
文档检查 | ||||
编写代码、自测 | ||||
哈特曼光阑帮助 | ||||
代码检查 | ||||
测试 | ||||
开发实际工作量 | ||||
测试实际工作量 | ||||
设备驱动分析文档 | |||
分析人 | 审核人 | 游梁式抽油机||
开始时间 | 结束时间 | ||
一、设备介绍(是什么类型的仪表或PLC等,有怎样的IO通道): CP443-1以太网模块是将SIEMENS S7-400系列PLC 连接在以太网上的通讯模块,实现PLC之间或者与PC机通过TCP/IP协议高速交换数据的功能。 二、通讯参数设置:(如果是采集板卡,则表述板基地址设定、各种跳线设定及意义) 与设备构件通讯所必需的设备IP地址等信息是在SIEMENS STEP7编程软件中设置的。详细的设置方法将在帮助文档中描述。 三、硬件接线: 将CP443-1模块插到S7-400机加插槽上,用普通对调网线连接PC网卡和CP443-1模块RJ45接口,就完成了CP243-1硬件接线工作。 四、设备操作模式及存储器结构(设备简单操作说明,例如如何在设备中设置通讯参数,及简单的设定显示操作): 五、通讯协议分析: A.通讯初始化: 进行读写操作之前,要依次发送如下8个串,进行通讯初始化工作。 注意:以下返回帧内容可能会和实际通讯过程中有差异,不过重点在与下发帧,返回帧差异可以忽略 发送1:0300001611E00000000100C1020100C2020103C00109 返回1:0300001611D00001443100C00109C1020100C2020103 注:带下划线的红03字节表示当前CPU单元所处的槽号 发送2:0300001902F08032010000020000080000F0000001000101E0 返回2:0300001F02F080320300000200000800000000F0000001000101E0 发送3:0300002102F080320700000300000800080001120411440100FF09000401320004 返回3:0300005102F080320700000300000C0034000112081284010900000000FF09003001320004002800010004 0001000000010003000000005656AC00B3CC44007D0A00000000000000000000000000000000 发送4:0300002102F080320700000400000800080001120411440100FF09000401310002 返回4:0300005102F080320700000400000C0034000112081284010A00000000FF090030013100020028000100 02BEFF070000000002040000003802020000007D1000050710000001E000220040000000110000 发送5:0300002102F080320700000500000800080001120411440100FF09000401110001 返回5:0300004502F080320700000500000C0028000112081284010B00000000FF09002401110001001C000100 0136455337203431322D32584730302D30414230200082001B0000 发送6:0300002102F080320700000600000800080001120411440100FF09000404240000 返回6:0300003D02F080320700000600000C0020000112081284010C00000000FF09001C042400000014000153 0DFF04C7770061080307009401122340021874 发送7:0300002702F0803207000007000008000E0001120411440200FF09000A010********* 返回7:0300002302F080320700000700000C000600011208128402FF00000000FF0900020000 发送8:0300003D02F080320700000800000C0020000112081241100000000000FF09001C001400040000000000 010********* 返回8:0300002902F080320700000800000C000C000112081281100900000000FF0900080004000001000001 B.Q、M、V寄存器开关量写操作: M单通道写: 发送: 0300004702F08032070000C009000C002A000112081241080000000000FF0900260014000E000000000001 00040001000100010001000100000001+reg+bitPos+0000+addr1+00090001+val1+00 返回: 模组网Q单通道写: 发送: 0300004702F080320700006906000C002A000112081241080000000000FF0900260014000E000000000001 00040001000100010001000100000001+reg+bitPos+0000+addr1+00090001+val1+00 返回: V(84)写操作: 1.字节读写: 写: 发送: 二节滑轨0300004702F08032070000AB0B000C002A000112081241080000000000FF0900260014000E0000000000010004 0001000100010001000100000001+reg+01+blockNumber+addr1+00090001+val3+00 注意:写字节时reg为71 返回: 2.字读写: 写: 发送: 0300004702F080320700008F00000C002A000112081241080000000000FF0900260014000E0000000000010004 0001000100010001000100000001+reg+01+blockNumber+addr1+00090002+val2 注意:写字时reg为72 返回: 3.双字读写: 写: 发送: 0300004902F08032070000EA00000C002C000112081241080000000000FF090028001400100000000000010004 0001000100010001000100000001+reg+01+blockNumber+addr1+00090004+val4 注意:写双字时reg为73 返回: C.I、Q、M、V寄存器按字节读操作: 读: 发送: 0300004102F080320700000B00000C0024000112081241020000000000FF0900200014000800000000000100+ preDataLen+0001000100010001000100000001+reg+len1+blockNumber+addr1 返回: reg: 寄存器类型码,I:11(读) 10(写)、Q:21(读) 20(写)、M:01(读) 00(写)、V:71(读) 。(1byte) (因V寄存器的写要单独处理,不在此列出) bitPos:位操作时,当前操作的位在本字节中的位置,有效取值范围00-07。(1byte) blockNumber:DB块号,只有V寄存器才有此字段,其余寄存器为0000。(2byte) preDataLen:读命令时此字段的值为len1+6,结果如果是奇数则再加上1。(1byte) addr1: 寄存器地址,计算方法:通道地址,以字节计算。(2byte) val1: 寄存器值,00、01 。(1byte) val2: 寄存器值,0000~FFFF。(2byte) val3: 寄存器值,00~FF。(1byte) val4: 寄存器值,00000000~FFFFFFFF。(4byte)干粉砂浆 len1: 连续读取寄存器的个数(以字节计)。(1byte) | |||
审核人 | 审阅意见 | ||
分析实际工作量 | |||
设备驱动编程文档 | |||||
程序员 | 审核人 | ||||
开始时间 | 结束时间 | ||||
需求分析: 1、读写各寄存器数据:I寄存器实现按位读,Q、M寄存器实现按位读写。V寄存器分别实现读写一个字节、二个字节、四个字节的BCD码和二进制数,及四个字节浮点数。 | |||||
功能设计: 1、 通道设计 动态生成通道 2、设备命令 垂直风道机箱 1)读数据:Read(寄存器名称+地址=DATA) 2)写数据:Write(寄存器名称+地址=DATA) | |||||
实现的方法: 拷入最相近的驱动代码名称 CP243_1以太网通讯模块通用版代码 新增加的函数(列出函数名,参数定义,功能等,可以从代码中拷出) 修改的函数 | |||||
流程图(采集函数和命令函数): | |||||
编程中遇到的问题(遇到的技术难点及如何解决的,有特点的,需要注意的其他问题): 1,编程中遇到的主要问题是TCP/IP通讯协议未知,需要截获分析通讯协议。 为了使连接保持稳定,在发送命令的函数中作了一些重发和重新初始化的处理。另外考虑TCP/IP连接可能中断,所以在采集函数失败退出的代码段中增加调用TcpipReconnect()函数的操作,重建Tcpip连接。 | |||||
测试要点: | |||||
审核人 | 审阅意见 | ||||
完成代码调试和自测后填写文档 | ||||||
程序员 | 审核人 | |||||
开始时间 | 结束时间 | |||||
编程中遇到的问题(遇到的技术难点及如何解决的,有特点的,需要注意的其他问题): | ||||||
测试要点: | ||||||
是否严格按照设备组编程规则进行了自检(程序员填写) | 是 | |||||
审核人 | 审阅意见 | |||||
实际工作量 | ||||||
驱动程序名CP443_1.dll CP443_1Page.dll | 测试人: | 时间:2003年9月18日 | |
程序编制人: | |||
工程路径: | 画面名称: | ||
测试用例概述 | |||
下位机:1台 | 串口: com1 | ||
变量数:个 | 块读长度: 字节 | ||
波特率:9600 | 最高采集频率:毫秒 | ||
数据位: | 停止位: | ||
数据校验方式: | 数据采集方式:同步采集 | ||
可设置寄存器区: | 已测试寄存器区: | ||
可设置数据类型: | 已测试数据类型: | ||
测试结论 | |||
首次测试是否发现错误:有 | |||
V寄存器 32位有符号数类型错误,输入负数时PLC中是写下去了但上位机跳变回原来的值。 | |||
返工后测试是否发现错误:否 | |||
返工次数(允许1次返工): | |||
审阅人意见 | |||
本文发布于:2024-09-20 23:40:12,感谢您对本站的认可!
本文链接:https://www.17tex.com/tex/1/340300.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |