发布于 2011-07-23 13:49:43
29楼
26楼背影大侠的观点是非常正确的,不能简单地用单键或一、两个信号简单地处理单键启停,必须考虑实际应用中能出现的情况。
随着硬件可靠性的提高,单键启停的应用还是比较常见的,PLC的设计上要考虑周全一些,增加背影大侠所说的“信号间的互锁”,以下面的程序为例:
A I7.2; //电主轴变频器启动按键
FP DB100.DBX17.1 //电主轴变频器启动按键按下辅助信号
= DB100.DBX17.0; //电主轴变频器启动按键信号
A DB100.DBX17.0; //电主轴变频器启动按键信号
AN DB100.DBX17.2; //电主轴变频器打开要求
O M473.1; // M185译码 - 打开电主轴变频器
S DB100.DBX17.2; //电主轴变频器打开要求
R DB100.DBX17.0; //电主轴变频器启动按键信号
A DB100.DBX17.0; //电主轴变频器启动按键信号
A DB100.DBX17.2; //电主轴变频器打开要求
O M474.0; // M192译码 – 关闭电主轴变频器
R DB100.DBX17.2; //电主轴变频器打开要求
R DB100.DBX17.0; //电主轴变频器启动按键信号
A DB100.DBX17.2; //电主轴变频器打开要求
A E20.4; //安全模块正常(第三方)
= DB100.DBX17.3; //接通电主轴变频器电源要求
//计时器T21使能
CLR ;
FR T21;
//启动和加载计时器T21
A DB100.DBX17.3; //电主轴变频器通电要求
L S5T#5S;
SA T21; //前次电主轴变频器通电延时
//复位计时器T21
AN Q20.0; //电主轴变频器电源接触器
AN DB100.DBX17.3; //接通电主轴变频器电源要求
R T21; //前次电主轴变频器通电延时
//计时器T21输出
A T21;
= DB100.DBX17.4; //前次电主轴变频器通电延时时间到
//电主轴变频器电源
U DB100.DBX17.3; //接通电主轴变频器电源要求
S Q20.0; //电主轴变频器电源接触器
AN DB100.DBX17.3; //接通电主轴变频器电源要求
A M245.0; //电主轴静止
ON DB100.DBX17.4; //前次电主轴变频器通电延时时间到
R Q20.0; //电主轴变频器电源接触器
//按键发光二极管
A Q20.0; //电主轴变频器电源接触器
= Q5.2; //电主轴变频器启动按键发光二极管
从这个实际的程序可以看出:
1. 单键启停可以应用,但是要将按键信号分配到二个变量来控制(等价于二个按键);
2. 单键启动需要进行严格的信号互锁,考虑各种可能发生的情况。
人的生命似洪水在奔流,不遇着岛屿、暗礁,难以激起美丽的浪花。