zhouduoliang
某项目要求完成15个电磁阀的以下功能:电磁阀分别由y0,y1,...,y16控制,按规定的时间片段来控制,如表所示:
例如:第0时段,#1,#5电磁阀开,其他的关闭,工作时间1分钟;1分钟后切换到第1时段,第#2电磁阀开,其他的关,工作时间3分钟,3分钟后到切换到第2时段;按如此顺序从0~19时段反复循环。请写出能实现上述要求的PLC程序。
nan
wanggq
这个题目和《写个程序叫PLC “唱歌”》、《东方红》(简略版)及《让PLC弹钢琴!你会吗?》的练习差不多!写一个“扫描程序”顺序读出数据区的数据。用户要修改各时间段的时长及输出阀位,只要改写数据区的内容就是了,不用修改“扫描程序”。
各时间段的“时长”信息就好比各音符的“时长”信息;各时段中的动作“阀位”信息就好比对应音符的“音高”信息(或对应动作琴键的信息)!
5483756
就是循环控制吗。。没有什么难的,,还
“书生”说着容易,做出来难!
什么事情都是这样的:只要泛泛而谈就容易得很!要是叫您把它落到实处,具体化,我看也不见得您就能比楼主写出的程序来得简练!
大家互相交流,提出一些题目共同探讨,对提高我们的思维能力只有好处,没有一丁点的坏处! 我热情的支持楼主!!
我下午去上工,抽空写了一个实现楼主提出的功能的程序,这是在FX2n上写成的。如果要在FX1s或者FX1n系列的PLC上实验,只需改动一下数据寄存器的编号,使它们处在对应系列PLC的“保持区域”就行了!
<紧接上一楼的内容>
深水渔
4月21日我在第48楼的帖子中留了一个“破绽”等待网友们去发现。我是欢迎网友用讲道理的方式来批评我的“错误”的!可是没有人去注意!
现在我自己来点评这个“错误”:
4月21日我在第48楼的帖子中有一个“接点比较指令”用错了形式。正确的形式应该是“OR= K20 V ”,我却用成了“OR> K20 V ”!
我已经将自己在第48楼的“错误”纠正过来了!
下面是该程序的运行监视图片: 之第0时段的监视图片
梯形图程序中“END命令”之后的部分不是该程序的内容。这是用于帮助我们观察“输出字”的内容是否与楼主的题目要求相符合而写的额外部分。
之第1时段的运行监视图片:
之第2时段的运行监视图片:
之第3时段的运行监视图片:
……………
之第18时段的运行监视图片:
自动化菜鸟123
看不懂
之第19时段的运行监视图片:
当第18时段结束转入第19时段时,寻址寄存器V的当前值增加到“20”,接下来进入的一个程序周期一开始“RST V”的执行条件成立,寻址寄存器被清零。所以,我们从监视图片上看到的V当前值在这一时段为“0”。当这第19时段结束时,程序重复开始运行第“0”时段,V当前值被增加为“1”……周而复始。
各时段中“输出字”的内容是由数据块中D540至D559这20个数据来决定的。
这20个数据与楼主列出的“阀动作表格”转换而成的。它们的对应关系见下图所示:
上面的“数据块”是用10进制数来表达的“输出字”内容。
接下来再用16进制来表达“输出字”内容的数据:
看看我这个吧