倍福PLC学习:编写函数块及简单调试
今天这篇文章我们来编写一个简单的电机控制函数块,并将其下载到倍福CX5020控制器进行测试,以熟悉TwinCAT3环境下基本的编程步骤。
打开TwinCAT3(TC3),按照上一篇文章《倍福PLC学习:扫描EtherCAT I/O子站并测试模块》介绍的内容新建工程项目并扫描EtherCAT子站,项目名称为“motorControl”。
在左侧项目树的“PLC”节点下右键单击,选择“Add new item(添加新内容)”,添加新的PLC项目,命名为“CPU1”,如下图所示:
添加完成后,“CPU1 Project”中会有POUs、GVLs、DUTs等文件夹。其中,POU是程序组织单元,GVL是全局变量列表,UDT是用户自定义变量。我们计划编写一个电机控制的函数块,因此在“POUs”文件夹右键单击,在弹出的对话框中选择“添加(Add)”→“POUs”,如下图所示:
在弹出的“添加POU”对话框中,选择功能块(Function Block),命名为motorControl,编程语言选择ST语言,如下图所示:
在函数块motorControl中声明变量,其中:
VAR_INPUT是输入变量,包含电机启动 、停止信号;VAR_OUTPUT是输出变量,包含输出信号(线圈);VAR_STAT是静态变量,包含沿信号检测变量;如下图所示(注意变量不区分大小写):
编写代码如下图所示:
为了分配参数,我们新建全局变量列表:GVL1,并添加变量如下图所示:
接下来要在主函数(MAIN)中调用电机控制函数块。首先在变量列表中声明motorControl的实例,命名为“motorControl1”,编写控制代码如下图所示:
单击工具栏“Build”→“Build CPU1”编译PLC程序。
单击工具栏“PLC”→“Download”下载PLC程序。
单击工具栏“PLC”→“Login”登录到在线状态,或者工具栏的快捷按钮,如下图所示:
如果PLC处于未运行状态,单击“Start(启动)”使其运行。本例程为了给出电机启动信号,我们将全局变量“startBtn1”的“Prepared Value”设置为“TRUE”,并单击工具栏“Write Values”按钮将该值写入到PLC中,如下图所示:
此时可以看到主程序MAIN中电机输出信号为TRUE,如下图所示:
如果想让函数输出对应到实际的输出模块,在“CPU 1 instance”→“PLCTask Outputs”→“GVL1.coilKM”,将其对应到“Linked to”指定的输出模块即可。
好了,关于倍福PLC编写函数块及简单调试就先介绍到这里。
PLC编程基础四则运算及逻辑运算指令的使用
使用PLC进行数据处理的过程中,常常会用到四则运算指令及逻辑运算指令。PLC处理数据计算的主要指令如下表所示:
PLC数据运算指令
1、加法运算指令
2个值进行加法运算(A+B=C)后得出结果的指令。
加法运算指令使用方法
S1:加法运算的数据,或是保存数据的字软元件编号
S2:加法运算的数据,或是保存数据的字软元件编号
D:保存加法运算结果的字软元件编号
加法指令使用示例
2、减法运算指令
2个值进行减法运算(A-B=C)后得出结果的指令。
减法运算指令使用方法
S1:减法运算的数据,或是保存数据的字软元件编号
S2:减法运算的数据,或是保存数据的字软元件编号
D:保存减法运算结果的字软元件编号
减法指令使用示例
3、乘法运算指令
2个值进行乘法运算(A×B=C)后得出结果的指令。
乘法运算指令使用方法
S1:乘法运算的数据,或是保存数据的字软元件编号
S2:乘法运算的数据,或是保存数据的字软元件编号
D:保存乘法运算结果的起始字软元件编号
乘法指令使用示例
4、除法运算指令
2个值进行除法运算[A÷B=C…(余数)]后得出结果的指令。
除法运算指令使用方法
S1:除法运算的数据,或是保存数据的字软元件编号(被除数)
S2:除法运算的数据,或是保存数据的字软元件编号(除数)
D:保存除法运算结果的起始字软元件编号(商、余数)
5、加一指令
指定的软元件数据中加“1”(+1加法)的指令。
加一运算指令使用方法
D:保存被加一数据的字软元件编号
使用加法指令实现加一功能:
使用加法指令实现加一功能
6、减一指令
指定的软元件数据中减“1”(-1加法)的指令。
减一运算指令使用方法
D:保存被减一数据的字软元件编号
7、逻辑与指令
2个数值进行逻辑与运算的(AND)指令。
与运算指令使用方法
S1:逻辑与数据或保存数据的字软元件编号
S2:逻辑与数据或保存数据的字软元件编号
D:保存逻辑与结果的字软元件编号
与运算真值表
8、逻辑或指令
2个数值进行逻辑或运算的(OR)指令。
或运算指令使用方法
S1:逻辑或数据或保存数据的字软元件编号
S2:逻辑或数据或保存数据的字软元件编号
D:保存逻辑或结果的字软元件编号
或运算真值表
9、逻辑异或指令
2个数值进行逻辑异或运算的(XOR)指令。
异或运算指令使用方法
S1:逻辑异或数据或保存数据的字软元件编号
S2:逻辑异或数据或保存数据的字软元件编号
D:保存逻辑异或结果的字软元件编号
(转载请注明来源函控自动化工程师头条号)
相关问答
plc例子函数与函数块有什么?
plc例子函数与函数块有一些区别。1,例子函数是一段预先定义好的代码,可以直接调用使用,能够完成特定的功能。它的主要作用是简化编程流程,提高编程效率。2,...
plc例子程序与函数有什么区别?
区别1.PLC例子程序和函数在使用方式和作用上有着不同。2.-PLC例子程序是一种宏观的、完整的解决方案,包含了多个指令的组合,用于实现特定的功能。它可以...
西门子plc模拟量编程实例?
以下是一个使用西门子PLC的模拟量编程示例:假设有一个温度传感器,将温度值转换为4-20mA模拟量信号,然后将信号输入到PLC的模拟量输入模块中。我们需要将输入的...
库卡机器人怎么写浮点数给plc?
库卡机器人(KUKARobot)和PLC(可编程逻辑控制器)通常用于自动化系统。确保机器人和PLC之间的数据传输正确是至关重要的。浮点数通常是指带小数点的数字,如3...
1200plc的编程方法有哪几个?
这个问题,不好回答。我只能说一下思路。控制都容易,温度传感器变送出4---20mA信号,给PLC模拟量模块,然后模拟量输出模块输出4---20mA信号给你要控制的设备...
plc模拟量万能公式?
PLC模拟量万能公式:```模拟量输出值=((模拟量输入值-模拟量输入最小值)/(模拟量输入最大值-模拟量输入最小值))(模拟量输出最大值-模拟量输出最小...
plc开关量计算公式?
PLC开关量计算公式需要根据具体的情况而定,但一般来说,可以通过采用二进制数的方式来表示开关量,其中0表示OFF状态,1表示ON状态。例如,一个8位的二进制数可...
plc码垛公式?
根据我的了解,PLC码垛公式可以根据具体的需求和操作流程进行定制,因此没有一个固定的公式。不过,在一般的码垛操作中,可以通过PLC编程实现以下步骤:1.确定...
急求三菱fx3g的plc没有计算三角函数的指令,如何解决?
急求三菱fx3g的plc没有计算三角函数的指令,如何解决三菱fx3g系列的plc是不支持三角函数指令的如正弦(SIN)、余弦(COS)、正切(TAN)以及反三角函数指令,这需要3U...
信捷PLC如何调用函数功能块?
您好,调用信捷PLC的函数功能块可以通过以下步骤实现:1.在编程软件中创建一个新的程序模块,或者打开一个已有的程序模块,并在其中添加需要调用的函数功能块...