创建FB-定义接口(基础版)

首先建议大家在编程之前思考好框架,涉及以后的扩展,引用;基础的FB(底层),应该充分降低耦合度(功能要单一),充分总结一下与本功能相关的组件,抽取其中的共同点,认真设计接口参数;

以下以分度盘为例,仅供参考

 

构建好设计机构后开始编程

1.打开博图软件,新建一个项目:

2.添加自己项目中要用的PLC硬件:

3.根据接口,创建自己的UDT,以便将来外部调用时使用:

3.1先定义输入信号,并初始化初值:

 

3.2再定义输出信号:

 

3.3最后合并为分度盘的整个信号:红色和绿色框选择数据类型时,选择为刚才定义的类型;

 

4.1添加FB块,并声明接口参数,中间变量等声明在Static区域,常量声明在constant

4.2定义FB的输入接口(可以直接复制刚才定义好的数据类型中的变量)

4.3定义FB的输出接口(可以直接复制刚才定义好的数据类型中的变量)

此时接口定义已经全部完成;

7.我们暂时不编写程序,直接拖动FB到OB观察一下接口:经过实例化后效果如下图

 编写程序,程序的编写建议禁止引用任何外部变量,如有用到系统时钟等,使用接口引入后,定义局部变量使用,编程不在这里详细介绍,根据逻辑控制需求,需用熟悉的语言编写即可;

当分度盘需要继续封装到别的块中时,使用多重背景进行操作;这里不做二次封装,假设有2台分度盘时,我们主程序中如何快速操作:

添加一个数据块叫UNIT

在数据块中声明一个数组,数组的类型选用刚才建立好的UDT,我们建立的为2个长度;

展开后如下: 

变量和FB进行绑定:拖动放置的接口即可(左右分屏操作)

 

 声明外部IO接口,绑定到FB实现对外部单元控制

添加变量和外部地址:

进行IO的Mapping,有的信号可以选择通过逻辑控制,我们暂时Mapping分度盘的启动,原点,以及到位信号;为节省空间便于操作,我们使用SCL进行:

添加SCL程序段,并直接赋值(因为需要一直运行) 

至此,即可进行正常控制了;

 

 

 

 

 

 

 

 

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值