回复:S7-200Smart子程序编程思路之二-分享最简单的ModbusRTU多参数读写

已锁定

holdkcsxyz

西门子1847工业学习平台

  • 帖子

    1560
  • 精华

    24
  • 被关注

    161

论坛等级:至圣

注册时间:2015-06-03

钻石 钻石 如何晋级?

发布于 2022-09-22 09:38:07

70楼

展开查看
以下是引用不欲勿施13478405725在2022-09-21 23:03:28的发言 >66楼

程序已经是最终版本,我问几个问题:

1、在PLC上电启动后,若从站的通信状态良好,那么楼主的程序里的写操作是做什么样的动作?是直接把数据写给从站还是把从站上写寄存器里的数值读回来?有没有什么安全方面的考虑?

2、在PLC上电启动后,若从站的通信状态还没好,那么楼主的程序里的写操作是做什么样的动作?这时上位机改变了参数后,这参数又是怎么变化的?从站的通信状态又变好了,那么楼主的程序里的写操作是做什么样的动作?有没有什么安全方面的考虑?

3、程序里写操作支持哪些功能号,功能5、15,功能6、16都支持吗?

4、我未仔细研读程序,但可以看出每次扫描都进行写操作新旧参数的比较,这应该没必要,只要在每次读或写操作后进行检查即可。

5、能不能把两个子程序搞成一个子程序,这样楼主的才能完美的说取代我的程序。

感谢奇侠的回复,再最后回复一次您的疑问.

(1)在PLC上电启动后,若从站的通信状态良好,那么楼主的程序里的写操作是做什么样的动作?是直接把数据写给从站还是把从站上写寄存器里的数值读回来?有没有什么安全方面的考虑?

答:没理解:

A:有的从站(非标的)某个数据约定好只写,怎么读;即使按您说的写"老数据"直接用本例程现实数据区后面的历史数据区不行吗,还要再去回读?通讯程序(非逻辑程序)怎么能左右要写什么数据呢?触摸屏写给SmartPLC变频数据,难道SmartPLC的逻辑程序(非通讯程序)检测到掉站又恢复后的第一次写就不加判断/不分青红皂白的直接将触摸屏的频率及启动等数据写给变频器从站,让变频器启动了?从站如果没有断线保护,错误机制,心跳超时,......怎么都解决不了您"关心"的安全隐患.

B:如果您指的是回读数据地址Data_Ptr里面的内容,通讯程序只负责投递写数据区的数据.至于上电刚启动该写什么数据:那是用户的逻辑程序部分决定的,逻辑程序要考虑初始化时/出错时的瞬间应该向写数据区赋什么值,这可能和通讯程序关系不大.

C:ModbusRTU应用例程都是通讯程序,只负责数据投递;逻辑程序部分才会考虑初始化时/正常运行时/出现错误时该写什么数据,和通讯程序关系不大

(2)、在PLC上电启动后,若从站的通信状态还没好,那么楼主的程序里的写操作是做什么样的动作?

这时上位机改变了参数后,这参数又是怎么变化的?从站的通信状态又变好了,

那么楼主的程序里的写操作是做什么样的动作?有没有什么安全方面的考虑?

答:帖子的例程里都考虑了,从站没好,就跳站并重新置位#从变才写,并定期尝试再写安全数据;这个重新置位#从变才写是很有逻辑性的,非常必要的,因为掉站没写成功重新置位#从变才写=1就报证恢复后该写任务立马就有机会把掉站瞬间已经重新赋值的/安全的数据写到从站里去了,写的数据恰恰不是之前没写成功的数据,而是安全的数据;至于此时该写什么数据才是安全的应结合具体从站说明定义,并且由逻辑程序而非通讯程序决定.请参见(1)-C

(3) 、程序里写操作支持哪些功能号,功能5、15,功能6、16都支持吗?

答:这和通讯程序有什么关系,您是说西门子的库没做好?帖子中Ch_Write寄存器的分界线也基本是无任何约束的一个二分点而已,丝毫没改变官方例程的完整性.

(4)、我未仔细研读程序,但可以看出每次扫描都进行写操作新旧参数的比较,

这应该没必要,只要在每次读或写操作后进行检查即可。

答:您没细读,就说没必要,可能草率了,您再细读下想想;您说只在操作后检查有一定的道理;但持续检查也没错,实时性更好后续排序可能也是需要的.

(5)、能不能把两个子程序搞成一个子程序,这样楼主的才能完美的说取代我的程序。

答:分开简单的体现”函数指针”作为参数传递的过程,是一种不错的思路,易读性稍好,至于能不能合并帖子里有介绍.本贴例程无法取代您的程序的,因为每个人的劳动成果/思考方式/编程风格都是独一无二的,即使有点瑕疵,都应值得尊重,没法被取代,自己更是没想去取代任何事物.

(6) 楼主千万不要说什么错漏难免,你可是号称:引用:在你的文学/数学/编程等功底不一定高过我。在长篇大论方面我确实不如你,可是在程序上确实不敢恭维。

答:”不一定高”是说您有可能比我高,有毛病吗?只要是符合论坛规则的”长篇大论”不算违规吧,每个人对自己程序的看法都不一样,自己没法左右,您说不太好,也有人觉得还行.不过您提醒不要过多的”长篇大论”是合理的,有空我删减一部分.说您兜售和搞笑水平比我高点:这是真真的,看您的命名以及帖子内容可以简单判断,这是有目共睹的.


评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200 SMART

共有8933条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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