- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
功能与样例:通过TCP协议 利用FC5 “AG_SEND”和FC6“AG_RECV” 传送具有可变消息长度的数据
显示订货号
问题:如何利用通讯功能FC5“AG_SEND”和FC6 “AG_RECV”,通 过TCP协议传送具有可变消息长度的数据?
解答:
TCP协议的性能:当通过TCP传送数据时,该传送是基于数据流的形式。在这种情况下,不给出与消息长度、开 始和结束有关的信息。发送消息时,这并不是问题,因为发送者知道要传送多少数据字节。然而,接收者无法分辨消息在数据流中的何处结束,下 一个消息在何处开始。因此,对于通过纯TCP建立的链接只有两个选项可选:
使用固定消息长度,也就是说,发送者和接收者都使用预定义的数据长度。这意味着要始终明确定义消息限制。
使用可变消息长度。在这种情况下,接收端和发送端都需要更多的时间,因为在开始字节中必须输入起始分隔符和要发送数据的数据长度。这样, 接收者就可以正确地解释已接收的消息。
下面的实例程序包含一个TCP连接,通过该连接,具有可变消息长度的数据可以利用FC5发送给一个站,并利用FC6接收。
实例程序:通过TCP协议 利用FC5“AG_SEND”和FC6“AG_RECV” 传送具有可变消息长度的数据
常规描述:STEP 7项目包括两个S7-300站,它们均具有用于工业以太网通讯的CPU 315-2DP和CP 343-1。这两个站之间的通讯基础是TCP连接。如果在NetPro中通过“右键单击 对象属性”打 开TCP连接属性, 则可以查看通讯功能块的块参数“ID”。在调用FC5和FC6时,要注意该规范,以便可以通过TCP连接传送数据。
图1:TCP连接的属性
为了利用TCP协议传送数据,要传送的数据必须具有指定的结构。消息必须包括起始分隔符 以便接收者可以识别消息从何处开始 ,数 据长度规范 定义接收缓冲区 和数据本身。在此实例中,定义了消息的4个字节的起始分隔符 预置值为:0x11, 0x12, 0x13, 0x14 和一个S7串。该S7串包括两个字节的长度信息和实际的数据串。 使用S7串可以传送所有的ASCII字符。
图2:消息的结构
注意事项:该实例程序基于如图2所示的消息结构,但也可以自行定义消息结构。如果希望使用不同的消息结构 例如,h 起始分隔符只有3个字节 ,则可以依照用户的特定需求 ,简单地改变该实例程序。
因此,希望利用FC5 AG_SEND 传送的数据,必须在数据块 DB220 中按照预定义的结构准备好。随后,该 数据可以利用FC6 AG_RECV 按如下步骤接收:
接收起始分隔符 逐字节地 并识别消息
接收S7串的长度信息
接收数据
STEP 7程序描述
STEP 7程序包括如下块:OB100,OB1,FB100,DB100 FB100的背景DB ,F B101 DB100中的多重背景 ,DB220,DB221,FC5,FC6。
OB100OB100是启动OB,当CPU重启 暖重启 时,运行该OB。在此OB中,发送的首个通讯触发器 的版本为M1.0和M0.1。
图3:OB100
OB1周期性调用OB1。该OB包括具有M1.0和M0.1的FB100 背景OB:OB100 的调用。一 旦运行FB100,则复位M1.0。
图4: OB1
FB100:在OB1周期中调用FB100。该FB包括FC5“AG_SEND”和FB101“ AG_RECV_VARIABLE”的调用。发送块FC5“AG_SEND”当时钟标记M10.7为上升沿,且未置位“SND_BUSY”时,输入参数“ACT”h 可以激活FC5。当作业运行时,置位“SND_BUSY”,并且,在此期间不能触发任何功能。该功能块特别重要,因为该功能是异步的,且占有多个周期。如果对该功能持续激活,而不是等待其中止,则会导致通讯过载。输入参数“ID”和“LADDR”只能从NetPro 图1 中的TCP连接属性对话框中获取。在“SEND”参数中,需 要指定要发送数据的地址 P#DB220.DBX0.0 BYTE 48 。在“LEN”参数中,输入要发送的字节数 48 。输出参数“ DONE”,“ERROR”和“STATUS”对于作业评估是必需的,而且只在同一个周期内有效。
图5:FB100-调用FC5
如果块运行无错误,则复位“SND_BUSY”,并再次调用FC5。如果该块因出错而终止,则保存块的状态字用于错误分析,同样复位“ SND_BUSY”。
图6:FB100-FC5调用的评估
接收块FB101“AG_RECV_VARIABLE”当调用FB101“AG_RECV_VARIABLE”时,必须从NetPro 图1 中的连接属性对话框中获取参数“ID”和“LADDR”h 。在“RECV_BUF”中
您可能关注的文档
- 定州市学九级上期期末考试物理试题(word版,含解析).doc
- 东方出版中心三级下册写字教案(完整版).doc
- 东方航空物流有限公司劳动合同管理规定(试行稿).doc
- 东湖高新区创业投资引导基金申报模板.doc
- 东华大学管理科学与工程研究生初试运筹学历真题.doc
- 度法治理论知识考试复习题【综合题】().doc
- 度公务员制度讲座期末题.doc
- 度国家公务员行政能力测验考试真题(超全含解析).doc
- 度河北省会计人员继续教育培训课程考试试题,答案.doc
- 度湖北省精品课程申报表.doc
- 基于人工智能教育平台的移动应用开发,探讨跨平台兼容性影响因素及优化策略教学研究课题报告.docx
- 高中生物实验:城市热岛效应对城市生态系统服务功能的影响机制教学研究课题报告.docx
- 信息技术行业信息安全法律法规研究及政策建议教学研究课题报告.docx
- 人工智能视角下区域教育评价改革:利益相关者互动与政策支持研究教学研究课题报告.docx
- 6 《垃圾填埋场渗滤液处理与土地资源化利用研究》教学研究课题报告.docx
- 小学音乐与美术教师跨学科协作模式构建:人工智能技术助力教学创新教学研究课题报告.docx
- 《航空航天3D打印技术对航空器装配工艺的创新与效率提升》教学研究课题报告.docx
- 教育扶贫精准化策略研究:人工智能技术在区域教育中的应用与创新教学研究课题报告.docx
- 《区块链技术在电子政务电子档案管理中的数据完整性保障与优化》教学研究课题报告.docx
- 《中医护理情志疗法对癌症患者心理状态和生活质量提升的长期追踪研究》教学研究课题报告.docx
文档评论(0)