LOGIC FB介绍

<< 点击显示目录 >>

主页  轴控开发使用手册 > 轴控应用 > 18.ACOPOS功能块 >

LOGIC FB介绍

 

1.基本信息

编写人

穆珊珊

审核人

(检查,测试,注释)

应用归属

运动控制

软件信息

 

硬件信息


其他

 

版本信息

修改内容

修改人

V1.00

创建

穆珊珊

 

 

 

 

2. 简介

LOGIC:逻辑运算

该功能块最多可以连接4个输入进行逻辑运算。逻辑运算的运算形式由模式决定。

3. ParID

ParID名字

缩写

访问方式

数据类型

数据范围

初始值

描述

LOGIC_MODE

m

RD,WR

UI2

0-65535

0

功能模式,逻辑运算

LOGIC_IN1_PARID

*x1

RD,WR

UI2

<ParID>,0

0

输入1的ParID(指向输入值1)

LOGIC_IN2_PARID

*x2

RD,WR

UI2

<ParID>,0

0

输入2的ParID(指向输入值2)

LOGIC_IN3_PARID

*x3

RD,WR

UI2

<ParID>,0

0

输入3的ParID(指向输入值3)

LOGIC_IN4_PARID

*x4

RD,WR

UI2

<ParID>,0

0

输入4的ParID(指向输入值4)

LOGIC _VALUE

y

RD,(WR)

UI1

0,1

0

结果输出

WR:用于设置已定义的输出值

 

4. 功能

clip0187

输入值x1、x2、x3和x4是逻辑性关联的,即所有的值只要非0就认为是逻辑1。逻辑操作的结果在输出端输出为1或0。模式m决定了逻辑的模式,可以从两种方式理解:

1.作为常量,确定一个基本的逻辑功能(AND, OR, NOT等)

2.以“位编码”的方式作为逻辑操作的真值表。在既定模式下,m的每个位对应于该模式下不同输入时的一个结果值。例如,m=6时,以二进制表示为0110,bit2代表在x2=1,x1=0时在m=6时的结果,即为1。

两输入下的所有功能模式的y的真值表,模式0-15:

bit

x2

x1

m=0

y=0

m=1

NOR

m=2

m=3

NOTx2

m=4

m=5

NOTx1

m=6

EXOR

m=7

NAND

m=8

AND

m=9

EXNOR

m=10

y=x1

m=11

m=12

y=x2

m=13

m=14

OR

m=15

y=1

0

0

0

0

1

0

1

0

1

0

1

0

1

0

1

0

1

0

1

1

0

1

0

0

1

1

0

0

1

1

0

0

1

1

0

0

1

1

2

1

0

0

0

0

0

1

1

1

1

0

0

0

0

1

1

1

1

3

1

1

0

0

0

0

0

0

0

0

1

1

1

1

1

1

1

1

NOR:或非。当输入存在逻辑1时,输出逻辑0。当输入都是逻辑0时,输出逻辑1。

NOT:非。对输入取反。输入为逻辑0时输出逻辑1,输入为逻辑1时输出逻辑0。

EXOR:异或。输入相同时输出为逻辑0,输入相异时输出逻辑1。

NAND:与非。当输入存在逻辑0时,输出逻辑1。当输入都是逻辑1时,输出逻辑0。

AND:与。当输入都为逻辑1时,输出逻辑1。当输入存在逻辑0时,输出逻辑0。

EXNOR:异或非。输入相同时输出为逻辑1,输入相异时输出逻辑0。

 

4输入下的部分功能模式的y的真值表:

bit

x4

x3

x2

x1

m=1

NOR

m=0x7FFF

NAND

m=0x8000

AND

m=0xFFFE

OR

m=0xF888

(x1ANDx2)

OR

(x3ANDx4)

m=0xEEE0

(x1OR)

AND

(x3OR)

0

0

0

0

0

1

1

0

0

0

0

1

0

0

0

1

0

1

0

1

0

0

2

0

0

1

0

0

1

0

1

0

0

3

0

0

1

1

0

1

0

1

1

0

4

0

1

0

0

0

1

0

1

0

0

5

0

1

0

1

0

1

0

1

0

1

6

0

1

1

0

0

1

0

1

0

1

7

0

1

1

1

0

1

0

1

1

1

8

1

0

0

0

0

1

0

1

0

0

9

1

0

0

1

0

1

0

1

0

1

10

1

0

1

0

0

1

0

1

0

1

11

1

0

1

1

0

1

0

1

1

1

12

1

1

0

0

0

1

0

1

0

0

13

1

1

0

1

0

1

0

1

0

1

14

1

1

1

0

0

1

0

1

0

1

15

1

1

1

1

0

0

1

1

1

1

 

注意:

关闭状态下输入强制为0(初始状态)。

ParID:CONST_I4_ONE(逻辑1)和CONST_I4_ZERO(逻辑0)也可用作输入。

运行中,模式和输入都可以切换。如果切换的话,需要确保当功能块的输入或模式改变时,转换状态能在一个组合逻辑之内完成。

当输入关联R4类型参数时,只有当浮点值达到精确的0.0时才认为是逻辑0。所有bit(符号位,指数位,小数位)都必须是0。例如以下的浮点值也会被认为是逻辑1:1.1754943508222875E-38F, -1.1754943508222875E-38F, -0.0, NAN

5. 例子

判断一个状态值的后4位是否都为1。结合之前BIT 功能块一起。

clip0188