博途SCL趣味编程:随机数法计算圆周率(2)

轻松学TIA博途SCL编程之程序初始化

轻松学TIA博途SCL编程之变量改变统计

秒懂S7-1500PLC读写SQL微软数据库

1. 编程要求与名词解释:

随机投点法(随机数法或蒙特卡洛法)计算圆周率。蒙特卡洛是一个地名,位于赌城摩纳哥,象征概率。蒙特卡洛(Monte Carlo)方法是由大名鼎鼎的数学家冯·诺伊曼提出的,诞生于上世纪40年代美国的“曼哈顿计划”。原理是通过大量随机样本,去了解一个系统,进而得到所要计算的值。

2. 问题分析与算法设计:

一个正方形内部相切一个圆,圆和正方形的面积之比是π/4。在这个正方形内部,随机产生n个点(这些点服从均匀分布),计算它们与中心点的距离是否大于圆的半径,以此判断是否落在圆的内部。统计圆内的点数,与n的比值乘以4,就是π的值。理论上,n越大,计算的π值越准。

3. 定义变量。如下图:

为了提高计算精度,数据类型选择LReal。

4. 编写程序。如下图:

该方法得到的圆周率精度与投入的点的个数有关,一般个数越多精度越高。

5. 功能测试。如下图:

计算结果π为一个动态值。

6. 学习要点与知识总结:

学习IF…ELSE条件语句;

学习FOR循环语句;

学习组合赋值运算符的使用;

注意浮点数精度问题。

(成都瑞途电子有限公司 刘立峰<技术总监>》撰稿)

大家都在看

【视频】德国工程师是如何制作PLC柜的?

【视频】PROFINET为何比PROFIBUS更牛?

(0)

相关推荐

  • 计算圆周率的三种奇怪方法,有些“圆”藏得很深

    圆周率日被定为3月14日,为什么?因为π的前三位是3.14.得到π的值并不容易,有很多种方法可以计算出π.这篇文章我将分享一些我最喜欢的方法来获得这个伟大的数字.首先,从一个相当简单的测量方法开始(只 ...

  • 圆周率已算到几十万亿位,科学家还要继续,如此执着是为了什么?

    关于圆周率 圆周率相信大家都很熟悉,历史上众多数学家为了计算它的精确值,都付出了不懈的努力. 圆周率是圆的周长与直径之比,通常用希腊字母π来表示.它在数值上为3.141592--,是一个无限不循环小数 ...

  • 布丰投针实验详解

    1777年,法国数学家布丰(D,Buffon,1707年-1788年)提出了随机投针法并通过投针实验计算出了圆周率π的值,与刘徽的"割圆术"不同的是,随机投针法是利用概率统计的方法 ...

  • 博途SCL编程实例:滚动数据记录

    博途SCL编程实例:滚动数据记录

  • 搞懂这10条,博途SCL编程轻松入门!

    自动化与工程技术 致力于提供自动化.电气和工程技术.工程资讯及其它工程相关的软件与资料.114篇原创内容公众号(一)要点与应用(1)SCL 编程语言SCL(Structured Control Lan ...

  • 博途SCL编程基本要素和语法!

    (一)要点与应用(1)SCL 编程语言SCL(Structured Control Language,结构化控制语言)是一种基于 PASCAL 的高级编程语言.这种语言基于标准 DIN EN 6113 ...

  • 博途SCL编程-批处理模拟量,爽歪歪!

    PLC发烧友 402篇原创内容 公众号 博途的间接寻址和S7-300/400大不一样.博途中的间接寻址主要用peek/poke指令,peek/poke指令不能用于优化的数据块.优化数据块可以用数组类寻 ...

  • TIA博途SCL编程,一建启停

    TIA博途SCL编程,一建启停

  • 博途SCL编程-批处理模拟量

    博途的间接寻址和S7-300/400大不一样.博途中的间接寻址主要用peek/poke指令,peek/poke指令不能用于优化的数据块.优化数据块可以用数组类寻址.这次的控制任务是模拟类的批量处理,s ...

  • TIA博途 西门子PLC 编程 伺服控制 开端

    在做PLC编程,自动化这个行业,伺服控制是抛不开的,想要将自动化做得更进一步,我们呢就必须将伺服控制原理,伺服控制,伺服马达....这些知识都必须掌握在手中,我接下来的几篇就会侧重讲一些伺服的知识. ...

  • 西门子博途SCL编制锁机催款程序

    关于启程 启程自动化培训成立于2012年,培训项目主打西门子PLC编程系统集成.工业机器人编程.EPLAN电气设计.视觉等培训与技术服务的机构.推荐高薪就业,越努力越幸运 1.首先硬件组态这里随便选择 ...

  • 博途SCL实现自定义ModbusRtu Over TCP功能块

    积木式上位机怎么设计? 高质量的PLC程序应该从何入手? 如何在西门子博途中实现工艺配方? 秒懂S7-1500PLC读写SQL微软数据库 分享一组污水处理3D画面,谈谈上位机设计原则! [导读]博途提 ...