有没有一种简单的S7 SMART MODBUS编程方法 点击:1117 | 回复:14



王阿喵

    
  • 精华:3帖
  • 求助:134帖
  • 帖子:141帖 | 174回
  • 年度积分:11
  • 历史总积分:2563
  • 注册:2012年7月19日
发表于:2022-04-02 20:23:52
楼主
求助帖80分-已结帖

S7200 SMART通过MODBUS带三种设备,一共14个,分别是12个门锁,2种不同的小车,每个都有读写,门锁大概10个字节读和8个字节写,小车大概20个字节读和20个字节写,调用MODBUS—MSG库得28个,编程编得手有点软,想问问能不能搞重复调用子程序之类的解决?



楼主最近还看过



超越69

  • 精华:0帖
  • 求助:2帖
  • 帖子:4帖 | 23回
  • 年度积分:187
  • 历史总积分:1115
  • 注册:2013年8月16日
发表于:2022-04-02 22:14:21
1楼

有成块字传送,或者表格有填充指令

超越69

  • 精华:0帖
  • 求助:2帖
  • 帖子:4帖 | 23回
  • 年度积分:187
  • 历史总积分:1115
  • 注册:2013年8月16日
发表于:2022-04-02 22:14:21
2楼

有成块字传送,或者表格有填充指令

水边清浅横枝瘦

  • 精华:0帖
  • 求助:4帖
  • 帖子:78帖 | 3491回
  • 年度积分:9
  • 历史总积分:5665
  • 注册:2006年7月11日
发表于:2022-04-03 09:36:53
3楼

改变地址应该也可以。

djkzwj

  • 精华:0帖
  • 求助:0帖
  • 帖子:5帖 | 257回
  • 年度积分:5
  • 历史总积分:70
  • 注册:2012年7月04日
发表于:2022-04-03 10:39:33
4楼

是不是有种指针编程方法


关育谋

  • [版主]
  • 精华:5帖
  • 求助:22帖
  • 帖子:738帖 | 5640回
  • 年度积分:68
  • 历史总积分:84034
  • 注册:2004年5月28日
发表于:2022-04-03 14:55:18
5楼

程序写的好,只用1条MBUS_MSG指令即可完成

关育谋

  • [版主]
  • 精华:5帖
  • 求助:22帖
  • 帖子:738帖 | 5640回
  • 年度积分:68
  • 历史总积分:84034
  • 注册:2004年5月28日
发表于:2022-04-03 14:56:10
6楼

当然也可以读操作1条MSG指令、写操作1条MSG指令。

万泉河

  • 精华:0帖
  • 求助:0帖
  • 帖子:74帖 | 62回
  • 年度积分:67
  • 历史总积分:413
  • 注册:2009年12月04日
发表于:2022-04-03 19:06:03
7楼

了解一下REXHIP

万泉河

  • 精华:0帖
  • 求助:0帖
  • 帖子:74帖 | 62回
  • 年度积分:67
  • 历史总积分:413
  • 注册:2009年12月04日
发表于:2022-04-03 19:07:42
8楼

这种要求的简单是属于使用的简单, 而背后需要的是逻辑的复杂。 


需要比较复杂的开发。 


我有在SMART下做过,但不很成熟。 也不适合免费分享。 只能留作自用。 



121111115

  • [版主]
  • 精华:0帖
  • 求助:0帖
  • 帖子:3帖 | 378回
  • 年度积分:594
  • 历史总积分:21966
  • 注册:2016年1月20日
发表于:2022-04-04 09:18:18
9楼

前边有人说指针编程的方法,这个方法确实存在,我遇到的时候都研究了好久才能应用自如,大概也就是前面另一个楼主说的只用一条 MSG指令块即可完成多个设备的读写操作。

这个主要是MSG这边是间接寻址的方式存在,然后建立数据块,在数据块里填充对应的数据参数,根据步进指令和逻辑关系。偏移对应的地址即可······这个优点就是一次编程终身适用,程序保密性比较强,一般人看不懂也弄不了,加个设备或者现有的设备加个采集地址都整不了,可以说程序给你你都没法用,更别说改了。(我当时利用监控暂停,追踪里边的步进指令顺藤摸瓜才搞清楚其原理和思路,确实惊到我了,不过也是实现了我早想实现的功能,同时发现改动是非常的方便,增加设备也是2分钟之内的事,可以说是一套一劳永逸的程序。这个一定是有C语言基础并设计过相关串口通讯程序的人写的 PLC程序,同样你也需要这种基础才可以应用自如)

缺点就是编程比较麻烦,出了控制逻辑错误不好排查,因为接受和发送各设备的数据缓冲区是公用的,所以里边数据是动态变化的,你没法看到实时采集或发送的数据,在调试的时候非常烧脑,对工程师的要求很高,水平低的用不了。占用的地址太多等。

因为不是我写的程序,所以我不能分享,职业道德还是要有的,虽然有时候也会使用非常规手段看别人的程序(通常只是用来改造或者增加东西),但是涉及到比较稀有的东西我自己也会有所保留的,因为这个行业里狗太多了,照着视频学了两天的电工就来当自动化工程师,导致这个行业的高手在面试的时候在薪资方面被侮辱,这是我不想看到的,也是不应该出现的。希望大家都注意一下,可以指导但绝不出手,给你思路你去学习去补课去研究,而不是伸手拿回去用。

星辰似海丶

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 133回
  • 年度积分:105
  • 历史总积分:175
  • 注册:2021年3月27日
发表于:2022-04-05 12:11:33
10楼

换成其他的逻辑搭配有点复杂  用MSG简单点只是程序有点多

  • 精华:0帖
  • 求助:0帖
  • 帖子:4帖 | 265回
  • 年度积分:111
  • 历史总积分:203
  • 注册:2016年8月16日
发表于:2022-04-28 13:51:30
11楼

好想学学,

Smile-lyc

  • [管理员]
  • 精华:127帖
  • 求助:50帖
  • 帖子:3482帖 | 22331回
  • 年度积分:1963
  • 历史总积分:145694
  • 注册:2006年8月04日
发表于:2022-05-19 15:18:24
12楼

感谢求助者和答疑者对求助答疑板块的厚爱,赠人玫瑰,手留余香。

对于求助者要求:

1、请在一个月内自行结贴,把悬赏积分(如果设置积分悬赏求助)发放给答疑者;

2、如果在求助答疑过程中,自己已经有效解决问题,建议大家把解决问题方法在自己求助帖分享,有效分享可以获得50积分奖励。

3、求助答疑板块版主结贴时间一般滞后30~45天,以方便大家对求助问题答疑足够时间,也为了每一个优秀答疑人员都可以获取到自己的积分和MP奖励。


郭冬冬

  • 精华:0帖
  • 求助:0帖
  • 帖子:19帖 | 619回
  • 年度积分:91
  • 历史总积分:147000
  • 注册:2022年4月24日
发表于:2022-06-18 07:30:41
13楼

试一下,连续读写多个寄存器的方法。

天涯@

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 238回
  • 年度积分:0
  • 历史总积分:64
  • 注册:2016年10月02日
发表于:2023-03-22 22:05:44
14楼


热门招聘
相关主题

官方公众号

智造工程师