作者 | 主题 |
---|---|
WWCWWC 至圣 经验值: 71992 发帖数: 8037 精华帖: 145 |
楼主 2022-05-08 16:10:16
主题:西门子200smart与三菱FX3U plc之间的自由口通讯 西门子200smart与三菱FX3U plc之间的自由口通讯 手头上正好有西门子200smart PLC及三菱FX3U PLC,趁目前稍有空闲时间,一直想着做做它们之间的自由口通讯测试,之前曾经试过几次,均失败而告终(主要问题是方法及有效检测手段不足)。趁没有做成功,心里总是有一块石头没有落地似的,再做一下测试,来感受一下失败原因,是否在这次能够找到根本原因。 测试项目: 测试项目的内容,把西门子200 smart 的IB0的状态值,通讯自由口方式传送到三菱FX3U的Y0 ~ Y7,同样三菱FX3U的X0 ~ X7通过自由口通讯方式把状态信息传送到西门子200 smart的QB0中,实现2种不同类型的plc之间的数据交换。 数据传送方式: 西门子 200 smart 三菱FX3U IB0 → Y0 - Y7 QB0 ← X0 – X7 得到:I0.0 = Y0,.....I0.7 = Y7; X0 = Q0.0,..... X7 = Q0.7。 西门子200smart侧与串口调试软件的编程测试思路: 首先在西门子200smart侧,定义好自由口通讯的必要参数,定义发送完成中断,连接中断,在发送完成中断所连接的中断子程序中,编辑接收完成中断,在接收完成中断所连接的子程序中,继续编辑发送指令XMT,如此引成一个“闭环”的通讯循环。 其次在三菱FX2N侧,完成对西门子200 smart侧是通讯参数设置及数据交换程序段。 程序: 定义通讯初始化:接收中断子程序;发送中断子程;在主程序调用: 将200smart的输入IB0状态值传送到VB1,通过XMT指令发送给三菱FX3U的Y0 `- Y7中表示,同样,三菱FX2N的X0 – X7状态值通过通讯传送到200 smart的RCV接收,由VB11传送到QB0的通讯过程。 先验证西门子200 smart侧的通讯状态,老方法串口调试软件伺候它非常方便,除了外部的硬件外的通讯程序部分测试非常合适,将待测试的用户程序编译、保存、下载到测试的plc中。打开串口调试软件,在方式区写入16#A 16#A,2个“A”字符,点击发送,图示: 为测试方便,我把200smart侧的IB0修改为MB0,创建状态图表,监控通讯数据: 串口调试软件发送的16#A 16#A,相当于在200smart 侧的VB11 = 2#1010 1010,,同样原理,我写在200smart侧的MB0中写一个任意的数据,看串口调试软件是否也能够正确接收,假设写16#B 16#B这样的数据: 200smart侧的数据同样也能够传送到串口调试软件的接收区,说明通讯程序基本是正常了的,能够自动触发转换发送中断和接收中断。 三菱FX3U plc侧与串口调试软件的测试编程思路: 1)同样,定义三菱FX2N的串口通讯格式,将16#0C81写入通讯口控制的D8120中,M8161 = 1,8位数据模式; 三菱的RS指令容易理解,D100存放的是发送的数据,K1是数据长度,就是发送一个D100的数据到西门子200smart,同样道理,D200是接收数据寄存器,存放的是接收到来自西门子200smart侧IB0(测试方便起见用MB0替代)的数据。特殊继电器M8122为数据发送标志位,因为是半双工,M8122与M8123进行必要的互锁。 2)三菱的发送数据寄存器存放在D100,接收数据寄存器存放在D200(16位数据),打开串口调试软件,检测三菱FX3U侧的通讯程序: 3)修改双方的数据看各自的窗口数据双方能够随之改变: 在双方窗口中改变数据,各自窗口上的数据能够随之改变,说明三菱侧的通讯也基本正常。 4)连接西门子200smart与三菱FX3Uplc的通讯口,看2个plc之间的数据交换情况: 硬件正确连接后,能够建立起对等的数据交换,本次测试完成。 我测试拔掉通讯线,再次连接通讯线,通讯能够自动连接上。 总结: 1)之前几次的通讯验证失败的原因主要有,通讯测试手段不足,尤其是三菱FX3U测试没有正确使用串口调试软件,当出现无法通讯问题时感觉无从下手。 2)对各plc的通讯端口极性,没有得到有效的确认,数据无法通讯上时一直在看通讯程序是否出错,实际上本次测试同样也遇到了这个问题。我是在与串口调试软件测试时发现并及时处理好的。实际上,西门子200smart侧是3+ 对应三菱FX3U-485-DB通讯板的SDB/RDB,西门子200smart侧的8- 对应三菱FX3U-485-DB通讯板的SDA/RDA端子。这个发现关键,我在实际测试时,出现过数据错误,或者通讯无法连接均是通讯极性没有一致引起的。 3)为匹配双方PLC之间的数据交换,我初次在西门子200smart侧的通讯数据长度没有充分考虑到,在后期建立通讯测试时,想到匹配数据长度,最后将西门子200smart侧的数据长度修改为2个字节,与三菱的数据寄存器D地址保持长度一致,当然这个并不是是否建立通讯的关键问题。 4)了解必要的双方通讯指令含义,并及时验证求证,缩小在初次调试的不确定因数。 5)为加快双方通讯数据交换,三菱侧触发M8122我修改为M8012(100mS)脉冲后数据交换明显加快。 |
WWCWWC 至圣 经验值: 71992 发帖数: 8037 精华帖: 145 |
1楼 2022-05-08 16:21:17
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯 |
莘莘学子 至圣 经验值: 19213 发帖数: 3837 精华帖: 1 |
2楼 2022-05-08 17:15:24
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯
不是modbus通信更方便吗?
弘扬中华传统美德,无私奉献为根本,助人为乐为根源。
|
莘莘学子 至圣 经验值: 19213 发帖数: 3837 精华帖: 1 |
3楼 2022-05-08 17:16:36
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯
不是modbus通信更方便吗?可以尝试一下。
弘扬中华传统美德,无私奉献为根本,助人为乐为根源。
|
ABBCCC 至圣 经验值: 24344 发帖数: 4846 精华帖: 6 |
4楼 2022-05-08 17:19:41
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯
谨慎低调
|
WWCWWC 至圣 经验值: 71992 发帖数: 8037 精华帖: 145 |
5楼 2022-05-08 17:30:00
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯 哈哈,感觉按自己的想法试试。老是用库里面的官方例子,近期也写了不少帖子了,想换换花样。 嗯,有时间写写modbus rtu也可以的。思路有了,写程序只是时间问题。 |
WWCWWC 至圣 经验值: 71992 发帖数: 8037 精华帖: 145 |
6楼 2022-05-08 17:34:44
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯 也是近期,网上购买了一些验证器材,其中就有串口转USB转换器,通过转换器找到的一些问题。万事开头难,通过本次测试,加深了它们2个plc通讯之间的印象。如果用modbus rtu通讯会更加轻松了的。 串口调试软件确实是一件好东西,能够缩小通讯应用中可能的问题。 |
阳阳爸 侠圣 经验值: 3578 发帖数: 614 精华帖: 0 |
7楼 2022-05-08 21:41:24
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯 原来在学校总做通讯实验,现在上班了基本都是统一系统,不统一都用OPC,Modubs中转
简单的重复就能完成复杂的任务!
|
WWCWWC 至圣 经验值: 71992 发帖数: 8037 精华帖: 145 |
8楼 2022-05-09 08:01:35
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯 是的,现在也是这样,无论你是那种类型的通讯,最终需要规划到统一的一种,无论是那种方式的规划。 |
莘莘学子 至圣 经验值: 19213 发帖数: 3837 精华帖: 1 |
9楼 2022-05-09 10:11:05
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯
弘扬中华传统美德,无私奉献为根本,助人为乐为根源。
|
WWCWWC 至圣 经验值: 71992 发帖数: 8037 精华帖: 145 |
10楼 2022-05-09 10:54:19
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯 这个没有什么的,我看过三菱的通讯手册,里面有比较详细的modbus rtu通讯例子,你去下载来看看然后找一个实体机+通讯模块验证一下就可以了。我用自由口写通讯纯粹是闹着玩的心态的。 记得早前,看到网上有类似的案例,曾经测试过,但是,均没有成功过。 主要问题我上面也在总结上说了,是硬件的连接问题,而并不一定是程序问题。 三菱plc+485DB模块同样可以用串口调试软件测试的,这个是解决他们之间通讯问题的测试关键。 |
莘莘学子 至圣 经验值: 19213 发帖数: 3837 精华帖: 1 |
11楼 2022-05-09 14:06:29
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯 怎么说呢? 西门子和三菱的MODBUS-RTU通信我早就做过了,其实很简单的。但是可惜的是程序给丢完了。如有资料的话,按资料上面的格式读写没有问题的。西门子论坛还没有FX3U这款的MODBUS通信,你发帖又会是精贴。
弘扬中华传统美德,无私奉献为根本,助人为乐为根源。
|
WWCWWC 至圣 经验值: 71992 发帖数: 8037 精华帖: 145 |
12楼 2022-05-09 14:47:47
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯 我感觉你对通讯比较有兴趣,可能是比较熟悉于此吧。 说实在,我如果没有做过类似项目,或者维护过项目,我对通讯也是一头雾水的。非常清楚记得开始时,排除dp故障时的窘迫劲。到后来随着工作经历的逐渐加深,渐渐进入了角色,几次帮公司同事解决过dp通讯的老大难问题后,逐渐熟悉了于此。 拿第三方通讯吧,主要问题还是熟悉程度的不足。记得几次测试失败的原因,现在看来就是熟悉程度和没有充分运用调试软件的原因引起的,反到是程序没有什么难度了。 写这个通讯,我认为一侧,刚好有硬件条件找机会测试一下,二则,西门子200及200smart与第三方plc在实际的小型机设备上应用还是比较广泛的,如果需要设备之间建立数据交换,相对比较经济的做法就是这个通讯了,所以,有写贴的念头。 |
莘莘学子 至圣 经验值: 19213 发帖数: 3837 精华帖: 1 |
13楼 2022-05-09 17:15:30
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯 搞串口通信,你还真的一定要用到串口调试软件,这个是很好的帮手。否则一头雾水,刚开始我也是那样,通信失败,半天没反应,找不到任何毛病,百度半天,最后发现是数据格式不对。
弘扬中华传统美德,无私奉献为根本,助人为乐为根源。
|
WWCWWC 至圣 经验值: 71992 发帖数: 8037 精华帖: 145 |
14楼 2022-05-09 17:47:45
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯 是的,算是遇到知音了,才会有这样的交流语言的。 我遇到很多同行,说到通讯基本都说是无法理解,最好拿一套现场的程序使用,具体也不想深入,这个我认为主要还是对通讯的理解问题吧。 |
yecao2006 至圣 经验值: 18043 发帖数: 1524 精华帖: 2 |
15楼 2022-05-10 10:53:08
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯 能静下心来研究问题的值得点赞。
我回来了!继续努力!
|
WWCWWC 至圣 经验值: 71992 发帖数: 8037 精华帖: 145 |
16楼 2022-05-10 11:38:19
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯 @ZD_JY,我也是看第三方plc的通讯手册,尝试着写的。 它基本上就是这个格式,没有西门子那样编程灵活性大,一旦掌握了还是西门子的好用。 |
hyl001 侠士 经验值: 1554 发帖数: 90 精华帖: 0 |
17楼 2022-05-12 22:19:59
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯 感谢分享。 |
Siemens automation 奇侠 经验值: 5541 发帖数: 626 精华帖: 6 |
18楼 2022-05-13 08:49:13
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯 我一直想用三菱PLC和西门子走S7通讯,我看到三菱FX5U PLC通讯里面有支持西门子S7通讯设置,有机会我也测试这个功能。西门子自由口通讯不写校验还是比较简单,如果写校验就有点难度。 |
WWCWWC 至圣 经验值: 71992 发帖数: 8037 精华帖: 145 |
19楼 2022-05-13 09:37:12
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯 没有5U的硬件,现在,我三菱plc基本上很少用到了,自己做的项目均是西门子的,无论是小型机或者是大型机,FX2N或者3U也仅仅只是维保时的应用。 |
莘莘学子 至圣 经验值: 19213 发帖数: 3837 精华帖: 1 |
20楼 2022-05-14 08:38:58
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯 5U和3U的modbus-RTU是一样的写法。至于2N,十年前就停产了,市面上能找到的要么是高仿,要么是二手翻新。
弘扬中华传统美德,无私奉献为根本,助人为乐为根源。
|
WWCWWC 至圣 经验值: 71992 发帖数: 8037 精华帖: 145 |
21楼 2022-05-14 09:32:28
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯 modbus 、自由口,我测试了不少,如果有5U硬件,我想试试modbus tcp通讯等等。 |
Siemens automation 奇侠 经验值: 5541 发帖数: 626 精华帖: 6 |
22楼 2022-05-14 13:30:13
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯 昨天我找到了FX5U最新PLC,现在还有一个1214C PLC。昨天下午测试了一下FX5U和西门子PLC走简单通讯测试,通讯成功可以用西门子Q点控制三菱FX5UPLC 的Y点输出,但是数据交换还有点问题,等星期一上班再去测试,我测试完后再将这个例子放到论坛上面供大家讨论指导。 |
Siemens automation 奇侠 经验值: 5541 发帖数: 626 精华帖: 6 |
23楼 2022-05-14 13:35:15
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯 应为三菱FX5U里面简单通讯里面有支持和西门子PLC通讯,这个设置就好比西门子PN通讯一样,只要设置好后就可以直接进行数据交换,不用再单独再任何一方上面写程序。 |
WWCWWC 至圣 经验值: 71992 发帖数: 8037 精华帖: 145 |
24楼 2022-05-14 13:37:09
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯 点赞! 三菱我这里的应用是越来越少了,仅仅只是维保,把有故障了的plc换掉,重新用新的机型替换。 自己做的大、小项目均使用西门子,那样配件好搞一些。 我近期写这些贴子,主要还是得益于近期购买的转换器,早前测试过几次,均是失败告终的。 如果有5U,可以试试走modbus tcp。 |
WWCWWC 至圣 经验值: 71992 发帖数: 8037 精华帖: 145 |
25楼 2022-05-14 13:40:04
主题:回复:西门子200smart与三菱FX3U plc之间的自由口通讯 有相同之处,如这个s7-1200 modbus通讯,通讯参数基本是通过硬件设置的,而三菱也同样具备这些,只是我没有测试过。 |