控制要求
根据按钮按下次数,一次点亮指示灯。当按钮SB1按下4次时,4个指示灯顺序点亮,当按钮按下,4个指示灯同时熄灭
I/O分配
利用计数器实现顺序控制的程序IO分配
梯形图
利用计数器实现顺序控制的程序plc梯形图
当按钮SB1 按下时,X1上升沿有效时,C0计数值加1,利用触点大于等于比较指令,当计数器的值大于等于1时Y0输出有效,第二次按下SB1时,C0计数值变为2,Y1输出有效,以此类推,Y2 Y3依次点亮。
当按下X1时,C0被复位,触点大于等于指令不在成立,所有输出均复位。
某处有一电动小车,供6个加工点使用,电动车在6个工位之间运行,每个工位均有一个位置行程开关和呼叫按钮。送料车开始可以在6个工位中的任意工位上停止并压下相应的位置行程开关。plc启动后,任一工位呼叫后,电动小车均能驶向该工位并停止在该工位上。如图:
简要介绍一下这一呼叫程序。(实用的如启动前的报警,行走时不被叫走,卸货时不被叫走,等没有编写,有需要的可关注阅读前面发表的文章。这里只重点介绍编码指令的应用。)请看程序:
各步说明:1,X020为启动端子输入,X021停止常闭点。
2,启动M20接通,(1)执行编码指令[ENCO X000 D0 K3],把X000——X007动作时位置数存入D0。(2)执行编码指令[ENCO X010 D1 K3],把X010——X017动作时的位置数存入D1。(3)执行比较指令[CMP D0 K0 M0],diangon.com这里说明下由于K3是8位数输入是X000——X007。我们程序是6位小车呼叫,所以这个程序也可作为8位呼叫使用。如果做成6位呼叫使用X000端子也可不用,那么这个比较指令也可不用,用M8000常开即可。大家想想是为什么呢?
3,当(启动呼叫)呼叫数大于0,常闭M1接通,M10自锁,执行比较指令[CMP D0 D1M5],位置号和呼叫号的比较。
4,呼叫号大于位置号M5动作左行触点y000输出。
5,呼叫号小于位置号M7动作右行触点Y001输出。
今天简要介绍了编码指令的应用,在以后的文章里详细介绍解码和编码指令。
(责任编辑:admin) |