01
题目
由于西门子PLC本身并没有带求立方根的指令,我们用SCL来写一个求立方根的FB块。
02
分析
利用牛顿迭代法求立方根,通过迭代次数可以带近正确的值,迭代次数越多,求出的值越准确
利用牛顿迭代法可推导出求立方根公式如下
x = (2 * x + num / (x * x)) / 3.0
具体推导过程可参考网上搜索:C#求立方根牛顿迭代法。这里就不再详细解释了。有兴趣的朋友 可以到网页自行搜索了解
03
程序
X是被求数,Y是结果,由于要不断迭代,在此设置为INOUT类型
SCL程序:
程序大体就是根据上面2中推出出的公式来指导编程,利用FOR循环进行循环迭代次数。
在这里要强调,由于迭代次数越多,会占用大量PLC扫描时间,所以,在实际应用中,迭代次数尽量小于1000
在OB1中调用程序如下:
审核编辑:刘清
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
plc
+关注
关注
4974文章
12250浏览量
454853 -
SCL
+关注
关注
1文章
238浏览量
16866
原文标题:西门子SCL语言编程系列讲37-写立方根FB块
文章出处:【微信号:PLC 工控微课,微信公众号:PLC 工控微课】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
如何用DMA来写一个SPI SRAM
我试图用DMA来写一个SPI SRAM。我已经成功地用StudioExchange 16BIT命令编写了SPI,所以SPI被正确地设置了。我
发表于 05-11 15:27
自己封装的1200,1500PLC通过工艺轴方式控制伺服电机的FB块资料分享
该FB块一个块就可以实现伺服的上电,使能,相对定位,绝对定位,JOG运行,回原控制(包括碰到极限反找原位功能),以及故障清除和伺服状态显示等
发表于 06-28 06:21
工业电机控制MCU的相关资料分享
在工业应用中,电力成本和装配操作的停工时间会降低厂商的收益。关于电机性能提升的控制如何直接影响效率和收益的一个工业例子就是:将一个工业抽水机中的阀用
发表于 11-04 07:46
介绍一个使用SCL语言编写的电机控制函数块
电机控制在实际项目中经常使用,一般的电机控制程序块都是具有启动、保持、停止的功能。 今天这篇文章给大家介绍一个使用SCL语言编写的电机
发表于 03-09 17:02
SCL与STL的区别是什么?SCL常见问题及解决办法!
OB,FC,FB,DB,UDT。在 S7 程序中,S7-SCL 块可以与其它STEP7 编程语言生成的块互相调用。S7-SCL 可以被编译成 STL, S7-SCL 生成的块也可以作为
根号计算器在线计算怎么用
首先,我们来了解一下根号的概念和基本原理。在数学中,根号是表示某个数的平方根、立方根及其他根的数学符号。常见的根号符号是一个具有横线的V字形符号,根号下面是被开方的数,例如√9表示2的平方根,∛27
评论