s7-200plc如何编写日期时间程序?????

如何用plcs7-200编写一个日期时间程序,cpu是222cn,模拟量模块是em231,由于最近面临毕业,做毕业论文,老师给布置的题目是用plc控制的洒水系统,实现分时分段供水,就是隔三个小时运行十分钟这样的一个程序,最近一直在研究这个程序,可是现在还没进展,而且马上就要交论文了,现在还没做出来,真是愁死人了,55555....希望哪位高手出手相助,帮忙写个程序参考一下,将不胜赶紧。

问题补充:
哪位高手给编写个程序看一看吧,我实在是不知道该怎么写,我的邮箱是song12345love@163.com,不胜感激。

最佳答案

参考这个,对你帮助很大:

1 例如当时间达到09年6月3日20点31分20秒的时候,CPU转到停止,前提是CPU有硬件时钟,并且正确设置了时间。
LD     SM0.5
EU
TODR   VB0      //读取时间

LDB>=  VB0, 16#09        //读取的时间是BCD码,这样用省去格式转换
AB>=   VB1, 16#06
AB>=   VB2, 16#03
AB>=   VB3, 16#20
AB>=   VB4, 16#31
AB>=   VB5, 16#20
STOP

2 如果定时开启关闭外部设备,那PLC可以轻松完成。
例如每天早上6点到晚上8点开机
LD     SM0.5
EU
TODR   VB0

LDB>=  VB3, 16#06
AB<=   VB3, 16#20
=      Q0.0 

3 PLC运行一段时间停止
LD     SM0.4
EU
INCD   MD0   //每分钟累加一次,

LDD=   MD0, 4320  //3天后CPU停止,4320=3天*24小时*60分钟
STOP                 //在系统块里将MD0设置为断电保持,那么计时不受停电影响,停电自动保存计时时间。

关键是如何读系统时钟:
S7-200的硬件实时时钟可以提供年、月、时、分、秒的日期/时间数据。
CPU221、CPU222没有内置的实时时钟,需要外插“时钟/电池卡”才能获得此功能。CPU224、CPU226和CPU226 XM都有内置的实时时钟。


 为了提高运算效率,应当避免每个程序周期都读取实时时钟。实际上可读取的最小时间单位是1秒,可每秒读取一次(使用SM0.5上升沿触发读取指令)。

 使用程序读取的实时时钟数据为BCD格式,可在状态图中使用十六进制格式查看。

CPU靠内置超级电容(+外插电池卡)在失去供电后为实时时钟提供电源缓冲;缓冲电源放电完毕后,再次上电后时钟将停止在缺省值,并不开始走动。

要设置日期、时间值,使之开始走动,可以:

用编程软件(Micro/WIN)的菜单命令PLC > Time of Day Clock...,通过与CPU的在线连接设置,完成后时钟开始走动 
编用户程序使用Set_RTC(设置时钟)指令设置 
 Micro/WIN可以通过任何编程连接实现实时时钟的设置。

使用 S7-200 的 READ_RTC(读取实时时钟)和 SET_RTC(设置实时时钟)指令时, 读取和设置的数据格式都是 BCD 码的。如果觉得不便计算、处理,可使用 Clock Integer 指令库。 


要使用 Clock_Integer 指令库,须遵循下列步骤:


请见《《西门子 S7-200·LOGO!·SITOP 参考》V0.92版(更新版)(2008.02.15)   》,其中有关如何读系统时钟及如何添加库指令的说明,下载:  
http://www.ad.siemens.com.cn/download/searchResult.aspx?searchText=A0136
参考资料:http://www.ad.siemens.com.cn/service/answer/solution.aspx?Q_id=97758&cid=1028

提问者对于答案的评价:
谢谢

专家置评

已阅,最佳答案正确。

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc219070.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年12月2日 上午10:54
下一篇 2017年12月2日 上午10:54

相关推荐

  • S7200与伟创AC80变频器MODBUS通讯问题······

    我现在用226CN CPU与伟创AC80变频器modbus RTU通讯,现在通讯没问题,但是修改数据有问题了,226CN CPU做主站,从站变频器的地…

    SIMATIC S7-200 2020年11月1日
  • 自由口通讯资讯

    我做了一个如下自由口通讯控制程序,当我点击I0.0启动发送控制数据时,能控制设备且能收到成功的反馈信息,可是当我点击I0.1再次发送关机命令时,设备没反应了(控制字节设置没问题,因…

    2017年11月26日
  • 定时器TON T37问题

    我用TON T37定时,定了60s的计时,可是计数到30s时,计时器自动复位,重新开始计时,为什么? 计时器复位是用T37的输出来复位的,且只有一处,是不是有其…

    SIMATIC S7-200 2021年7月5日
  • s200保存数问题,

    自己编发现只能存上一个实数, 使用EEPROM指令库发现设至长度20字节,却能保存7个实数(多了两个),改为30字节还是复yuan7个实数,并且观察最下面的保存完成置1位…

    SIMATIC S7-200 2021年7月5日
  • S7-200的高速计数器当前值断电后变为零的问题

    高速计数器当前值在第二天断电后再上电后会变为零的情况  (有时候才出现这样的情况,一般几天才出现一次左右)。如NO.3图中的VW28那个地址的值就会出现上述情况…

    2017年8月18日
  • 200 smart 怎么使用间接寻址?

    我按照帮助中的说明在梯形图中写MOV_DW  &VB100  AC1指令,写完弹出对话框说&VB100的数据格式不对,这是什么原因 最佳答案…

    SIMATIC S7-200 2017年5月29日
  • 224xp是否可以分别配置两个自由口

    CPU型号6ES7214-2BD23-OXB8,两个口port1和port0,计划将port0配置为modbus从站,port1配置为modbus主站,两个口分别连接两个不同设备,…

    SIMATIC S7-200 2020年10月31日
  • 224 xp如何控制步进电机

    通过PLC控制步进电机的正转,反转。不知需要哪些硬件比如说变频器,位控模块等。然后程序方面需要怎么做呢,我知道有个PWO/pto向导,用它可不可以。还有就是怎么接线,和为什么这么接…

    SIMATIC S7-200 2021年7月5日
  • S7200如何下载断电保持数据

    求大神回复,触摸屏程序上设定的一些数据,怎么在下载PLC程序的时候一起下载下来 问题补充:我指的是从PLC上载那些被触摸屏修改过得数据。改如何实现? 最佳答案 此回答已完善 在数据…

    SIMATIC S7-200 2021年7月5日
  • 端口无法打开或被另一个程序占用? 如何解决

    笔记本对接S7-200(PPI),在PID面板监测温度一段时间后会弹出一个对话框“端口无法打开或被另一个程序占用”。随之与PLC断开连接,再连接也没用。 拔掉USB,把U…

    SIMATIC S7-200 2021年7月5日