2024年4月4日发(作者:)

台达PLC通讯调试方法。

台达PLC出厂通讯格式为,ASCII,9600,7,E,1,支持功能码03H,06H,10H,如用串口调试

程序向PLC(站号为1)的D0写H1770,ASCII字符为: “: 620d0a”应在串口

调试程序中写入的16进制代码为: 3A 30 31 30 36 31 30 30 30 31 37 37 30 36 32 0D 0A

注意阿ASCII模式下 字符0对应16进制30H,1对应16进制31H ,依次类推......

你的串口协议是对的,与PLC的默认协议完全相符,PLC不用再作协议设定。

你发送的数据中有几个错误:

1、尾码不是0A0D,而应是0D0A。

2、16进制数据与ASCII码混在了一起,""是ASCII码,应全部转换为16

进制。

正确的字符串数据是=":"+""+LRC码("EA")+CR(0D)+LF(0A)

转换为16进制="3A3D0A",你把引号内的内容复制到你的串

口调试软件中,按16进制发送试试。

我已经试过了,返回数据是=":01810777" (3A 30 31 38 31 30 37 37 37 0D 0A)

我是一个PLC初学者,在Micro Programmable Logic Controller FC4A使用手册中,遇到一

个问题:在17-2中电缆线连接器脚位表格下,有一个 “ 注:准备连接埠1的电缆显示,

请不要插入第6和7针。如果第6和7针连接在一起,便无法使用使用者通讯。”

但是现在所配制的电缆就是第6和7针之间的电阻值接近于0。

在WindLDR中,简单输入输出和定时、计数器可以编程并下载到PLC中正常运行,在使

用TXD和RXD指令时按照手册中所述进行梯形图编程时,无法运行,接收状态码显示15,

无法进行串行通讯。

我用1:1进行PC对PLC通讯.

用pc控制plc原理上是一样的,你只要先将pc得端口初始化为和plc一样的通讯协议,然

后往plc相对应的地址写数就好了。不过,这时候plc地址就不是dxxx/mxxx他们对应的地

址如下: S S0 ~S1028 0000H~03FFH Bit X X0~X377(Octal) 0400H~04FFH Bit

Y Y0~Y377(Octal) 0500H~05FFH Bit T T0~T255 0600F~06FFH Bit/Word M

M0~M4095 0800H~B9FFH Bit D D0~D9999 1000H~A70FH Word C C0~C199

0E00H~0EC7H Bit/Word C C199~C255 0EC8H~0EFFH Bit/Dword 台达的地址都是

开放的,除了d1000-d1999/m1000-m1999中间有些地址是唯读的,大家不能修改外,其

余应该都没问题,如果控制不了,可能是是地址错了。

2)功能码

4.2 VB与PLC通信的实现

以下举例说明现场设备与PLC通信的实现。

1)控制要求:控制PLC的起动、停止,并显示运行状态(绿色为运行,红色为停止);

能够用交替型按钮控制Y0,Y1,并用指示灯显示Y0,Y1状态(绿色为运行,红色为停止);

能够对D256,D512两个寄存器进行数值写入的操作。

2)实现思路:PLC起动停止的标志位为M1072,查DVP协议,知道地址为H0C30,按功