当前位置: 首页 > news >正文

做特效很牛的一个外国网站网站开发需求

做特效很牛的一个外国网站,网站开发需求,廊坊永清网站建设,php做商品网站自由口通信模式下计算机读写PLC存储区的程序 2008-8-20 8:51:00 来源#xff1a;摘 要#xff1a;本文介绍了在自由口通信模式下#xff0c;用计算机读写S7-200 PLC存储区内相邻的多个字节数据的通信程序设计方法#xff0c;程序设计中采用了多种可靠性措施。 关键词… 自由口通信模式下计算机读写PLC存储区的程序 2008-8-20 8:51:00 来源摘 要本文介绍了在自由口通信模式下用计算机读写S7-200 PLC存储区内相邻的多个字节数据的通信程序设计方法程序设计中采用了多种可靠性措施。 关键词PLC 通信 自由口模式 1 引言   使用S7-200的自由口模式与上位计算机通信其硬件成本低适应性强但编程较困难。本文根据自定义的通信规约编制通信程序实现了上位计算机对各PLC从站存储器中字节、整数或双整数数据的读写操作。 2 通信规约   通信采用单主站方式一台计算机作为主站多台PLC作为从站。计算机采用广播方式主动向所有PLC发送包含从站站址的读/写命令帧每次被计算机指定站址的一台PLC收到后返回响应帧。   通信波特率为19.2k bit/s串行数据格式为1位起始位8位数据位1位停止位无奇偶校验采用异或校验方式校验码为除它本身外所有字节的异或值。计算机使用事件驱动方式接收数据;PLC用XMT发送指令发送数据用字符中断方式接收数据。 图1 通信帧格式   图1是通信帧的格式用阴影表示数据区。帧起始标志占3个字节定义为十六进制数BEBEBE。站址是计算机要读写的从站的编号。读命令字节为CCH写命令字节为DDHPLC响应帧中的命令字节与接收到的命令字节相同写命令的响应帧没有“读取的数据”部分。   除了帧起始标志、读写区的首地址和读写的数据外帧中其余各部分均只占一个字节。图1中当PLC对接收到的一帧数据校验无误而且命令字节为CCH或DDH时响应帧中的“PLC接收正误标志”为1否则为0。   命令帧中的读写区首地址为PLC内读写区域的起始字节地址的数字编码PLC接收到命令帧后可以将其作为指针使用循环指令读写计算机指定的连续区域。经作者反复实验得到了PLC内部多种存储区域地址的数字编码规律。该数字编码为双字高字表示存储区类型见表1低字表示偏移量。根据寻址区域和偏移量就可以得到地址编码例如MB3的地址编码为0200 0003H它等同于PLC程序中的MB3只是表示方式不同而已。在通信帧中使用地址的数字编码可以简化PLC的程序。   表1 几种存储器区域地址高字编码   如果PLC接收超时PLC重新进入接收状态;如果计算机接收超时重发3次命令帧若3次均超时发出报警信息。 3 PLC通信程序设计   3.1 接收程序和发送程序的设计   PLC作为从站只有接收到计算机的命令帧后才返回响应帧不会主动发送数据。   PLC使用多个字符中断服务程序顺次接收命令帧各部分的内容。在接收帧起始标志的中断服务程序中只有接收到连续3个BEHPLC才认为是一帧的开始否则重新接收帧起始标志。在接收站地址的中断服务程序中将接收到的站址与本站站址相比较如果相同继续接收命令帧其余的字节否则重新接收帧起始标志。这样每次只有一台PLC接收整个命令帧避免了其余的PLC进行不必要的接收。在接收数据区的中断服务程序中通过比较接收到的“数据区字节数”和实际接收到的字节数来判断数据区接收是否完成。接收完数据区后再接收到一个字节的校验码则一帧接收完成置发送允许标志位。   主程序检测到发送允许标志位为1时进行异或校验并检查命令字节若接收正确判断是读命令还是写命令。如果是读命令将计算机要读取的数据送入发送缓冲区;如果是写命令将计算机提供的数据写入指定的存储区地址;最后计算异或校验码并将它送入发送缓冲区;组织好发送帧后将它发送出去。   3.2 读写PLC存储区   首先从接收缓冲区中取出读写区首地址存入符号地址为Address的双字中用循环程序实现对多个字节的读写。读写PLC存储区的语句格式为   MOVB pFrom, pTo   计算机读存储区时pFrom指向Address开始的m个字节的连续区域pTo指向发送缓冲区循环次数m为要读取的字节数。写存储区时pFrom指向接收缓冲区中要写入的n个字节的连续区域pTo指向Address开始的连续区域循环次数n是要写入的字节数。   3.3 接收缓冲区和发送缓冲区   使用XMT指令时每次最多可以发送255个字节。由于PLC不能同时发送和接收数据为了节省通信程序占用的存储空间和简化程序接收缓冲区和发送缓冲区共用VB100­VB355这片区域。接收数据时只存储命令帧中的命令字节及其后的内容。   VB100是XMT指令发送缓冲区的首字节即要发送的字节数响应帧从VB101开始存放。对于某一从站来说帧起始标志和站址都是固定值可以在PLC首次扫描时将它们送入发送缓冲区。PLC响应帧中的命令字节与接收到的命令字节相同因此PLC在生成响应帧时只需生成除帧起始标志、站址和命令字节以外的部分。经分析可知计算机每次最多可以从PLC读取247个字节向PLC写入244个字节的数据。 4 计算机程序设计   计算机通过PLC响应帧中返回的站址号和命令字节判断是哪个从站对何种命令作出的响应并结合PLC接收正误标志作出相应的处理。   4.1 接收及通信出错处理   计算机采用串口事件方式接收PLC发出的响应帧。计算机将接收到的每个字节顺次放入接收缓冲区动态字节型数组通过数据区字节数判断对响应帧的接收是否结束。   接收完成后计算机对接收到的数据作异或校验如果校验无误命令字节为CCH或DDH而且PLC接收正误标志为1计算机认为接收正确。如果计算机异或校验判断接收有误或PLC返回的接收正误标志为0将重发同样的命令帧若连续重发3次后均出错则提示用户。   4.2 命令帧的生成   在计算机中命令帧用字节型数组来表示。假设要读取1号站PLC中MB6开始的3个字节的数据MB6的地址代码0200 0006H应放在PLC接收缓冲区的VB107VB110。根据S7-200的寻址方式VB107VB110各字节中的值分别为02H、00H 、00H、06HPLC接收到的字节从低地址开始存放所以在计算机中只需将以上4个字节顺次存放于命令帧数组即可。本例从VB101开始的读命令帧为BE BE BE 01 06 CC 02 00 00 06 03 72十六进制数最后一个字节72H为异或校验码。   4.3 读写整数和双整数的方法   整数占用一个字双整数占用连续的两个字。由于PLC和计算机中整数和双整数的存储方式相同计算机可以把它们分别拆成2个字节和4个字节后发送亦可将接收到的多字节组合成整数或双整数。   读PLC中连续的n个整数时可以转换为读连续的2n个字节计算机接收到后将每相邻的2个字节组合成1个整数;同样的读n个双字可以转化为读4n个字节计算机接收到后将每相邻的4个字节组合成1个双整数。   将n个字或双字写入PLC时可将它们拆分成2n个字节或4n个字节按高字节在前低字节在后的顺序放入发送帧中。拆分操作可用位逻辑运算来实现。例如欲将256和-1两个整数写入PLC的MW6和MW8首先将它们分别拆分为2个字节01H ,00H和FFH, FFH设站号为1则写命令帧为BE BE BE 01 09 CC 02 00 00 06 01 00 FF FF 7F十六进制。 5 实验及结论   经多次实验表明本文介绍的通信程序运行稳定可靠能满足工程实用的要求。该程序的通用性好计算机可以读写PLC中的多种存储区域可设置读写的起始地址和字节数每次最多可读写240多个字节数据可以按字节、整数和双整数来读写。   通过帧起始标志、PLC接收正误标志和异或校验保证了通信的可靠性接收出错和超时出错重发送机制进一步提高了通信的性能。
http://www.zqtcl.cn/news/519893/

相关文章:

  • 个人定制网站外贸免费网站建设
  • ASP网站建设实训报告总结宜昌本地网站建设
  • 甘肃省建设厅官方网站张睿建立网站服务器
  • 有没有做博物馆的3d网站网页美工设计岗前培训
  • 如何防止网站被盗长沙知名网站建设
  • 汕尾住房和建设局网站山西招标网
  • 网站建设那好山西建设厅网站
  • 2免费做网站外贸公司注册需要多少钱
  • 莘县网站定制安卓软件开发培训机构
  • 织梦视频网站源码有没有专门做名片的网站
  • 济南本地网站自己做的网站怎么置顶
  • wordpress能做多大的站好用的网站后台
  • 想自己做网站流程国家住建网查企业资质
  • 英文网站怎么设计google浏览器入口
  • 重庆网站建设公司魁网个人备案网站名
  • 怀柔营销型网站建设wordpress菜单定制
  • 大连装修网站推广天津市建设信息工程网
  • 服装网站建设建议域名注册最好的网站
  • 小游戏网站网络营销推广岗位
  • 做一百度网站保健品网站建设案例
  • 沙田镇仿做网站如何建设钓鱼网站
  • 如何用域名进网站企业做电商网站有哪些
  • soho做网站网站的k线图怎么做
  • 成都专业的网站建设公司做网站需要哪个专业
  • php彩票网站建设源码有人看片吗免费观看
  • 自己做网站的准备工作营销平台推广
  • 建站网站平台建站工具的优点
  • 各学院二级网站建设通报wordpress 修改admin
  • 网站建设加推广需要多少钱wordpress标签自动生成插件下载
  • 周村区建设局网站石家庄网站运营公司