0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

西门子博途示例:组态具有访问保护的按钮

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 2023-08-04 09:45 次阅读

逻辑运算符用于布尔变量、常数和简单的、借助比较运算符构成的逻辑表达式的逻辑运算。

运算符 运算数的数量 说明
NOT 1 逆转
AND 2 逻辑 “ 与 ”
OR 2 逻辑“ 或”
EXOR 2 异 “ 或 ”

逻辑运算的运算数必须为 BOOL 类型。结果同样始终为 BOOL 类型。下表显示了可能存在的运算的结果:

操作 NOT A A AND B A OR B A EXOR B
A = TRUE B = TRUE FALSE TRUE TRUE FALSE
A = TRUE B = FALSE FALSE FALSE TRUE TRUE
A = FALSE B = TRUE TRUE FALSE TRUE TRUE
A = FALSE B = FALSE TRUE FALSE FALSE FALSE

该表也适用于用位运算符进行的运算。

示例 即使多个运算也是允许的。

...

DECL BOOL A,B,C

...

A=TRUE ;A=TRUE

B =NOTA ;B=FALSE

C = (A AND B)OR NOT (B EXORNOTA) ;C=TRUEA = NOTNOT C ;A=TRUE

...

位运算符

位运算符依次运算整数,方法是依次逻辑运算其单个位。运算的结果等于逻辑运算符的结果。

位值 1 相当于 TRUE。

位值 0 相当于 FALSE。

运算符 运算数的数量 说明
B_NOT 1 位逆转
B_AND 2 位的与运算
B_OR 2 位的或运算
B_EXOR 2 位的异或运算

位运算符可以应用到 INT 和 CHAR 数据类型上。

INT 在 KRL 中有 32 位,必须注明正负号。CAHR 为 8 位,不必注明正负号。

对于带整数值的 B_AND、B_OR 和 B_EXOR 的以下示例,得出正数(最高位= 0)。与无正负号的值一样,可以直接将结果换算为十进制。

通过“00 […]”表示运算数前面的 28个零。

B_AND

ed081018-3206-11ee-9e74-dac502259ad0.png

示例:整数值 5 和 12 的运算

B_OR

ed1cbf5e-3206-11ee-9e74-dac502259ad0.png

示例:整数值 5 和 12 的运算

B_EXOR

ed319b86-3206-11ee-9e74-dac502259ad0.png

示例:整数值 5和 12 的运算

B_NOT

对于该整数示例,通过运算得出一个负数 (最高值位 = 1)。因此,无法用与无正负号数字相同的方式将结果换算为十进制。

ed3fda20-3206-11ee-9e74-dac502259ad0.png

示例:带整数值 10的 B_NOT

为了可以使用户理解机器人控制系统换算的十进制结果,则他必须了解二补数的解释规则。这些规则不是本文的对象。

可以如下确定用注明正负号的运算数进行 B_NOT 运算的十进制结果:

1.运算数加 1的十进制值

2.更换正负号

其他示例

...

DECL INT A

...

A = 10B_AND9 ;A=8

A = 10B_OR 9 ;A=11

A = 10B_EXOR9 ;A=3

A =B_NOT 197 ;A=-198

A =B_NOT'HC5' ;A=-198

A =B_NOT'B11000101' ;A=-198

A =B_NOT "E" ;A=154

...

设定位并检查位:

用 B_AND和 B_OR可以有针对性地将比特序列的单个位设定为 1或 0。剩余的位保持不更改。

用 B_AND 可以将单个位设定为 0。

用 B_OR可以将单个位设定为 1。此外,可以检查单个位是否为1或 0。示例:

存在一个宽度为 8 位的数字输出端。该输出端可通过 INT 变量 DIG 响应。将位 1、2 和 6 设定为 0:

DIG = DIG B_AND 'B10111001'

将位 0、2、3 和 7 设定为 1:

DIG = DIG B_OR 'B10001101'

检查是否已将位 0 和 7 设定为 1。如是,则 my_result 变为 TRUE:

DECL BOOL my_result
...
my_result = DIG B_AND ('B10000001') > 0

运算符的优先级

优先级给出运算符在一个指令内执行运算符的顺序。

优先级 运算符
1 NOT; B_NOT
2 *; /
3 +; -
4 AND; B_AND
5 EXOR; B_EXOR
6 OR; B_OR
7 ==, <>; <, >, <=, >=

原则上适用:

首先编辑括起来的表达式。

未括起来的表达式按照其优先级进行分析。

从左向右分析用相同优先级的运算符进行的运算。

数学标准功能

功能 数值范围自变量 数值范围结果
ABS(X)
总和
REAL_MIN…REAL_MAX 0 …REAL_MAX
SQRT(X)
平方根
0 …REAL_MAX 0 …REAL_MAX
SIN(X)
正弦
REAL_MIN…REAL_MAX -1 …+1
COS(X)
余弦
REAL_MIN…REAL_MAX -1 …+1
TAN(X)
正切
REAL_MIN…REAL_MAX REAL_MIN…REAL_MAX
ACOS(X)
反余弦
-1 … +1 0 …+180
ATAN2(Y,X)
反正切
REAL_MIN…REAL_MAX -180 …+180

所有函数的数据类型:REAL。所有自变量的数据类型:REAL。


绝对值 ABS(X) 计算 X 的总和。

示例:

B = -3.4

A = 5*ABS(B) ;A=17.0

平方根 SQRT(X) 计算 X 的平方根。

示例:

A = SQRT(16.0801) ;A=4.01

正弦 SIN(X) 计算角度 X 的正弦。

示例:

A = SIN(30) ;A=0,5

余弦 COS(X) 计算角度 X 的余弦。

示例:

B = 2*COS(45) ;B=1.41421356

正切 TAN(X) 计算角度 X 的正切。

示例:

以下总和的正切无穷:

 ±90°

 +90° + k*180° (其中 k = ± 整数)

如果尝试一个这样的值,这将导致错误信息

C = TAN(45) ;C=1.0

反余弦 ACOS(X) 是 COS(X) 的反函数。

示例:

A = COS(60) ;A=0.5

B = ACOS(A) ;B=60

反正弦

对于SIN(X)的反函数反余弦,没有预定义函数。但是,基于公式SIN(X) =COS(90°-X)可以很容易就计算出反正弦。

示例:

A=SIN(60) ;A=0.8660254
B=90-ACOS(A) ;B=60

反正切

角度正切的定义是直角三角形的邻边(X)除以对边(Y)。如果两个侧边的长度已知,则可以用反正切计算邻边和斜边之间的角度。

对于全圆,起决定性作用的是 X和 Y的正负号是什么。如果只考虑商,则用反正切只能计算 0°和 180°之间的角度。通常,这在袖珍计算器时也是如

此:正值的反正切得出一个0°和 90°之间的角度。负值的反正切得出一个90° 和 180° 之间的角度。

通过用正负号指定 Y 和 X 明确地确定了位于该角度中的四分之一圆。由此也可以计算四分之一圆 III 和 IV 中的角度。

示例:

A=ATAN2(0.5,0.5) ;A=+45
B=ATAN2(0.5,-0.5) ;B=+135
C=ATAN2(-0.5,-0.5) ;C=-135
D=ATAN2(-0.5,0.5) ;D=-45

ed56d982-3206-11ee-9e74-dac502259ad0.png

在函数 ATAN(Y,X)中使用X 和 Y






审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制系统
    +关注

    关注

    41

    文章

    5966

    浏览量

    108771
  • 机器人
    +关注

    关注

    206

    文章

    27064

    浏览量

    201465
  • 正弦波
    +关注

    关注

    11

    文章

    562

    浏览量

    54339
  • 西门子
    +关注

    关注

    92

    文章

    2853

    浏览量

    113800
  • 计算器
    +关注

    关注

    16

    文章

    425

    浏览量

    36519

原文标题:西门子博途示例: 组态具有访问保护的按钮

文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    专业回收二手314-6CH04西门子模块 收购西门子123-2JB03触摸屏

    ***同步微信QQ1173415480专业回收二手314-6CH04西门子模块 收购西门子123-2JB03触摸屏回收西门子模块、312-1AE14模块,313-6CG04模块314-1AG14模块
    发表于 04-28 11:14

    北京回收西门子组态软件

    回收西门子变频器SINAMICS V10系列变频器回收西门子触摸屏回收西门子组态软件回收
    发表于 05-27 12:16

    西门子1200码垛机程序应用

    西门子1200码垛机、立体仓库程序(带注释),程序应用到变频器、触摸屏、步进电机、工业机器人、视觉相机。
    发表于 09-03 07:42

    西门子电机保护选型表

    西门子电机保护选型表
    发表于 11-28 11:50 20次下载

    博世和西门子哪个好_博世和西门子的关系

    本文开始阐述了博世和西门子的关系以及分析了西门子和博世哪个更好,其次分析了西门子和博世的冰箱哪个更好,最后介绍了博世和西门子家电集团在中国的发展。
    的头像 发表于 04-04 09:30 15.2w次阅读

    西门子的触摸屏出现故障时该怎么解决

    西门子触摸屏功能强大全面,具备超强的过载能力,以满足广泛的应用场合。西门子触摸屏具有自我保护的功能,过电压、欠电压保护,过热、短路
    发表于 09-12 11:29 7864次阅读

    西门子PLC的硬件组态详细资料说明

    本文档的主要内容详细介绍的是西门子PLC的硬件组态详细资料说明
    发表于 01-17 16:15 40次下载

    西门子PLC和组态王通讯设置

    西门子PLC和组态王通讯设置说明。
    发表于 05-06 16:35 42次下载

    通信教程:西门子S7-1200PLC与组态

    通信教程:西门子S7-1200PLC与组态
    的头像 发表于 02-23 15:11 3777次阅读

    西门子PLC编程软件功能及安装

    西门子PLC编程软件官方版是一款专为西门子产品打造的PLC编程工具。西门子PLC编程软件最新版支持所有SIMATIC控制器进行组态和编程操作,西门子
    发表于 04-17 14:31 7次下载
    <b class='flag-5'>西门子</b>PLC编程软件功能及安装

    西门子PLC通讯知识汇总

    西门子 200 plc 使用 MPI 协议与组态王进行通讯时需要哪些设置?
    的头像 发表于 05-06 10:35 1222次阅读
    <b class='flag-5'>西门子</b>PLC通讯知识汇总

    西门子S7-1500与PC机的OPC通讯组态

    本文将介绍西门子S7-1500与PC机的OPC通讯组态
    的头像 发表于 05-18 09:14 6395次阅读
    <b class='flag-5'>西门子</b>S7-1500与PC机的OPC通讯<b class='flag-5'>组态</b>

    西门子软件PLC与组态软件通讯实例

    【导读】分享西门子虚拟PLC与组态软件iFIX之间TCP/IP仿真通讯。
    的头像 发表于 06-19 11:00 1199次阅读
    <b class='flag-5'>西门子</b>软件PLC与<b class='flag-5'>组态</b>软件通讯实例

    智嵌物联串口服务器与西门子Win CC软件通信演示

    模拟用户的TCP客户端软件(主站),通过串口服务器设备实现西门子Win CC组态软件对ModBus RTU设备寄存器的访问
    的头像 发表于 02-21 09:58 645次阅读
    智嵌物联串口服务器与<b class='flag-5'>西门子</b>Win CC软件通信演示

    大型西门子PLC程序结构示例

    大型的西门子PLC程序结构示例
    的头像 发表于 07-06 10:34 787次阅读