基于博图简单制作的计算器

首先我们先通过HMI来制作一个一个基础界面

 上面的IO域用来显示我们输入的数和结果,下面选用按钮来进行输入

 IO域的设置如上按钮我们通过按下和释放来实现对plc中程序的控制
例如以输入的7为例,按下为置位位,释放为复位位,其他按钮也同理

 接下来就要在plc中进行计算程序的编程了,首先要解决的就是数字的输入问题,我们以数字1为例
我们需要考虑不同的情况,其中包括整数部分的输入,小数部分的输入,以及切换下个变量后的输入。整数部分的输入我们思考运算逻辑就可以知道是将原数乘十再加上输入值,而小数部分就是每次加上更小一位的数,于是我们编出以下程序。

这里的变量1为iO域所绑定的量,也就是我们输入的量,而变量3呢,初始的时候为10,每次输入一位小数,就会乘10,这是为了输入小数用的,变量4是作为寄存位,后面在退格的时候会用到。小数点采用中继器的这种方式,在点击小数点后,会触发小数点中继器的自锁,从而进入小数点后位输入模式。


接下来就是加减乘除等基本运算的处理,也是采取类似于小数点这里的处理方式。

 因为这里iO域绑定的变量为变量1,所以这里在制作时将变量1原本的值赋给变量2,再把0赋值为变量1,这样我们就可以再借由变量1输入下一个值了,同时选择的计算符中继器会被激活,接下来就可以通过等于号完成计算。

 清0就比较简单了,只需要把所有的变量都复位一下就完成了,这里就不附上图了。
再有一个重要的按键就是退格,退格是整个程序中最复杂的一个步骤。我们需要通过不同的条件来
设置按钮的特殊效果,例如整数输入时要先删除加的那一位再除以10,按下小数点中继器后要关闭小数点中继器,按下计算符后要消除计算符等等。

 

 

 

 我在这里的编程只是一个示范,看懂这个程序的人应该可以发现,我这个退格只能退一步,原因是因为上文提到的寄存位变量并没有设置很多,所以该程序就只能记忆一步,有心的人如果想要完善这个退格可以试试添加更多变量来作为寄存位,实现退格更多步。
计算器还可以添加很多新功能,例如求正弦,余弦等等,做法也与上面类似。
该文章的制作只是一个抛砖引玉的作用,给大家提供一个思路。以上就是本篇文章的全部内容。

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值