三菱plc学习入门(三,FB模块)

25 篇文章 7 订阅
14 篇文章 2 订阅

小编很抱歉,因为小编是以基恩士,三菱的plc一起学习并找发现不同!!!并结合工作的案例来进行学习,所以内容上与系统的学习还是存在差异。如果只是单独的学习此篇文章,如果对您有帮助,欢迎点赞收藏,有不足之处欢迎评论,一起讨论。

目录

什么是FB模块?

什么是FC模块? 

二者有什么区别?

FB模块如何使用?

1,创建FB的工程

2,新建FB数据

3,局部标签的设置(设置FB标签中使用的局部标签)

局部标签

4,FB程序的创建

5,FB程序的转换(调用)

为什么要自己创建FB模块(小编自己的)


什么是FB模块?

        FB是"Function Block"(功能块)的缩写,它是一种可重复使用的程序单元,可以被多次调用并集成到更大的控制程序中。FB通常用于解决重复的控制问题或在不同控制任务之间共享代码

        FB模块一般是由PLC制造商提供的预先编写的FB代码,它负责执行特定的控制函数,并展示该函数的输入和输出信息。FB模块可以包括各种控制功能,例如逻辑运算、加、减、乘、除、计数、定时和比较等。

        使用FB模块具有多种优点。首先,它可以促进PLC程序的重用性和模块化,从而提高编程效率和整体控制系统的可维护性。其次,FB模块的封装性使得其易于测试、调试和优化

        在使用FB模块时,控制工程师只需要将其嵌入到PLC程序中,并为其指定输入和输出参数,该块就可以完成指定的控制功能。PLC制造商通常会提供一些常见的FB模块,以便用户直接使用,也可以自己编写自定义的FB模块,以实现特定的控制需求。

什么是FC模块? 

        FC模块是PLC中的一个术语,它代表"Function Chart"(功能图表)。FC是一种图形化的编程语言,用于描述程序执行的流程和逻辑

        FC模块是由PLC制造商提供的预先编写的FC代码,它主要用于描述程序的执行步骤和条件。FC模块可以包含一系列的步骤或动作,这些步骤可以是顺序的、并行的、交替的或循环的

        FC模块的目的是将程序的逻辑和控制流程可视化,并且更易于理解和调试。使用FC模块,控制工程师可以通过连接和配置不同的功能块来构建程序。这些功能块可以是输入/输出逻辑、计算函数或其他控制操作,可帮助实现复杂的自动化控制。

        通过在FC模块中定义各个步骤的条件和操作,并将它们按照需要的顺序连接在一起,控制工程师可以创建一个整体的控制逻辑。这种模块化的方法使得程序更容易理解、维护和修改。

        同时,FC模块还可以提供诊断和运行时监视功能,帮助控制工程师对程序的执行进行实时监测和分析。

二者有什么区别?

        小编用下表来显示区别

FB与FC区别
FBFC
英文名称function blockfunction
中文名称函数功能块函数
实例化(就是需不需要名称需要不需要
背景数据块(是否一直分配内存需要不需要
监控调试可以不可以
内存释放情况变量每一次调用完也不会释放,变量值有累计的效果(类似C语言的static命名的变量),相同的输入会出现不同的输出。变量每一次调用完就被会释放,变量值没有累计的效果(类似C语言的普通变量),相同的输入会有确定的输出。
嵌套情况FB可以调用FB/FCFC可以调用FC,不可以调用FB(因为FB运行需要一直分配内存)
重复调用可以可以

FB模块如何使用?

1,创建FB的工程

        创建工程,选择好系列,要点击标签

         新建FB模块

2,新建FB数据

        创建查看自己的FB。 

3,局部标签的设置(设置FB标签中使用的局部标签)

局部标签中的变量名称含义
VAR内部变量
VAR_CONSTANT常量(不能改变)
VAR_INPUT输入类型变量
VAR_OUTPUT输出类型变量
VAR_IN_OUT既有输入也有输出类型变量(起保停常用)

        例,起保停:对于小编设置的起保停程序,需要二个输入,一个输出(启动和暂停,一个输出有保持作用)

数据类型

        

数据类型详解
序号数据类型位大小数值类型数值范围常熟实例
1BOOL,布尔1

布尔运算

二进制

八进制

十六进制

FALSE/TRUE

2#0~2#1

8#0~8#1

16#0~16#1

TURE

2#1

8#1

16#1

2Byte,字节8

二进制

八进制

十六进制

无符号整数(USINT)

有符号整数(SINT)

2#0~2#1111_1111

8#0~8#377

16#~16#ff

0~255

-128~-127

2#1111_1111

8#100

16#18

55

-55

3word,字16

二进制

八进制

十六进制

无符号整数(UNT)

有符号整数(iNT)

2#0~2#1111_1111_1111_1111

8#0~8#377_777

16#~16#ffff

0~65535

-32768~-32767

2#1111_1111_1111_1111

8#377_777

65535

-32767

4Dword32

二进制

八进制

十六进制

无符号整数(UDNT)

有符号整数(DiNT)

2#0~2#(32个1)

8#0~8#377_777_777_777

16#0~16#ffff_ffff

0~429467295

-214783648~-2147483647

2#(32个1)

8#377_777_777_777

429467295

-2147483647

局部标签

        只能该程序能读取,其他程序查看不了!!!

4,FB程序的创建

        使用标签进行编辑

5,FB程序的转换(调用)

        点击F4对程序进行转换。       

        

为什么要自己创建FB模块(小编自己的)

        

创建自己的FB模块可以带来多种优点和好处:

1. 代码重用性:通过创建自己的FB模块,你可以将常见的控制功能抽象为可重用的代码单元。这样,在不同的项目或任务中,你可以简单地调用和集成这些模块,而无需从头开始编写相同的代码。这大大提高了编程效率,减少了重复劳动。

2. 模块化和可维护性:自己创建的FB模块可以使PLC程序更加模块化和结构化。每个模块专注于特定的功能,易于理解和管理。如果需要更改或优化某个功能,只需修改对应的模块而无需改动整个程序,这提高了程序的可维护性。

3. 抽象和封装:通过自己创建FB模块,你可以将复杂的控制逻辑和算法进行抽象,隐藏内部细节,只暴露必要的输入和输出接口。这样,使用这些模块的人员不需要了解底层实现细节,而只需关注功能的调用和结果。

4. 代码可读性和可理解性:自己创建的FB模块可以使用自己熟悉的命名和注释规范,使代码更加易读、易理解和易于维护。其他团队成员或后续维护人员可以更快地理解你的代码意图,减少沟通成本和错误发生的概率。

5. 适应特定需求:自己创建的FB模块可以完全适应你的特定需求和控制任务。你可以根据项目的要求,定制和优化功能模块,实现更高的性能、灵活的配置和精确的控制。

尽管自己创建FB模块需要额外的时间和努力,但它可以提供更好的可重用性、模块化和可维护性,提高代码的可读性和适应特定需求。这对于长期复杂的控制项目来说是非常有价值的。

        

  • 21
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
三菱PLC(可编程逻辑控制器)是工业自动化领域中常用的控制设备之一,通过使用函数块(FB)编写数据模块,可以提高控制系统的灵活性和可维护性。 首先,我们需要定义数据模块的功能和数据结构。假设我们要编写一个温度控制数据模块,其中包含了当前温度、设定温度以及控制器的工作状态。 在三菱PLC的编程软件中,创建一个新的函数块,并为其命名为"TemperatureControl"。进入函数块编辑界面后,我们可以开始定义数据结构。 首先,我们添加个输入参数: 1. CurrentTemperature(当前温度):定义数据类型为实数型,用于表示当前的温度数值。 2. SetTemperature(设定温度):也是实数型,用于表示期望的温度数值。 3. ControllerStatus(控制器状态):定义数据类型为布尔型,表示控制器的开关状态。 接下来,添加一个输出参数: 1. ControlOutput(控制输出):实数型,用于输出控制器的输出信号。 在函数块中,我们可以编写控制逻辑,根据当前温度和设定温度的比较结果,来判断控制器的行为。例如,当当前温度小于设定温度时,控制器应该输出一个正向控制信号以增加温度;而当当前温度大于设定温度时,控制器应该输出一个反向控制信号以减少温度。 最后,我们将控制输出作为函数块的输出参数,在主程序中可以使用该函数块,并将相应的输入参数传入,以获取控制器输出的信号。 通过使用三菱PLC的函数块(FB)来编写数据模块,我们可以将控制逻辑和数据结构封装起来,提高了代码的可读性和可维护性。这样,当需要修改控制逻辑或者增加新功能时,只需要修改对应的函数块即可,而不需要改动主程序。同时,使用函数块可以更方便地在不同的程序中重复利用,提高了工程的效率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

韶光不负

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值