TIA Portal:常量变量与运算符详解——设备级自动化编程核心技术

下载需积分: 46 | PDF格式 | 2.12MB | 更新于2024-08-07 | 74 浏览量 | 57 下载量 举报
收藏
在博途 TIA Portal 的高级编程中,常量、变量和运算符是程序设计的基础要素。常量与变量的区别在于,常量是在程序运行时已经确定且不可更改的数值,如标准大气压、煤气热值等,它们的存在有助于减少程序错误和后期维护的复杂性。在TIA Portal中,常量不占用PLC存储空间,定义时可以直接赋值,试图修改常量值会导致编译时错误。 变量根据作用域分为全局变量和局部变量。全局变量存储在PLC的I、Q、M和全局DB中,可以在整个PLC程序中访问,需要通过标签命名来引用,而局部变量则局限于特定的功能块(FB)或功能(FC)内,除非特别声明为static,否则不推荐跨FB/FC使用。在编程实践中,使用全局变量可以保持代码的可重用性和一致性,而局部变量则适用于短期存储临时数据或函数内部计算结果。 SCL(Structured Control Language)是TIA Portal的主要编程语言,它支持VBS(Visual Basic Scripting)、C和Siemens的专用脚本语言,这些都提供了不同的编程灵活性和性能。此外,博途还提供了配方、报表、OPC DA & UA通信、工厂数据中心等功能,以及与C#的交互能力,使得自动化编程更加高效。 基于设备-单元控制模型的编程技术是博途的一大亮点,它将自动化项目分解为一个个设备和工艺单元的控制模型,实现了面向组件编程的高级理念。这种方式不仅提高了编程效率,也提升了产品质量,使得在TIA Portal中能够快速实现中大型项目的自动化控制。 然而,尽管模块化编程是当前主流,如SIEMENS的APL和Rockwell的PlantPAx,但业界在编程理念上仍存在差异,许多厂商强调的是模块化而非深入的设计思想。在实际操作中,由于国内企业和工程项目的多样性,可能会出现不同标准和风格,因此在编程时需要考虑标准化和兼容性。 TIA Portal的高级编程通过常量、变量和运算符的有效管理,结合SCL和其他编程语言,以及面向组件的编程模型,为用户提供了一套高效、灵活且易于维护的自动化编程工具。
身份认证 购VIP最低享 7 折!
30元优惠券

相关推荐

filetype
目 录 第1章 OpenSceneGraph概述 1 1.1 OpenSceneGraph简介 2 1.1.1 什么是OpenSceneGraph 2 1.1.2 OpenSceneGraph的历史和发展 2 1.1.3 OSG中国 3 1.1.4 OSG组成模块 3 1.2 开发的预备知识 5 1.3 OSG的安装及编译 6 1.3.1 OSG的获取及安装 6 1.3.2 编译OSG 7 1.3.3 OSG邮件列表 13 1.4 OSG基础 14 1.4.1 开发环境设置 14 1.4.2 OSG中的HelloWorld工程 14 1.4.3 OSG实用工具——场景浏览器osgViewer 17 1.4.4 OSG实用工具——版本信息查看器 osgVersion 21 1.4.5 OSG实用工具——场景图形压缩归档工具 osgArchive 21 1.4.6 OSG实用工具——数据转换工具 osgConv 23 第2章 OpenSceneGraph数学基础 27 2.1 坐标系统 28 2.2 坐标系变换 29 2.2.1 世界坐标系-物体坐标系变换 30 2.2.2 物体坐标系-世界坐标系变换 30 2.2.3 世界坐标系-屏幕坐标系变换 32 2.3 向量、矩阵及四元数 34 2.3.1 向量 34 2.3.2 矩阵 35 2.3.3 四元数 36 2.3.4 矩阵与四元数之间的转换 37 第3章 场景的组织及渲染 41 3.1 OSG场景树 42 3.1.1 OSG场景树节点 42 3.1.2 OSG中的父节点与子节点 42 3.2 Geode 43 3.2.1 Billboard节点 43 3.2.2 布告板示例 44 3.3 Group 48 3.3.1 位置变换节点 48 3.3.2 位置变换节点示例 49 3.3.3 矩阵变换节点 50 3.3.4 矩阵变换节点示例 51 3.3.5 自动对齐节点 53 3.3.6 自动对齐节点示例 53 3.3.7 开关节点 56 3.3.8 开关节点示例 57 3.3.9 细节层次节点 58 3.3.10 细节层次节点示例 59 3.3.11 分页细节层次节点 61 3.3.12 分页细节层次节点示例 61 3.3.13 替代节点 63 3.3.14 替代节点示例 64 3.3.15 遮挡裁剪节点 66 3.3.16 遮挡裁剪节点示例 67 3.3.17 坐标系节点 70 3.3.18 坐标系节点示例 71 3.4 场景中节点的拷贝—— osg::CopyOp类 73 3.4.1 自定义场景拷贝示例(一) 73 3.4.2 自定义场景拷贝示例(二) 79 第4章 OSG中几何体的绘制 83 4.1 场景基本绘图类 84 4.2 基本几何体的绘制 86 4.2.1 几何体类 86 4.2.2 基本几何体绘制示例 87 4.2.3 索引绑定几何体绘制示例 90 4.3 使用OSG中预定义的几何体 93 4.3.1 osg::Shape类 93 4.3.2 osg::ShapeDrawable类 94 4.3.3 网格化类 94 4.3.4 预定义几何体示例 95 4.4 多边形分格化 97 4.5 几何体操作 101 4.5.1 简化几何体 102 4.5.2 简化几何体示例 102 4.5.3 Delaunay三角网绘制 104 4.5.4 Delaunay三角网绘制示例 105 4.5.5 三角带绘制 107 4.5.6 三角带绘制示例 108 4.5.7 生成顶点法向量 111 4.5.8 生成顶点法向量示例 112 第5章 渲染状态、纹理与光照 115 5.1 渲染状态 116 5.1.1 osg::StateSet类 116 5.1.2 渲染属性和渲染模式 117 5.1.3 状态继承 118 5.1.4 渲染状态示例 119 5.2 纹理映射 121 5.2.1 二维纹理映射 123 5.2.2 二维纹理映射示例 126 5.2.3 多重纹理映射 129 5.2.4 多重纹理映射示例 129 5.2.5 Mipmap纹理映射 131 5.2.6 Mipmap纹理映射示例 132 5.2.7 TextureRectangle纹理映射 138 5.2.8 TextureRectangle纹理映射示例 139 5.2.9 自动生成纹理坐标 142 5.2.10 自动生成纹理坐标示例 142 5.2.11 计算纹理坐标 144 5.2.12 计算纹理坐标示例 145 5.2.13 立方图纹理 149 5.2.14 立方图纹理示例 150 5.2.15 渲染到纹理 155 5.2.16 渲染到纹理示例 1
739 浏览量