继电器板通信协议

合集下载

python继电器通信协议

python继电器通信协议

python继电器通信协议
Python可以通过多种方式与继电器进行通信,具体的通信协议
取决于所使用的继电器类型和通信接口。

以下是一些常见的继电器
通信协议和Python库:
1. Modbus协议,Modbus是一种常用的工业通信协议,用于在
不同设备之间进行通信。

Python中有多个库可用于Modbus通信,
如PyModbus和MinimalModbus。

这些库可以用于与支持Modbus协
议的继电器进行通信。

2. MQTT协议,MQTT是一种轻量级的发布/订阅消息传输协议,
常用于物联网设备之间的通信。

Python中有多个MQTT库,如paho-mqtt,可以用于与支持MQTT协议的继电器进行通信。

3. HTTP协议,某些继电器支持通过HTTP接口进行控制和通信。

Python中的requests库可以用于向继电器发送HTTP请求,实现与
继电器的通信。

4. 自定义串口通信协议,如果继电器通过串口进行通信,并且
使用自定义的通信协议,可以使用Python的内置模块如serial来
进行串口通信,并根据继电器的通信协议进行数据的发送和接收。

总之,Python可以通过多种方式与继电器进行通信,具体的通信协议取决于继电器的类型和通信接口。

根据继电器的通信协议选择合适的Python库或模块,可以实现与继电器的通信和控制。

四路继电器模块使用说明书V1.0

四路继电器模块使用说明书V1.0

1.1 简介四路继电器模块是一个可以通过5种方式控制的多功能继电器模块,可以满足多种场合多种需求;所有器件均采用原装正品器件生产,产品经过老化测试性能稳定可靠。

TTL 串口/RS232/485/遥控/IO口五种控制方式。

串口和485可以同时使用互不干扰;继电器输出采用大电流端子,确保接线方便,保证产品使用寿命。

每一路继电器输出都有LED 显示,工作状态一目了然;供电方式有三种,DC口7-40V,5V接线端子,7-40V端子接线;1.2 用途智能家居灯光控制自动化控制广告控制2.硬件参数3.串口通讯协议控制串口作为一种在控制领域常用的通信,我们板子采用串口通信,同时可以在此基础上预留扩展更加强大的RS485,可以通过RS485通信控制;同时预留拨码开关可以进行组网,可以组网8个不同地址的串口。

串口的通信波特率默认为96003.1 通讯格式支持异步串口通讯模式,通过串口接受上位机发送的命令通讯标准:9600 bps数据位 :1校验位 :none流控制 :none举个例子,如果我们发下一曲指令,就需要发送:7E 01 00 ff ;这个数据的格式的意思就是继电器一关闭7E 02 01 ff ;这个数据的格式的意思就是继电器二开3.2 485通讯协议控制同串口通信协议3.3 板子返回的数据板子上电发送字符OK4.遥控控制5、免责声明⏹开发预备知识产品将提供尽可能全面的开发模版、驱动程序及其应用说明文档以方便用户使用但也需要用户熟悉自己设计产品所采用的硬件平台及相关C语言的知识⏹EMI和EMC芯片机械结构决定了其EMI性能必然与一体化电路设计有所差异。

芯片的EMI能满足绝大部分应用场合,用户如有特殊要求,必须事先与我们协商.芯片的EMC性能与用户底板的设计密切相关,尤其是电源电路、I/O隔离、复位电路,用户在设计底板时必须充分考虑以上因素。

我们将努力完善芯片的电磁兼容特性,但不对用户最终应用产品EMC性能提供任何保证.⏹修改文档的权力本公司有保留任何时候在不事先声明的情况下对相关文档的修改权力⏹ESD静电放点保护产品部分元器件内置ESD保护电路,但在使用环境恶劣的场合,依然建议用户在设计底板时提供ESD保护措施,特别是电源与IO设计,以保证产品的稳定运行,安装产品为确保安全请先将积累在身体上的静电释放,例如佩戴可靠接地的静电环,触摸接入大地的自来水管等。

CS-IO606串口继电器说明书

CS-IO606串口继电器说明书

CS-IO606串口继电器说明书CS-IO606 (1)串口继电器说明书 (1)1功能简介 (3)1.1产品特点 (3)1.2选型表 (3)1.3设备参数 (3)2硬件参数 (5)2.1产品图片 (5)2.2继电器接线说明 (5)2.2.1交流220V负载接线 (6)2.2.2交流380V负载接线 (6)2.2.3直流负载设备接线 (7)2.2.4不带零线的380V负载设备接线 (7)2.3开关量输入接线 (8)2.3.1开关量接线 (8)3参数及工作模式配置 (9)3.1设备地址 (9)3.1.1设备地址的介绍 (9)3.1.2设备通讯地址的读取 (9)3.1.3软件地址的设定与读取 (9)3.1.4波特率的读取与设置 (10)3.2工作模式 (10)3.2.1本机非锁联动模式 (10)3.2.2本机自锁联动模式 (11)3.2.3互锁模式 (11)3.2.4双机非锁联动模式 (11)3.2.5双机自锁联动模式 (11)3.2.6工作模式配置 (11)4开发资料说明 (13)4.1通讯协议说明 (13)4.2M ODBUS寄存器说明 (13)4.3指令列表 (14)4.4指令详解 (15)4.4.1继电器输出 (15)4.4.2继电器状态 (15)4.4.3光耦输入 (16)4.4.4闪开闪闭指令 (17)4.4.5全开全关指令 (17)5常见问题与解决方法 (18)5.1RS485通讯,设备控制无响应,不动作 (18)5.2继电器只能开不能关 (18)5.3485总线上挂有多个设备时,每个设备地址不能一样,不能使 (18)6更新历史 (18)7附录:CRC校验函数 (19)1功能简介1.1产品特点◆DC7-30V宽电压供电,支持防反接;◆继电器输出触点隔离,常开加常闭,10A250VAC/10A30VDC;◆DI输入用于开关检测;AI输入用于20mA模拟量检测◆红色LED指示,用于指示工作状态◆通讯接口支持RS485,通讯可靠;◆通信波特率:300bps~38400bps(默认9600,可以通过软件修改);◆通信协议:支持标准modbus RTU协议,按寄存器地址读写;◆可以设置253个设备地址。

8路通信协议说明个人修改

8路通信协议说明个人修改

8路通信协议说明(Ver.3)串口设置:波特率9600,8个数据位,一个停止位,无校验位。

数据帧:每个数据帧包含8个字节。

分别是:数据头,地址,功能码,四个字节数据,校验和。

上位机发送(8个字节):数据头一字节0x55目标地址一字节功能码一字节0x13:按照实际发送数据四个字节:先发送第一字节,然后第二,三,四个字节校验和一字节,将前面的所有数据相加得到。

功能码说明:0x13:数据中的第四个字节共8位代表16路,1:吸合0:断开(按实际设置所有的继电器状态)校验和将前面的所有数据相加得到(对应位相加,注意进位)下位机返回:数据头一字节0x22本机地址一字节数据类型一字节0数据四个字节:数据0无意义数据1无意义数据2 为扩展16路使用数据3代表8路继电器的当前状态校验和将前面的所有数据相加得到(对应位相加,注意进位)举例说明(假设地址为1)上位机发送:55 01 13 00 00 00 00 69 断开全部8路继电器即:0B 0000 0000 (每一位代表一路)吸合每一路就将对应的位写1单独吸每一路的代码如下:55 01 13 00 00 00 01 6A 吸合第一路继电器即:0B 0000 0001 (每一位代表一路)55 01 13 00 00 00 02 6B 吸合第二路继电器即:0B 0000 0010 (每一位代表一路)55 01 13 00 00 00 04 6D 吸合第三路继电器即:0B 0000 0100 (每一位代表一路)55 01 13 00 00 00 08 71 吸合第四路继电器即:0B 0000 1000 (每一位代表一路)55 01 13 00 00 00 10 79 吸合第五路继电器即:0B 0001 0000 (每一位代表一路)55 01 13 00 00 00 20 89 吸合第六路继电器即:0B 0010 0000 (每一位代表一路)55 01 13 00 00 00 40 A9 吸合第七路继电器即:0B 0100 0000 (每一位代表一路)55 01 13 00 00 00 80 E9 吸合第八路继电器即:0B 1000 0000 (每一位代表一路)如果吸合多路,比如:吸合1234路则为55 01 13 00 00 00 0F 78即:0B 0000 1111比如:吸合5678路则为55 01 13 00 00 00 F0 59即:0B 1111 0000如果断开某一路,就将对应的为写为0 即可;比如1234路处于吸合的状态,即码数为55 01 13 00 00 00 0F 78;将第2路断开即要设置的状态为0B 0000 1101 则发送55 01 13 00 00 00 0D 76/************************************************************************/注意事项:代码可以使用上位机软件,也可以使用串口调试助手,由于使用的是MODBUS 协议,检验位是发送前7个数据的加和,所以串口调试助手需要个人计算,较麻烦点,使用串口调试助手发送代码计算方法详细附后。

GYJ-0071_单路输入输出可编程485控制模块产品使用手册

GYJ-0071_单路输入输出可编程485控制模块产品使用手册

GYJ-0071_单路输入输出可编程485控制模块产品使用手册【简要说明】一、尺寸:长78mmX宽47mmX高24mm二、主要芯片:STC单片机 MAX485芯片三、工作电压:直流5~36V四、特点:可编程控制,提供原理图,例程及相关资料,提供程序源代码,提供相关资料!客户可以通过485端口对继电器进行开关控制,也可以通过编程自由控制!1、具有信号指示灯,继电器吸合指示灯。

2、板子功耗小于1W3、额定切换电流10A以内,切换电压250V以内4、最大切换功率300W5、继电器寿命1000000次以上。

6、电器绝缘电阻100M7、触电耐压1000V8、继电器最大吸合时间15mS 毫秒9、继电器最大释放时间5mS 毫秒10、工作温度-40度至+70度11、工作湿度40% ~ 80%RH适用场合:远程通信控制,可编程控制,输入输出控制,仪器仪表监控。

12、使用说明:【标注说明】【接线说明】【应用举例下载线连接图同时可以TTL控制】【应用举例485接线图】【实用接线】【通信协议(字符控制协议)】购买后提供源代码单片机与PC机采用485通讯,波特率默认为9600.单片机接收PC机发送的ASC||数据码表如下:01、开关继电器:PC发送'A';继电器吸合发送'a' 继电器断开02、输出状态查询:PC发送B;单片机返回输出状态‘C’表示继电器开‘c’表示继电器关;03、输入状态查询:PC发送b;单片机有输入返回输入状态‘D’无输入返回‘d’表示关;04、继电器状态取反:PC发送E 继电器状态取反【通信协议(仿mod bus控制协议)】购买后提供源代码波特率9600通讯协议格式如下:发送十六进制协议启始位地址位功能位数据位结束位控制AA 00~FF 00~09 00~FF BB解释第一个数据第二个数据第三个数据第四个数据最后一个数据功能1:改变板子地址举例:更改地址:(发货默认地址00)注意:多个板子并联使用时需要不同地址协议启始位地址位功能位数据位结束位控制AA 00 01 01 BB解释开始数据向00地址发送改变地址将地址改成01 数据结束功能2:打开继电器举例:打开第一块板子的继电器协议启始位地址位功能位数据位结束位控制AA 00 02 01 BB解释开始数据向00地址发送打开功能打开继电器数据结束功能3:关闭继电器举例:关闭第二路板子的继电器协议启始位地址位功能位数据位结束位解释开始数据向01地址发送关闭功能关闭继电器数据结束功能4:打开某块板子的所有继电器(单路继电器模块的这个功能码和功能2一样)举例:打开第一块板子的全部继电器协议启始位地址位功能位数据位结束位控制AA 00 04 FF BB解释开始数据向00地址发送打开所有功能打开所有继电器数据结束功能5:关闭某块板子的所有继电器(单路继电器模块的这个功能码和功能3一样)举例:关闭第三块板子的全部继电器协议启始位地址位功能位数据位结束位控制AA 02 05 00 BB解释开始数据向02地址发送关闭所有功能关闭所有继电器数据结束功能6:查询继电器状态举例:查询第一块板子继电器状态协议启始位地址位功能位数据位结束位控制AA 00 06 01 BB解释开始数据向00地址发送查询功能查询继电器数据结束查询返回信息分析继电器关闭返回值(关闭返回00)协议启始位地址位功能位数据位结束位控制AA 00 07 00 BB解释开始数据00地址返回返回功能继电器状态关闭数据结束查询返回信息分析继电器打开返回值(打开返回FF)协议启始位地址位功能位数据位结束位控制AA 00 07 FF BB解释开始数据00地址返回返回功能继电器状态打开数据结束功能7:查询输入状态举例:查询第一块板子的输入状态协议启始位地址位功能位数据位结束位控制AA 00 08 01 BB解释开始数据向00地址发送查询功能查询输入数据结束查询返回信息分析输入返回值(关闭返回00)协议启始位地址位功能位数据位结束位解释开始数据00地址返回返回功能输入状态关闭数据结束查询返回信息分析输入返回值(打开返回01)协议启始位地址位功能位数据位结束位控制AA 00 09 FF BB解释开始数据00地址返回返回功能输入状态打开数据结束板子地址清零控制(用于地址不清晰或者忘记,在485总线下禁止操作,只可对其单独清零) 协议启始位地址位功能位数据位结束位控制AA 00 00 00 BB解释开始数据00 地址清零数据结束【原理图】【尺寸图】#include "main.h"#include "init.h"#define ENABLE_IAP 0x83 //系统工作时钟<12MHz 时,对IAP_CONTR 寄存器设置此值#define CMD_IDLE 0#define CMD_READ 1#define CMD_PROGRAM 2#define CMD_ERASE 3#define ENABLE_IAP 0x83//SYSCLK<12MH#define IAP_ADDRESS 0x0000 //存储地址uint8 add; //掉电保持485的地址uint8 j=0;uint8 dat=0X00;bit flag_zx=0;uint8 sendPosi=0; //发送缓冲区指针uint8 receCount=0; //接收缓冲区指针uint8 sendCount=0; //需要发送数据个数uint8 receTimeOut=0; //通讯超时值uint8 byteCount=5; //发送个数uint8 sendBuf[10]; //发送缓冲区uint8 receBuf[10]; //接收缓冲区/********************************************************************定义数据类型*********************************************************************/ uint8 TBUF,RBUF;uint8 TDAT,RDAT;uint8 TCNT,RCNT;uint8 TBIT,RBIT;bit TING,RING;bit TEND,REND;bit bz1=0;uint8 t,r,ii; //定义数据类型uint8 but[16]; //数据存储数组/********************************************************************定义ISP/IAP/EEPROM 命令*********************************************************************/void IapIdle();//禁用ISP/IAP/EEPROM functionmake 单片机在一安全状态uint8 IapReadByte(uint16 addr);//读数据void IapProgramByte(uint16 addr, uint8 dat);//写数据void IapEraseSector(uint16 addr);//擦除数据void delay()//延时程序{uint8 m,n,s;for(m=100;m>0;m--)for(n=200;n>0;n--)for(s=248;s>0;s--);}void delay1()//延时程序{uint8 m,n,s;for(m=10;m>0;m--)for(n=20;n>0;n--)for(s=148;s>0;s--);}/****************发送函数*********************/void send1(){sendBuf[0]=0xaa;sendBuf[1]=add;sendBuf[2]=0x10;sendBuf[3]=0xff;sendBuf[4]=0xbb;}/****************发送函数*********************/void senduart2(){ RS485_DIR=1;for(ii=0;ii<5;ii++){if(TEND) //允许发送{TEND=0;TBUF=sendBuf[t++&0x0F];TING=1;}while(!TEND);}t=0;RS485_DIR=0;}/*****************清空发送缓冲区*************************/void clear_receBuf(){uint8 i;for(i=0;i<5;i++){receBuf[i]=0;}}void main(){delay();clear_receBuf();add= IapReadByte(0x01);//读取存储的值if(add==0xff)add=0x00;ConfigUART1();TR0=1;EA=1;// TEND=0;// REND=0;while(1){if((IN1==0)&&(bz1==0)){delay1();if(IN1==0){bz1=1;send1();senduart2();clear_receBuf();OUT1 =0;}}if((IN1==1)&&(bz1==1)){bz1=0;OUT1=1;}if(REND) //如果有接收{REND=0; //接收标志清零receBuf[r++&0x0F]=RBUF; //把接受的数据存储到BUT数组中if(receBuf[0]!=0xaa){r=0;}if(r>=5){ r=0;flag_zx=1;}}if(flag_zx==1){flag_zx=0;//0 1 2 3 4//起始位地址位功能位数据位结束位if((receBuf[0]==0xaa)&&(receBuf[4]==0xbb)&&(receBuf[1]==add)) //如果开始位和结束位,还有地址都正确,进行下一步判断{if(receBuf[2]==0x01) //修改板子地址{add=receBuf[3];IapEraseSector(0); //擦除扇区IapProgramByte(0x01,add);//写入新的地址}else if(receBuf[2]==0x02) //打开单路继电器{switch(receBuf[3]){case 0x01: OUT1=0; break;}}else if(receBuf[2]==0x03) //关闭单路继电器{switch(receBuf[3]){case 0x01: OUT1=1; break;}}else if(receBuf[2]==0x04) //打开全部继电器{if(receBuf[3]==0xff){OUT1=0;}}else if(receBuf[2]==0x05) //关闭全部继电器{if(receBuf[3]==0x00){OUT1=1;}}else if(receBuf[2]==0x06) //查询继电器{sendBuf[0]=0xaa;sendBuf[1]=add;sendBuf[2]=0x07;//sendBuf[3]=0xfe;sendBuf[4]=0xbb;switch(receBuf[3]){case 0x01: if(OUT1==0) sendBuf[3]=0xFF;else sendBuf[3]=0x00;break;default:break;}senduart2();}else if(receBuf[2]==0x08) //查询输入{sendBuf[0]=0xaa;sendBuf[1]=add;sendBuf[2]=0x09;//sendBuf[3]=0xfe;sendBuf[4]=0xbb;switch(receBuf[3]){case 0x01: if(IN1==0) sendBuf[3]=0xFF;else sendBuf[3]=0x00;break;default:break;}senduart2();}}if((receBuf[0]==0xaa)&&(receBuf[1]==0x00)&&(receBuf[2]==0x00)&&(receBuf[3] ==0x00)&&(receBuf[4]==0xbb)){add=0x00;IapEraseSector(0); //擦除扇区IapProgramByte(0x01,0x00);//写入新的地址sendBuf[0]=0xaa;sendBuf[1]=add;sendBuf[2]=0x00;sendBuf[3]=0x00;sendBuf[4]=0xbb;senduart2();}clear_receBuf();}}}// /********************************************************** //放在主函数,定时0溢出中断函数,//*********************/void tm0()interrupt 1 using 1{if(RING){if(--RCNT==0){RCNT=3;if(--RBIT==0){RBUF=RDA T;RING=0;REND=1;}else{RDA T>>=1;if(RXB)RDAT|=0X80;}}}else if(!RXB){RING=1;RCNT=4;RBIT=9;}if(--TCNT==0){TCNT=3;if(TING){if(TBIT==0){TXB=0;TDA T=TBUF;TBIT=9;}else{TDA T>>=1;if(--TBIT==0){TXB=1;TING=0;TEND=1;}else{TXB=CY;}}}}}void IapIdle(){//禁用ISP/IAP/EEPROM functionmake 单片机在一安全状态IAP_CONTR = 0; //IAP_CMD = 0; //IAP_TRIG = 0; //IAP_ADDRH = 0x80; //IAP_ADDRL = 0; //}uint8 IapReadByte(uint16 addr){//读数据uint8 dat;IAP_CONTR = ENABLE_IAP;IAP_CMD = CMD_READ;IAP_ADDRL = addr;IAP_ADDRH = addr >> 8;IAP_TRIG = 0x5A;IAP_TRIG = 0xA5;_nop_();dat = IAP_DATA;IapIdle();return dat;}void IapProgramByte(uint16 addr, uint8 dat){//写数据IAP_CONTR = ENABLE_IAP;IAP_CMD = CMD_PROGRAM;IAP_ADDRL = addr;IAP_ADDRH = addr >> 8;IAP_DATA = dat;IAP_TRIG = 0x5A;IAP_TRIG = 0xA5;_nop_();IapIdle();}void IapEraseSector(uint16 addr){//擦除数据IAP_CONTR = ENABLE_IAP;IAP_CMD = CMD_ERASE;IAP_ADDRL = addr;IAP_ADDRH = addr >> 8;IAP_TRIG = 0x5A;IAP_TRIG = 0xA5;_nop_();IapIdle();}【图片展示】。

MODBUS版 1路3路4路8路16路继电器控制板用户手册V2.3

MODBUS版 1路3路4路8路16路继电器控制板用户手册V2.3

MODBUS版串口继电器控制板用户手册V2.3目录1 总体介绍-------------------------------------------------------------------22 控制板接口及相关参数-------------------------------------------------2 2.1 16路继电器控制板接口及相关参数-------------------------------2 2.2 8路继电器控制板接口及相关参数---------------------------------3 2.3 4路继电器控制板接口及相关参数---------------------------------4 2.4 4路宽工作电压继电器控制板接口及相关参数------------------5 2.5 3路继电器控制板接口及相关参数---------------------------------62.6 1路继电器控制板接口及相关参数---------------------------------73 RS232通信流程----------------------------------------------------------84 RS485通信流程----------------------------------------------------------95 继电器接线须知---------------------------------------------------------106 产品出厂设置------------------------------------------------------------117 RS485通信组网及更改地址------------------------------------------118 MODBUS RTU通信协议介绍----------------------------------------139 二次开发及编程指南----------------------------------------------------1710 XZ自动控制软件简介--------------------------------------------------2211 各种开发语言DEMO示例软件简介--------------------------------2312 常用命令清单-------------------------------------------------------------251、总体介绍MODBUS版串口继电器控制板主要包括1路继电器板、3路继电器板、4路继电器板、8路继电器板、16路继电器板五类产品。

4 路串口继电器使用说明书

4 路串口继电器使用说明书

4路串口继电器说明书适用产品系列/型号:LH-IO404历史版本修订日期修订记录版本号修订人2021/10/20模版修订V1.0李世涛2021/10/26版本更新,修改错误V1.1李世涛2022/09/05固件及上位机更新1、上位机用了更美观的UI,增加了常用功能2、固件增加了断电记忆、校验位修改V2.0李世涛目录1.产品介绍 (4)1.1.产品简介 (4)1.2.工作模式说明 (5)1.2.1.正常模式 (5)1.2.2.闪开闪闭功能 (5)1.2.3.本机非锁联动模式 (6)1.2.4.本机自锁联动模式 (6)1.2.5.本机互锁模式 (7)1.2.6.双机非锁联动模式 (7)1.2.7.双机自锁联动模式 (8)2.规格参数 (9)3.产品尺寸 (11)4.通信协议与数据格式 (11)4.1.上位机软件下载 (11)4.2.设备通信配置 (11)4.2.1.拨码开关功能介绍 (11)4.2.2.软件地址的设定与读取 (12)4.2.3.波特率、校验位、断电记忆的设定与读取 (13)4.3.通信协议说明 (13)4.3.1.Modbus寄存器说明 (14)4.3.2.线圈寄存器地址表 (14)4.3.3.指令列表 (15)4.3.4.指令详解 (16)4.4.主动上报协议 (21)5.电气接线 (22)5.1.产品使用拓扑图 (22)5.2.产品接线端子定义 (22)5.3.产品输入接线图 (23)5.4.产品输出接线图 (25)6.产品维护保养 (26)6.1.设备使用环境 (26)6.2.常见问题与解决办法 (27)7.售后服务 (28)7.1.售后服务承诺 (28)7.2.免责声明 (28)7.3.联系方式 (28)用户须知使用前请详细阅读本说明书,并保存以供参考。

请遵守本说明书操作规程及注意事项。

在收到仪器时,请小心打开包装,检视仪器及配件是否因运送而损坏,如有发现损坏,请立即通知生产厂家及经销商,并保留包装物,以便寄回处理。

16路串口继电器使用说明

16路串口继电器使用说明

可以配置控制板的地址、波特率等参数,也可以复位控制板和恢复出厂设置
设置命令帧格式
地址
功能码 起始地址 起始地址 寄存器数 寄存器数 CRC 校验 CRC 校验
高字节 低字节 据高字节 据低字节 高字节 低字节
0x01
0x06
0x00
0xXX
0xXX
0xXX
计算值 计算值
设备响应帧格式
地址
功能码 起始地址 起始地址 寄存器数 寄存器数 CRC 校验 CRC 校验
16 路串口继电器控制板
SKC 系列
用 户 手 册
前言
手册说明
本文档用于指导您如何正确安装、配置、管理和维护本产品。请先阅读本文档,在进行操作。
目标读者
本文档目标读者为对设备安装有一定了解的人员。
内容简介
本文档各章节内容如下。
章节
内容
1 产品概述
介绍产品的型号说明、外观尺寸、接口方式
2 产品特性
介绍产品的技术参数
如果使用通讯协议配置控制本设备参数出错而导致无法通讯时,可以将拨码开关
拨到全“OFF”状态,此时控制板将恢复出厂参数,然后再将拨码拨到正常位置即
可通讯,出厂参数如下:
RS485/232:波特率 115200;数据位 8 位;无校验;1 位停止位;
CAN:波特率 250Kbps。
3.5 产品运行
(1)产品接线并检查完成后,准备好电源,串口转 RS485/RS232 设备一个,如下图 所示
高字节 低字节 据高字节 据低字节 高字节 低字节
0x01
0x06
0x00
0xXX
0xXX
0xXX
计算值 计算值
4.2.6 功能码 0x0F

16路串口继电器控制板说明

16路串口继电器控制板说明

16路串口继电器控制板产品特点●宽压供电●通讯隔离,控制驱动隔离●通讯方式众多,支持RS232、RS485、CAN、以太网、RF。

●支持标准modbus协议,同时支持ASCII/RTU格式●支持手动和自动控制模式●支持自动控制脱机运行●支持联网运行产品功能●16路继电器控制●支持节假日控制方案●支持周六日控制方案●支持以星期为循环的多种控制方案●支持以天为循环的多种控制方案●支持5位寻址地址产品选型主要参数寄存器说明本控制卡主要为线圈寄存器,主要支持以下指令码:1、5、15线圈寄存器地址表:备注:①:Modbus设备指令支持下列Modbus地址:00001至09999是离散输出(线圈)10001至19999是离散输入(触点)30001至39999是输入寄存器(通常是模拟量输入)40001至49999是保持寄存器(预留)采用5位码格式,第一个字符决定寄存器类型,其余4个字符代表地址。

地址1从0开始,如00001对应0000。

通讯格式本产品支持标准modbus指令,详细指令格式可参照《MODBUS协议.pdf》。

本产品同时支持modbus ASCII/RTU 格式。

应用举例及其说明:本机地址除了拨码开关地址之外,默认254为本机地址。

\机械尺寸图接线方式电源接线示意图继电器接线示意图RS485接线示意图地址说明1、五个拨码全都拨到“ON”位置时,为地址“1”;2、五个拨码全都拨到“OFF”位置时,为地址“32”;3、最左边1为二进制最低位。

4、地址表:手动模式手动模式下本产品不进行自动控制,用户使用“16路继电器串口控制软件”或“16路继电器以太网口控制软件”对每一路进行手动控制1、串口版手动控制软件使用方法软件界面将产品通过串口与计算机连接,通过拨码开关设定地址(1-32),在设备地址一栏输入相对应的数值,选择正确串口及串口波特率,点击打开串口,设备即可正常通信。

用户点击需要控制的某一路继电器开关,即可控制相应继电器的开闭。

智嵌物联 16 路网络继电器控制器 用户使用手册说明书

智嵌物联 16 路网络继电器控制器 用户使用手册说明书

【智嵌物联】16路网络继电器控制器深圳总部地址:广东省深圳市宝安区新桥街道新桥社区新和大道6-18号1203网址: 电话:*************北京办事处地址:北京市房山城区德润街6号院8号楼3层电话:182****5439天猫店铺淘宝店铺京东店铺微信公众号公司官网修订历史版本日期原因V1.02021.06.27更新word样式、增加高级功能章节V1.12021.12.151、增加ASCII控制指令2、增加modbus功能码0x103、增加脉冲计数介绍4、增加设备间的一对一联动控制配置方法目录1.关于手册 (1)1.1命名规则 (1)1.2本手册适用型号 (2)1.3相关产品资料下载 (2)2.产品快速入门 (3)2.1功能特点 (3)2.2硬件准备 (3)2.3使用配置软件控制 (4)2.4使用网络调试助手控制 (8)3.产品规格 (9)3.1电气参数 (9)3.2工作环境参数 (9)3.3EMC防护等级 (9)3.4继电器规格 (9)3.5数字量输入参数 (10)3.6通信参数 (10)4.硬件接口及机械尺寸 (11)4.1产品接口布局 (11)4.1.1ZQWL-IO-1BX1C16、ZQWL-IO-2BX1C16接口布局 (11)4.1.2ZQWL-IO-1BXRC16、ZQWL-IO-2BXRC16接口布局 (12)4.1.3ZQWL-IO-1CNRC16、ZQWL-IO-2CNRC16、ZQWL-IO-1CN1C16、ZQWL-IO-2CN1C16 (13)4.1.4ZQWL-IO-1DXRC16、ZQWL-IO-1DX1C16、ZQWL-IO-2DXRC16、ZQWL-IO-2DX1C16 (14)4.2设备开关量输入 (14)4.3设备继电器输出接线 (16)4.4指示灯 (16)5.模块参数配置 (18)5.1智嵌网络IO配置软件 (18)5.2网页参数配置 (19)6.设备的高级功能 (23)6.1心跳包 (23)6.1.1心跳包 (23)6.1.2注册包 (23)6.2设备级联控制 (23)6.3设备DI输入状态自动上报 (24)6.4设备DI输入与DO输出联动 (24)6.5设备与设备之间联动 (25)6.6延时断开控制 (25)6.7定时控制 (26)6.8串口服务器功能 (26)7.模块通讯协议 (28)7.1自定义协议 (28)7.1.1控制指令 (28)7.1.2配置指令 (30)7.2ASCII控制协议 (32)7.2.1设置DO继电器输出状态 (32)7.2.2设置单路DO继电器状态 (32)7.2.3设置DO继电器延时断开时间 (33)7.2.4只读取DI状态 (33)7.2.5只读DO继电器状态 (34)7.2.6DI的脉冲计数值清零 (34)7.2.7只读DI的脉冲计数值 (35)7.3Modbus rtu协议 (35)7.4Modbus rtu指令码举例 (37)7.5Modbus TCP协议 (41)8.恢复出厂设置以及固件升级 (42)8.1恢复出厂设置 (42)8.2模块固件升级 (42)9.应用案例 (43)9.1网络IO控制器接入智嵌云控演示 (43)9.2网络IO控制器设备间一对一联动控制配置方法 (49)常见故障处理 (53)销售网络 (54)1.关于手册1.1命名规则智嵌物联继电器控制设备的命名规则如图 1.1所示。

plc主要用哪些通信协议

plc主要用哪些通信协议
表小;
ack为正确标志,ascii值6,Vb中以chr(6)表示;
stx为请求标志,ascii值2,Vb中以chr(2)表示;
ext为请求标志,ascii值3,Vb中以chr(3)表示;
表格中红色字为需要求和效验的部分;
和效验为每一项的ascii值的总和转换成十六进制后区
低两位;
站号、plc号、元件数虽、和效验都是以十六进制表示;
ascii
码:05h30h30h46h46h42h52h41h58h30h30h30h30h30h35h34h
32h
您只要将以上代码以字符串形式(Vb中可以表示为
chR(5)&"00FFbRax00000942")发送到plc ,就会有正确的回
应信息,如下:注释:头站号plc号元件首地址尾和效验
代码:stx00FF001101101ext05
”应以十进制表小,如首地址"x0018"表小从x寄存器的第18
地址单元开始读取i/o虽;3、"数H”表示读取的i/o H个
数;4、"和效验"是指从"站号"至F数虽"之间的各代码的
ascii码的累加和;5、plc侧的响应码中"和效验"是指从"
站号"到"ext"之间的各代码的ascii码的累加和。6、可以
读出"x"、"y"和"m"寄存器的内容。
例如:要读出站号为0的Fx2n系列plc的x00到x08
共9点的状态值,延时100ms,假设采用
communicationFormat(d8120)的Formatl方式::注释:请求

基于三菱FX PLC的MODBUS-RTU通信协议的应用

基于三菱FX PLC的MODBUS-RTU通信协议的应用

基于三菱FX PLC的MODBUS-RTU通信协议的应用肖万彪;董培培;郭星;唐坚【摘要】本文介绍了三菱FX系列PLC所支持的标准Modbus-RTU通信协议,详细阐述了该通信协议的数据帧规格,各类重要通信参数的设定以及程序编写所需要注意的事项,最后给出了可行的通信程序,实现了PLC与其他智能设备之间的数据交换.【期刊名称】《锻压装备与制造技术》【年(卷),期】2018(053)006【总页数】4页(P75-78)【关键词】Modbus-RTU通信协议;三菱可编程控制器;信息帧【作者】肖万彪;董培培;郭星;唐坚【作者单位】江苏扬力集团股份有限公司,江苏扬州225127;江苏扬力集团股份有限公司,江苏扬州225127;江苏扬力集团股份有限公司,江苏扬州225127;江苏扬力集团股份有限公司,江苏扬州225127【正文语种】中文【中图分类】TM571.6+1现代工业自动化控制系统向智能化、网络化和开放式结构的方向发展。

利用现场总线技术,可以将符合统一标准的各种设备统一起来,进行分布式集中控制。

Modbus协议作为一种标准通信协议,其重要性不言而喻[2]。

Modbus通信协议是全球第一个真正用于工业现场的总线协议,共有Modbus-RTU、Modbus-ASII和Modbus-TCP三种通信方式。

其中Modbus-RTU通信方式物理层采用RSS32、RS485等异步串口接口标准,且具有良好的兼容性和开放性,因而被工业控制器生产厂商大量采用。

本文以应用较为广泛的三菱FX3G系列PLC为例,详细描述如何运用三菱微型可编程控制器与带有MODBUS-RTU通信协议的其他设备之间进行数据交换。

以广播方式和所有从站设备进行通信,但从站不响应广播信息[3]。

三菱FX系列PLC支持的Modbus-RTU通信协议的信息帧规格如表1所示,其详细内容介绍如下。

表1 三菱FX系列PLC Modbus-RTU数据帧规格[1]S t a r t 地址字段功能代码数据错误效验(C R C)3.5个字符时间以上的间隔 1个字节 1个字节 0-252个字节 2个字节1 MODBUS-RTU通信协议三菱FX系列PLC可以扩展具有标准Modbus-RTU通信协议的通信适配器,其通信方式为主从通信。

xd-4i40485-v4串囗继电器模块使用手册

xd-4i40485-v4串囗继电器模块使用手册

xd-4i40485-v4串囗继电器模块使用手册
1、宽电源供电方式,满足不同场合使用,默认模块供电电源xd-
4i40485-v4(1A);
2、稳定的工业标准设计,采用工业级芯片,合理的硬件设计,达到工业使用标准,工作环境温度范围宽;
3、TTL、232、485、USB 丰富的接口形式,满足各种上位机的通信需求;也可通过FT系列无线数传模块,实现无线远程控制,最远可达
3km,无需布线,无不用担心破坏原有环境,适合布线不便的场合,省时、省力、省心:
4、采用多重校验方式,高可靠的通信方式,满足超强干扰的场合使用,“稳定压倒一切”;
5、可靠的通信协议、稳定工作方式,满足工控环境的使用,双向通信的方式,即模块收到指令即刻执行,执行完成后,向主机返回信息,告知主机。

同时主机在工作过程中,也可随时发送命令读继电器的状态,通信数据顿格式:顿头、命令码、地址、结束符、校验字节等组成;
6、模块内部附带地址功能,适合组网使用,一般可组网16路模块,模块地址可由用户自由设定;
7、附带8路开关量输入口,可检测外部信号,主机也可随时读开关量的状态;
8、真正的大电流输出,电路板经过特殊处理,加强电流输出(注:市场上不少同类产品,看似继电器标称电流不小,但实际电路板上走线,极为细小,难以做到真正的大电流输出)。

9、八路继电器输出,输出接口,采用三端输出,输出公共端、常闭端、常开端三个节点,用户使用更方便灵活;
10、丰富的状态指示灯,可是工作情况一目了然,包括模块工作指示灯、继电器状态指示灯、开关量输入指示灯;
11、可配置标准工控外壳,美观大方,工作过程中不易被碰触、损坏,使用起来更方便、更安心。

12、利用模块的开关量输入功能,可无需主机实现两只模块自控。

北京聚英翱翔电子有限公司 4路继电器板说明书

北京聚英翱翔电子有限公司 4路继电器板说明书

4路继电器板说明书
------双串口版产品功能及特点
7-30V宽电压供电
RS232、RS485(隔离)双串口通信方式
4路继电器手动控制
支持级联,1-32地址选择
接线方法
实物照片
地址选择:
1、五个拨码全都拨到“ON”位置时,为地址“1”;
2、五个拨码全都拨到“OFF”位置时,为地址“32”;
3、最左边1为二进制最低位。

通信协议
本产品可通过RS485总线,依照标准Modbus协议通信。

Modbus地址为00001-00004对应线圈1-4。

支持功能码1、5、15。

用户使用“16路继电器串口控制软件”或“16路继电器以太网口控制软件”对每一路进行手动控制
软件使用方法
软件界面
将产品通过串口与计算机连接,通过拨码开关设定地址(1-32),在设备地址一栏输入相对应的数值,选择正确串口及串口波特率(4路继电器板为38400,不可更改),点击打开串口,设备即可正常通信。

用户点击需要控制的某一路继电器开关,即可控制相应继电器的开闭。

按钮旁边的指示灯表示当前继电器状态,
常开触点闭合即亮红灯,否则为灰色。

该软件是为16路继电器板定制,所以,只有“继电器1”“继电器2”“继电器3”“继电器4”几个按键可用,5-16号继电器不可用,而且“打开全部”“关
闭全部”也不可用。

GYJ-0217 20路输出继电器可编程控制 从机20路继电器带232带485带TTL通信

GYJ-0217 20路输出继电器可编程控制 从机20路继电器带232带485带TTL通信

【简要说明】【标注说明】【接线说明】【输出控制设备】【输出举例说明】(开关量输出、干接点输出)20路同理接线【上位机控制软件】提供VB程序和下位机程序【测试程序简说协议】通过串口助手发送命令控制 (文本模式)单片机与PC机采用9针串口,MAX232通讯,波特率默认为9600. 单片机接收PC机发送的ASC||码(文本模式)表如下:01、全开:PC发送'I';全关:PC发送'i';03、1路开:PC发送'A';1路关:PC发送'a';04、1路开:PC发送'B';2路关:PC发送'b';05、3路开:PC发送'C';3路关:PC发送'c';06、4路开:PC发送'D';4路关:PC发送'd';07、5路开:PC发送'E';5路关:PC发送'e';08、6路开:PC发送'F';6路关:PC发送f';依次类推,具体例程有通讯协议说明【测试程序简说协议】通过串口助手发送命令控制 (MODBUS模式)地址位+功能位+数据位+CRC校验位1路开:01 05 00 00 FF 00 8C 3A 1路关:01 05 00 00 00 00 CD CA 2路开:01 05 00 01 FF 00 DD FA 2路关:01 05 00 01 00 00 9C 0A 3路开:01 05 00 02 FF 00 2D FA 3路关:01 05 00 02 00 00 6C 0A 4路开:01 05 00 03 FF 00 7C 3A 4路关:01 05 00 03 00 00 3D CA 5路开:01 05 00 04 FF 00 CD FB 5路关:01 05 00 04 00 00 8C 0B 6路开:01 05 00 05 FF 00 9C 3B 6路关:01 05 00 05 00 00 DD CB 依次类推,具体例程有通讯协议说明【UART通讯说明】支持TTL下载【RS232通信说明】(16路同理)【RS485通信说明】(16路同理)【单总线RS485通信说明】【原理图】提供PDF格式#include<reg52.h> //库文件#include <intrins.H>#include<EEPROM.h>#define uchar unsigned char//宏定义无符号字符型/******************************************************************** 24路输出IO口定义*********************************************************************/ sbit K1=P0^0;sbit K2=P0^1;sbit K3=P0^2;sbit K4=P0^3;sbit K5=P1^0;sbit K6=P1^1;sbit K7=P1^2;sbit K8=P1^3;sbit K9=P1^4;sbit K10=P1^5;sbit K11=P2^2;sbit K12=P2^3;sbit K13=P2^4;sbit K14=P2^5;sbit K15=P2^6;sbit K16=P2^7;sbit K17=P0^7;sbit K18=P0^6;sbit K19=P0^5;sbit K20=P0^4;/******************************************************************** 变量定义区*********************************************************************/ uchar dat;uchar t,r,ii;uchar add; //掉电保持485的地址uchar j=0;bit flag_zx=0;uchar sendBuf[10]; //发送缓冲区uchar receBuf[10]; //接收缓冲区bit busy;bit bz1=0;bit bz2=0;bit bz3=0;bit bz4=0;bit bz5=0;bit bz6=0;bit bz7=0;bit bz8=0;/********************************************************************延时函数********************************************************************* void delay(uchar t){uchar i,j;for(i=0;i<t;i++){for(j=13;j>0;j--);{ ;}}}/******************************************************************** 功能:串口初始化,波特率9600,方式1*********************************************************************/ void Init_Com(void){TMOD = 0x20;PCON = 0x00;SCON = 0x50;TH1 = 0xFd;TL1 = 0xFd;TR1 = 1;ES=1;EA=1;}/****************发送函数*********************/void senduart2(){SBUF=sendBuf[0];while(!TI);TI=0;SBUF=sendBuf[1];while(!TI);TI=0;SBUF=sendBuf[2];while(!TI);TI=0;SBUF=sendBuf[3];while(!TI);TI=0;SBUF=sendBuf[4];while(!TI);TI=0;}/*****************清空发送缓冲区*************************/void clear_receBuf(){uchar i;for(i=0;i<5;i++){receBuf[i]=0;}}/********************************************************************主函数*********************************************************************/ void main(){Init_Com();//串口初始化add = EEPROMReadByte(0);//add = 0X00; //强制设置地址P2=0XFF;P1=0XFF;while(1){/********************************************************************接收数据判断函数*********************************************************************/ if(RI) //如果有接收{RI=0; //接收标志清零receBuf[r++&0x0F]=SBUF; //把接受的数据存储到BUT数组中if(receBuf[0]!=0xaa){r=0;}if(r>=5){ r=0;flag_zx=1;}}if(flag_zx==1){flag_zx=0;//0 1 2 3 4//起始位地址位功能位数据位结束位if((receBuf[0]==0xaa)&&(receBuf[4]==0xbb)&&(receBuf[1]==add)) //如果开始位和结束位,还有地址都正确,进行下一步判断{if(receBuf[2]==0x01) //修改板子地址{add=receBuf[3];EEPROMSectorErase(0);//擦除扇区EEPROMWriteByte(0,add);//写入新的地址SBUF=0XAA;while(!TI);TI=0;SBUF=add;while(!TI);TI=0;SBUF=0X01;while(!TI);TI=0;SBUF==add;while(!TI);TI=0;SBUF=0XBB;while(!TI);TI=0;}else if(receBuf[2]==0x02) //打开单路继电器{switch(receBuf[3]){case 0x01: K1=0; break;case 0x02: K2=0; break;case 0x03: K3=0; break;case 0x04: K4=0; break;case 0x05: K5=0; break;case 0x06: K6=0; break;case 0x07: K7=0; break;case 0x08: K8=0; break;case 0x09: K9=0; break;case 0x10: K10=0; break;case 0x11: K11=0; break;case 0x12: K12=0; break;case 0x13: K13=0; break;case 0x14: K14=0; break;case 0x15: K15=0; break;case 0x16: K16=0; break;case 0x17: K17=0; break;case 0x18: K18=0; break;case 0x19: K19=0; break;case 0x20: K20=0; break;default:break;}}else if(receBuf[2]==0x03) //关闭单路继电器{switch(receBuf[3]){case 0x01: K1=1; break;case 0x02: K2=1; break;case 0x03: K3=1; break;case 0x04: K4=1; break;case 0x05: K5=1; break;case 0x06: K6=1; break;case 0x07: K7=1; break;case 0x08: K8=1; break;case 0x09: K9=1; break;case 0x10: K10=1; break;case 0x11: K11=1; break;case 0x12: K12=1; break;case 0x13: K13=1; break;case 0x14: K14=1; break;case 0x15: K15=1; break;case 0x16: K16=1; break;case 0x17: K17=1; break;case 0x18: K18=1; break;case 0x19: K19=1; break;case 0x20: K20=1; break;default:break;}}else if(receBuf[2]==0x04) //打开全部继电器{if(receBuf[3]==0xff){P2=0X00;P1=0X00;P0=0X00;}}else if(receBuf[2]==0x05) //关闭全部继电器{if(receBuf[3]==0x00){P2=0XFF;P1=0XFF;P0=0XFF;}}else if(receBuf[2]==0x06) //查询继电器{sendBuf[0]=0xaa;sendBuf[1]=add;sendBuf[2]=0x07;sendBuf[4]=0xbb;switch(receBuf[3]){case 0x01: if(K1==0) sendBuf[3]=0xFF;else sendBuf[3]=0x00;break;case 0x02: if(K2==0) sendBuf[3]=0xFF;else sendBuf[3]=0x00;break;case 0x03: if(K3==0) sendBuf[3]=0xFF;else sendBuf[3]=0x00;break;case 0x04: if(K4==0) sendBuf[3]=0xFF;else sendBuf[3]=0x00;break;case 0x05: if(K5==0) sendBuf[3]=0xFF;else sendBuf[3]=0x00;break;case 0x06: if(K6==0) sendBuf[3]=0xFF;else sendBuf[3]=0x00;break;case 0x07: if(K7==0) sendBuf[3]=0xFF;else sendBuf[3]=0x00;break;case 0x08: if(K8==0) sendBuf[3]=0xFF;else sendBuf[3]=0x00;break;case 0x09: if(K9==0) sendBuf[3]=0xFF;else sendBuf[3]=0x00;break;case 0x10: if(K10==0) sendBuf[3]=0xFF;else sendBuf[3]=0x00;break;case 0x11: if(K11==0) sendBuf[3]=0xFF;else sendBuf[3]=0x00;break;case 0x12: if(K12==0) sendBuf[3]=0xFF;else sendBuf[3]=0x00;break;case 0x13: if(K13==0) sendBuf[3]=0xFF;else sendBuf[3]=0x00;break;case 0x14: if(K14==0) sendBuf[3]=0xFF;else sendBuf[3]=0x00;break;case 0x15: if(K15==0) sendBuf[3]=0xFF;else sendBuf[3]=0x00;break;case 0x16: if(K16==0) sendBuf[3]=0xFF;else sendBuf[3]=0x00;break;case 0x17: if(K17==0) sendBuf[3]=0xFF;else sendBuf[3]=0x00;break;case 0x18: if(K18==0) sendBuf[3]=0xFF;else sendBuf[3]=0x00;break;case 0x19: if(K19==0) sendBuf[3]=0xFF;else sendBuf[3]=0x00;break;case 0x20: if(K20==0) sendBuf[3]=0xFF;else sendBuf[3]=0x00;break;default:break;}senduart2();}}if((receBuf[0]==0xaa)&&(receBuf[1]==0x00)&&(receBuf[2]==0x00)&&(receBuf[3]==0x00)&&(re ceBuf[4]==0xbb)){add=0x00;EEPROMSectorErase(0);//擦除扇区EEPROMWriteByte(0,0);//写入新的地址SBUF=0XAA;while(!TI);TI=0;SBUF=add;while(!TI);TI=0;SBUF=0X00;while(!TI);TI=0;SBUF=0X00;while(!TI);TI=0;SBUF=0XBB;while(!TI);TI=0;}clear_receBuf();}/*if(write==1){write=0;KK1 = P0;KK2 = P1;KK3 = P2;KK4 = P3;EEPROMSectorErase(0);EEPROMWriteByte(0,KK1);EEPROMWriteByte(1,KK2);EEPROMWriteByte(2,KK3);EEPROMWriteByte(3,KK4);}*/}}/********************************************************************结束*********************************************************************/ 【尺寸图】【图片展示】。

串口继电器模块 modbus-rtu说明书 XYS-I2O8-12V

串口继电器模块 modbus-rtu说明书 XYS-I2O8-12V

串口IO控制器说明书型号:XYS-I2O8-m一、应用领域:工业控制:工业交流电机控制、电源开关控制、步进电机控制、开关量采集等;智能家居:家居电源控制、家电控制、开关状态采集、电动门/床帘控制;节能系统:风机控制、路灯控制、空调控制、设备电源控制等;商业应用:宾馆酒店、商场厂房、网吧、办公、实体店铺监控等;无人值守:通信机房、变电站、水厂、机场、地下管道、矿山设备、安防监控等;二、功能介绍采用RS232 &RS485 MODBUS RTU标准通讯,可与PLC、组态软件、文本显示器等进行组网8路继电器输出;通讯电路采用防雷、抗干扰设计可广泛用于工业现场设备的信号控制。

上位机PC通过串口或串口服务器连接到串口IO控制器,向串口IO控制器发送指令控制或读取命令,控制器收到命令后执行继电器开、继电器关、继电器全开、继电器全关和读取开关量输入状态读取。

本产品是PCI IO卡的完美替代品,IO卡价格昂贵,且PCI插槽容易接触不良,安装、维护不方便、可靠性不高。

本设备采用可靠性极高的串口通讯和单片机,确保工业环境中可靠工作。

在电脑空间很紧凑的应用中,本方案可以将IO卡外置,节省空间,可安装于导轨式机箱/柜,或壁挂式墙体上,并提供了10路输出控制和2路开关量状态读取,使电器结构更紧凑。

三、本产品优点:1.电源抗干扰能力强、稳定性高;2.输出继电器16A电流容量控制,峰值20A电流。

光电隔离,抗干扰强,采用品牌继电器,性能稳定、可靠性高;3.开关量输入使用光电隔离,可接按键开关、继电器、磁性/接近开关、红外开关等;4.状态指示灯丰富,具有开关量输出状态指示灯、开关量输入状态指示灯、通信指示灯、电源灯;5.具有标准的RS232、RS485接口;提供其它接口定制6.内直TTL通信口,用于扩展GSM/GRPS/CDMA/zigbee/wifi/蓝牙/Rs422 模块通信;7.内置报警蜂鸣器,可以远程控制报警,提醒提示现场;8.支持modbus-RTU协议或邮电协议;9.接受硬件定制及通信协议定制,技术支持,三年质保;四、功能描述1.具有RS232、RS485通信功能。

SC1801 通讯协议

SC1801 通讯协议

SF-RTU 通讯规约 (1801 规约) 辽宁 丹东华通测控有限公司
RTU
7
0
站号
R1
RRC (0l)
字节数 (高位)
字节数 (低位)
RTU状态
000槽板类型
00l槽板类型
…….. 015槽板类型
CPU跳线
LPC 字节数=18
DRF 02 请求全数据 按顺序报告RTU的全部数据
主机 RTU
7
0
站号
事件时间是RTU内事件发生的绝对时间,RTU的时钟由主站计算机设置,这个时钟必须定时 同步。
PAR 05 报告脉冲累加值 PAR 脉冲报告在PAF或PAZ命令后的最新累加值.
主机
7
0
站号
R0
PAR (05)
字节数 (高位)
字节数 (低位)
LPC 字节数=0
7
电话:0415-6166588 3171251
命令 否定问答(仅是RTU响应命令) 报告RTU配置 报告全数据 报告异非数据 事件顺序记录 报告脉冲累加值 脉冲累加值清零(并冻结) 脉冲累加值冻结 脉冲累加值冻结标志清除 设置死值区 读死值区 备用 备用 控制输出设备 直接控制输出 控制输出执行 开关量遥调输出设备 备用 开关量遥调输出执行 控制输出锁存 请求锁存数据 同步系统时间 报告系统时间 报告接口方式 设置接口方式 读RTU和RME板本标识符 执行RTU冷启动 报告出错数据 **=广播命令
M=停止位
P=奇偶位
0~7=数据位 (字节)
S=起始位
位的传送在通道中是从右到左(先传送低位), 每个字有一个起始位, 8位数据和一位停
止位, 奇偶校验位置奇校验。
l.2.2.2信息帧头

智泽ZZ-IO222 二路串口继电器使用说明书

智泽ZZ-IO222 二路串口继电器使用说明书

ZZ-IO222二路串口继电器使用说明书V2.0济南智泽贸易有限公司目录目录 (2)一、产品资料 (1)二、产品特点 (1)三、产品功能 (1)四、产品选型 (1)五、主要参数 (2)六、接口说明 (3)七、通讯接线说明 (4)1、RS232接线 (4)2、RS485级联接线 (4)八、输入输出接线 (4)1、开关量接线示意图 (4)2、继电器接线说明 (5)3、模拟量接线示意图 (7)九、测试软件说明 (8)1、软件下载 (8)2、软件界面 (9)3、通讯测试 (9)4、模拟量数据说明 (9)十、工作模式功能及设置 (10)1、设备地址 (10)2、闪闭闪断功能及设置 (11)十一、开发资料说明 (11)1、通讯协议说明 (11)2、Modbus寄存器说明 (12)3、指令生成说明 (13)4、指令列表 (14)5、指令详解 (14)十二、常见问题与解决方法 (18)十三、联系方式 (18)十四、质保售后 (18)十五、免责声明 (18)一、产品资料ZZ-IO222二路串口继电器说明书&软件下载地址:https:///product/9847.html 二、产品特点●DC7-30V供电;●继电器输出触点隔离;●通讯接口支持RS485或RS232(两种不同版本,通讯串口只能支持一种);●通信波特率:2400,4800,9600,19200,38400(可以通过软件修改,默认9600);●通信协议:支持标准modbus RTU协议;●可以设置0-255个设备地址,5位地址拨码开关可以设置1-31地址码,大于31的可以通过软件设置;●具有闪开、闪断功能,可以在指令里边带参数、操作继电器开一段时间自动关闭。

三、产品功能●二路继电器控制;●二路开关量输入;●二路模拟量输入;●支持电脑软件手动控制;●支持本机非锁联动模式;●支持本机自锁联动模式。

四、产品选型串口IO型号继电器输出开关量输入模拟亮输入4-20ma通讯接口ZZ-IO101110RS485*1ZZ-IO204240RS485*1或RS232*1 ZZ-IO222222RS485*1或RS232*1 ZZ-IO404440隔离RS485*1或RS232*1 ZZ-IO606660隔离RS485+RS232 ZZ-IO808880隔离RS485+RS232 ZZ-IO16001600隔离RS485+RS232 ZZ-IO32003200隔离RS485+RS232备注说明:通讯接口标注RS485*1或RS232*1,代表有2种产品规格ZZ-IO222有2款,ZZ-IO222RS4854-20mA版和ZZ-IO222RS2320-5VZZ-IO1600有2款,小尺寸版ZZ-IO1600C和升级版ZZ-IO1600HZZ-IO3200有2款,12V供电ZZ-IO3200A和ZZ-IO320024V五、主要参数型号规格IO222A二路控制器供电电压DC7-30V,电源防反接DI接口2路DI,无源和有源输入(232只有无源输入)DO接口2路DO,常开加常闭,10A250VAC/10A30VDC;AI接口2路AI,4-20mA耐久性10万次指示灯具有“PWR、WORK”2路LED红色指示灯通讯接口RS485或RS232,标准ModbusRTU通讯协议默认通讯规格9600,n,8,1波特率2400、4800、9600、19200、38400bps工作温度-20℃~65℃工作湿度0%~95%RH(无凝露)尺寸96*50*32mm安装开孔螺丝安装,Φ3,孔间距88mm重量80g软件支持继电器状态查询;继电器独立控制;模拟量读取;开关量状态查询;调试信息查询;工作模式的更改;偏移地址的设定;继电器整体控制。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
组断开
组吸合
组翻转
0x00,0x00,0x00,0x00
数据中的第四个字节代表断开第几路继电器,其他 为 0。
数据中的第四个字节代表吸合第几路继电器,其他 为 0。
数据中的第 3,4 个字节,每个字节 8 位,共 16 位。 代表 16 路继电器的状态,1 代表吸合 0 代表断开。 最后一个字节的第 0 位代表第一个继电器,依次类
说明:协议中无意义的字节留作将来升级
依次类推。 数据中的第 3,4 个字节,每个字节 8 位,共 16 位。
代表 16 个继电器的操作,1 代表状态翻转 0 代表保
持原来状态。最后一个字节的第 0 位代表第一个继
电器,依次类推。
0x17
闪烁
数据中的第 3,4 个字节,每个字节 8 位,共 16 位。
代表 16 个继电器的操作,1 代表状态闪烁 0 代表保
继电器板通用通信协议说明
串口设置:
波特率 9600,8 个数据位,一个停止位,无校验位。
数据帧:
每个数据帧包含 8 个字节。分别是:数据头(一字节),地址(一字节),功能码(一 字节),数据(四字节),校验和(一字节)。
上位机发送(8 个字节):
数据头:
一字节 固定为 0x55
目标地址:
一字节 如果目标地址为 1,则发送 1,目标地址是多少就发送多少。用来
持原来状态。最后一个字节的第 0 位代表第一个继
电器,依次类推。
数据中的第 2 个字节,代表闪烁间隔,时间单位约
为四分之一秒
0x20
翻转单个继电器
数据中的第四个字节代表翻转第几路继电器,其他
为 0。
说明:不同的功能码配合不同的数据内容代表不同的功能。所有的继电器板支持 0x10-0x13
功能码。
下位机返回(8 个字节):
推。 数据中的第 3,4 个字节,每个字节 8 位,共 16 位。 代表 16 个继电器的操作,1 代表断开 0 代表保持原 来状态。最后一个字节的第 0 位代表第一个继电器,
依次类推。 数据中的第 3,4 个字节,每个字节 8 位,共 16 位。 代表 16 个继电器的操作,1 代表吸合 0 代表保持原 来状态。最后一个字节的第 0 位代表第一个继电器,
下位机返回只是把上位机发送的数据的数据头由 0x55 改为 0x22,校验和采用新的校验和, 其他数据原样返回。 数据头 一字节 0x22 本机地址一字节 数据类型一字节 0 数据四个字节: 数据 0 无意义 数据 1 无意义 数据 2 数据 3 代表 16 路继电器的当前状态 校验和 将前面的所有数据相加得到
功能码:
一字节
数据内容:
四字节,先发送第一字节,然后第二,三,四个字节
校验:
一字节,将前面的所有数据相加,取后八位得到。
功能码与对应的数据说明(数据为十六进制):
功能码 功能码说明数据内容 Nhomakorabea0x10 0x11 0x12 0x13
0x14
0x15
0x16
读取当前继电器板的状态 (最多支持 32 路) 断开某一路 吸合某一路 命令执行
举例说明(假设地址为 1) 上位机发送: 55 01 10 00 00 00 00 66 查询当前的继电器状态 55 01 11 00 00 00 01 68 断开第一路继电器 55 01 11 00 00 00 02 69 断开第二路继电器 55 01 12 00 00 00 01 69 吸合第一路继电器 55 01 12 00 00 00 02 6A 吸合第二路继电器 55 01 13 00 00 55 55 13 按照 55 55 两个字节的 16 个位来打开和关闭所有的继电器 下位机回答: 22 01 00 00 00 XX XX HH 地址为 1 的继电器板 16 个继电器的状态用 XX XX 代表 XX 代表 16 路继电器的实时状态 HH 代表校验和
相关文档
最新文档