资源描述
第八章 通讯功能
8.4 无协议通讯
8.4.1 简介
当在MK120S之间或者与其它设备之间无法使用用户自定义协议时,可以使用无协议通讯。当在帧和帧之间(帧的数目小于16)有足够的时间间隔时,用户自定义是非常方便的。但当帧的数目大于16或帧是持续没有间隔时,用户自定义协议就不是很方便的。
当帧的数目大于16,他们就不能在参数区里定义,这样MK120S就不能调用这些帧。另外,在帧之间没有间隔时,MK120S就不知道帧在那里结束。
为了克服用户自定义协议的问题,MK120S提供了无协议通讯。
在无协议通讯里,帧通过命令定义,不是通过参数设置。所以,使用这种通讯模式时最大可以定义128帧。下面部分说明无协议通讯的设定和使用方法。
1) 发送数据
· 命令:DSND
· 当输入条件上升沿动作时,发送指定设备中存储的数据。
· 在发送之前,数据和字符的长度必须存在指定的设备中。
· 操作
(a) 第一步操作—指定通讯通道
(b) 第二步—发送的数据的数目
(c) 第三步—存储发送数据的开始地址
(d) 第四步—显示通讯状态的设备地址
2) 接收数据
· 命令:DRCV
· 在目标条件符合时把数据保存于指定的接受区域。
· 目标条件可以通过以下两方面确定:
通过接收的字符数目。
通过指定的最后一个字节,当接受的帧与帧之间长度不确定时非常有用。
· 支持十六进制类型。
· 操作
(a) 第一步操作—指定通讯通道
(b) 第二步—指定接收格式
(c) 第三步—存储接收数据的设备的开始地址
(d) 第四步—显示通讯状态的设备地址
·接收格式能被按如下指定
高字节(hex)
低字节(hex)
H00(接收帧的长度)
H03 (当帧数据长度是3时接收)
H01(接收最后字节)
H03 (当最后帧数据是03时接收(ETX))
-指定帧长度 :当接收字节的数目是等于接收格式的指定低字节的值,存储接收数据到设备(设置范围: 1~255)
-指定最后字节 :当接收到指定结束字节时存储接收数据到设备
8.4.2 参数设定
1) 通信参数设定
(1) 在KGLWIN中新建一个工程文件并且选择MK120S类型PLC
(2) 之后在KGLWIN中选择通信参数,双击后打开下面窗口:
(3) 设置通信模式和通道(详情请参考 8.1.7)。
(4) 单击 ‘No protocol’,参数设定完成。
8.4.3 指令
1) 无协议接收(DRCV)
DRCV
无协议接收
指令
适用的设备
步数
标记
M
P
K
L
F
T
C
S
D
#D
整数
错误
(F110)
0
(F111)
进位
(F112)
Ch
○
9
○
Cw
○
○
○
○
○
○
○
○
○
○
D
○
○
○
○
○
○
○
○
SS
○
○
○
○
○
○
○
○
Designation
Flag
错误
(F110)
当超出制定区域时,标记置位
Ch
l指定通信通道
CW
指定接收帧的格式
D
储存通信数据的设备地址
SS
显示通信状态的设备地址
■ DRCV Ch Cw D SS
(1)功能
(a) 当执行条件置位,通信开始。
(b) 接收的数据被保存于 ‘D’
(c) 当接收的数据与‘Cw’ 指定的格式不相符,数据无法接收并保存于 ‘D’
(d) 通讯状态保存于‘SS’。
(2)程序举例
· 当执行条件M0000置位,通道1通信开始。
· 当‘EXT(h’03)’ 被接收,接收的帧被保存于D0100。
· 当NDR 置位,接收帧的长度保存于M010
接收数据的长度 错误位 正确位 2)无协议发送(DSND)
无协议发送
DSND
指令
适用设备
步数
标志
M
P
K
L
F
T
C
S
D
#D
整数
错误
(F110)
0
(F111)
进位
(F112)
Ch
○
9
○
n
○
○
○
○
○
○
○
○
○
○
S
○
○
○
○
○
○
○
○
SS
○
○
○
○
○
○
○
○
Flag
Designation
错误
(F110)
当超出指定区域时,错误标记置位
Ch
指定通信通道
n
发送数据的字节数目
S
储存通信数据的设备地址
SS
显示通信状态的设备地址
■ DSND Ch n S SS
(1) 功能
· 当执行条件置位,通信开始。
· ‘n’ 为发送数据的数目(单位:字节),发送的数据储存在 ‘D’ 。
· ‘Ch’ 为指定通信的通道,通信状态保存在 ‘SS’。
(2)程序例子
· 当执行条件P0040置位,通道1 的通信开始。
· 储存于D0100里发送数据的长度为10 个字节。
· 通信状态储存于M000。
发送数据的长度 错误位 正确位
(2) 错误代码
Code
Error
Description
06
参数错误
通讯参数设置错误
08
从站忙
从站设备忙
09
r帧类型错误
发送字节的大小超出范围
8.4.4 举例
假定一个电子秤连续不断的发送长度不固定的数据,K120S可以使用无通信协议与它通信。
MASTER-K120S 主单元
电子秤
在无协议通信里,一种是指定结束的条件,另外一种是指定接收数据的长度。
在此例中,假定接收的数据如下所示:
“ ENQ(1字节) + 站号(1字节’) + 数据(1~10 字) + EOT(1字节)”
当上面的帧被接收,如果指定的“接收格式(Cw)”是h0104,数据将被保存于指定的设备。之后,如果有需求的话,储存发送数据的设备发送数据。
假定发送数据格式如下:
“ ACK(1字节) + 站号(1字节’) + OK(2字节) + EOT(1字节)”
在此例子中接收数据的长度为1个字。
1. 通信参数设定
· 在KGLWIN中打开一个新的工程文档
- 必须选择MK120S PLC类型。
· 当在KGLWIN中选择完通信参数后双击,窗口即打开。
· 设定通信速率,数据位,奇偶位,停止位和协议。
2) 程序
·发送数据保存于D0100 : “ack + 0 + OK + ETX”
· 如果 h’04(EOT) 被接收,h3004 被保存到D0000,并且重量数据保存于D0111(1个字)
· 用DSND指令发送D0100中的5个字节数据。
8-72
展开阅读全文