型号 | modbus | RS232 | RS485 | USB | WiFi | 输出 | AD | 光耦 |
DAM16CC-RS232 | ● | ● | 16 | 12 | 12 | |||
DAM16CC-RS485 | ● | ● | 16 | 12 | 12 |
参数 | 说明 |
数据接口 | RS485、RS232 |
额定电压 | DC 7-30V |
电源指示 | 1路LED指示 |
输出指示 | 16路LED指示 |
温度范围 | 工业级,-40℃~85℃ |
尺寸 | 180*94*41mm |
重量 | 330g |
默认通讯格式 | 9600,n,8,1 |
波特率 | 2400,4800,9600,19200,38400 |
软件支持 | 配套配置软件、控制软件; |
RS232接线为标准DB9母头接口,为直连线。
电脑自带的串口一般是RS232,需要配232-485转换器(工业环境建议使用有源带隔离的转换器),转换后RS485为A、B两线,A接板上A端子,B接板上B端子,485屏蔽可以接GND。若设备比较多建议采用双绞屏蔽线,采用链型网络结构。
下图中采集卡中的AD接口指AI_1-AI_12,GND指COM-。
设备采集到的AI数据与实际输入值之间的关系:
实际值=返回值*0.001
http://www.juyingele.com.cn/software/software/聚英翱翔DAM调试软件使用教程.rar(软件视频教程连接)
软件功能
DAM系列设备地址默认为0,使用广播地址为254进行通讯,用0无法通讯。
设备地址=拨码开关地址+偏移地址。
设备正常通讯后,初始设备地址写入254,然后点击软件上方“读取地址”即可读到设备的当前地址。
点击DAM调试软件下方偏移地址后边的“读取”或“设置”来对设备的偏移地址进行读取或设置。
点击下方波特率设置栏的“读取”和“设置”就可以分别读取和设置波特率和地址,操作后需要重启设备和修改电脑串口设置。
手动模式:对继电器每操作一次,继电器则翻转一次(闭合时断开,断开时闭合);
闪开模式:对继电器每操作一次,继电器则闭合1秒(实际时间【单位秒】=设置数字*0.1)后自行断开;
闪断模式:对继电器每操作一次,继电器则断开1.秒(时间可调)后自行闭合;
打开“聚英翱翔DAM调试软件”点击继电器模式后面下拉箭头进行模式的选择。(后边时间可自行设置,实际时间=填写数字*0.1【单位秒】)
注:闪断闪开模式不能写入设备芯片内,软件上选择闪断闪开模式后,所有通道都为闪断闪开模式下,可通过发送单个通道的闪断闪开指令来进行单个通道的控制,不影响其他通道的正常控制。
本产品支持标准modbus指令,有关详细的指令生成与解析方式,可根据本文中的寄存器表结合参考《MODBUS协议中文版》 即可。
Modbus协议中文版下载地址:http://www.juyingele.com.cn/software/software/Modbus POLL软件及使用教程.rar
本产品支持modbus RTU 格式。
本控制卡主要为线圈寄存器,主要支持以下指令码:1、5、15
指令码 | 含义 |
1 | 读线圈寄存器 |
5 | 写单个线圈 |
15 | 写多个线圈寄存器 |
线圈寄存器地址表:
寄存器名称 | 寄存器地址 | 说明 | ||
线圈控制 | ||||
线圈1 | 写线圈 1号指令码 | 0x0001 | 第一路继电器输出 | |
线圈2 | 0x0002 | 第二路继电器输出 | ||
线圈3 | 0x0003 | 第三路继电器输出 | ||
线圈4 | 0x0004 | 第四路继电器输出 | ||
线圈5 | 0x0005 | 第五路继电器输出 | ||
线圈6 | 0x0006 | 第六路继电器输出 | ||
线圈7 | 0x0007 | 第七路继电器输出 | ||
线圈8 | 0x0008 | 第八路继电器输出 | ||
线圈9 | 0x0009 | 第九路继电器输出 | ||
线圈10 | 0x0010 | 第十路继电器输出 | ||
线圈11 | 0x0011 | 第十一路继电器输出 | ||
线圈12 | 0x0012 | 第十二路继电器输出 | ||
线圈13 | 0x0013 | 第十三路继电器输出 | ||
线圈14 | 0x0014 | 第十四路继电器输出 | ||
线圈15 | 0x0014 | 第十五路继电器输出 | ||
线圈16 | 0x0015 | 第十六路继电器输出 | ||
离散量输入 | ||||
输入1 | 开关量 2号指令 | 1x0001 | 第一路输入 | |
输入2 | 1x0002 | 第二路输入 | ||
输入3 | 1x0003 | 第三路输入 | ||
输入4 | 1x0004 | 第四路输入 | ||
输入5 | 1x0005 | 第五路输入 | ||
输入6 | 1x0006 | 第六路输入 | ||
输入7 | 1x0007 | 第七路输入 | ||
输入8 | 1x0008 | 第八路输入 | ||
输入9 | 1x0009 | 第九路输入 | ||
输入10 | 1x0010 | 第十路输入 | ||
输入11 | 1x0011 | 第十一路输入 | ||
输入12 | 1x0012 | 第十二路输入 | ||
模拟量输入 | ||||
输入1 | 模拟量 4号指令 | 3x0001 | 第一路输入 | |
输入2 | 3x0002 | 第二路输入 | ||
输入3 | 3x0003 | 第三路输入 | ||
输入4 | 3x0004 | 第四路输入 | ||
输入5 | 3x0005 | 第五路输入 | ||
输入6 | 3x0006 | 第六路输入 | ||
输入7 | 3x0007 | 第七路输入 | ||
输入8 | 3x0008 | 第八路输入 | ||
输入9 | 3x0009 | 第九路输入 | ||
输入10 | 3x0010 | 第十路输入 | ||
输入11 | 3x0011 | 第十一路输入 | ||
输入12 | 3x0012 | 第十二路输入 | ||
配置参数 | ||||
通信波特率 | 保持寄存器 | 41001 | 见下表波特率数值对应表,默认为0,支持0-5,该寄存器同时决定RS232和RS485的通信波特率 | |
备用 | 41002 | 备用,用户不可写入任何值。 | ||
偏移地址 | 41003 | 设备地址=偏移地址+拨码开关地址 | ||
工作模式 | 41004 | 用户可以使用,存储用户数据 | ||
延迟时间 | 41005 | 用户可以使用,存储用户数据 |
备注:
①:Modbus设备指令支持下列Modbus地址:
00001至09999是离散输出(线圈)
10001至19999是离散输入(触点)
30001至39999是输入寄存器(通常是模拟量输入) 40001至49999是保持寄存器(通常存储设备配置信息)
采用5位码格式,第一个字符决定寄存器类型,其余4个字符代表地址。地址1从0开始,如00001对应0000。
②:波特率数值对应表
数值 | 波特率 |
0 | 38400 |
1 | 2400 |
2 | 4800 |
3 | 9600 |
4 | 19200 |
5 | 38400 |
③:继电器状态,通过30002地址可以查询,也可以通过00001---00002地址来查询,但控制只能使用00001---00002地址。
30002地址数据长度为16bit。最多可表示16个继电器。
对应结果如下:
Bit | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
继电器位置 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 |
即 寄存器30009数据 的bit8 与寄存器00001的数据一样。
同理:光耦输入也是如此。寄存器30003的bit8、bit9 与寄存器10001、10002都对应到指定的硬件上。
寄存器地址按照PLC命名规则,真实地址为去掉最高位,然后减一。
参考资料:http://hi.baidu.com/anyili001/item/573454e6539f60afc10d75c9
应用举例及其说明:本机地址除了偏移地址地址之外,还有默认的254为广播地址。当总线上只有一个设备时,无需关心拨码开关地址,直接使用254地址即可,当总线上有多个设备时通过拨码开关选择为不同地址,发送控制指令时通过地址区别。
注意:RS232总线为1对1总线,即总线上只能有两个设备,例如电脑与继电器板卡,只有485总线才可以挂载多个设备。
指令可通过“聚英翱翔DAM调试软件”,的调试信息来获取。
指令生成说明:对于下表中没有的指令,用户可以自己根据modbus协议生成,对于继电器线圈的读写,实际就是对modbus寄存器中的线圈寄存器的读写,上文中已经说明了继电器寄存器的地址,用户只需生成对寄存器操作的读写指令即可。例如读或者写继电器1的状态,实际上是对继电器1对应的线圈寄存器00001的读写操作。
情景 | RTU格式(16进制发送) |
查询十六路状态 | FE 01 00 00 00 10 29 C9 |
查询指令返回信息 | FE 01 01 00 61 9C |
控制第一路开 | FE 05 00 00 FF 00 98 35 |
控制返回信息 | FE 05 00 00 FF 00 98 35 |
控制第一路关 | FE 05 00 00 00 00 D9 C5 |
控制返回信息 | FE 05 00 00 00 00 D9 C5 |
控制第二路开 | FE 05 00 01 FF 00 C9 F5 |
控制第二路关 | FE 05 00 01 00 00 88 05 |
控制第三路开 | FE 05 00 02 FF 00 39 F5 |
控制第三路关 | FE 05 00 02 00 00 78 05 |
控制第四路开 | FE 05 00 03 FF 00 68 35 |
控制第四路关 | FE 05 00 03 00 00 29 C5 |
控制第五路开 | FE 05 00 04 FF 00 D9 F4 |
控制第五路关 | FE 05 00 04 00 00 98 04 |
控制第六路开 | FE 05 00 05 FF 00 88 34 |
控制第六路关 | FE 05 00 05 00 00 C9 C4 |
控制第七路开 | FE 05 00 06 FF 00 78 34 |
控制第七路关 | FE 05 00 06 00 00 39 C4 |
控制第八路开 | FE 05 00 07 FF 00 29 F4 |
控制第八路关 | FE 05 00 07 00 00 68 04 |
控制第九路开 | FE 05 00 08 FF 00 19 F7 |
控制第九路关 | FE 05 00 08 00 00 58 07 |
控制第十路开 | FE 05 00 09 FF 00 48 37 |
控制第十路关 | FE 05 00 09 00 00 09 C7 |
控制第十一路开 | FE 05 00 0A FF 00 B8 37 |
控制第十一路关 | FE 05 00 0A 00 00 F9 C7 |
控制第十二路开 | FE 05 00 0B FF 00 E9 F7 |
控制第十二路关 | FE 05 00 0B 00 00 A8 07 |
控制第十三路开 | FE 05 00 0C FF 00 58 36 |
控制第十三路关 | FE 05 00 0C 00 00 19 C6 |
控制第十四路开 | FE 05 00 0D FF 00 09 F6 |
控制第十四路关 | FE 05 00 0D 00 00 48 06 |
控制第十五路开 | FE 05 00 0E FF 00 F9 F6 |
控制第十五路关 | FE 05 00 0E 00 00 B8 06 |
控制第十六路开 | FE 05 00 0F FF 00 A8 36 |
控制第十六路关 | FE 05 00 0F 00 00 E9 C6 |
查询16路继电器
FE 01 00 00 00 10 29 C9
字段 | 含义 | 备注 |
FE | 设备地址 | 这里为广播地址 |
01 | 01指令 | 查询继电器状态指令 |
00 00 | 起始地址 | 要查询的第一个继电器寄存器地址 |
00 10 | 查询数量 | 要查询的继电器数量 |
29 C9 | CRC16 | 前6字节数据的CRC16校验和 |
继电器卡返回信息:
FE 01 01 00 61 9C
字段 | 含义 | 备注 |
FE | 设备地址 | |
01 | 01指令 | 返回指令:如果查询错误,返回0x81 |
01 | 字节数 | 返回状态信息的所有字节数。1+(n-1)/8 |
00 | 查询的状态 | 返回的继电器状态。 Bit0:第一个继电器状态 Bit1:第二个继电器状态 。。。。。。。 Bit7:第八个继电器状态 |
61 9C | CRC16 | 前6字节数据的CRC16校验和 |
查询光耦
发送码:FE 02 00 00 00 0C 6C 00
字段 | 含义 | 备注 |
FE | 设备地址 | |
02 | 02指令 | 查询离散量输入(光耦输入)状态指令 |
00 00 | 起始地址 | 要查询的第一个光耦的寄存器地址 |
00 0C | 查询数量 | 要查询的光耦状态数量 |
6C00 | CRC16 |
光耦返回信息:
返回码:FE 02 02 00 01 6C 6C
字段 | 含义 | 备注 |
FE | 设备地址 | |
02 | 02指令 | 返回指令:如果查询错误,返回0x82 |
02 | 字节数 | 返回状态信息的所有字节数。1+(n-1)/8 |
00 01 | 查询的状态 | 返回的继电器状态。 Bit0:第一个光耦输入状态 Bit1:第二个光耦输入状态 。。。。。。。 Bit12:第二十四个光耦输入状态 |
6C 6C | CRC16 |
闪开闪闭指令解析
闪开发送码:FE 10 00 03 00 02 04 00 04 00 0A 00 D8
闪断发送码:FE 10 00 03 00 02 04 00 02 00 14 21 62
字段 | 含义 | 备注 |
FE | 设备地址 | |
10 | 10指令 | 查询输入寄存器指令 |
00 03 | 继电器地址 | 要控制的器地址 |
00 02 | 控制命令数量 | 要对继电的命令个数 |
04 | 字节数 | 控制信息命令的的所有字节数。1+(n-1)/8 |
00 04或00 02 | 指令 | 00 04为闪开指令 00 02为闪闭命令 |
00 0A | 间断时间 | 00 0A为十六进制换为十进制则为10间隔时间为(0.1秒*10) |
00 D8 | CRC16 | 校验方式 |
返回码:FE 10 00 03 00 02 A5 C7
字段 | 含义 | 备注 |
FE | 设备地址 | |
10 | 10指令 | 返回指令:如果查询错误,返回0x82 |
00 03 | 设备地址 | 查询设备的地址 |
00 02 | 接收命令数 | 设备接受的命令个数 |
A5 C7 | CRC16 | 校验位 |
全开全关指令解析
全开发送码:FE 0F 00 00 00 10 02 FF FF A6 64
全断发送码:FE 0F 00 00 00 10 02 00 00 A7 D4
字段 | 含义 | 备注 |
FE | 设备地址 | |
0F | 0F指令 | 返回指令:如果查询错误,返回0x82 |
00 00 | 起始地址 | |
00 10 | 控制数量 | 控制的继电器数量 |
02 | 字节数 | 发送命令字节数 |
FF FF (或00 00) | 全开全关命令 | FF FF全开命令 00 00全关命令 |
A1 7C (或A0 CC) | CRC16 | 校验位 |
全断全开返回码:FE 0F 00 00 00 10 40 08
字段 | 含义 | 备注 |
FE | 设备地址 | |
0F | 0F指令 | 返回指令:如果查询错误,返回0x82 |
00 00 | 起始地址 | |
00 10 | 数量 | 返回信息的继电器数量 |
C1 C3 | CRC16 | 校验位 |
查询模拟量AD字
获取到的模拟量数据与实际输入值之间的关系为:实际值=返回值*0.001
发送码:FE 04 00 00 00 0C E4 00
字段 | 含义 | 备注 |
FE | 设备地址 | |
04 | 04指令 | 查询输入寄存器指令 |
00 00 | 起始地址 | 要查询的模拟量寄存器地址 |
00 0C | 查询数量 | 要查询的模拟量数量 |
E4 00 | CRC16 |
模拟返回信息:
返回码:FE 04 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 81 60
字段 | 含义 | 备注 |
FE | 设备地址 | |
04 | 04指令 | 返回指令:如果查询错误,返回0x82 |
18 | 字节数 | 返回状态信息的所有字节数。1+(n-1)/8 |
00 00…………00 00 | 查询的AD字 | 0x00 00,即十进制0,为查询的模拟量AD字的值 |
81 60 | CRC16 | 校验位 |
联网方式:RS232/RS485
功能说明:4OC+4DI
版本说明:标准版
联网方式:RS232/RS485
功能说明:10AI+20DI
版本说明:标准版
联网方式:RS232/RS485/网口/WiFi
功能说明:4DO+4DI+4AI+4AO
版本说明:智能自控版
联网方式:RS485
功能说明:16DO+16DI
版本说明:标准版
联网方式:RS232/RS485
功能说明:8DO+8DI
版本说明:标准版
联网方式:RS232/RS485
功能说明:2DO+8DI+14AI
版本说明:标准版
联网方式:RS485
功能说明:6DO+6DI
版本说明:标准版
联网方式:RS232/RS232+485/网口/WiF...
功能说明:16DO+16AI+16DI
版本说明:智能自控版