「经验」在博途中 是否可以在 LAD与STL 语言之间进行切换

2024-03-06 16:28

本文主要是介绍「经验」在博途中 是否可以在 LAD与STL 语言之间进行切换,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

用惯了STEP7,准确来说是SIMATIC Manager进行编程开发的同学,在转战TIA portal后,通常会经历一段“晦涩”的过度期,包括指令库的微小变动、工作界面的大改等等。

又比如:“在博途中,怎么快速切换LAD与STL语言”

在SIMATIC Manager下,通过执行菜单命令“View->”,可以让当前的编程视图在梯形图、语句表和功能块图之间进行切换,如下图所示。

祝贺已超 1 万工控人加入 PLC 工业自动化精 英群

也就是说,在SIMATIC Manager下,下图两段程序实现的逻辑是相同的,只不过编程视图不同而已。

当然,LAD或FBD编写的程序可以切换为STL,但STL下编写的程序,一般而言,即使切换为LAD或FBD视图,其显示的仍是STL。这是因为在STEP7 V55 以及之前版本中,LAD,FBD等编程语言,首先经过编译会编程STL 的代码,最后才编译成CPU 可执行的OS 机器代码,所以在STEP7 V55 以及之前版本LAD,STL,FBD 在一个程序块的编程中,可以自由切换。

在TIA Portal中,也可以进行编程语言的切换,但进一步研究就会发现,这种切换仅限于LAD和FBD之间的切换,它们和STL之间就不能切换了。如下图所示,FC1是用LAD编写的程序,则它可以切换为FBD;而FB600是用STL编写的程序,你会发现,在“语言“的选项下面,只有STL一项,意味着不能进行编程语言的切换。

这是因为,博途的编程架构(STEP7 V11及以后的版本)已经完全变了。在STEP7 V11之后,SCL,FBD,STL,LAD等几种语言是完全平行,都会被直接编译成CPU的OS 可执行的机器代码,一旦某个程序块在建立后的编程语言就确定了,以后就不能再改成其他编程语言了。

那么,问题就来了,我们在应用中,确实看到在一个块中,既有STL程序段,又有LAD程序段,如下图所示。

这又是怎么实现的呢?

TIA Portal中,STL和LAD(或FBD)确实可以“共存“于一个”块“中,但有一定的前提条件。

  1. 首先,该“块“的编程语言应该为”LAD“或”FBD“;如果块在创建之初是选择用STL编程的,则该块中所有的程序都只能用STL进行编辑;

  2. 在由“LAD“或”FBD“创立的块中,右键单击程序编辑区,弹出的快捷选项中,选择”插入STL程序段“,既可在LAD或FBD程序中,插入一段STL程序。

祝贺已超 1 万工控人加入 PLC 工业自动化精 英群

文章来自网络,已找不到原创,侵权立删

 

西门子TIA博途

1.S7-PLCSIM Advanced使用入门

2.使用PLCSIM Advanced仿真博途PID

3.使用PLCSIM Advanced仿真博途Modbus_TCP

4.使用PLCSIM Advanced仿真博途S7-1500 OPC UA

西门子TIA博途SCL学习

1.西门子PLC用TIA博途SCL语言写的一个产生随机实数的指令块(学习1)

2.TIA博途SCL编程学习2_sin(x)

3.TIA博途SCL编程学习3_两个数的计算器

4.TIA博途SCL编程学习4_选择法排序

5.TIA博途SCL编程学习5_一串数字的加法

6.TIA博途SCL编程学习6_数组逆序

7.西门子TIA博途S7-1200/1500学习7间接寻址指令PEEK的使用

8.TIA博途SCL编程学习8_计算N天后的日期

9.TIA博途SCL编程学习9_百鸡百钱

10.TIA博途SCL编程学习10_字符串日期转换成DATE数据类型

11.TIA博途SCL编程学习11_多条件与运算

12.TIA博途SCL编程学习12_数组求和两种算法比较

13.TIA博途SCL编程学习13_电机正反转加点动

14.TIA博途SCL编程学习14_填表格

15.TIA博途SCL编程学习15_素数判断

16.TIA博途SCL编程学习16_歌德巴赫猜想验证

17.TIA博途SCL编程学习17_选择法排序

18.TIA博途SCL编程学习19_分数段人数统计

19.TIA博途SCL编程学习19_分数段人数统计

20.TIA博途SCL编程学习20_换钱

21.TIA博途SCL编程学习21_4个数字中的3个数字的排列组合

22.TIA博途SCL编程学习22_奖金计算

23.TIA博途SCL编程学习23_求最大公约数和最小公倍数

24.TIA博途SCL编程学习24_一串数字的加法

25.TIA博途SCL编程学习25_找出1-1000之间的完数

26.TIA博途SCL编程学习26_小球反弹高度

27.TIA博途SCL编程学习27_猴子吃桃

28.TIA博途SCL编程学习28_一个分数序列加法

29.TIA博途SCL编程学习29_五位数分解

30.TIA博途SCL编程学习30_捡鸡蛋

31.TIA博途SCL编程学习31_HelloWorld

32.TIA博途SCL编程学习32_幂

33.TIA博途SCL编程学习33_水仙花数

34.TIA博途SCL编程学习34_完数

35.TIA博途SCL编程学习35_另类比大小

36.TIA博途SCL编程学习36_自然数反转

37.TIA博途SCL编程学习37_数字加密

38.TIA博途SCL编程学习38_三种方法求最大公约数

39.TIA博途SCL编程学习39_友好数

40.TIA博途SCL编程学习40_平方回文数

41.TIA博途SCL编程学习40_斐波那契数列

42.TIA博途SCL编程学习41_大数乘法

43.TIA博途SCL编程学习42_三位数的组合

44.TIA博途SCL编程学习43_新娘和新郎

45.TIA博途SCL编程学习44_韩信点兵

46.TIA博途SCL编程学习45_过桥问题

47.TIA博途SCL编程学习46_分鱼问题

48.TIA博途SCL编程学习47_跳跃游戏

49.TIA博途SCL编程学习47_狼追兔子

50.TIA博途SCL编程学习50_扑克牌顺子判断

51.TIA博途SCL编程学习51_邮票组合

52.博途SCL编程实例泵顺启逆停的状态机

53.TIA博途SCL编程学习52_邮票组合抓捕交通肇事犯

54.TIA博途SCL编程学习53_求车速

55.TIA博途SCL编程学习54_公式法计算圆周率(Π的近似值)

WinCC中的画面模板应用实例及其组态实现方法

罗克韦尔AB软件学习视频下载

WinCC 输入/输出域没有所需要的预定义输出格式该怎么办?

在WinCC中如何使用VBS读取变量归档数据到EXCEL

西门子S7-1500作为智能设备共享功能

WinCC冗余项目使用

S7-1500 和S7-400 S7双边通信(TIA博途和STEP7)

这篇关于「经验」在博途中 是否可以在 LAD与STL 语言之间进行切换的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/780634

相关文章

使用Jackson进行JSON生成与解析的新手指南

《使用Jackson进行JSON生成与解析的新手指南》这篇文章主要为大家详细介绍了如何使用Jackson进行JSON生成与解析处理,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 核心依赖2. 基础用法2.1 对象转 jsON(序列化)2.2 JSON 转对象(反序列化)3.

C#使用SQLite进行大数据量高效处理的代码示例

《C#使用SQLite进行大数据量高效处理的代码示例》在软件开发中,高效处理大数据量是一个常见且具有挑战性的任务,SQLite因其零配置、嵌入式、跨平台的特性,成为许多开发者的首选数据库,本文将深入探... 目录前言准备工作数据实体核心技术批量插入:从乌龟到猎豹的蜕变分页查询:加载百万数据异步处理:拒绝界面

Python使用自带的base64库进行base64编码和解码

《Python使用自带的base64库进行base64编码和解码》在Python中,处理数据的编码和解码是数据传输和存储中非常普遍的需求,其中,Base64是一种常用的编码方案,本文我将详细介绍如何使... 目录引言使用python的base64库进行编码和解码编码函数解码函数Base64编码的应用场景注意

Java进行文件格式校验的方案详解

《Java进行文件格式校验的方案详解》这篇文章主要为大家详细介绍了Java中进行文件格式校验的相关方案,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、背景异常现象原因排查用户的无心之过二、解决方案Magandroidic Number判断主流检测库对比Tika的使用区分zip

Java使用Curator进行ZooKeeper操作的详细教程

《Java使用Curator进行ZooKeeper操作的详细教程》ApacheCurator是一个基于ZooKeeper的Java客户端库,它极大地简化了使用ZooKeeper的开发工作,在分布式系统... 目录1、简述2、核心功能2.1 CuratorFramework2.2 Recipes3、示例实践3

基于Flask框架添加多个AI模型的API并进行交互

《基于Flask框架添加多个AI模型的API并进行交互》:本文主要介绍如何基于Flask框架开发AI模型API管理系统,允许用户添加、删除不同AI模型的API密钥,感兴趣的可以了解下... 目录1. 概述2. 后端代码说明2.1 依赖库导入2.2 应用初始化2.3 API 存储字典2.4 路由函数2.5 应

Vue中组件之间传值的六种方式(完整版)

《Vue中组件之间传值的六种方式(完整版)》组件是vue.js最强大的功能之一,而组件实例的作用域是相互独立的,这就意味着不同组件之间的数据无法相互引用,针对不同的使用场景,如何选择行之有效的通信方式... 目录前言方法一、props/$emit1.父组件向子组件传值2.子组件向父组件传值(通过事件形式)方

Python使用date模块进行日期处理的终极指南

《Python使用date模块进行日期处理的终极指南》在处理与时间相关的数据时,Python的date模块是开发者最趁手的工具之一,本文将用通俗的语言,结合真实案例,带您掌握date模块的六大核心功能... 目录引言一、date模块的核心功能1.1 日期表示1.2 日期计算1.3 日期比较二、六大常用方法详

Python使用DrissionPage中ChromiumPage进行自动化网页操作

《Python使用DrissionPage中ChromiumPage进行自动化网页操作》DrissionPage作为一款轻量级且功能强大的浏览器自动化库,为开发者提供了丰富的功能支持,本文将使用Dri... 目录前言一、ChromiumPage基础操作1.初始化Drission 和 ChromiumPage

C语言中的数据类型强制转换

《C语言中的数据类型强制转换》:本文主要介绍C语言中的数据类型强制转换方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C语言数据类型强制转换自动转换强制转换类型总结C语言数据类型强制转换强制类型转换:是通过类型转换运算来实现的,主要的数据类型转换分为自动转换