加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

TIA做的小程序:连续脉冲练习4

(2025-10-21 14:37:08)
标签:

西门子

tia

scl编程

脉冲循环动作

分类: 西门子软硬件
今天继续练习,使用SCL编程。点击WINCC上开始按钮,16个脉冲阀依次循环动作,每个阀动作1秒,间歇1秒,16#阀动作完成后,间歇1秒,1#阀开始动作。点击停止按钮,停止动作,下次点击开始按钮,从1#阀门开始动作。
新建TIA项目,选择1500控制器,启用CPU时钟存储器,添加网络。新建变量如下:
TIA做的小程序:连续脉冲练习4

新建FB,建立内部变量如下:
TIA做的小程序:连续脉冲练习4
FB使用SCL编程如下:
"R_TRIG_DB"(CLK:=#start,
            Q=>#temp1);
IF #temp1 THEN
    #C:=0;
END_IF;
IF NOT #start THEN
    "IEC_Counter_0_DB".CV := 0;
    #C := 0;
END_IF;
IF #start THEN
    "IEC_Counter_0_DB".CTU(CU := "Clock_0.5Hz",
                           R := #Reset_C,
                           PV := 0,
                           CV => #C);
    IF #C > 16 THEN
        #Reset_C := 1;
    END_IF;
    IF #C <= 16 THEN
        #Reset_C := 0;
    END_IF;

    IF "Clock_0.5Hz" THEN
        CASE #C OF
            1:
                #Q1 := 1;
            2:
                #Q2 := 1;
            3:
                #Q3 := 1;
            4:
                #Q4 := 1;
            5:
                #Q5 := 1;
            6:
                #Q6 := 1;
            7:
                #Q7 := 1;
            8:
                #Q8 := 1;
            9:
                #Q9 := 1;
            10:
                #Q10 := 1;
            11:
                #Q11 := 1;
            12:
                #Q12 := 1;
            13:
                #Q13 := 1;
            14:
                #Q14 := 1;
            15:
                #Q15 := 1;
            16:
                #Q16 := 1;
        END_CASE;
    END_IF;
    IF NOT "Clock_0.5Hz" THEN
        CASE #C OF
            1:
                #Q1 := 0;
            2:
                #Q2 := 0;
            3:
                #Q3 := 0;
            4:
                #Q4 := 0;
            5:
                #Q5 := 0;
            6:
                #Q6 := 0;
            7:
                #Q7 := 0;
            8:
                #Q8 := 0;
            9:
                #Q9 := 0;
            10:
                #Q10 := 0;
            11:
                #Q11 := 0;
            12:
                #Q12 := 0;
            13:
                #Q13 := 0;
            14:
                #Q14 := 0;
            15:
                #Q15 := 0;
            16:
                #Q16 := 0;
        END_CASE;
    END_IF;
END_IF;

OB1调用此FB,分配输入输出变量。
TIA做的小程序:连续脉冲练习4
将项目程序下载到模拟器。
新建WINCC项目程序,新建1200/1500连接,新建变量start,关联PLC变量start。新建WINCC画面,放置2个按钮,鼠标点击事件分别让start为1和为0.
保存wincc画面,运行wincc,点击运行按钮和停止按钮,就可以看到想要的效果了。
这个练习程序我放入了百度网盘,地址是:
通过网盘分享的文件:PulseAct4
链接: https://pan.baidu.com/s/1OCLGy2FVGUs5VlMTQexKog 提取码: 1234



0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有