回复:碰到了莫名其妙的问题,找了一天也没找到问题。

已锁定

Zaxife

  • 帖子

    2450
  • 精华

    31
  • 被关注

    78

论坛等级:至圣

注册时间:2008-07-24

普通 普通 如何晋级?

发布于 2022-01-28 20:12:18

7楼

展开查看
以下是引用Zaxife在2022-01-28 18:07:24的发言 >:低于40K就非线性了,7K不能准确测量了吧? 查表编程的话,子程序必须判断指针是否超限的,超限就Error123456…,这样就很容易发现问题所在了。如果写子程序不做错误判断,最后连自己都懵逼的。 状态图表上开启地址:符号同时显示会方便很多。 至于MAN?估计你的子程序里面的运算L区没定义为实数,而是单纯的用LD运算给出来,然后外面接收的V单元不认浮点数了…

我自己习惯用符号表编程,这样直接用地址编程的看得一脸懵逼了。

看了一下源程序,感觉吧,这样编程好可怕,太可怕了。子程序里面随意使用外部变量、随意使用指针、不用检查数据就直接引用指针数据.....

查表子程序不好好查表,还兼职其他工作....

给人的感觉就是想到什么就写什么,然后有些没想到的就是一个bug了。

建议学学西门子的库编程思想吧。比如最简单的量程转换,先是检查数据数据范围是否正确,然后再把数据拷贝到L区进行运算,运算完成后再输出。这样严谨的逻辑是保证程序正确运行的关键。


评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33257条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。