[西门子] TIA博途SCL编程学习53_求车速

[复制链接]
查看108 | 回复0 | 2024-4-16 09:05:48 | 显示全部楼层 |阅读模式
1 | 题目


一辆以固定车速行驶的汽车,司机在上午10点看里程表上的读数是一个对称数(即这个数从左往右和从右往左完全是一样的)为95859 ,两个小时候后里程表上出现了一个新的对称数,该数仍为五位数。编写程序计算两小时后里程表上新的读数和该车的行驶速度。



2 | 设计分析


从题目已知条件中可以知道对称数是第一位与第五位一样,第二位和第四位一样。对于此类的问题,用穷举法就可以解决,找到初值条件95859,结束条件就是当出现新的对称数的时候,程序就结束。



3 | 创建功能或功能块


创建功能块FB,命名为“CarSpeed”。




4 | 定义接口变量


具体接口变量定义见下图:
定义数据类型为双整型数的一维数组变量#statDecoms保存里程表5位数的拆解结果。



5 | 程序代码


编写程序代码。如下图:


外层FOR循环的循环变量初始值从95859的后一个数95860开始,至9999五位数结束。对五位数拆解后,用数字对称的条件进行判断,找到结果后即可退出或返回程序,此处使用EXIT和RETURN均可。



6 | 代码测试


在循环OB中调用FB-“CarSpeed”,调用时会自动创建背景数据块,命名为“InstCarSpeed”,该背景数据块可以用来监视和修改数据。转至在线并监控程序。如下图:
求得里程表新的读数为95959,行驶速度为50千米/小时。



7 | 总结


学习使用FOR循环语句;
学习使用FOR循环嵌套;
学习使用IF条件语句;
学习EXIT语句在程序代码中的作用。
- END -






巨控智能网关GRM300/311/321/331选型表


功能介绍
* GRM300系列支持不同协议统一转成MODBUS TCP,RTU或者OPC
* 可从组态软件,DCS等OPCSERVER取数据转换成MODBUS,WEB接口
* 最多5路隔离485并行采集,解决轮询速度和抗干扰问题
* 对MODBUS从站协议实现不完整的仪表采集可完美兼容
* 支持不同PLC或者仪表之间交换数据,PLC不用增加通讯程序
* 交换数据可区分优先级,阀值,最大限度利用通讯带宽
* 支持上位机和PLC不在一个网段采集,支持64位浮点
* 支持局域网WEB接口读取数据,适合第三方开发
* 丰富的逻辑和函数,可进行数据处理,计算,统计
* 通讯自诊断和故障恢复机制,具备多种调试手段
* 带权限控制,支持只读设置和程序下载保护,保证设备安全

公众号:  巨控电子( 扫码关注 )      

   微信技术群:PLC工业自动化社区 (加好友标注:姓名-城市)


西门子WINCC


  • 博途WinCC专业版C/S架构入门指南
  • 咔!咔!咔!自动/停止/手动 - WinCC中的三档转换
  • 按图索数-WinCC中的“地图+数据”
  • WinCC与S7-1500 R/H系统通信
  • 通过Web Service与WinCC交互数据
  • 可缩放矢量图形(SVG)在WinCC中的应用
  • WinCC V7.5典型架构及选型指南
  • 自动语音播报WinCC报警消息
西门子TIA博途
1.S7-PLCSIM Advanced使用入门
2.使用PLCSIM Advanced仿真博途PID
3.使用PLCSIM Advanced仿真博途Modbus_TCP
4.使用PLCSIM Advanced仿真博途S7-1500 OPC UA
西门子TIA博途SCL学习
1.西门子PLC用TIA博途SCL语言写的一个产生随机实数的指令块(学习1)
2.TIA博途SCL编程学习2_sin(x)
3.TIA博途SCL编程学习3_两个数的计算器
4.TIA博途SCL编程学习4_选择法排序
5.TIA博途SCL编程学习5_一串数字的加法
6.TIA博途SCL编程学习6_数组逆序
7.西门子TIA博途S7-1200/1500学习7间接寻址指令PEEK的使用
8.TIA博途SCL编程学习8_计算N天后的日期
9.TIA博途SCL编程学习9_百鸡百钱
10.TIA博途SCL编程学习10_字符串日期转换成DATE数据类型
11.TIA博途SCL编程学习11_多条件与运算
12.TIA博途SCL编程学习12_数组求和两种算法比较
13.TIA博途SCL编程学习13_电机正反转加点动
14.TIA博途SCL编程学习14_填表格
15.TIA博途SCL编程学习15_素数判断

16.TIA博途SCL编程学习16_歌德巴赫猜想验证

17.TIA博途SCL编程学习17_选择法排序

18.TIA博途SCL编程学习19_分数段人数统计

19.TIA博途SCL编程学习19_分数段人数统计

20.TIA博途SCL编程学习20_换钱

21.TIA博途SCL编程学习21_4个数字中的3个数字的排列组合

22.TIA博途SCL编程学习22_奖金计算

23.TIA博途SCL编程学习23_求最大公约数和最小公倍数

24.TIA博途SCL编程学习24_一串数字的加法

25.TIA博途SCL编程学习25_找出1-1000之间的完数

26.TIA博途SCL编程学习26_小球反弹高度

27.TIA博途SCL编程学习27_猴子吃桃

28.TIA博途SCL编程学习28_一个分数序列加法

29.TIA博途SCL编程学习29_五位数分解

30.TIA博途SCL编程学习30_捡鸡蛋

31.TIA博途SCL编程学习31_HelloWorld

32.TIA博途SCL编程学习32_幂
33.TIA博途SCL编程学习33_水仙花数

34.TIA博途SCL编程学习34_完数
35.TIA博途SCL编程学习35_另类比大小
36.TIA博途SCL编程学习36_自然数反转
37.TIA博途SCL编程学习37_数字加密

38.TIA博途SCL编程学习38_三种方法求最大公约数

39.TIA博途SCL编程学习39_友好数
40.TIA博途SCL编程学习40_平方回文数
41.TIA博途SCL编程学习40_斐波那契数列
42.TIA博途SCL编程学习41_大数乘法
43.TIA博途SCL编程学习42_三位数的组合
44.TIA博途SCL编程学习43_新娘和新郎
45.TIA博途SCL编程学习44_韩信点兵
46.TIA博途SCL编程学习45_过桥问题
47.TIA博途SCL编程学习46_分鱼问题
48.TIA博途SCL编程学习47_跳跃游戏
49.TIA博途SCL编程学习47_狼追兔子
50.TIA博途SCL编程学习50_扑克牌顺子判断
51.TIA博途SCL编程学习51_邮票组合
52.博途SCL编程实例泵顺启逆停的状态机
53.TIA博途SCL编程学习52_邮票组合抓捕交通肇事犯






免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则