[西门子] TIA博途SCL编程学习47_跳跃游戏

[复制链接]
查看373 | 回复0 | 2024-5-16 14:25:07 | 显示全部楼层 |阅读模式
1 | 题目


给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。编写程序判断你是否能够到达最后一个位置。
示例1:
输入:[2, 3, 1, 1, 4];
输出:TRUE(可以到达最后一个位置);
解释: 我们可以先跳1步,从位置0到达位置1,然后再从位置1跳3步到达最后一个位置。
示例2:
输入: [3, 2, 1, 0, 4];
输出:FALSE(不可以到达最后一个位置);
解释: 无论怎样,你总会到达索引为3的位置,但该位置的最大跳跃长度是0,所以你永远不可能到达最后一个位置。


2 | 设计分析


本题目不能一开始就从最大长度进行跳跃,应该一次次遍历每个数组元素,采用贪心法,#statMaxStep表示每次能够到达的最远距离,比较#statMaxStep和#tempI + #nums[#tempI],求出上一步的最优解,当#statMaxStep小于#tempI的时候证明已经不可能到达终点了,直接返回false,当循环变量#tempI走到末尾时则证明可以达到最后的位置。



3 | 创建功能或功能块


创建功能块FB,命名为“JumpGame”。




4 | 定义接口变量


具体接口变量定义见下图:
定义了可变长(泛型或可变限值)长整数类型一维数组,数据类型为#Array
  • of DInt,作为跳跃数据。定义布尔型变量#resultQ作为判断结果输出,TRUE表示可以跳跃,FALSE表示不可以跳跃。



    5 | 程序代码


    编写程序代码。如下图:


    当最大步#statMaxStep小于#tempI时,不能跳跃到最后位置,直接返回程序。当FOR循环变量能够到达最后时,说明可以跳跃到最后位置。



    6 | 代码测试


    在循环OB中调用FB-“JumpGame”。如下图:


    定义了全局数据块(数组DB)GdbJumpGameData作为实参传递给形参,注意数组DB的实参表达方式。
    转至在线并监控程序。如下图:


    上图为跳跃数组数据:3、2、1、0、4。



    上图为结果输出,#resultQ输出为FALSE,不可以跳跃到最后。



    上图为跳跃数组数据:2、3、1、1、4。



    上图为结果输出,#resultQ输出为TRUE,可以跳跃到最后。




    7 | 总结


    学习可变长一维数组的定义和使用;
    学习使用FOR循环语句;
    学习使用IF条件语句;
    学习RETURN在程序中的作用;
    学习在OB中调用FB和实参的传递方式。
    - END


    冗余PLC类型

    S7-1500冗余系列CPU目前一共有四种,基本参数及订货号如下:

    1. TIA 博途与SIMATIC S7-1500可编程控制器
    百页彩页介绍,清晰产品定位



    2. SIMATIC S7-1500T 工艺型CPU
    运动型CPU,关键数据快速查询



    3. SIMATIC S7-1200 可编程控制器
    图解1200,结构清楚明了



    众所周知,PLC是工业自动化的核心,所以CPU也是大家关注的重点。其实对于一个完整的自动化系统来说,IO模块是必不可少的组成部分,通过IO才能将传感器的信号传递给PLC,并将PLC的处理结果返回执行机构,从而完成控制功能。

    西门子分布式IO家族ET 200系列在自动化领域的应用也非常广泛。根据防护等级有以下两种分类:

    • IP20,柜内使用的IO模块
    • IP65/67,无需控制柜的高防护IO模块



    以一条饮料生产过程的装配线为例,可以看到不同IO模块对应的应用场景。

    <hr>下面根据防护等级的划分,做进一步详细介绍。01
    SIMATIC ET 200 IP20
    IP20柜内产品中,包括ET 200MP和ET 200SP。
    ① S7-1500 I/O和
    ET 200MP
    ET 200MP是S7-1500 I/O分布式扩展,模块具有更高IO密度,单站最多扩展32个模块,适合集中式机柜。


    ②③ ET 200SP
    紧凑型 I/O 系统,功能丰富,单站最大支持64个模块,适合分布式安装,接入生产线上比较分散的信号,节约电缆布设。


    ④ ET 200SP分布式控制器
    分布式智能从站,具有ET 200SP控制器和ET 200SP开放式控制器两类控制器,可以就近实现控制功能。




    02

    SIMATIC ET 200 IP65/67
    IP65/67柜外IO产品,通常称为高防护等级产品。

    ⑤⑥ ET 200AL
    紧凑型块状IO系统。可正装或侧装,也可直接安装在生产线的铝型材框架上、机械手臂、拖链上等。


    ⑦ ET 200pro
    可进行机架式扩展的IO模块,并可扩展电机启动器和变频器模块,如应用于物流传输系统,置于传送带旁。


    ⑧ ET 200eco PN


    以下内容均来自西门子官方

    • 工业在线支持SIOS(Siemens Industry OnlineSupport)
      https://support.industry.siemens.com/cs/cn/zh/ps
      该网站的正确打开方式可转至以下链接:
      西门子软件手册下载、问题查询等保姆级教程

    <hr>

    安装篇

    • 哪里可以获得TIA Portal V17的STEP 7、WinCC和Startdrive当前试用软件?

      https://support.industry.siemens.com/cs/cn/zh/view/109798506
    • 在哪里可以找到TIA Portal产品版本的手册和软件更新?
      https://support.industry.siemens.com/cs/cn/zh/view/109779999
    • STEP 7 (TIA Portal) 版本与 Mirosoft Windows 操作系统版本之间的兼容性如何?

      https://support.industry.siemens.com/cs/cn/zh/view/51120883
    • 可以在 Windows11 中安装TIA Portal 吗?

      https://support.industry.siemens.com/cs/cn/zh/view/109806872

    • 如何禁止“在安装任何程序之前请重新启动电脑”?的信息

      https://support.industry.siemens.com/cs/cn/zh/view/8861819
    • 安装STEP 7 Professional / Basic V17 的必要条件是什么?

      https://support.industry.siemens.com/cs/cn/zh/view/50204569
    • 系统分区空间不足的情况下如何安装 TIA Portal 和 TIA Portal 更新包?

      https://support.industry.siemens.com/cs/cn/zh/view/109482855
    • 如何在SIMATIC IPCs 安装 .NET Framework 3.5 ? (例如 WinCC TIA Portal,STEP 7 TIA Portal 或 WinCC V7)

      https://support.industry.siemens.com/cs/cn/zh/view/109745988

    博途STEP7篇

    • 如何在STEP 7 (TIA Portal) 中更新硬件目录?(安装HSP)

      https://support.industry.siemens.com/cs/cn/zh/view/54163658
    • 如何在STEP7 (TIA Portal)中安装GSD文件以及不同版本的STEP7 (TIA Portal)所支持的GSD文件版本?

      https://support.industry.siemens.com/cs/cn/zh/view/109738401
    • 在STEP 7 (TIA Portal)的硬件目录中无法找到S7-1500 CPU的固件版本时,如何加载项目数据?https://support.industry.siemens.com/cs/cn/zh/view/109744163
    • 在TIA Portal 硬件目录中,如果没有CPU1511/1513/1511C/1512C的新订货号,如何组态?

      https://support.industry.siemens.com/cs/cn/zh/view/109760846


    • 打开一个STEP7 (TIA Portal)项目时,为什么会弹出产品缺少必要组件的信息?

      https://support.industry.siemens.com/cs/cn/zh/view/109739054


    博途WinCC篇

    • WinCC 脚本使用方法和技巧 (TIA Portal )

      https://support.industry.siemens.com/cs/cn/zh/view/57132412
    • WinCC (TIA 博途)提供了哪些 VBS 信息和 VBS 编程工具?

      https://support.industry.siemens.com/cs/cn/zh/view/59885894
    • 如何同时使用多台显示器显示WinCC (TIA Portal) Runtime Professional的画面?

      https://support.industry.siemens.com/cs/cn/zh/view/109744837
    • 为什么 WinCC Runtime V7.5 及更高版本或Professional V16 及更高版本归档数据库的片段比以前的版本大?

      https://support.industry.siemens.com/cs/cn/zh/view/109802716
    • 为什么在TIA Portal V16/ V17 中加载 HMI 镜像失败,并且提示错误消息“目标设备上安装了不同版本的组件。目标设备上存在较旧的不兼容固件镜像”?

      https://support.industry.siemens.com/cs/cn/zh/view/109781234
    • 如何远程访问WinCC 站点(WinCCV7 和 WinCCProfessional 和Unified)?

      https://support.industry.siemens.com/cs/cn/zh/view/78463889



    通信篇

    • 如何在两个TIA Portal项目中配置PROFIBUS/PROFINET通信
      https://support.industry.siemens.com/cs/cn/zh/view/109792607
    • 两个S7 CPU间如何组态和编程S7连接并通过“BSEND”和"BRCV"进行数据传输?

      https://support.industry.siemens.com/cs/cn/zh/view/18516182
    • 如何对 S7-1500 CPU 和 S7-1200 CPU 之间的 Modbus/TCP 通信进行编程和参数化 ?

      https://support.industry.siemens.com/cs/cn/zh/view/102020340
    • 如何使用STEP 7 ( TIA Portal ) 为 SIMATIC S7-1200 建立 MODBUS - RTU 通信?

      https://support.industry.siemens.com/cs/cn/zh/view/47756141
    • SIMATIC和SITOP产品如何支持OPC UA通信?

      https://support.industry.siemens.com/cs/cn/zh/view/109763315
    • 使用 S7-1500 和 S7-1200 做 OPC UA 服务器有哪些系统限制?

      https://support.industry.siemens.com/cs/cn/zh/view/109755846
    • 如何在STEP7 (TIA Portal)中组态CP343-1作为PROFINET I-device ?

      https://support.industry.siemens.com/cs/cn/zh/view/109744406
    • 在STEP 7 (TIA Portal)里哪些 IO 控制器和 IO 设备支持下列功能:IRT, 优先启动, MRP, MRPD, PROFIenergy, 共享设备, MSI/MSO, 智能设备, 等时同步模式,系统冗余和组态控制?

      https://support.industry.siemens.com/cs/cn/zh/view/102325771
    • NAT 解决 IP 冲突问题

      https://support.industry.siemens.com/cs/cn/zh/view/109803423
    • WinCC (V7 or Professional) OPC 通讯的配置要求?

      https://support.industry.siemens.com/cs/cn/zh/view/109763316


    授权篇

    • 有关SIMATIC软件许可证的FAQs和下载概览
      https://support.industry.siemens.com/cs/cn/zh/view/109804591
    • 如何恢复受损的许可证密钥和授权?

      https://support.industry.siemens.com/cs/cn/zh/view/772175
    • 尽管安装了浮动授权,仍提示试用授权过期,如何停用试用授权?
      https://support.industry.siemens.com/cs/cn/zh/view/24200966
    • 关于 WinCC(TIA Portal) 授权的一些实用信息

      https://support.industry.siemens.com/cs/cn/zh/view/74796111

    技术支持篇

    • 如何向西门子工业技术支持部门发送诊断技术问题所需的文件?

      https://support.industry.siemens.com/cs/cn/zh/view/18194667
    • 如何通过西门子工业技术支持进行远程会话?

      https://support.industry.siemens.com/cs/cn/zh/view/106665159



    以上链接也整理了PDF格式,后续会不断更新至该文档。下载链接:



    免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
  • 本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?注册哦

    x
    您需要登录后才可以回帖 登录 | 注册哦

    本版积分规则