此测试仅仅是在电脑端用串口调试工具与PLC之间进行收发操作,所以需要232转USB的线,接线如下图

2个九针头接线上图 九针公头45角短接239角对应母头的235,母头45和78短接,然后把母头和转接线连接,公头连接PLC,转接线的USB端连接电脑,在电脑端查看com口,我这边是com5

 

java 串口 欧姆龙 欧姆龙串口接线_java 串口 欧姆龙

java 串口 欧姆龙 欧姆龙串口接线_java 串口 欧姆龙_02

java 串口 欧姆龙 欧姆龙串口接线_java 串口 欧姆龙_03

java 串口 欧姆龙 欧姆龙串口接线_串口通信_04

然后再到软件部分

java 串口 欧姆龙 欧姆龙串口接线_调试工具_05

下图是PLC发送数据,串口调试工具接收,参数要设置一直

java 串口 欧姆龙 欧姆龙串口接线_调试工具_06

下图是串口发送,PLC接收

java 串口 欧姆龙 欧姆龙串口接线_调试工具_07

下图是程序

java 串口 欧姆龙 欧姆龙串口接线_调试工具_08

 

上面是测试过程,下面讲下具体参数的含义

1、首先是接线,针脚不能接错,物理连接部分错了,后面就不会通

2、PLC参数部分 波特率、格式这2个参数,串口通信常用的,就不说了,模式选择RS-232C,结束码可以用接收字节(0~256) 这部分设置完后,要断电再上电,否则不会生效

 

 

发送指令:

java 串口 欧姆龙 欧姆龙串口接线_串口通信_09

源首字:无符号的16位,一般用D存储器

java 串口 欧姆龙 欧姆龙串口接线_串口_10

 

控制字部分看个人需求,C4-C7 我是设置为0

 

仅当端口的发送就绪标志为 ON 时才可发送数据。 ( 发送就绪标志为 A392.05、A392.13 或 A50.05。)

如果为 N 指定 0,则将不发送任何数据。

TXD(236) 指令仅可用于 CPU 单元的内置 RS-232C 端口、内置 RS-485 端口或串行选件板端口。 另

外,端口必须设定为无协议模式。

N为一次发送的字节数,如果发1个字节,数字超过32767,则发送过去的数字错误

 

接收指令

java 串口 欧姆龙 欧姆龙串口接线_串口通信_11

java 串口 欧姆龙 欧姆龙串口接线_调试工具_12

java 串口 欧姆龙 欧姆龙串口接线_串口通信_13

这个接收字节,表示接收2个字节后,A392.06会导通,可以拿这个做限制,如果没接收到2个,则继续等待,如果超过2个字节,则溢出,即不保存后面来的数据,所以建议设置到最大,取多少字节在指令中去设置更加灵活,

如果不拿A392.06做限位,也可以读取,读取的字节大小就是RXD指令中要保存的字节数N

 

方法二,正式使用推荐这种方法

物理接线部分同上

PLC设置部分:

java 串口 欧姆龙 欧姆龙串口接线_串口_14

上图中的“接收字节”设置的数字,当接收字节达到设置数字,则A392.06会接通

java 串口 欧姆龙 欧姆龙串口接线_转接线_15

java 串口 欧姆龙 欧姆龙串口接线_java 串口 欧姆龙_16

 

java 串口 欧姆龙 欧姆龙串口接线_转接线_17

 

程序和串口调试工具也配套放下面链接