设为首页
收藏本站
PLC技术网
开启辅助访问
切换到宽版
登录
注册哦
只需一步,快速开始
微信扫码登录
门户
Portal
论坛
BBS
导读
Guide
排行榜
Ranklist
搜索
搜索
本版
文章
帖子
用户
PLC论坛-全力打造可编程控制器专业技术论坛
»
论坛
›
工控技术交流区
›
『国外:三菱/西门子/欧姆龙/松下』
›
TIA博途SCL编程学习39_友好数
返回列表
发新帖
[西门子]
TIA博途SCL编程学习39_友好数
[复制链接]
383
|
0
|
2024-5-16 14:18:53
|
显示全部楼层
|
阅读模式
1 | 题目
友好数又叫亲和数,它指的是这样的两个自然数,其中每个数的真因数之和等于另一个数。例如,220的真因数是1、2、4、5、10、11、20、22、44、55和110,加起来得284,而284的真因数是1、2、4、71、142,加起来也恰好是220。那么284和220就是友好数。设计一个程序求2000以内的亲和数对。
2 | 设计分析
遍历求解2000以内自然数的真因数并求和,求和结果再次遍历求解真因数并求和,判断最终求和结果是否等于原自然数,是则这两个数为友好数,否则不是友好数。
3 | 创建功能或功能块
添加功能块FB,命名为:“FriendlyNumber”。
4 | 定义接口变量
具体接口变量定义见下图:
因为友好数为一组数对,所以预定义了一个10个元素的二维数组来存储结果。
5 | 程序代码
编写程序代码。如下图:
采用遍历的方式,由于对称的原因,求因子时只需要遍历一半就可以了。
6 | 代码测试
在循环OB中调用FB- “FriendlyNumber”,调用时会自动创建背景数据块,命名为“InstFriendlyNumber”,该背景数据块可以用来监视和修改数据。
转至在线并监控程序。如下图:
可以看到2000以内的友好数有220、284、1184、1210共四个。
7 | 总结
学习使用FOR循环语句;
学习FOR语句的循环嵌套;
学习使用IF...ELSE语句;
学习使用二维数组;
注意本例的程序结构,变量初始化的不同方法,特别注意使用临时变量时,一定要先赋值后使用。
巧用触摸屏 变量导入导出操作
01
HMI变量介绍
众所周知,变量是触摸屏和PLC通信的中间桥梁。触摸屏的变量主要分为内部变量和外部变量,内部变量和PLC没有任何关系,只能在触摸屏项目内部使用,只有运行系统处于运行状态时变量值才可用。外部变量是来自于PLC的变量,外部变量的值与PLC存储器中的过程值相对应,可以实现过程值的读取和写入操作。
02
HMI变量在哪儿定义?
通常我们会在触摸屏项目下的HMI变量表中定义项目所需的变量。当项目中变量较多时,不建议将所有变量都放在一个变量表中,可以根据不同的分类来创建多个变量表存放不同类别的变量。在使用过程中,就可以快速的定位和查找。在项目树中,每个HMI设备都有一个“HMI变量”文件夹。
项目中用到的变量都需要在HMI变量中定义,一定要遵循“先定义后使用”的原则。“HMI变量"文件夹默认包含“显示所有变量”、“添加新变量表”(用户自定义变量表)和”默认变量表”。“显示所有变量”表主要包括了HMI设备的所有变量和系统变量,该表不能删除、重命名或者移动。“添加新变量表”表支持创建多个用户自定义的变量表,以便根据需要对变量进行分组,该表支持重命名、整理合并为组或删除。用户自定义变量表如下图所示。
项目中的每个HMI设备都有一个默认变量表,该表无法删除或移动。默认变量表包含HMI变量和系统变量,如果添加变量时未对变量进行分组,添加的HMI变量都会被分配到默认变量表。
03
变量表导入导出操作
了解了HMI变量的相关概念,我们接下来进入正题。项目开发过程中如果变量数量较多,同时需要快速创建和集中定义变量属性,除了在相应变量表中逐个添加和设置外,其实我们还可以将现有的变量完整导出,利用Excel的强大编辑功能添加修改完成后再次导入即可,极大的节省了时间。
有了思路接下来我们来看具体操作。如下图所示,以一个含有6个变量的变量表Plant为例进行演示。首先可以在变量表的左上角点击导出按钮,之后按照期望的存放路径导出该变量表。
导出后的变量表主要结构如下图所示。依据这个变量表模板,我们就可以根据需求在Excel中进行增加、删除和修改变量属性等操作,但是切记下图红框中的模板首行是不能进行更改的,同时也不支持在表中随意添加列。
完成变量的编辑工作后需要导入到TIA Portal WinCC中,我们该如何操作呢?小伙伴们,关键步骤来了可得记仔细了。虽然变量导出时对变量表没有要求,但是在导入变量的时候,目前TIA Portal WinCC软件仅支持在“显示所有变量表”中导入,不支持在自定义的变量表和默认变量表中操作。如下图所示。
虽然都是在“显示所有变量表”中操作,但是小伙伴们也不用担心变量的分组问题,可以在Excel中预先分配好变量所在变量表的名称,导入时系统会自动创建变量表并且会将变量分配到指定的变量表中。例如在导出的变量表基础上新增了变量
“Motor3_Current”、“Motor3_Voltage”和“Motor_IntArray“,并且重新分配变量至变量表“Motor”,再次执行变量导入操作选择导入文件。
导入变量至TIA Portal WinCC中“显示所有变量”表中的变量信息如下图所示。
TIA Portal WinCC中会自动创建自定义变量表“Motor”,同时变量会被自动分配到变量表“Motor”,如下图所示。
04
变量表导入导出的注意事项
变量导入导出操作中的特点和注意事项如下:
导入变量时如果存在同名的对象,则使用已有对象。
导入变量时如果没有同名的对象,则创建具有该名称的对象。
对于用户自定义数据类型(UDT)HMI变量,不能通过Excel导出所有UDT的结构元素,导出表中只会出现较高级别的HMI变量,无法编辑其较低级别的元素。
以上内容均针对的是HMI变量的操作,由于导出的PLC变量表和数据块结构的不同,不支持直接导入到HMI
05
导出的变量表主要格式说明
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
注册哦
x
回复
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册哦
本版积分规则
发表回复
回帖后跳转到最后一页
巨控电子
回复楼主
返回列表
『国外:三菱/西门子/欧姆龙/松下』
『国产:台达/汇川/信捷产品交流区』