Step7编程语言&编程概述&结构

一、Step7中三种基本编程语言
1:梯形图 LAD
梯形图(LAD): 类似继电器控制电路图,适合于熟悉 继电器控制电路的用户使用。

3:语句表 STL
功能块图( FBD ):使用类似数字电路的逻辑功能图,适合于有数字电路基础的编程人员使用。

2:功能块图 FBD
语句表( STL )类似于计算机汇编语言的文本语言,适 合经验丰富的程序员使用

二、编程语言转换


三、编程方法概述

1. 用户程序中的块结构

2.用户程序结构

2.1 线性程序(线性编程)
所谓线性程序结构,就是将整个用户程序连续放置在一个循环程序块(OB1)中块中的程序按顺序执行,CPU通过反复执行OB1 来实现自动化控制任务。这种结构和PLC所代替的硬接线继电器 控制类似,CPU逐条地处理指令。事实上所有的程序都可以用线 性结构实现。线性结构一般适用于相对简单的程序编写。

2.2 分部式程序(分部编程、分块编程)
所谓分部程序,就是将整个程序按任务分成若干个部分,并分别放置在不同的功能(FC)、功能块(FB)及组织块中,在一个 块中可以进一步分解成段。在组织块OB1中包含按顺序调用其他块的指令,并控制程序执行。

在分部程序中,既无数据交换,也不存在重复利用的程序代码。功 能(FC)和功能块(FB)不传递也不接收参数,分部程序结构的编程效率比线性程序有所提高,程序测试也较方便,对程序员的要求也不太高。对不太复杂的控制程序可考虑采用这种程序结构。

2.3 结构化程序(结构化编程或模块化编程)
所谓结构化程序,就是处理复杂自动化控制任务的过程中,为了使 任务更易于控制,常把过程要求类似或相关的功能进行分类,分割 为可用于几个任务的通用解决方案的小任务,这些小任务以相应的 程序段表示,称为块(FC或FB)。OB1通过调用这些程序块来完 成整个自动化控制任务。

结构化程序的特点是每个块(FC或FB)在OB1中可能会被多次调 用,以完成具有相同过程工艺要求的不同控制对象。这种结构可简 化程序设计过程、减小代码长度、提高编程效率,比较适合于较复 杂自动化控制任务的设计。

3.利用Shift移位指令的线性化编程方法

Shift移位指令
(1)基本规则
功能:将输入端IN对应存储单元中内容向左或向右逐位移动;
可以移位的数据类型: 字-16位无符号 双字-32位无符号 整型-16位有符号 双整型-32位有符号
移位的方向: L-Left左移 R-Right右移
规则:无符号数左移位、右移位; 有符号数右移位; 移位以后空出来的位补0;
(2)梯形图:

(3)符号表示:
EN:Enable 允许输入,使能输入
IN:待移位的原数据
N:要移位的位数
ENO:Enable Out,使能输出
OUT:移位操作的结果
(4)指令使用注意
1、IN、OUT数据类型要与移位指令名称中的类型一致才可移位
2、N的表示方法 可用BCD码表示:C#x 范围0~15 可用16进制数表示:W#16#X
范围:W#16#1~W#16#FFFF
可用存储单元来表示:MWx
3、明确存储器中数据的存放格式

四、模块化编程和结构化编程
(1)模块化编程
一、概述
模块化编程中OB1起着主程序的作用, FC或FB控制着不同的过程任务,相当于主 循环程序的子程序。模块化编程中被调用 块不向调用块返回数据。

二、模块化程序的执行

• 主程序和被调用的块之间没有数据的交换;
• 组织块OB1中的指令决定模块化编程的块的执行;
• 当组织块调用其他块时,被调用的程序块执行到块的结束,然后系统返回到程序块的调用点。

(2)结构化编程
一、概述
将复杂的任务分解成一些能够反映过程的工艺、功能或可以反复使用的单独解决的小任务,这些任务由相应的程序块来表示;

某些程序块可以用来实现相同或相似的功能;

调用者可以是各种逻辑块,包括用户编写 的OB、FB、FC和系统提供的SFB与SFC;

被调用的块是OB之外的逻辑块;

通用的数据和代码可以共享。

二、结构化编程的优点

各单个任务块的创建和测试可以相互独立地进行;
通过使用参数,可将块设计得十分灵活;
块可以根据需要在不同的地方以不同的参数数据记录进行调用;
在预先设计的库中,能够提供用于特殊任务的“可重用”块。

综上则是对Step7编程的基础,首先说明了三种编程语言。又对编程方法进行了概述,三种编程方式以及Shift移位指令的线性化编程方法。最后说明了模块化编程和结构化编程概述。

Step7编程语言编程概述结构相关推荐

  1. 1-1 Java基础和编程概述

    计算机操作系统 现今的操作系统可以分为3大类: Windows:95.98.2000.XP.vista.7.8.10 Unix: 服务器端 Linux:免费开源(CentOS.Ubuntu.Debia ...

  2. 【梅哥的Ring0湿润插入教程】第一课Windows内核/驱动编程概述及应用、商业驱动保护软件原理分析...

    [梅哥的Ring0湿润插入教程] Email:mlkui@163.com 转载请注明出处,谢绝喷子记者等,如引起各类不适请自觉滚J8蛋! 第一课Windows内核/驱动编程概述及应用. 商业驱动保护软 ...

  3. CUDA并行编程概述

    前往我的主页以获取更好的阅读体验 CUDA并行编程概述 - DearXuan的主页https://blog.dearxuan.com/2021/11/15/CUDA%E5%B9%B6%E8%A1%8C ...

  4. MindSpore API编程概述

    MindSpore API编程概述 总体架构 MindSpore是一个全场景深度学习框架,旨在实现易开发.高效执行.全场景覆盖三大目标,其中易开发表现为API友好.调试难度低,高效执行包括计算效率.数 ...

  5. 【Android】Android网络编程概述

    Android网络编程概述 原文来自:http://blog.csdn.net/kieven2008/article/details/8210737 首先,应该了解的几个问题: 1)Android平台 ...

  6. c语言程序设计顺序结构题目,C语言编程 顺序结构编程练习题目

    C语言顺序结构编程练习题目 C语言编程 顺序结构题目 题目1计算摄氏温度 输入一个华氏温度,要求输出摄氏温度.公式为:C=5/9(F-32),输出要有文字说明,取2位小数. 式中:C表示摄氏温度,F表 ...

  7. 应用软件安全编程概述

    声明 本文是学习GB-T 38674-2020 信息安全技术 应用软件安全编程指南. 下载地址 http://github5.com/view/624而整理的学习笔记,分享出来希望更多人受益,如果存在 ...

  8. JSP房地产门户管理系统myeclipse开发mysql数据库BS模式java编程网页结构详细设计

    一.源码特点      JSP 房地产门户管理系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,开发环境为TOMCAT7.0,Myeclipse8 ...

  9. C语言编程题—结构体—设计程序,已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中。请编写函数 fun:找出成绩最低的学生记录,通过形参返回主函数(规定只有一个最低分

    4 C语言编程题--结构体 **设计程序,已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中.请编写函数 fun,函数的功能是:找出成绩最低的学生记录,通过形参返回主函数(规定只有 ...

最新文章

  1. ASP.NET Aries JSAPI 文档说明:AR.Form、AR.Combobox
  2. linux怎么配置命令模式,Linux几种命令模式
  3. python面向对象编程的优点-Python面向对象编程——总结面向对象的优点
  4. html单页面显示多个文章,从单个html页面上的多个django应用模型获取数据
  5. androidtabhost缓存_Android学习笔记(一):TabHost存放多个Activity
  6. 12036火车票小工具,希望大家都能顺利回家
  7. 数学有多震撼?!我真的没有在开车!
  8. J2Pay –实施网关
  9. 结构化元素、网页结构和iframe内联框架
  10. win10保护色设置及还原
  11. 通用-描述文件找不到
  12. Premiere Pro cc 2019 学习笔记
  13. 服务器硬件规格常用查看命令——CPU相关命令
  14. 11款学习编程好玩的浏览器游戏
  15. 股票接口数据获取方式
  16. win10如何修改计算机管理员的名字,hp win10系统管理员名称改了后怎么改回去
  17. 【后端教程】低代码起势,为什么它有希望“干掉”开发? | 甲子光年
  18. [原创] PS人物数码照片处理技法大全视频教程
  19. 一把王者的时间带你拿捏计算机原码、反码、补码的计算原理
  20. Endnote引用文献时期刊名称不缩写问题-论文投稿经验总结-第1期

热门文章

  1. SpringBoot有关数组对象转JSON
  2. 开源风控系统radar部署
  3. android系统扫盲教程
  4. 首页布局跟小程序如何配置Iconfont—小程序入门与实战(七)
  5. makefile文件的创建
  6. 2022金三银四前端面试题预告
  7. PySide2与PyQt5区别
  8. windows10安装redis数据库,并设置开机自启动
  9. java tcp门禁_门禁控制器的TCP/IP协议功能
  10. PTA 帅到没朋友 (20分)