当前位置:文档之家› 欧姆龙协议宏

欧姆龙协议宏

DATA:+$(R(1),16)+

DA TA :+&~(W(1),8)+

PLC程序

问题1:通信序列明明是00,而PLC程序中控制字2怎么是#1呢?

问题2:PLC程序中MOV &5 D250 这是用来做什么呀?

问题3:上面的发送和接收数中为什么只有帧头,data,帧毛,而没有数据长度,和接收地址呢?

问题4:+$(R(1),16)++&~(W(1),8)+怎么和PLC程序对应上来?

问题5:这个S0003 0200E怎么跟D260联系起来?R0001 0000 0199 0200E怎么跟D250联

上位机= > PLC

1.Bit command word

2.Setpoint word to pump 0 ~ 1000 = (0% ~ 100.0%)

Example setpoint string; [xx] is ASCII Code Value

S0003 0200E S[53] = start command for setpoints

Bin Bcd

Bit command word

0003[30303033]

0 bit : 1 = Switch pump ON

1 bit : 1 = Switch cycle ON

2 bit : 0 = no reset

~

13 bit : system 1 sec clock to the communication confirm

Pressure value command word

0200[30323030]

0200 = 20.0 %

E[45] = end command

PLC = > 上位机

a.Current pump status(Bit) word

b.Set pressure word 0 ~ 1000 = (0% ~ 100.0%)

c.Current pressure word 0 ~ 1000 = (0% ~ 100.0%)

d.Current HP status word 0 ~ 65535

Example readback string; [xx] is ASCII Code Value

R0001 0000 0199 0200E

Bin Bcd Bcd Bcd

R[52] = start command for readbacks

Bit status word

0001[30303031]

0 bit : 1 = Pump is ON

1 bit : 0 = Cycle is OFF

2 bit : 0 = no reset

3 bit : 1 = HP rinse pressure OK to Belt drive run

0 = HP rinse pressure NG

~

R2000

13 bit : system clock 2 second to communication check

Set pressure value

0199[30313939]

0199 = Current pressure 19.9% If not same with set, error

Current pressure value

0200[30323030]

0200 = Current pressure 20.0%

R0001000001990200E

Error code

00= No error in HP system

E[45] = end command

Proposed COM settings;

Baudrate 9600

Parity non

Start 1

Databits 8

Stopbits 1

Communication period is 0.3 second

【免费下载】欧姆龙协议宏

DATA: +$(R(1),16)+ DATA :+&~(W(1),8)+PLC 程序问题1:通信序列明明是00,而PLC 程序中控制字2怎么是#1呢? 问题2:PLC 程序中MOV &5 D250 这是用来做什么呀? 问题3:上面的发送和接收数中为什么只有帧头,data,帧毛,而没有数据长度,和接收地址呢? 问题4:+$(R(1),16)++&~(W(1),8)+怎么和PLC 程序对应上来? 问题5:这个S0003 0200E 怎么跟D260联系起来?R0001 0000 0199 0200E 怎么跟D250联

上位机= > PLC 1.Bit command word 2.Setpoint word to pump 0 ~ 1000 = (0% ~ 100.0%) Example setpoint string; [xx] is ASCII Code Value S0003 0200E S[53] = start command for setpoints Bin Bcd Bit command word 0003[30303033] 0 bit : 1 = Switch pump ON 1 bit : 1 = Switch cycle ON 2 bit : 0 = no reset ~ 13 bit : system 1 sec clock to the communication confirm Pressure value command word 0200[30323030] 0200 = 20.0 % E[45]= end command PLC = > 上位机 a.Current pump status(Bit) word b.Set pressure word 0 ~ 1000 = (0% ~ 100.0%) c.Current pressure word 0 ~ 1000 = (0% ~ 100.0%) d.Current HP status word 0 ~ 65535 Example readback string; [xx] is ASCII Code Value R0001 0000 0199 0200E Bin Bcd Bcd Bcd R[52]= start command for readbacks

精品干货分享—Free Protocol 自定通讯协议程序

精品干货分享—Free Protocol 自定通讯协议程序 1.范例操作概述 由于工业控制设备多样化,为避免EB8000可提供的通讯驱动的不足,使用者可利用[宏指令]编辑自定的通讯协议封包,来发送通讯命令格式并操控外部设备,以提升设备控制的效率。[宏指令]以OUTPORT 和INPORT做为封包发送与接收的主要两个函 数命令,其中封包格式内容必须按照外部设备的通讯协议来定义。 2.规划说明 1.新建设备类型在设备列表中,此设备选择为[Free Protocol] 并取名为[MODBUS RTU device]。(此范例利用MODBUS PROTOCO做为设计范例,故取名为MODBUS RTU device)

2.分别在宏指令列表中建立不同命令,以对外部设备做[读/写] 的操作控制,完整详细的指令说明请参考[宏指令]章节。

3.设置[位显示对象LB0]和[位设定对象],后者触发[宏指令] 列表中ID5,则[位显示对象LB0]则会显示设备中对应0x1的实际状态。 4.设置[数值输入元件]和[位设定元件],后者触发[宏指令]列表 中ID4,则[数值输入元件LW100 & 101]则会显示设备中对应4x1 & 4x2的实际数值状态。

5.设置[功能键]触发[宏指令]列表中ID1 & ID2,则可对设备地 址0x1做写入ON或OFF,以改变设备中对应bit地址的实际状态。同理,建立[数值输入元件LW30 & 31]及[功能键]来触发ID3,当ID3被触发时,LW30 & 31的数据则会写入设备对应的4x1 & 4x2地址中。 6.建立数值显示对象,以读取设备回复的资料长度及内容。

组态王通过宏电GPRS DTU与S7-200(modbus协议)通讯

组态王通过宏电GPRS DUT连接S7-200测试过程 一、简介 对于远程数据监控的系统,目前组态王提供了多种网络监控方式。其中,基于中国移动公司移动服务网络的GPRS(通用分组无线业务)服务或中国联通公司的CDMA(码分多址)服务,组态王提供了一种无线远程数据交换解决方案。采用此种数据交换方案,用户需要为计算机申请公网IP地址或域名及现场设备上连接支持GPRS或CDMA服务的DTU模块,适合于有移动网络覆盖的远程的数据采集系统。 目前组态王软件支持包括深圳宏电、深圳倚天、厦门桑荣、唐山蓝迪、北京艺能、北京汉智通、台湾尉普、福州利事达、上海蓝峰、福建实达、北京爱立信、北京欧特姆、航天金软、力创LQ-8200、实达TCP、嘉复欣、蓝天顶峰(NETJET)等厂家的DTU模块。 本文主要以组态王软件与宏电GPRS DTU模块采用GPRS方式与西门子 PLC设备进行通信为例讲解此方案的实现方法。 (有关宏电DTU产品的详细情况请咨询宏电公司。) 二、软硬件环境 Window XP(SP2)操作系统 Kingview6.53(组态王) 宏电GPRS DTU H7710模块 S7-200西门子PLC CPU 222CN 移动电话卡(开通GPRS功能全球通卡) 三、宏电GPRS DTU配置: 要使用DTU模块进行通信,首先必须进行DTU设备的配置,使其适合工作环境。 1.DSC DEMO 设置 调试DTU 需要在中心启动DSC DEMO 程序,用于向DTU 发送和接收从DTU 发来的数据,它的运行操作界面如下:

点击服务设置,出现如下图界面: 服务类型:UDP 和TCP 协议选择(根据用户对DTU 协议的设置选择,本例以UDP 为例);服务端口:DSC DEMO 侦听端口(1~65535),用户自定义设置(本例以5007 为例); 指定IP:该功能在PC 具有多IP 地址时使用,用于设置接收数据和发送数据所用IP 地址;(如果中心有多IP 的情况下,不指定IP 地址,有可能导致DTU 无法和DSC DEMO 建立连接。)设置完毕后点击确定按钮,点击启动按键,如下图界面所示:

ModBus-RTU通讯协议与ModBus通讯协议有什么区别

modbus RTU常见问题汇总 1、ModBus RTU通讯协议与ModBus通讯协议有什么区别? ModBus协议是应用层报文传输协议(OSI模型第7层),它定义了一个与通信层无关的协议数据单元(PDU),即PDU=功能码+数据域。 ModBus协议能够应用在不同类型的总线或网络。对应不同的总线或网络,Modbus协议引入一些附加域映射成应用数据单元(ADU),即ADU=附加域+PDU。目前,Modbus有下列三种通信方式: 1.以太网,对应的通信模式是MODBUS TCP。 2.异步串行传输(各种介质如有线RS-232-/422/485/;光纤、无线等),对应的通信模式是MO DBUS RT U 或MODBUS ASCII。 3.高速令牌传递网络,对应的通信模式是Modbus PLUS。 2、关于MODBUS RTU通讯协议的提问? modbus 主要由站地址(一个字节)+功能码(一个字节)+首地址(两个字节)+访问字数(两个字节)+校验码(CRC16或LRC两个字节)总共8个字节组成。其实VB中编程很简单从组建添加MSComm组建就行了,难的是校验, 3、modbus、rtu、modbus rtu分别是什么? modbus协议是工控行业的标准协议,前身为莫迪康所写,现已被施奈德收购 而modbus分为两种协议:即串口协议(modbus rtu)和网口协议(modbus tcp)协议,一般的工控机只支持rs232或者RS485的串口模式,这个时候工控机的协议栈里就只有modbusRTU协议,当他从串口接收到数据时,会直接根据报文中的数据进行控制,如果需要用modbusTCP协议进行传输,则需要使用带有网口的PLC 具体的帧格式如下 modbus RTU 地址域功能码数据差错校验 modbus TCP 目的地址协议id 长度单元号功能码数据 简单的说tcp是由RTU加工而来的 而RTU则是另外一种概念,不包含在modbus协议内 是工控行业对监控设备的简称。 4、关于modbus_RTU协议主机发送的命令的一些问题 ?01 读保持线圈状态(Read coil status) ?02 读输入线圈状态(Read input status) ?03 读保持寄存器(Read holding register) ?04 读输入寄存器(Read input register) ?05 写单个线圈(Force single coil) ?06 写单个寄存器(Preset single register) ?15 写多个线圈(Force multiple coils) ?16 写多个寄存器(Preset multiple registers) 这些都是什么意思

欧姆龙协议宏通讯常见问题

协议宏通讯常见问题 --林兴煌 一、串行模块接收长亮,协议接收一大串0. 接入RS485模块,正负接反。 二、发送正常但是无反馈。 协议不正确,或者目的地址与源地址写错、功能码无写。 三、发送正常但是无反馈,用串口有反馈。 RS485损坏。双工单元,有一路已坏。 四、发送正常有反馈,但是反馈乱码。 协议正确,但是协议设置有问题,再次确认协议设置。(波特率,校验位等等) 五、发送接收都正常,但是发送有临界点,只能发送限制字节。 发送长度设置不够,欧姆龙协议宏默认发送200字节,需改长。 六、RS485正负接反,模块反馈灯都不长亮。 可判定无反馈信号,既设备没发送回来,若光收发器Link不亮,则光路不通,若亮,发送信号灯在闪,很可能设备有问题。 七、发送自定义字符串,上位机已经下方内容,但是无法发送出去,

情报板变黑。 很可能字符串长度无写值。 八、串行模块一直报错,但是设置为默认后正常,再次设置协议宏格式又报错。 很可能是我们的模块有问题或者CPU有故障,只要拿其他CPU 重新组合,重新创建IO表即可消除,或者取出CPU模块与串行模块,恢复出厂设置,重新创建即可。 九、协议宏通讯都正常,有发送有接收,但是接收后的值无法写入内存值。 本系统应该有多个串行通讯模块,协议宏Protocol只创建一个,修改为有多少个模块设置多少个Protocol,每个模块应对应好自己所使用的Protocol。 十、协议宏通讯都正常,有发送有接收,但是接收后的值在上位机有

尾巴。 1、内存值保留上次信息,设置刷新内存值即可。 2、校验码也写入内存值。需在协议宏内增加校验码如图所示 十一、协议宏通讯同一个Sequence第一条正常,有发送有接收,但是第二条无法正常发送接收。 在Step中Next设置Next下一条。End指在当前条结束指令发送 十二、程序中完成标志位不闪。 单元号与标志位设置不一致。

欧姆龙协议宏

DATA:+$(R(1),16)+ DA TA :+&~(W(1),8)+ PLC程序 问题1:通信序列明明是00,而PLC程序中控制字2怎么是#1呢? 问题2:PLC程序中MOV &5 D250 这是用来做什么呀? 问题3:上面的发送和接收数中为什么只有帧头,data,帧毛,而没有数据长度,和接收地址呢? 问题4:+$(R(1),16)++&~(W(1),8)+怎么和PLC程序对应上来? 问题5:这个S0003 0200E怎么跟D260联系起来?R0001 0000 0199 0200E怎么跟D250联

上位机= > PLC 1.Bit command word 2.Setpoint word to pump 0 ~ 1000 = (0% ~ 100.0%) Example setpoint string; [xx] is ASCII Code Value S0003 0200E S[53] = start command for setpoints Bin Bcd Bit command word 0003[30303033] 0 bit : 1 = Switch pump ON 1 bit : 1 = Switch cycle ON 2 bit : 0 = no reset ~ 13 bit : system 1 sec clock to the communication confirm Pressure value command word 0200[30323030] 0200 = 20.0 % E[45] = end command PLC = > 上位机 a.Current pump status(Bit) word b.Set pressure word 0 ~ 1000 = (0% ~ 100.0%) c.Current pressure word 0 ~ 1000 = (0% ~ 100.0%) d.Current HP status word 0 ~ 65535 Example readback string; [xx] is ASCII Code Value R0001 0000 0199 0200E Bin Bcd Bcd Bcd R[52] = start command for readbacks

基于FINS协议的OMRON-PLC与上位机以太网通信的实现[多图]

基于FINS协议的OMRON PLC与上位机以太网通信的实现[多图] 引言 在当代工业自动化控制系统中,可编程逻辑控制器(PLC)作为常用的现场控制设备,上位机作为数据采集及人机界面的一种已经得到广泛运用。过去,在工程项目开发中,PLC和上位机间的通信常采用RS-232C或者RS-485串行方式,这种要领很难满足数据量大、通信距离远、实时性要求高的控制系统。随着互联网技能的发展、普及与推广,以太网技能得到了快速的发展,其传输速率的提高和交换技能的运用,处理了以太网通信的非确定性疑问,使得工业以太网能够广泛运用于工业信息控制领域,也是工业信息控制未来的发展趋势。 FINS(factory interface network service)通信协议是欧姆龙公司开发的用于工业自动化控制网络的指令/响应系统。运用FINS指令可实现各种网络间的无缝通信,包括用于信息网络的Etherne(以太网),用于控制网络的Controller Link 和SYSMAC LINK。通过编程发送FINS指令,上位机或PLC就能够读写另一个PLC数据区的内容,甚至控制其运行状态,从而简化了用户程序。FINS协议支撑工业以太网,这就为OMRON PLC与上位机以太网通信的实现提供了可能。 1 OMRON PLC与上位机通信方式 目前,在欧姆龙PLC网络组成中,上位机和PLC的通信可以采用RS232C /485串行通信、Controller Link通信和工业以太网通信三种方式。它们的主要性能参数如表1所示。 图片看不清楚?请点击这里查看原图(大图)。 文献[3]介绍了采用RS232C/485串行通信的方案,其通信速率仅为9600b /s,速率较慢,很难适应当代数据量大、通信距离较远、实时性要求较高的控制系统。 文献[2]中给出了基于FINS协议的Controller Link通信的设计方案,其最高速率可以达到2Mb/s,整个网络的最大传输距离为500m,硬件上须要在上位机安装CLK支撑卡,其扩展性及运用的灵活性没有工业以太网好。 在三种通信方式中,工业以太网的优势是相当明显的。其传输速率可以达到10/100Mb/s(取决于实际网络环境);两个节点之间的传输距离可以达到100m,对于整个网络的传输距离没有限定;网络内最大节点数可以达到254个,可以实现1(PLC):N(PC)、N:N、N:1等多种网络形式。这些都为构架各种规模的工业网络信息系统提供了有利的条件,具有良好的扩展性、实用性、灵活性。

欧姆龙CP1H与3G3JZ变频器协议宏通讯使用说明

欧姆龙CP1H与3G3JZ变频器协议宏通讯 使用说明书 2010.9

目录 一、建立工程 (3) 1.新建工程 (3) 2.新建Protocol (3) 3.新建Sequence (4) 4.新建Step (5) 二、建立发送消息 (5) 1.新建消息 (5) 2.变频器命令格式 (6) 3.变频器内部寄存器定义 (7) 5.变频器错误代码 (8) 6.与变频器通讯PCMR指令定义 (9) 7.消息编写实例 (9) 三、下载数据 (12) 四、程序编写 (15) 1.内部寄存器区分配: (15) a)DM区 (15) b)CIO区 (16) 2.内部寄存器定义 (16) a)DM区定义 (16) b)CIO区定义 (17) c)端口状态寄存器 (18) 3.样例程序 (19) 五、监控通讯状态 (20)

用CX-PROTOCAL设置 PLC与3G3JZ通讯的协议宏 一、建立工程 1.新建工程 2.新建Protocol 将弹出PLC系列选择窗口如下,本例选择CS/CJ系列

并重新命名为Protocol01 选择Target为【SCU[0]】 3.新建Sequence 并重新命名为Sequence01,分别设定通讯时间【Timer Tr】【Timer Tfr】【Timer Tfs】

4.新建Step 在NewSequence上新建Step 配置好步后,下面需要设置发送的消息,见下章 二、建立发送消息 1.新建消息 设置发送的Data,根据变频器操作手册第7章第六页格式编写 本例中的格式为:站号(01)+功能码(10)+开始编号(2110)+个数(0002)+数据数(04)+起始数据+下一数据+CRC-16,如[0110]+[2101]+[0002]+EOT+(R(DM 01000),4)+或[0110]+[2101]+[0002]+[04]+(R(DM 01000),4)+ 其中起始数据和下一数据用变量编写,从D1000开始的4Bit即D1000和D1001

欧姆龙 协议宏上机手册

串行通信 串行通信即通过使用PLC上的串行口(RS-232C口或RS-422/485口)同第三方设备进行通信的过程。对于PLC上的串行口,它所支持的通信方式有很多种,有连接上位机的上位机通信方式,有连接PLC的1:1PC链接方式,还有连接第三方的通信方式等等。下面进行一一介绍。 第一节上位机链接通信 概要 上位机链接系统即Hostlink系统是对于FA系统一种即优化又经济的通信方式,它适合一台上位机与一台或多台PLC进行链接。上位机可对PLC传送程序,并监控PLC的数据区,以及控制PLC的工作情况。 HOSTLINK系统允许一台上位机通过上位机链接命令向HOSTLINK系统的PLC发送命令,PLC处理来自上位机的每条指令,并把结果传回上位机。 一.HOSTLINK 系统特点 通信即可采用RS-232C方式,又可采用RS-422方式,RS-232C方式是基于1:1的通信,距离为15m。RS-422方式是实现1:N的通信,即一台上位机与多台PLC 进行通信,最多可有32台PLC连接到上位机,通信距离最大可达500m。 上位机监控上位机可对PLC的程序进行传送或读取,并可对PLC数据区进行读写操作。双重检查系统所有通信都将作奇偶检验和帧检验,从而能估计出通信中的错误。 二.系统配置: RS-232C链接(1:1) 当使用RS-232C连接时,只可实现1:1的通信,即一台上位机与一台PLC进行通信,最大通信距离不超过15m。 1.使用PLC自带的口 RS-232C口 编程器口(外设口)

注:适配器型号为CPM1-CIF01或CQM1-CIF02,是外设口转RS-232C口的适配器。2.使用上位链接单元: 注:上位链接单元的型号为C200H-LK201,它提供的是一个25芯的RS-232C口。 若连的是CS1系列的PLC,可通过通信模块CS1W-SCU21。 3.使用通信板: RS-422链接(1:N) 注:CPM1-CIF11为外设口转RS-422口的适配器。 NT-AL001为RS-232C与RS-422转换的适配器。 B500-AL001为分支器,其功能是将一路RS-422信号转成两路RS-422信号。

PMC通信协议

研宏科技PMC控制器通讯协议 一、数据传输采用数据帧方式 请求指令 [启动关键字AA][设备地址][操作码] [参数1] [参数2] [参数31] [参数32] [参数33] [参数34] [校验码] 回应消息 [启动关键值BB] [设备地址][操作码] [错误码] [参数1] [参数21] [参数22] [参数23] [参数24] [校验码] Eg: BB FF 01 01 00 00 00 00 00 FF 备注: 1、当前控制器支持的操作指令为等长指令,每个指令长度为10个字节; 2、地址码为0xff的指令为广播指令。所有控制器都需要处理; 3、错误校验码采用普通的加法运算。即: [校验码]= [设备地址]+[操作码] + [操作数1] + [操作数2] + [操作数31] +[操作数32] + [操作数33] + [操作数34] ; 二、系统参数设置指令 1、设置控制器工作模式 par1 [01: 02PC] eg:设置PC机器指令工作模式 AA FF 04 02 00 00 00 00 00 00 BB FF 04 00 00 00 00 00 00 FF 2、设置控制器地址 Eg: AA FF 01 5500 00 00 00 00 00 BB 55 01 00 00 00 00 00 00 FF 3、获取控制器地址 BB XX 02 00 XX00 00 00 00 00 控制器地址 发送:AA FF 02 00 00 00 00 00 00 00 接收:BB 55 02 00 55 00 00 00 00 FF

4、获取控制器工作模式 BB XX 05 00 XX00 00 00 00 00 控制器工作模式 5、蜂鸣器叫 Par3ms AA FF 09 00 00 00 00 01 00 00 6、向输出口上面输出一个 Par2 1为高电平,0为输出低电平 AA FF 13 01 00 00 00 00 00 00 读取输入口状态信息 BB FF 3F 00 00 00 00 0F FF FF 7、设置电机转动一圈需要的脉冲数。 Par3 电机驱动器的细分数 AA FF 61 01 00 00 00 06 40 00 BB FF 61 00 00 00 00 00 00 FF 8、获取驱动器的细分数(如果含有减速箱需要计算减速箱值)。 Par1 (1X2Y3Z) 返回指令中,细分数通过Par3带回 AA FF 62 01 00 00 00 00 00 00 BB FF 62 00 00 00 00 06 40 FF 设置电机转动一圈移动的距离。

欧姆龙PLC与三菱Q系列PLC协议宏通信

欧姆龙PLC与三菱Q系列PLC协议宏通信 目录 1 三菱Q系列PLC通信协议 (1) 1.1 MC协议概述 (1) 1.2 QnA兼容3C帧通信格式 (2) 1.2.1 数据通信的基本格式 (3) 1.2.2 QnA兼容3C帧格式,用格式1进行通信时 (3) 1.2.3 QnA兼容3C帧格式,用格式2进行通信时 (5) 1.2.4 QnA兼容3C帧格式,用格式3进行通信时 (7) 1.2.5 QnA兼容3C帧格式,用格式4进行通信时 (9) 1.2.6 帧格式中各个项目的说明 (11) 1.2.7 命令及响应字符部分说明 (13) 2 欧姆龙协议宏与三菱Q系列PLC协议宏通信实验 (18) 2.1 实验准备 (18) 2.2 通信电缆接线 (18) 2.3 PLC通信参数设置 (20) 2.3.1 欧姆龙SCU模块通信参数设置 (20) 2.3.2 三菱C24通信模块通信参数设置 (20) 2.4 串口调试工具测试 (24) 2.5 协议宏程序编写 (25) 2.6 监视通信状态——Trace功能 (30)

1 三菱Q系列PLC通信协议 1.1 MC协议概述 三菱的Q系列PLC采用列MELSEC通讯协议,即MC协议。所谓MC通讯协议就是对方设备通过Q系列C24或者Q 系列E71来进行PLC CPU软元件数据和程序的读出/写入的Q系列PLC用的通讯方式的名称。MC协议采用帧的形式进行通讯,它包括以下几种帧格式: 串行通信模块C24模块: A兼容1C帧,包括1-4种格式 QnA兼容2C帧,包括1-4种格式; QnA兼容3C帧,包括1-4种格式; QnA兼容4C帧,包括1-5种格式; 说明:格式5,用于采用二进制代码的通信 如果以格式1为基准来考虑采用ASCII代码的4种通信格式就有如下不同: 格式2:各文件上附加了编号的格式; 格式3:用STX ETX 包围各文件的格式; 格式4:各文件上附加了CR LF 的格式; 详情请参考QnA兼容3C帧格式1~格式3的说明。 以太网通信模块E71: A兼容1E帧; QnA兼容3E帧。 Q系列C24模块串行通信模块时可以使用QnA兼容2C/3C/4C帧和A兼容1C帧,Q系列E71模块可以使用QnA兼容3E帧和A兼容1E帧。本工程主要介绍Q系列C24模块使用QnA兼容3C帧格式3通信的实例。

PC机与单片机232通信协议

PC 机与单片机通信(RS232 协议) 目录: 1、单片机串口通信的应用 2、PC控制单片机IO口输出 3、单片机控制实训指导及综合应用实例 4、单片机给计算机发送数据: [实验任务] 单片机串口通信的应用,通过串口,我们的个人电脑和单片机系统进行通信。 个人电脑作为上位机,向下位机单片机系统发送十六进制或者ASCLL码,单片机系统接收后,用LED显示接收到的数据和向上位机发回原样数据。 [硬件电路图] [实验原理] RS-232是美国电子工业协会正式公布的串行总线标准,也是目前最常用的串 行接口标准,用来实现计算机与计算机之间、计算机与外设之间的数据通讯。 RS-232串行接口总线适用于:设备之间的通讯距离不大于15m,传输速率最大为20kBps。RS-232协议以-5V-15V表示逻辑1;以+5V-15V 表示逻辑0。我们是用MAX232芯片将RS232电平转换为TTL电平的。一个完整的RS-232接口有22 根线,采用标准的25芯插头座。我们在这里使用的是简化的9芯插头座。 注意我们在这里使用的晶振是11.0592M的,而不是12M。因为波特率的设置 需要11.0592M的。 “串口调试助手V2.1.exe”软件的使用很简单,只要将串口选择‘CMO1’波 特率设置为‘9600’数据位为8 位。打开串口(如果关闭)。然后在发送区里 输入要发送的数据,单击手动发送就将数据发送出去了。注意,如果选中‘十六

进制发送’那么发送的数据是十六进制的,必须输入两位数据。如果没有选中,则发送的是ASCLL码,那么单片机控制的数码管将显示ASCLL码值。

[C语言源程序] #include "reg52.h" //包函8051 内部资源的定义 unsigned char dat; //用于存储单片机接收发送缓冲寄存器SBUF里面的内容 sbit gewei=P2^4; //个位选通定义 sbit shiwei=P2^5; //十位选通定义 sbit baiwei=P2^6; //百位选通定义 unsigned char code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,}; //1~10 void Delay(unsigned int tc) //延时程序 { while( tc != 0 ) {unsigned int i; for(i=0; i<100; i++); tc--;} } void LED() //LED显示接收到的数据(十进制) { gewei=0; P0=table[dat%10]; Delay(10); gewei=1; shiwei=0; P0=table[dat/10]; Delay(10); shiwei=1; baiwei=0; P0=table[dat/100]; Delay(10); baiwei=1; } ///////功能:串口初始化,波特率9600,方式1///////// void Init_Com(void) { TMOD = 0x20; PCON = 0x00; SCON = 0x50; TH1 = 0xFd; TL1 = 0xFd; TR1 = 1; } /////主程序功能:实现接收数据并把接收到的数据原样发送回去/////// void main() { Init_Com();//串口初始化 while(1) { if ( RI ) //扫描判断是否接收到数据, { dat = SBUF; //接收数据SBUF赋与dat RI=0; //RI 清零。

Modbus标准通讯协议格式【最新】

Modbus通讯协议 下表是Modbus的功能格式: 1、读可读写数字量寄存器(线圈状态): 计算机发送命令:[设备地址] [命令号01] [起始寄存器地址高8位] [低8位] [读取的寄存器数高8位] [低8位] [CRC校验的低8位] [CRC校验的高8位] 例:[11][01][00][13][00][25][CRC低][CRC高] 意义如下: <1>设备地址:在一个485总线上可以挂接多个设备,此处的设备地址表示想和哪一个设备通讯。例子中为想和17号(十进制的17是十六进制的11)通讯。 <2>命令号01:读取数字量的命令号固定为01。 <3>起始地址高8位、低8位:表示想读取的开关量的起始地址(起始地址为0)。比如例子中的起始地址为19。 <4>寄存器数高8位、低8位:表示从起始地址开始读多少个开关量。例子中为37个开关量。

<5>CRC校验:是从开头一直校验到此之前。在此协议的最后再作介绍。此处需要注意,CRC校验在命令中的高低字节的顺序和其他的相反。 设备响应:[设备地址] [命令号01] [返回的字节个数][数据1][数据2]...[数据n][CRC 校验的低8位] [CRC校验的高8位] 例:[11][01][05][CD][6B][B2][0E][1B][CRC低][CRC高] 意义如下: <1>设备地址和命令号和上面的相同。 <2>返回的字节个数:表示数据的字节个数,也就是数据1,2...n中的n的值。 <3>数据1...n:由于每一个数据是一个8位的数,所以每一个数据表示8个开关量的值,每一位为0表示对应的开关断开,为1表示闭合。比如例子中,表示20号(索引号为19)开关闭合,21号断开,22闭合,23闭合,24断开,25断开,26闭合,27闭合...如果询问的开关量不是8的整倍数,那么最后一个字节的高位部分无意义,置为0。 <4>CRC校验同上。 2、读只可读数字量寄存器(输入状态): 和读取线圈状态类似,只是第二个字节的命令号不再是1而是2。 3、写数字量(线圈状态):

ModBusRTU通讯协议与ModBus通讯协议有什么区别

M o d B u s R T U通讯协议与M o d B u s通讯协议有 什么区别 Last revision date: 13 December 2020.

modbus RTU常见问题汇总 2013年04月22日 10:57 注:本资料由网络搜索,答案仅供参考(持续更新中) 点击查看产品详情 1、ModBus RTU通讯协议与ModBus通讯协议有什么区别 ModBus协议是应用层报文传输协议(OSI模型第7层),它定义了一个与通信层无关的协议数据单元(PDU),即PDU=功能码+数据域。 ModBus协议能够应用在不同类型的总线或网络。对应不同的总线或网络,Modbus 协议引入一些附加域映射成应用数据单元(ADU),即ADU=附加域+PDU。目前,有下列三种通信方式: 1.以太网,对应的通信模式是MODBUS TCP。 2.异步串行传输(各种介质如有线RS-232-/422/485/;光纤、无线等),对应的通信模式是MOU或MODBUS ASCII。 3.高速令牌传递网络,对应的通信模式是Modbus PLUS。 2、关于MODBUS RTU通讯协议的提问 modbus 主要由站地址(一个字节)+功能码(一个字节)+首地址(两个字节)+访问字数(两个字节)+校验码(CRC16或LRC两个字节)总共8个字节组成。其实VB中编程很简单从组建添加MSComm组建就行了,难的是校验,

3、modbus、rtu、modbus rtu分别是什么 modbus协议是工控行业的标准协议,前身为莫迪康所写,现已被施奈德收购 而modbus分为两种协议:即串口协议(modbus rtu)和网口协议(modbus tcp)协议,一般的工控机只支持rs232或者RS485的串口模式,这个时候工控机的协议栈里就只有协议,当他从串口接收到数据时,会直接根据报文中的数据进行控制,如果需要用modbusTCP协议进行传输,则需要使用带有网口的PLC 具体的帧格式如下 modbus RTU 地址域功能码数据差错校验 modbus TCP 目的地址协议id 长度单元号功能码数据 简单的说 tcp是由RTU加工而来的 而RTU则是另外一种概念,不包含在modbus协议内 是工控行业对监控设备的简称。 4、关于modbus_RTU协议主机发送的命令的一些问题 01 读保持线圈状态(Read coil status) 02 读输入线圈状态(Read input status) 03 读保持寄存器(Read holding register) 04 读输入寄存器(Read input register)

宏电DTU DDP协议规范 V30

H7710S-DDP协议 1 数据帧格式 1.1 DTU端发送的协议包 1.2 DSC端发送的协议包 1.3 字节序说明 协议内容中所涉及的短整型和长整型数据字段,均要采用网络字节序。

发送方要先将本地字节序转换成网络字节序,接收方在使用前要转换成本地字节序。 2 帧内容 2.1 注册包 2.1.1 终端注册(DTU-->DSC) 2.1.2 注册应答(DSC->DTU) 2.2 注销包 2.2.1 终端注销DTU->DSC 2.2.2注销应答包DSC->DTU 注:DSC 可以主动发送此指令让DTU 重新启动

2.3 发送用户数据包 2.3.1 DTU 发送给DSC 的数据包 2.3.2 DSC 应答收到正确数据包(一般不用) 2.3.3 DSC 发送给DTU 的数据包DSC->DTU 2.3.4 DTU 应答收到正确数据包(一般不用) 2.4 参数DTU查询 2.4.1 查询DTU 参数(DSC->DTU) 查询类型:

0x00查询所有参数 0xN1查询移动服务参数 0xN2查询RTU参数 0xN3查询SMS设置参数 0xN4查询运行参数 0xN5查询系统参数 0xN6 查询IP通道参数 N7~0xFF 保留 其中N1——N7的值应与参数定义中的大类ID一致。 为统一处理,查询结果均采用分包方式。同时简化流程控制,采用一问多答的方式,即DSC 发出查询请求后,DTU组织查询结果,将返回结果拆分成1个或多个包,然后依次上传,每个分包包含分包标识、包序号和总包数。具体说明如下: 请求序号用于参数查询分包处理,该字段可能为空,也可能为n个字节,每个字节代表一个请求序号。 DSC首次发出参数查询请求时,该字段一定为空; 如果当前查询内容需要分包,DSC在收到DTU的回复后,如果发现丢包,会再次发出查询请求,此时会将请求序号字段置为此次需要查询的包序号序列。 例: DSC--->>>DTU: 7b 8b xx xx .... xx 00 7b 请求查询所有参数 DTU--->>>DSC: 共有四个分包,DSC只接到了其中的第一个和第三个分包 DSC--->>>DTU: 7b 8b xx xx .... xx 00 02 04 7b 请求第二个和第四个分包 请求查询所有参数 DTU--->>>DSC : 重发上次的第二个和第四个分包 2.4.2 正确查询DTU 参数应答包(DTU->DSC) 协议包格式: 选项数据=分包信息+查询参数 分包信息=分包标识+总包数+包序号 分包标识=0x00 总包数=M ( M>=N ) 包序号=N ( N >= 1 ) 分包信息的三个字段长度均为1字节。

ModBus RTU通讯协议与ModBus通讯协议有什么区别

modbus RTU常见问题汇总 2013年04月22日10:57 注:本资料由网络搜索,答案仅供参考(持续更新中) 点击查看MODBUS RTU产品详情 1、ModBus RTU通讯协议与ModBus通讯协议有什么区别? ModBus协议是应用层报文传输协议(OSI模型第7层),它定义了一个与通信层无关的协议数据单元(PDU),即PDU=功能码+数据域。 ModBus协议能够应用在不同类型的总线或网络。对应不同的总线或网络,Modbus协议引入一些附加域映射成应用数据单元(ADU),即ADU=附加域+PDU。目前,Modbus有下列三种通信方式: 1.以太网,对应的通信模式是MODBUS TCP。 2.异步串行传输(各种介质如有线RS-232-/422/485/;光纤、无线等),对应的通信模式是MO DBUS RT U 或MODBUS ASCII。 3.高速令牌传递网络,对应的通信模式是Modbus PLUS。 2、关于MODBUS RTU通讯协议的提问? modbus 主要由站地址(一个字节)+功能码(一个字节)+首地址(两个字节)+访问字数(两个字节)+校验码(CRC16或LRC两个字节)总共8个字节组成。其实VB中编程很简单从组建添加MSComm组建就行了,难的是校验, 3、modbus、rtu、modbus rtu分别是什么? modbus协议是工控行业的标准协议,前身为莫迪康所写,现已被施奈德收购 而modbus分为两种协议:即串口协议(modbus rtu)和网口协议(modbus tcp)协议,一般的工控机只支持rs232或者RS485的串口模式,这个时候工控机的协议栈里就只有modbusRTU协议,当他从串口接收到数据时,会直接根据报文中的数据进行控制,如果需要用modbusTCP协议进行传输,则需要使用带有网口的PLC 具体的帧格式如下 modbus RTU 地址域功能码数据差错校验 modbus TCP 目的地址协议id 长度单元号功能码数据 简单的说tcp是由RTU加工而来的 而RTU则是另外一种概念,不包含在modbus协议内 是工控行业对监控设备的简称。 4、关于modbus_RTU协议主机发送的命令的一些问题 ?01 读保持线圈状态(Read coil status) ?02 读输入线圈状态(Read input status) ?03 读保持寄存器(Read holding register) ?04 读输入寄存器(Read input register) ?05 写单个线圈(Force single coil) ?06 写单个寄存器(Preset single register) ?15 写多个线圈(Force multiple coils)

CJ1W-SCU做协议宏通过Modbus控制变频器

CJ1W-SCU做协议宏通过Modbus控制变频器 实验设备:CJ2M-CPU11、CJ1W-PA205R、CJ1W-SCU41-V1、3G3MX2-AB001、开关电源 实验目的:通过软件CX-protocol编写协议宏工程,下传到SCU串口模块中,在梯形图中利用PMCR指令发送协议宏 实验步骤: 1、系统概述,硬件搭建和接线 ①将SCU41模块按照下列顺序安装在CPU上,单元号为1 2、软件设置 新建CJ2M-CPU11工程,切换到编程模式,双击打开IO表,点击选项-创建,创建成功后,配置SCU模块串口1,如下图所示:将配置传送到PLC,重启模块 3、编程说明 ①在编辑窗口中进行主程序的编写,内容如下所示

1509.15 是协议宏执行标志位,1500+单元号*25+9(串口 2 是加 19)的 15 位。A202.00 是内部逻辑端口 0 的网络通信命令可执行标志位。 PMCR 的第一个控制字的 12-15 位的 0 内部逻辑端口 3, 8-11位的 1 是串口2,0-7位的 10 是 10+单元号(这里的单元号是 0) 第二个控制字 0 代表序列 0 即 POTOCOL中的 Sequence0 第三个控制字和第四个控制字分别是发送和接收的数据通道,仅当 POTOCOL中的 Data Address 是 Operand 时有效,所以这里都设为 0. ②新建协议宏 A、打开CX-protocol,新建工程, B、创建协议宏工程,选择CJ\CS系列,如下图所示:

C、创建序列-步,新建-发送和接收报文: D、编辑写入频率命令和运行命令的报文,第一条命令结束后执行NEXT下一条运

通讯协议设计

通信接口协议2011年6月

修订控制页

目录 1.概述 (5) 1.1编写目的 (5) 1.2缩略语 (5) 1.3参考资料 (5) 1.4共享平台机具接口定义 (5) 1.5通信密钥 (6) 2协议包格式 (7) 2.1协议分层说明 (7) 2.2包格式 (7) 2.3校验字MAC码计算方法 (8) 3.接口报文格式 (9) 3.1业务应用类 (9) 3.1.1消费流水上传 (9) 3.1.2身份识别流水上传 (10) 3.1.3黑名单下发 (11) 3.1.4身份识别白名单下发 (12) 3.1.5客户代码下发 (13) 3.2设备管理类 (14) 3.2.1通信参数下发 (14) 3.2.2应用密钥下发 (14) 3.2.3时间同步下发 (15) 3.2.4心跳信号上传 (16) 3.2.5开机密钥下发 (16) 3.3门禁业务控制类 (18) 3.3.1下发节假日时段和星期节假日信息 (18) 3.3.2下发门设置信息(策略) (19) 3.3.3启动/停止实时上传 (20) 3.3.4远程强制控制门的开关 (21) 3.3.5门禁锁状态查询 (22) 3.3.6开门密码设置 (22) 3.3.7多卡开门设置 (23) 3.3.8协迫开门密码设置 (24) 3.4考勤业务控制类........................................ 错误!未定义书签。

3.5脱机消费业务控制类.................................... 错误!未定义书签。 3.5.1下发补贴名单 ................................................ 错误!未定义书签。