【案例】 如何使用SCL编程实现顺控功能

关于启程

启程自动化成立于2012年,培训项目主打西门子PLC编程系统集成、工业机器人编程、EPLAN电气设计、视觉等培训与技术服务的机构。

越来越多的人喜欢使用SCL编程,今天给大家带来一个使用SCL编程实现顺控功能的示例。

功能说明:

工作时,按下启动按钮A和B阀全部打开,开始进料,30s后A阀关闭,B阀继续放料,当达到传感器2,搅拌电机开始转动 ,当达到传感器3,B阀关闭,电机继续转动30s后停止,同时出料阀C打开,当达到传感器1后,延时10s,C阀关闭,完成一个周期。

这个系统要求单周期和连续工作两种模式。

当看到这个功能说明,相信大家很容易想到使用GRAPH来进行编,今天,也可以使用SCL来进行编程。

首先,设置接口变量如下图所示:

编写程序:这里使用条件语句来进行编写,首先要使用单周期和连续运转来进行两个分支的判断。

先编写单周期工作方式:

然后是连续工作方式:

源代码如下:

IF #单周期选择 THEN

IF #启动 THEN

#电磁阀1 := 1;

#电磁阀2 := 1;

#time1.TON(IN := #电磁阀1,

PT := T#30S);

END_IF;

IF #time1.Q THEN

#电磁阀1 := 0;

END_IF;

IF #传感器2 THEN

#电机KM := 1;

ELSIF #time2.Q

THEN

#电机KM := 0;

END_IF;

IF #传感器3 THEN

#电磁阀2 := 0;

END_IF;

#time2.TON(IN := #传感器3,

PT := T#30S);

IF #time2.Q THEN

#电磁阀3 := 1;

END_IF;  #time3.

TON(IN := #传感器1,

PT := T#10S);

IF #time3.Q THEN

#电磁阀3 := 0;

END_IF;

ELSIF

NOT #单周期选择 THEN

IF #启动 OR #time3.Q THEN

#电磁阀1 := 1;

#电磁阀2 := 1;

#time1.TON(IN := #电磁阀1,

PT := T#30S);

END_IF;

IF #time1.Q THEN

#电磁阀1 := 0;

END_IF;

IF #传感器2 THEN

#电机KM := 1;

ELSIF #time2.Q

THEN

#电机KM := 0;

END_IF;

IF #传感器3 THEN

#电磁阀2 := 0;

END_IF;

#time2.TON(IN := #传感器3,

PT := T#30S);

IF #time2.Q THEN

#电磁阀3 := 1;

END_IF;

#time3.TON(IN := #传感器1,

PT := T#10S);

IF #time3.Q THEN

#电磁阀3 := 0;

END_IF;

END_IF;

来源:网络侵权删

(0)

相关推荐