[计算机]S7200+TD400C显示系统时间、运行时间的程序详解.doc_第1页
[计算机]S7200+TD400C显示系统时间、运行时间的程序详解.doc_第2页
[计算机]S7200+TD400C显示系统时间、运行时间的程序详解.doc_第3页
[计算机]S7200+TD400C显示系统时间、运行时间的程序详解.doc_第4页
[计算机]S7200+TD400C显示系统时间、运行时间的程序详解.doc_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

s7200+td400c显示系统时间、运行时间的程序详解看见论坛上有些朋友对西门子td文本显示器显示时钟的问题比较关心,在这个帖子里笔者给出一个已经应用于工程上的程序例子,并作出详细分析, 这个程序是s7200+td400c显示系统时间、当班运行时间、累计运行时间的例子。 对了,文件名太长可能也打不开,你把文件名改短一点(例如1个英文字母),放在某个逻辑盘根目录下,应该就不存在这个问题了。 | 系统硬件配置如下:plc:西门子s7-200cn;cpu226cnrel02.01;ac100230v电源/dc24v输入/继电器输出;订货号6es7216-2bd23-0xb8;固件02.01build2;asic:01.00。文本显示器:td400c;订货号6av6 6640-0aa00-0ax0;自带9芯td/cpu电缆;版本:1.0.0.3。s7-200与td400c通过td400c随机配置的td/cpu通信电缆连接,实现电源供给和通信(因为当td400c与s7-200cpu之间的距离小于2.5米时,采用td/cpu电缆的方式进行供电;当td400c与s7-200cpu之间的距离超过2.5米时,使用外部电源供电并使用profibus组件连接网络)。 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-21 16:12:00 2楼 老菜鸟 系统软件配置如下:s7-200参数设置:在“系统块”的“断电数据保持”中设置vw1600以后2000个单元为断电数据保持。td400c参数设置:td400c地址:1cpu地址:2参数块地址:0波特率:9.6khsa:31guf:10键盘声音反馈:开屏幕保护时间:10分钟s7-200的系统时钟调整为准确的北京时间。 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-21 16:15:00 3楼 老菜鸟 下面先写一下该程序所用到的存储器的意义,以便于理解程序。本班运行时间:小时vw1600、分钟vw1604、秒vw1608;累计运行时间:小时vw1620、分钟vw1624、秒vw1628;系统时间(bcd码字节):年vb2000、月vb2001、日vb2002、小时vb2003、分钟vb2004、秒vb2005、星期vb2007;系统时间(整数):年vw1644、月vw1648、日vw1652、小时vw1656、分钟vw1660、秒vw1664;本班设备开始运行时间:小时vw1680、分钟vw1684、秒vw1688;本班设备最后运行时间:小时vw1700、分钟vw1704、秒vw1708;上班时间设置:小时vw1720、分钟vw1724;下班时间设置:小时vw1740、分钟vw1744;本班运行时间复位:vw1760;本班运行时间被复位的时间:年vw1764、月vw1768、日vw1772、小时vw1776、分钟vw1780;累计运行时间复位:vw1800;累计运行时间被复位的时间:年vw1804、月vw1808、日vw1812、小时vw1816、分钟vw1820;eeprom写入次数:vw3558 ;因为考虑到编程中可能会用到一些中间存储器,所以在td400c中定义存储器时留了余量,每两个存储器之间都有1个字的存储器留作备用。 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-21 16:27:00 4楼 老菜鸟 根据相关技术要求,先组态td400c画面,达到预期目的。 “工具”“文本显示向导”,先配置td400c: 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-21 16:34:00 5楼 老菜鸟 然后点击“用户菜单”,配置用户菜单。因为该工程的界面要求很简单,所以每个菜单项只配置了1个屏幕(最多可以配置8个屏幕)。 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-21 16:46:00 6楼 老菜鸟 第1个屏幕: 该屏幕中的第1个数据(这里的数据排列顺序为:先按第1排从左至右、再按第2排从左至右的顺序依次排列,下同): 因为版面的问题,该屏幕的其它plc数据和其它屏幕中的plc数据就不一一列举了。这些数据都是vw、无符号数类型,具体对应情况请参阅3楼说明。 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-21 17:00:00 7楼 老菜鸟 第2个屏幕: 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-22 22:13:00 8楼 老菜鸟 第3个屏幕: 第4个屏幕: 第5个屏幕: 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-22 22:16:00 9楼 老菜鸟 第6个屏幕: 第7个屏幕: 第8个屏幕: 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-22 22:18:00 10楼 老菜鸟 下面是主程序部分: 首先在主程序中调用子程序: 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-22 22:21:00 11楼 老菜鸟 下面是子程序: 先调用td向导生成的子程序: 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-22 22:41:00 12楼 老菜鸟 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-23 22:58:00 13楼 lnx td200能否用此例? 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-24 08:27:00 14楼 老菜鸟 应该可以,你可以测试一下。 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-24 09:36:00 15楼 me815 老菜鸟真是位好前辈好榜样。曾经用过cpu226+td200显示年月日时间07年07月08日在文本上显示得却是7年7日8日不知道该怎样把前面的零加上?你做的这系统有没有这情况?谢谢!引用 | 回复 | 管理 | 设为最佳回复| 2007-07-24 09:41:00 16楼 老工控 好东西,支持一下 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-24 10:11:00 17楼 lnx 很好,谢谢! 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-24 11:49:00 18楼 三年电工 好东西,收藏了 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-24 11:53:00 19楼 三年电工 老菜鸟前辈:你好!能否发一些s7200与变频器通讯方面的程序的详解,在些先谢谢了引用 | 回复 | 管理 | 设为最佳回复| 2007-07-24 23:45:00 20楼 老菜鸟 这个程序还没写完,我空了慢慢补充。s7-200与变频器通信的实例暂时没有,以后我会发帖。 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-24 23:50:00 21楼 张智勇 我也帮助老工控顶可惜我现在连td400还没有见过实物 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-25 07:55:00 22楼 常师傅 感谢老工控的资料.顶一下. 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-25 09:04:00 23楼 笔笔名 请教楼主!你的这个程序好象还不完整!要是时间有偏差是不是还需要调正呢?好象还缺少这样的程序段。 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-25 11:05:00 24楼 三年电工 期待老菜鸟前辈引用 | 回复 | 管理 | 设为最佳回复| 2007-07-25 23:37:00 25楼 老菜鸟 时间偏差这个问题,td400c已经考虑很周全,在td400c上面可以调节。我在后面的回帖中做出说明。 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-25 23:46:00 26楼 张智勇 老菜鸟:这么晚还不休息,辛苦了 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-26 05:34:00 27楼 雪世界 老菜鸟,辛苦了真的很不错,收藏了 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-26 05:41:00 28楼 无限0 到底是高手。写出来的东西就是不一样。辛苦了真的很不错,收藏了 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-26 17:04:00 29楼 shtq 辛苦了,谢谢提供 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-26 18:06:00 30楼 430821 不错 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-27 17:14:00 31楼 老菜鸟 todr指令读到的实时时钟是bcd字节,要想把这个bcd字节显示出来,需要进行转换。在网上也曾查阅过,一部分人先用bti指令把这个bcd字节转换整数,然后用ita指令把整数转换为ascii字符串,在画面中嵌入这个ascii字符串用于显示。笔者也这样试过一下,可能因为其它问题没有测试成功,而又突然想到在程序的多处都需要用到这个实时时钟数据,所以转换为ascii字符以后对程序其它地方没什么作用。经过考虑,我的转换思想是:先用bti指令把这个bcd字节转换bcd整数,然后用bcdi指令把bcd整数转换为正常的十进制/十六进制整数,在画面中嵌入这个得到的整数用于显示。在程序的其它地方也可以使用这些实时时钟变量。 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-27 17:26:00 32楼 半截木头 好,就需要多一些这样的实例 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-27 17:28:00 33楼 老菜鸟 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-27 17:55:00 34楼 ysc1 谢谢!收藏了,虽然我没有见过西门子的plc,向你一样的人致敬。 引用 | 回复 | 管理 | 设为最佳回复| 2007-07-27 19:58:00 35楼 tiantxw 谢谢楼主的好贴 引用 | 回复 | 管理 |

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论