【Factory IO】使用SCL编写程序1

使用 Factory IO 和 博图V16 软件进行联合仿真

一、控制要求

1. 程序要求

基于 Factory IO 中 场景4-Queue of Items(Counters) 。发送四个零件(不能多发),进行传送,当四个零件传送完毕时,关闭传送带。

2. Factory IO 参考图

二、运行环境

1. 布置场景

场景这里就是 Factory IO 中的场景4,传感器和执行器的名称可以改一下。

驱动选 Siemens S7-PLCSIM ,配置中类型改为 S7-1200 。

I/O口分配:

输入输出
名称作用地址名称作用地址
物料检测传感器I0.0A传送带传送带Q0.0
传感器A传感器I0.1B传送带传送带Q0.1
传感器B传感器I0.2下物料执行器Q0.2

2.博图设置

导入 Factory IO 变量。

3.PLC与虚拟工厂连接

连接步骤: 博图编译 -> 成功编译后 -> 启动仿真 -> 装载 -> 完成 -> RUN -> Factory IO 驱动 -> 连接。

三、控制程序

程序块中新建一个FB函数块。

编程思路: 接下来明确传送带和下物料的执行步骤,这个时候就要用到计数器!物料检测传感器每有一次0到1的变化,也就是上升沿,就计数加一,直到加到4,停止下物料。传感器B也要计数,和物料检测传感器一样,计数到4就停止传送带的运动。

完整代码:

//是否是初次执行
IF NOT #I THEN
    // Statement section IF
    #IEC_Counter_0_Instance.CV := 0;  //计数器置0
    #IEC_Counter_0_Instance_1.CV:=0;
    "A传送带" := 0;
    "B传送带" := 0;
    #I := 1;
END_IF;

//计数器
#IEC_Counter_0_Instance(CU := "物料检测",
                        PV := 1);

IF #IEC_Counter_0_Instance.CV < 4 THEN
    "下物料" := 1;
    "A传送带" := 1;
    "B传送带" := 1;
ELSE
    "下物料" := 0;
END_IF;

#IEC_Counter_0_Instance_1(CU:="传感器B",
                          PV:=1);

IF #IEC_Counter_0_Instance_1.CV = 4 THEN
    "A传送带" := 0;
    "B传送带" := 0;
END_IF;

总结

以上就是控制传送带输出物料的全部内容啦!感谢大家的观看,有什么问题欢迎指正哦,谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值