05-自由口通信详细设计

合集下载

自由口通讯案例

自由口通讯案例

自由口通讯案例自由口通讯是指通过语音、视频和文字等多种方式进行沟通和交流的一种通讯方式。

它突破了时间和空间的限制,让人们可以随时随地与他人进行沟通,极大地方便了人们的生活和工作。

下面是一些自由口通讯的案例。

1. 商务会议:以前,商务会议需要与会人员亲自到达会议地点进行面对面的交流。

但现在,借助自由口通讯技术,参会人员可以通过视频会议进行虚拟的会面,无需花费时间和费用进行长途旅行,大大提高了工作效率。

2. 远程教育:自由口通讯为远程教育提供了良好的支持。

学生可以通过网络与教师进行实时的语音和视频交流,解决问题和进行讨论。

这种方式不仅节省了学生的时间和交通费用,还使得教育资源更加平等和公平。

3. 家庭联系:自由口通讯让人们能够随时与远方的亲朋好友进行联系。

无论是通过语音通话、视频聊天还是文字消息,都可以让人们感受到亲人的关怀和陪伴,缩短了彼此的距离。

4. 医疗咨询:自由口通讯为患者提供了便捷的医疗咨询渠道。

患者可以通过视频通话或语音电话与医生进行沟通,咨询病情和诊疗方案。

这不仅节省了患者的时间和精力,还为医生提供了更多的咨询机会,提高了医疗资源的利用效率。

5. 跨国交流:自由口通讯打破了国界的限制,使得跨国交流变得更加容易。

无论是商务合作、学术交流还是文化交流,都可以通过自由口通讯技术进行实时的远程交流,推动了不同国家和文化之间的互动和合作。

6. 社交娱乐:自由口通讯也为人们的社交和娱乐提供了多种方式。

通过社交媒体平台,人们可以与朋友分享生活点滴,通过语音和视频聊天,人们可以随时随地与朋友进行交流和聚会,增强了社交的便利性和乐趣。

7. 应急救援:自由口通讯在应急救援方面发挥着重要的作用。

通过语音和视频通讯,救援人员可以及时了解灾情和伤情,与指挥中心进行实时的沟通和协调,提高了救援的效率和准确性。

8. 远程工作:自由口通讯为远程办公提供了便利条件。

员工可以通过语音和视频会议与同事进行沟通和协作,解决问题和制定工作计划。

PLC自由口通信技术研究与应用

PLC自由口通信技术研究与应用

PLC自由口通信技术研究与应用摘要:在实际工业控制系统应用环境中,研究plc自由口模式的通信有助于实现plc与windows程序开发环境间的实时通信。

通过研究plc自由口模式的通信,实现系统与plc的实时通信,从而能够完全实现工业控制系统中上下位机的通信,实时显示和控制plc 采集的数据,并将数据以数据库的形式存储起来方便研究和分析。

关键词:plc 实时通信数据采集自由口模式一、前言在实际的工业控制系统应用中,可编程控制器(plc)是系统的控制核心。

由于可编程控制器的结构简单、控制安全且易于编程等优点,能够超乎想象的满足小规模的控制要求,因此plc以其灵活多变的特点满足了各行各业工业自动化控制的需求,被称为现代工业自动化的中流砥柱。

本篇文章将简要介绍plc控制系统的组成结构,并研究了主流应用的s7-200系列自由口模式的通信技术以及应用情况。

二、plc控制系统可编程控制器首次应用于20世纪60年代末美国数字设备公司为gm公司设计的解决方案中,其主要功能是逻辑控制。

根据i/o口分类,plc可以分为巨型、大、中、小、微等多种plc。

而且不同国家生产的plc由于生产地的不同形成了不同的类型。

根据不同的结构,plc可以分为整体式、组合式和混合式这三种。

整体式结构是plc以前采用的主要结构,通过将cpu主机模块、i/o口以及电源和接口端等基础组成模块通过一定的方式紧密的封装在一个整体的壳体内,形成一个整体。

整体式结构目前主要应用在集中控制的工业现场。

模块式结构是根据不同的功能模块相互独立的进行封装。

主要分为cpu主机、输入、输出、电源和辅助功能模块。

各个模块相互独立,在组装时可以根据所需功能按照相应的规范安装在莫班上,各模块自动组建成控制系统。

模块式结构主要应用于分布式控制的工业现场。

混合式结构包含plc主机和拓展模块,plc主机包含主要的基本模块,能够独立完成相应的控制功能。

拓展模块式主要其他辅助只能模块。

实验十 自由口通信实验

实验十 自由口通信实验

实验十自由口编程实验一、实验目的了解PLC通信功能;初步掌握PLC自由口通信编程方法。

二、实验设备1、THSMS-A型实验装置二台2、安装了STEP7-Micro/WIN4.0编程软件的计算机一台3、PC/PPI编程电缆,网络连接器。

4、锁紧导线若干三、实验内容与步骤(1)输入以下程序,通过串口调试软件(可从网上下载,下图为某一款软件主界面)或windows超级终端(使用方法附后,如果你的计算机中没有,请找老师或者从网上下载)观察现象。

Network 1 // 网络标题// 传送:“S7-200你好”到VW100开始的五个字(十个字节)LD SM0.1MOVB 16#09, SMB30 //9600,8,N,1MOVW 16#5337, VW100 //“S”和“7”的ASCII码MOVW 16#2D32, VW102 //“-”和“2”的ASCII码MOVW 16#3030, VW104 //两个“0”的ASCII码MOVW 16#C4E3, VW106 //“你”字的汉字机内码,产生办法:找到汉字区位码,将区码和位码分别变为16进制,再分别加上A0即得MOVW 16#BAC3, VW108 //“好”的机内码MOVB 10, VB99 //缓冲区有10个字节(即“S7-200你好”),缓冲区格式见教材P145图7-22Network 2LD SM0.5 //秒脉冲,占空比50%EUXMT VB99, 0 //上升沿发送VB99中写明的字节数,从端口0发送(2)输入以下程序,通过串口调试软件(可从网上下载,下图为某一款软件主界面)或windows超级终端(使用方法附后,如果你的计算机中没有,请找老师或者从网上下载)观察现象。

主程序:Network 1 // 网络标题// 网络注释LD SM0.1MOVB 9, SMB30MOVB 1, VB100MOVB 'A', VB101Network 2LD SM0.1ATCH INT0, 8ENINetwork 3LD I0.1EUXMT VB100, 0中断程序:TITLE=中断程序注释Network 1 // 网络标题//SMB2中包含自由端口通信过程中从端口0 或端口1 收到的每个字符LDB= SMB2, 'A'= Q0.1程序所用符号表:拨动PLC开关进入运行状态,此时关闭STEP7软件,启动超级终端,在终端窗口分别输入CHINA123和chinAa123,观察PLC的Q0.1端子的灯亮来灭情况。

通信接口设计的原理与方法

通信接口设计的原理与方法

通信接口设计的原理与方法通信接口指的就是在通信系统中,不同设备之间进行信息交换所需要的物理、逻辑连接方式和信号标准。

在现代化信息技术的推动下,各种类型的通信接口种类越来越多,从最初的串口、并口,到现在的USB、HDMI、雷达和NFC等等。

本文主要探讨通信接口的设计原理和方法。

一、通信接口的分类通信接口可以根据不同的标准进行分类,如传输速率、连接方式、信号类型等。

下面将介绍通信接口的主要分类:1.按传输速率分类通信接口的传输速度很大程度上决定了其使用场合和设备的应用范围。

因此,通信接口可以根据传输速率的不同分为以下几类:(1)低速接口:传输速率一般在10Mbit/s以下,例如串行接口、并行接口、PS/2接口等。

这种接口适用于一些数据传输要求不太高的应用中。

(2)中速接口:传输速率一般在10Mbit/s到100Mbit/s之间,例如USB接口、PCI接口等。

这种接口适用于需要高速数据传输的应用中。

(3)高速接口:传输速率一般在100Mbit/s以上,例如SATA 接口、HDMI接口等。

这种接口适用于需要大数据量高速传输的应用中。

2.按连接方式分类通信接口可以根据连接方式的不同分为以下几类:(1)串行接口:数据是个接个传输的,速度慢但稳定,适用于不需要高速数据传输的应用中。

(2)并行接口:数据可以同时传输多个,速度快但抗干扰能力差,适用于需要高速数据传输的应用中。

(3)USB接口:通常都是采用USB接口进行设备间的连接,其特点是插拔方便,泛用性强,速度也较快,目前已成为设备之间最主要的通信接口之一。

(4)HDMI接口:既可以传输音频信号,也可以传输视频信号,速度相对较快,适用于高清视频传输。

3.按信号类型分类通信接口可以根据信号的类型分为以下几类:(1)模拟信号接口:适用于需要传输模拟信号的应用,例如音频接口、视频接口等。

(2)数字信号接口:适用于需要传输数字信号的应用,例如网口、串口、并口、USB接口等。

自由口通讯

自由口通讯
宏指令编写自由通讯协议
本章主要讲述在 SKWorkshop(以下简称 SK)组态软件中如何用宏指令编写 自由通讯协议。SK 的自由通讯协议编写主要运用了内部自带的两个函数:
PUTCHARS(发送数据函数)和 GETCHARS(接收数据函数)。编程人员运用这两个函数 可以很方便的编写自己的设备协议。
首先新建一个工程,命名为:自由口通讯;通讯连接设置连接接口:COM1;设备服务 选择:Samkoon NULL PLC(或者建立工程后在连接中更改),如图 3-1:
}
else
//接收正确
{
LW2=Gdata[0]&0xff;
//数据处理
LB0=0;//处理Fra bibliotek毕,下次进入时发送
PUTCHARS(0,Pdata,0);
//清除缓冲区
}
}
在变量设定表里面建立如下 4 个变量:
LB0:内部地址 LB0,BOOL,读写;
LW0:内部地址 LW0,16 位整数,写;
LW1:内部地址 LW1,16 位整数,写;
//所要发送的数据
Pdata[1]=0x02;
Pdata[2]=0x03;
Pdata[3]=0x04;
PUTCHARS(0,Pdata,4);
//发送函数,发送数据到串口
LB0=1;
//发送完毕,下次进入不发送,等待接收
return;
//退出等待接收
}
else
{
result=GETCHARS(0,Gdata); //接收函数,把接收到的数据存在 Gdata 数组中
图 3-2
图 3-3 下载工程至触摸屏,用串口线连接电脑与触摸屏。电脑端打开串口调试助手, 设置串口参数与触摸屏参数一致。连接成功以后在接收区接收到如图 3-4 所示代 码

自由口通信整理

自由口通信整理

自由口通信资料总结自由口通信S7-200 CPU的串行通信口可由用户程序控制,这种操作模式称作自由口通信。

自由口通信时基于RS-485的硬件基础,允许应用程序控制s7-200 CPU的通信端口,以实现一些自定义通信协议的通信方式。

波特率为1200~115200 bit/s。

当选择了自由口通信模式,程序可以使用接收中断、发送中断、发送指令和接收指令来控制通信操作。

在自由口模式下,通信协议完全由程序控制。

SM30(用于端口0)和SM31(如果有两个端口,则用于端口1)用于选择波特率和奇偶校验。

S7-200处于自由口通信模式时,所有的通信任务和信息定义均需要由用户编程实现。

简单情况下,可以只用(XMT)指令向打印机或者显示器发送信息,或者同条码阅读器、重量计和焊机等进行通信连接。

每种情况下,都必须编写程序,以支持自由端口模式下设备同CPU通信的协议。

只有CPU处于RUN模式时,才能进行自由端口通信。

通过向SM30或SM31的协议选择区置1,可以选择自由端口模式。

处于自由端口模式时,不能与编程设备通信。

注意:1)s7-200 CPU通信端口是半双工通信口,所以发送和接收不能同时进行。

2)S7-200 CPU通信口处于自由口模式下时,该通信口不能同时工作在其他通信模式下。

例如:不能再端口1进行自由口通信时,又使用该通信口进行PPI编程。

3)S7-200 CPU通信端口是RS-485标准,如果通信对象是RS-232设备,则需要使用Rs-232/PPI 电缆。

4)自由口通信只有在s7-200 CPU 处于RUN模式下才能被激活,如果将s7-200 CPU 设置为STOP模式,则通信端口将根据s7-200 CPU系统块中的配置转换到PPI协议。

5)SM0.7反映CPU的模式,通过修改SM0.7的状态可以控制自由端口模式的进入。

应用自由口通信首先要把通信口定义为自由口模式,同时设置相应的通信波特率和上述通信格式。

一个自由口通信编程的实现流程

一个自由口通信编程的实现流程

一个自由口通信编程的实现流程需求:S7-200smart 通过自由口和2台(多台仪表) 通信。

每台仪表的通信数据:一个过程量(只读),5个参数(读写)。

仪表通信协议:自定义协议,消息字符ASCII码模式,写参数时,无返回消息。

轮询要求:过程量优先读取,最快刷新;参数值定时间隔读取,或者上位机指令读取;参数值有变更需求才写入,工作情况:读写参数 均通过上位机画面操作,正常不会出现多台仪表同时出现写请求,存在操作上的时间差。

构想方案:公用变量:站地址变量,通信状态变量,重试次数(超时次数上限/超限认为掉站),掉站恢复时间(掉站后,重试间隔时间)独占变量:写请求状态字节(每个站地址建一个变量)读请求状态字节(每个站地址建一个变量)超时次数(每个站地址建一个变量)掉站标志位(每个站地址建一个变量)*以上“变量”等同于存储地址1,采用站地址轮询策略:轮询到某个站地址时,先读取过程值,再检查写请求状态字节,是否存在写参数请求,若有,写参数通信,更新读请求状态字节,若没写参数请求,再检查读请求状态字节,是否存在读参数请求,若有,读参数通信,如没有,轮询一个站地址。

即每个站的通信次序为 读过程值--- 写一个参数---读一个参数 。

2,超时处理:轮询到某个站地址,读过程值或者读参数 返回数据没有超时,该站地址超时次数清零,若超时,该站地址超时次数加1,轮询下一个站地址。

3,掉站处理及重新询站:某站地址超时次数超过重试次数,判定掉站,掉站标志置位,下次轮询到该站地址,跳过,轮询下一个站地址。

掉站后,经过重试间隔时间,掉站标志复位,依次进入轮询。

4,读/写请求状态字节 及读/写处理状态字节从低位到高位(位0-位4),不用的位均置零,每一位均表示一个参数的读/写请求标志,当状态字节不为0,即表示本站存在读/写请求。

读/写参数时,从低位向高位查检索,查询到第一个“1”位,本次轮询只对这个参数进行读/写。

5,特别的,仪表在接收写参数消息帧时,没有返回消息,因此有写参数时,必须将该参数的读请求标志也置位,同时清除读参数中的其他标志位。

自由口通讯

自由口通讯

包头就是起始符,包尾就是结束符校验用的是CRC,校验码有很多种。

包头就是两个字节,两个##,换算成16进制就是23 23包尾是两个&&。

从站收到这样的请求,他先校验包头和包尾然后再接受CRC校验码再分析指令类型和数据段。

把指令类型和数据段叫做有效数据区。

数据段就是FF在这里就是这样定义的。

例:##(包尾0) 01(指令类型)FF(数据段)校验码(根据指令类型和数据段算出来)&&(包尾)把这串数据发出去,但这里没有地址信息,因为是两个设备在通讯,而不是一个主站和多个从站。

对方收到这串指令会判断指令类型,如果是01.就会立即回传实时数据从站格式:从站格式:不能同时发送和接收,因为半双工,也不能同时接收或发送两条。

编程要求:要自由口模式,所以要设成mm=01,要用端口0那就是SMB30,自由口波特率如果是9600波特,那bbb就是010,pp00不校验,一般每个字符都是8位,所以d是0.所以ppdbbbmm=00001001,8421码就是16进制的9,把16#09赋予SMB30.这里没有设的就是起始位跟停止位,在默认条件下,它只支持1个停止位跟1个起始位,如果有的协议要1.5或者2个起始位跟停止位就不行了缓冲区:缓冲区第一个字节是计数,后面就是信息的内容。

下图:TBL是vb500,那就是vb500里面放的我要发送的这串数据有多少个字符或者是字节如果有10个字节,就把10填到vb500,起始符如果有的话,就应该在vb501,往下总共就是10个字节。

接受RCV也一样,有多少字节,图里可以看出可以从vb500里读取,因为是半双工的,发送和接受不能同时进行,所以发送缓冲区和接收缓冲区可以是同一个,如图都是vb500,为了节省内存,当然也可以不是同一个。

接收就比较复杂,接收指令激活以后,会进入接收等待状态一直保持接收等待状态,但如果需要的话,可以给它一个时间,它就认为这次的通讯不成功,过了这个时间就不让它等待了。

如何编写自由口协议程序,自由口通信的基本步骤

如何编写自由口协议程序,自由口通信的基本步骤

如何编写自由口协议程序,自由口通信的基本步骤
 前面以S7-200SMART与英威腾变频器进行自由口通信为例详细讲解了自由口通信的方法及步骤,本文再带大家一起来学习与V20变频器进行自由口通信的程序编写方法。

V20支持标准的modbusRTU协议,真正使用时可以使用modbus通信,本文主要是教大家如何编写自由口协议程序。

总结了一下自由口通信的基本步骤如下:
1.研究弄懂对方的通信协议。

 自由口也称自由协议或无协议通信,即通信双方没有共同的通信协议,只能临时根据某一方的协议进行发送和接收数据,以达到交换数据的目的。

那幺意味着每次书写的程序没有固定格式,不仅需要变成人员能掌握程序的编写,还要求编程人员能快速的读懂对方的通信协议。

 查阅V20变频器手册得知,FC3 - 读保持寄存器读保持寄存器命令格式: 
 变频器响应反馈数据格式:
 FC6 - 写单一寄存器命令格式:。

基于自由口通讯的PLC与无纸记录仪的通讯实现

基于自由口通讯的PLC与无纸记录仪的通讯实现

基于自由口通讯的PLC与无纸记录仪的通讯实现随着物联网技术的发展,越来越多的设备通过网络进行互联互通,实现信息的共享和控制。

现代工业生产中,PLC(可编程控制器)和无纸记录仪是两个关键的设备。

而这两种设备之间的信息交互也至关重要,对于实现自动化控制具有重要作用。

因此,本文将介绍如何基于自由口通讯实现PLC与无纸记录仪的通讯。

1.自由口通讯简介自由口通讯是一种通信协议,用于设备之间的信息交换。

在自由口通讯中,各设备根据事先约定的规则进行通信。

该协议在工业自动化领域得到广泛应用,尤其是在PLC等工控设备中。

PLC和无纸记录仪是传统的工业自动化设备,但它们之间的通讯一直是一个难题。

为了解决这个问题,我们可以采用自由口通讯协议,将两者进行互联。

首先,需要在PLC上安装自由口通讯模块。

该模块通常是一个串口设备,可以通过RS232或RS485接口进行连接。

然后,我们需要编写PLC程序,实现自由口通讯的功能。

具体来说,需要考虑以下几个方面:(1)定义通讯协议自由口通讯需要定义通讯协议,例如在本文中,我们可以定义读取和写入的数据格式等。

根据协议定义,PLC可以向无纸记录仪发送数据,也可以接收无纸记录仪的数据。

(2)实现通讯功能在PLC程序中,需要编写相关的指令,实现与无纸记录仪的通讯。

例如,可以使用MODBUS协议中的读取和写入寄存器功能,通过控制线圈来实现数据的读取和写入。

(3)处理数据在通讯过程中,需要对数据进行处理,例如将数据转换成实际数值或者进行数据校验等。

这对于通讯的稳定性和可靠性非常重要。

接下来,针对无纸记录仪的通讯实现,我们需要将记录仪与PLC进行物理连接。

这通常需要使用RS485通讯模块,将PLC和记录仪之间的数据转换成串口信号进行传输。

然后,在记录仪上配置相应的通讯参数,例如波特率、数据位、校验位等。

最后,需要在记录仪程序中实现自由口通讯的功能,并且对PLC发送的数据进行处理并回复。

3.总结通过自由口通讯协议的实现,我们可以有效地实现PLC和无纸记录仪之间的通讯。

西门子—自由口通讯知识

西门子—自由口通讯知识

S7-200系列自由口通讯的实现及应用1? 引言??? 为了达到和通讯协议已知的控制设备进行数据交换,以提高自动化控制系统的灵活性,很多plc制造商都相继的开发出了方便、灵活的自由口通讯方式,例如三菱公司的fx2系列plc,omron公司的cjm1系列的plc,西门子公司的s7-200系列plc等都提供了自由口通讯模式。

自由口通讯是指plc提供了串行的通讯硬件,和用于定制通讯协议的相关指令,在控制系统中,当要和plc连接的控制设备的通讯协议已知时,可以在plc中进行编程定制通讯协议,和控制设备进行数据通讯。

本文主要介绍西门子s7-200的自由口和计算机的串口进行的通讯,计算机中采用visual basic进行编程,从而实现计算机与可编程控制器的直接控制。

该通讯方式具有效率高、容易实现、通讯硬件简单、容易配置等特点在工业控制领域中被广泛应用。

2? s7-200通讯指令及特殊字节??? 采用自由口通讯方式时,s7-200上的rs485口完全由用户控制,可以与任何协议已知的设备进行通讯,在这种情况下通讯协议完全由用户制定,为此,s7-200提供了用于进行通讯协议定制的特殊标志位以及相关的通讯指令。

2.1 特殊标志字节??? s7-200用于自由口通讯模式定义的特殊标志字节有smb30和smb130,smb30用于s7-200的端口0的通讯,smb130用于s7-200的端口1的通讯,两者的格式一样,下面我们以smb130为例,介绍其组成。

smb130各位的含义如下:??? pp:两位用于选择通讯的校验方式? 当这两位的组合是:???? 00无校验? 01 偶校验? 10 无校验? 11 奇校验??? d:这一位用于选择通讯的数据位数? d=1时7个数据位,d=0时8个数据位??? bbb:用于选择自由口通讯是的波特率,这三位的组合和通讯波特率的关系如下:??? 000 ——38400bps????? 001 ——19200bps????? 010 ——9600bps?????? 011 ——4800bps???? 100 ——2400bps????? 101 ——1200bps????? 110 ——600? bps?????? 111 ——300? bps???? mm: 用于通讯协议的选择,当这两位的组合是:??? 00? ppi从站模式?? 01 自由口通讯模式? 10? ppi主站模式2.2 接收信息的状态字节??? s7-200在自由口通讯时用于接受信息的状态有smb86和smb186,smb86用于s7-200的端口0的通讯,smb186用于s7-200的端口1的通讯,两者的格式一样,下面我们以smb186为例,介绍其组成。

通信设计流程

通信设计流程

通信设计流程在进行通信设计的过程中,我们需要按照一定的流程进行,以确保设计的准确性和有效性。

通信设计流程包括需求分析、系统设计、硬件设计、软件设计、集成测试和验证等步骤。

下面将详细介绍通信设计的流程及每个步骤的具体内容。

首先,需求分析是通信设计的第一步。

在这一阶段,我们需要与客户充分沟通,了解客户的需求和要求。

同时,我们还需要对通信系统的使用环境、使用对象、使用需求等进行深入分析,以确保设计的系统能够满足用户的实际需求。

接下来是系统设计阶段。

在这一阶段,我们需要根据需求分析的结果,对整个通信系统进行整体设计。

包括系统的功能模块划分、系统架构设计、系统性能指标确定等。

在这一阶段,我们需要考虑系统的稳定性、可靠性、可扩展性等因素,以确保系统能够满足长期的使用需求。

硬件设计是通信设计流程中的重要一环。

在这一阶段,我们需要根据系统设计的结果,对通信设备的硬件进行设计。

包括电路设计、PCB设计、射频设计等。

在这一阶段,我们需要考虑硬件的性能、成本、生产工艺等因素,以确保硬件设计能够满足系统的需求。

软件设计是通信设计流程中不可或缺的一部分。

在这一阶段,我们需要对通信系统的软件进行设计。

包括通信协议设计、通信算法设计、通信软件架构设计等。

在这一阶段,我们需要考虑软件的稳定性、实时性、兼容性等因素,以确保软件设计能够满足系统的需求。

集成测试是通信设计流程中的关键一环。

在这一阶段,我们需要对整个通信系统进行集成测试,以确保各个模块能够正常协同工作。

在测试过程中,我们需要对系统的功能、性能、稳定性等进行全面测试,以确保系统能够满足设计要求。

最后是验证阶段。

在这一阶段,我们需要对设计的通信系统进行验证,以确保系统能够满足客户的需求和要求。

在验证过程中,我们需要与客户充分沟通,对系统的性能、稳定性、可靠性等进行验证,以确保系统能够满足客户的实际需求。

综上所述,通信设计流程包括需求分析、系统设计、硬件设计、软件设计、集成测试和验证等步骤。

西门子—自由口通讯知识修订稿

西门子—自由口通讯知识修订稿

西门子—自由口通讯知识公司标准化编码 [QQX96QT-XQQB89Q8-NQQJ6Q8-MQM9N]S7-200系列自由口通讯的实现及应用1 引言为了达到和通讯协议已知的控制设备进行数据交换,以提高自动化控制系统的灵活性,很多plc制造商都相继的开发出了方便、灵活的自由口通讯方式,例如三菱公司的fx2系列plc, omron公司的cjm1系列的plc,西门子公司的s7-200系列plc等都提供了自由口通讯模式。

自由口通讯是指plc提供了串行的通讯硬件,和用于定制通讯协议的相关指令,在控制系统中,当要和plc连接的控制设备的通讯协议已知时,可以在plc中进行编程定制通讯协议,和控制设备进行数据通讯。

本文主要介绍西门子s7-200的自由口和计算机的串口进行的通讯,计算机中采用visual basic进行编程,从而实现计算机与可编程控制器的直接控制。

该通讯方式具有效率高、容易实现、通讯硬件简单、容易配置等特点在工业控制领域中被广泛应用。

2 s7-200通讯指令及特殊字节采用自由口通讯方式时,s7-200上的rs485口完全由用户控制,可以与任何协议已知的设备进行通讯,在这种情况下通讯协议完全由用户制定,为此,s7-200提供了用于进行通讯协议定制的特殊标志位以及相关的通讯指令。

特殊标志字节s7-200用于自由口通讯模式定义的特殊标志字节有smb30和smb130,smb30用于s7-200的端口0的通讯,smb130用于s7-200的端口1的通讯,两者的格式一样,下面我们以smb 130为例,介绍其组成。

smb130各位的含义如下:pp:两位用于选择通讯的校验方式当这两位的组合是:00无校验 01 偶校验 10 无校验 11 奇校验d:这一位用于选择通讯的数据位数 d=1时7个数据位,d=0时8个数据位bbb:用于选择自由口通讯是的波特率,这三位的组合和通讯波特率的关系如下:000 ——38400bps001 ——19200bps010 ——9600bps011 ——4800bps100 ——2400bps101 ——1200bps110 —— 600 bps111 —— 300 bpsmm: 用于通讯协议的选择,当这两位的组合是:00 ppi从站模式 01 自由口通讯模式 10 ppi主站模式接收信息的状态字节s7-200在自由口通讯时用于接受信息的状态有smb86和smb186,smb86用于s7-200的端口0的通讯,smb186用于s7-200的端口1的通讯,两者的格式一样,下面我们以smb186为例,介绍其组成。

基于自由口通讯的PLC与无纸记录仪的通讯实现

基于自由口通讯的PLC与无纸记录仪的通讯实现

基于自由口通讯的PLC与无纸记录仪的通讯实现一、自由口通讯的概念及原理自由口通讯(free port communication)是一种在生产现场中常用的通讯方式,它利用PLC上的自由口(free port)来进行通讯。

在PLC的通讯口中,一般有一个或多个自由口,这些口可以通过编程灵活地进行数据读写操作。

自由口通讯的原理是通过在PLC程序中编写相应的通讯指令,来实现PLC与外部设备(比如无纸记录仪)之间的数据传输。

1.确定通讯协议在进行PLC与无纸记录仪的通讯之前,首先需要确定通讯协议。

通讯协议是PLC与外部设备之间进行数据交换时约定的规则,通常包括数据格式、通讯速率、数据校验等内容。

针对无纸记录仪的特点,可以选择一种常见的通讯协议,比如MODBUS协议,来进行通讯。

2.设置自由口参数在确定通讯协议之后,需要在PLC的编程软件中设置相应的自由口参数。

这些参数通常包括通讯速率、数据位、停止位、校验方式等,要根据无纸记录仪的通讯要求进行设置。

3.编写通讯程序在PLC的编程软件中编写通讯程序,主要包括数据发送和数据接收两部分。

数据发送部分需要将需要传输的数据打包成符合通讯协议的格式,并通过自由口发送给无纸记录仪;数据接收部分需要监听无纸记录仪发送过来的数据,并进行解析处理。

4.数据交换测试编写完通讯程序之后,需要进行数据交换测试,验证通讯的正确性。

可以采用模拟数据或者真实数据进行测试,确认PLC与无纸记录仪之间的通讯是否正常。

5.系统集成将通讯程序整合到整个控制系统中,并进行实际应用测试。

在系统集成过程中,还需要考虑一些特殊情况的处理,比如通讯异常、数据丢失等,确保整个系统的稳定可靠。

三、通讯实现中的问题与解决方法在实际的通讯实现过程中,可能会遇到一些问题,比如通讯不稳定、数据解析出错等。

针对这些问题,可以采取如下解决方法:通讯不稳定可能是由于通讯线路故障、通讯参数设置错误等原因造成的。

在实际安装过程中,需要严格按照通讯协议的要求来设置通讯参数,并对通讯线路进行良好的绝缘、接地处理,确保通讯的稳定性。

自由口模式通信协议-最全资料PPT

自由口模式通信协议-最全资料PPT
任务5
自由口模式通信协议(Freeport Mode) 自由口模式通信是S7-200PLC独特的一种通信方式。自由口协议是指通过编写用
户程序来控制CPU通信端口的操作模式,可以用自定义的通信协议连接多种智能设备。 自由口通信可以使S7-200与任何通信协议公开的设备、控制器进行通信,即S7-200可 以由用户自己定义通信协议(如ASCII协议)。波特率为1.2~115.2 Kb/s。
自S7由-2口00协自议由是口指通通信过范编围写是用任何具有串行通信接口的设备,如打印机、变频器、 S7-200自系由列口PL通C,信用范于围两是个任P何L具C间有的串简行单通数信据接交口换的时设,备用,户如可打以印通机过、编变程频的器方、
缆 自自连由由接口 口可进 模协行 式议以自 通是由 信指通口 协通通 议过过信 编(Fr。写e双e用po绞rt Mo线de)进行连接;如果连接的智能设备具有RS-232接口,可以用PC/PPI电
自缆由连口 接协进议行是自指由通口过通编信写。用 S7-200系自列由P口L通C,信用范于围两是个任P何L具C间有的串简行单通数信据接交口换的时设,备用,户如可打以印通机过、编变程频的器方、
缆连接进行自由口通信。 自由口协议是指通过编写用
缆连接进行自由口通信。 如果连接的智能设备具有RS-232接口,可以用PC/PPI电
任务5
如果连接的智能S设7备-具2有0R0S自-232由接口口,可以通用P信C/P范PI电围是任何具有串行通信接口的设备,如打印机、变频器、
如果连接的智能设备具有RS-232接口,可以用PC/PPI电 可以通过双绞线进行连接;
条码阅读器、调制解调器、上位计算机等。当连接的智能设备具有RS-485接口时, 如自果由连 口接协的议智是能指设通备过具编有写用RS-232接口,可以用PC/PPI电

plc自由口通讯例子PXR_ASCII

plc自由口通讯例子PXR_ASCII

INP-TN512644b-E Instruction ManualMICRO CONTROLLER XCOMMUNICATIONFUNCTIONS(RS-485 Z-ASCII)TYPE :PXRCONTENTSMUNICATION FUNCTIONS (1)1.1General (1)2.SPECIFICATIONS (2)2.1Communication Specifications (2)3.CONNECTION (3)3.1Communication Terminal Allocation (3)3.2Wiring (4)4.SETTING OF COMMUNICATION CONDITION (5)4.1Set Items (5)4.2Setting Operation Method (6)5.Z-ASCII PROTOCOL (7)5.1General (7)5.2Composition of the Command Frame (8)5.3Response of Slave Station (10)5.4Transmission Control Procedure (11)5.5FIX Processing (Cautions in data write) (12)6.DETAILS OF COMMAND AND RESPONSE FRAMES (13)6.1Data Read-out (13)6.2Data Write-in (16)7.ADRESS MAP AND DATA FORMAT (18)7.1Data Format (18)7.1.1Transmission data format (18)7.1.2Handling of decimal point (18)7.1.3Data status during abnormal data input indication (19)7.1.4Range of write-in data (19)7.2Data Address Map (19)7.3Additional Explanation of Address Map (23)8.SAMPLE PROGRAM (27)9.TROUBLESHOOTING (32)10.APPENDIX (33)-i-1. COMMUNICATION FUNCTIONS1.1 General・P XR provides a communication function by RS-485 interface, by which it can transmit and receive data to and from host computer, programmable controller, graphic display panel, etc.・T he communication system consists of master station and slave stations. Up to 31 slave stations (PXR) can be connected per master station.Note that, because the master station can communicate with only one slave station at a time, a party to communicate with must be specified by the "Station No." set at each slave station.・In order that the master station and slave station can communicate, the format of the transmit/receive data must coincide. Before using communication function, it is necessary for master station to create a program to operate data transmit/receive in accordance to Z-ASCII protocol described in this manual.・Please use on RS-232C ⇔RS-485 converter in case of designating a personal computer or other devices which have an RS-232C interface as a master station.[RS-232C ⇔ RS-485 converter] (recommended article)Type: KS-485 (non-isolated type)/SYSTEM SACOM Corp.Type: SI-30A (isolated type)/SEKISUI ELECTRONICS Co., Ltd.RS-232C RS-485converterCaution:When using the RS-232C ⇔ RS-485 converter, pay attention to cable connection between the converter and master station. If the cable is not connected correctly, the master station and slave station cannot communicate.In addition, be careful about communication settings such as baud rate and parity set for the converter.-1-2. SPECIFICATIONS2.1 Communication SpecificationsItem Specification Electrical specification Based on ETA RS-485Transmission system 2-wire, semi-duplicateSynchronizing system Start-stop synchronous systemConnection format 1:NNumber connectable units Up to 31 unitsTransmission distance 500m max. (total extension distance)Transmission speed 9600bpsData length 8 bitsData formatStop bit 1 bitParity none, even, odd (selectable)Transmission code ASCII codeError detection BCC (Addition)Isolation Functional isolation between transmission circuitand others (withstand voltage : 500V AC)-2-3. CONNECTIONFor avoiding electric shock and malfunctions, do not turn on the power supply untill all wiringhave been completed.3.1 Communication Terminal AllocationPXR3-3--4-3.2 Wiring・Use twisted pair cables with shield.・The total extension length of the cable is up to 500 m. A master station and up to 31 units of the PXR can be connected per line.・Both ends of the cable should be terminate with terminating resistors 100Ω 1/2W.・The shield wire of the cable should be grounded at one place on the master station unit side.・If the PXR is to be installed where the level of noise applied to the PXR may exceed 1000 V , it is recommended to install a noise filter in the master station side as below.Recommended noise filter: ZRAC2203-11/TDKSlave station (PXR)R Master station side 100 1/2W4. SETTING OF COMMUNICATION CONDITIONIn order that the master station and instrument (PXR) can correctly communicate, following settings are required.・A ll communication condition settings of the master station are the same as those of instruments (PXR).・All instruments (PXR) connected on a line are set to "Station Nos. (STno)" which are different from each other.(Any "Station No." is not shared by more than one instrument.)4.1 Set ItemsThe parameters to be set are shown in the following table. Set them by operating the front panel keys.Parameter symbol ItemValue atdeliverySetting range Remarks―――Transmission speed 9600bps Fixed (can not be changed)―――Data length 8 bits Fixed (can not be changed)―――Stop bit 1 bit Fixed (can not be changed)CoM Paritysetting0 0: odd parity1: even parity2: none paritySet the samecommunicationcondition to the masterstation and all slavestations.STno StationNo. 1 0 to 255 Set a different value to each station.PCoL Communicationprotocol Asspecifiedin order0: Z-ASCII1: ModbusSet the parameter to “0”.(The parameter is notdisplayed depending onmodels).-5-4.2 Setting Operation MethodThe following example shows how to set the communication conditions.Example: Selecting an even parity and “STno=18” on a station.-6--7-5. Z-ASCII PROTOCOL5.1 GeneralTransmission procedures according to the Z-ASCII protocol is as shown below1) The master station sends a command frame in a pre-determined format to a slave station.2) The slave station checks if the station No. in the received frame matches with the own station No. or not.3) If matched, the slave station executes the command and sends back the result in a pre-determined format.4) If mismatched, the slave station stops receiving the command frame and wait for the next commandframe.a) In case when the station No. in the received command frame matches with the own slave station No.Data on the lineb) I n case when the station No. in the received command message mismatches with the own slave stationNo.Data on the lineThe master station can individually communicate with any one of slave stations connected on the same line upon setting the station No. in the command message.5.2 Composition of the Command FrameThe communication frames (Command Frame & Response Frame) consist of the following 6 fields, and these 6 fields are always sent in order.Fig. 5-1Composition of messageThe details of each fields are as described in the foliowings.(1) Head code [1 digit]This code means "Head of Frame". One of the following code can be used.":"(3A H) or STX(02H)Depending on the code used, the End code automatically selected according to the below shown table.Combination 1 Combination 2Head code “:”(3A H) [1 digit] STX(02H) [1 digit]End code CR(0D H)+LF(0A H) [2digits] ETX(03H) [1 digit]Whenever the slave (PXR) receives the Head Code, it starts receiving new command frame.In other words, the previously received command frame is automatically cancelled even not completed(2) Station No. [3 digits]This code means the slave station number.Only one slave, which has same station number as determined at "STno" parameter, accept the command from the master.Please refer to chapter 4 for the details of "STno" settings.Note : This code is always defined with 3 digits.Please add "0" in front of the station No. in case it is less than 100.Ex.) Station No. =5 →"STno." Setting = "005"(3) Command code [2 digits]By setting this code, commands type to be performed by the slave (PXR) can be determined.There are two kinds of command, "Read-out" and "Write-in".For the details, please refer to chapter 6.(4) Parameter [Number of digit is depending on kind of command]This is the data which is essential to operate the command.The kind of necessary data is depending on the each command.Please refer to chapter 6.(5) End Code [1 digit or 2digits]This code means "End of Communication Frame".Please refer to chapter 5.2(1).(6) BCC (Block Check Character) [2 digits]This code is used for detecting errors in data transmission. First of all, each character of station No., command code, Parameter and End Code are summed.From last 1 byte of the calculation result, the first character goes to the 1st byte, and the last character goes to the 2nd byte in BCC.Ex.)5.3 Response of Slave Station(1) Response for normal commandTo a relevant message, the slave station creates and sends back a response frame which corresponds to the command frame. The composition of frame in this case is the same as in chapter 5.2.For details, refer to chapter 6.(2) Response for abnormal commandIf there is any abnormality in the contents of a command frame, other than transmission error like parity error(ex. an indefinite command code), the slave station does not execute that command but creates and sendsback a response frame at error detection.Fig. 5-2 Response frame at error directionTable 5-1 Error codeError code Name MeaningCE Command Error Indefinite command code is usedPE Parameterformat/range towards commandError Parametercode is not correct.(3) No responseUnder any of the following events, the slave station takes no account of the command frame and sends back no response.・ A station number transmitted in the command frame differs from the station number specified to the slavestation.・ R eceived BCC differs from calculated BCC・ A ny transmission error (parity error, buffer overflow and etc.) is detected.・ T ime distance between the datas in command frame is longer than 1 second.・ I ndefinite combination of Head code and End code is used. (ex. Head code : STX, and End code : CR.LF)5.4 Transmission Control Procedure(1) Transmission procedure of master stationThe master station must proceed to a communication upon conforming to the following items.(1-1) Before sending a command frame, provide 5 ms or more vacant status.(1-2) For sending, the interval between bytes of a command message is below 1 second. (1-3) Within 15 ms after sending a command message, the receiving status is posted.(1-4) Provide 5 ms or more vacant status between the end of response frame reception and beginning ofnext command frame sending [same as in (1-1)].(1-5) For ensuring the safety, make a confirmation of the response frame and make an arrangement so asto provide 3 or more retries in case of no response, error occurrence, etc.Note) The above definition is for most unfavorable value. For ensuring the safety, it’s recommended theprogram of the master to work with safety factors of 2 to 3. Concretely, it is advised to arrange the program with 10 ms or more for vacant status (1-1), and within 10 ms for byte interval (1-2) and changeover from sending to receiving (1-3).Data processing of master stationCommand DatatransmissionSignal status on communicationWaiting time of master station :min.5msnecessary (Recommended to have 10ms or longer5.5 FIX Processing (Cautions in data write)The instrument is provided inside with a non-volatile memory (EEPROM) for holding the setting parameters.Data written in the non-volatile memory is not lost even if turning off the power. Data written in via communica-tion are not written in this non-volatile memory but stored in the internal memory (RAM). If it is desired to hold the parameters written in via communication even after turning off the power, FIX processing must be carried out.FIX execution writes the parameters stored in the internal memory into the non-volatile memory.Fig. 5-3 shows the FIX procedure.Cautions:・ FIX processing lasts approximately 5 seconds.・ While in FIX processing, do not turn off the power of the PXR. Otherwise, the data in the non-volatile memory will be destroyed, whereby the PXR could not be used any longer.・ Do not change the parameters on the face panel while in FIX execution. Otherwise, the memory may become abnormal.・ The non-volatile memory (EEPROM) is a device where the number of write-in times is limited. The guaranteed number of write-in times of the non-volatile memory used on the instrument is 10,000 minimum.Do not carry out the FIX processing except when absolutely necessary such as after rewriting the settingparameters. Refrain from carrying out the FIX processing periodically for example or while such is notabsolutely required.Fig. 5-3 FIX prodedure6. DETAILS OF COMMAND AND RESPONSE FRAMES6.1 Data Read-out(1) Command Framecodecodecode① Command Code“RW ”:Command to start "Read-out" ASCII code : [52H , 57H ]② Parameters(a) Register No. : Defines data register No. 5 digits to be Read-out (b) Partition character " , " : Always added after Register No.(ASCII code : [2C H ])(c) Read-out No. : Defines number of continuous data starting from the register No. defined inabove (c). (Max data No. is 4.)(2) Response FrameStation No.ParameterBCC(c)Repeated dependeing on the number ofdatas to be read-out (Total number of data-1)Head codeResponsecode End code① Response Code“RS ” :Defines that Read-out procedure was performed successfully. ASCII code : [52H , 53H ]② Parameters(a)Data codes : Always in 5 digits(Sign part : 1 digit + Numeral part : 4 digits)·Sign part :Data value Character ASCII codeMinus "-" 2D HPlus or 0 "0" 30H·Numeral part : Always in 4 digitsEx.1234→1234123→012312→00121→0001(b)Partition character " , " : In case number of data (s) is more than 2, this character is put between datacodes. ASCII code : [2C H](c)(Repeat) : In case number of data (s) to be read-out is more than 2, this part is added.[Example of data read-out command]To read-out 4 continuous data parameters starting from register No. 31001 (station No. =125) →PV , SV , DV and MV data will be read out<Condition> Decimal point position = 1 (parameter P-dP = 1)y Command Frame←Character←ASCII codey Response Frame><y Read-out ResultRead-out data →Values (Note *1)Register No. Meaning Sign part Numeral part31001 PV 0 2455 245.5 31002 SV 0 3000 300.0 31003 DV -0545 -54.5 31004 MV 0 1030 103.0(Note *l) Data in Register No. 31004 is always defined to have decimal point position as shown below.For the other datas, the decimal point position is depending on PXR parameter setting at "P-dP". (See chapter 7.1.1 for the details.)6.2 Data Write-in(1) Command FrameHead code Station No.Parameters End code BCCcode① Command Code“WW”: Command to start "Write-in"ASCII code : [57H, 57H]② Parameters(a) Register No. : Defines data register No. to be read-out.Please refer to chapter 7. for details of parameter, Register No.(b) Partition character " , " : Always added after Register No.ASCII code : [2C H](c) Data codes : Always in 5 digits(Sign part:1digit + Numeral part:4 digits)·Sign part :Data value Character ASCII codeMinus "-" 2D HPlus or 0 "0" 30H·Numeral part : Always in 4 digits1234→1234Ex.123→012312→00121→0001(2) Response FrameResponseStation No.End code BCCcodecode① Response code“WS”: Defines that write-in procedure was performed successfully.ASCII code : [57H, 53H]Caution When setting is being locked, response is returned normally. However, thecommand is not executed. If the write-in command message is sent to any slavestation during the FIX process, response is not returned from it.Sign part: ]0^ (value more than 0)[Example of data Write-in command]To write-in "85" into registered No.41032 (Upper limit of set value). (station No. =15)<Condition> Decimal point position = 0 (parameter P-dP = 0)y Command FrameyResponse Frame7. ADRESS MAP AND DATA FORMAT7.1 Data Format7.1.1 Transmission data formatWith this protocol, all data is sent/received in ASCII codes.7.1.2 Handling of decimal pointTransmission data has no decimal point, so, it is necessary for the master station to perform the following treatment.(1) Delete decimal point(s) from data to be transmit. (2) Add decimal point(s) to data received. Please refer to the following table for the details.Table 7-1 List of datas which require treatment of decimal pointDigit No. after decimal pointKind of dataRegister No.Parameter [ P-SL ] 41018Parameter [ P-SU ]410190, 1 or 2 digit(s) PXR parameter Datas dependent on input rangeSee address map (Chapter 7.2) 1 digit Parameter [ P ]Parameter [ d ] Parameter [ CooL ] Parameter [ dB ] Parameter [ bAL ] Parameter [ P-dF ] Parameter [ PLC1 ] Parameter [ PHC1 ] Parameter [ PLC2 ] Parameter [ PHC2 ] Parameter [ HB ] Parameter [ Ao-L ] Parameter [ Ao-H ] Parameter [ r-dF ] Parameter [ OUT1 ] Parameter [ OUT2 ] Parameter [ CT ] 41006 41008 41010 41011 41013 41022 41025 41026 41027 41028 41039 40115 40116 40120 31004 31005 31010[Ex. 1] Read-out result from resister No. 31001 (process value : PV) is "300". (1) In case of P-dP=0 (No. decimal point defined) Actual SV=300(2) In case of P-dP=l (decimal point Actual SV=30.0 [Ex. 2] Write-in "46" to register No. 41003 (set value : SV) (1) In case of P-dP=0 Write-in value=46 (2) In case of P-dP=l Write-in value=460 [Note: Actual transmission data is "00046".]7.1.3 Data status during abnormal data input indicationWhen "UUUU" or "LLLL" is displayed on the face panel on account of over-range, under-range or inputopen circuit for example, PV read-out value is 105% or -5% of input range.Presence of any input abnormality via communication can be detected by:"Register No. 31008: Input/main unit abnormal status"7.1.4 Range of write-in dataWhen data is written in each parameter, the write-in data should be kept within the setting range. PXR accepts the write-in data beyond the range. However, be careful since the PXR performance will not be guaranteed.7.2 Data Address MapFor details about individual parameter functions or setting ranges, please refer to the Operation Manual(ECNO: 406).Word data [read-out/write-in]:Register No. Type Memory contents Read-out dataWrite-in datasetting rangeAffected byinput rangeRemarks orcorrespondingparameter41001 Word Non-volatile memory write-in(FIX execution)0: Not writing-in1: Writing in memory0: No request1: Request to write in(Same functionas 00001)41002 Word PID/FUZZY/SELF selection 0: PID control1: FUZZYcontrol2: SELF tuning controlCTrL* Inhibitchange whilecontrolling41003 Word SV value set on face panel -1999 to 9999 (within set value limits) *41004 Word Control RUN/standby 0: Invalidate standby (RUN)1: Validate standby STby41005 Word Auto tuning command 0: Auto tuningdisabled1: While executingstandard type ATexecuted2: While executinglow PV type ATexecuted0: Disable autotuning1: Requestexecution ofstandard type2: Requestexecution of lowPV type ATAT41006 Word P 0 to 9999(0.0 to 999.9%)P 41007 Word I 0 to 3200(0 to 3200 sec)i 41008 Word D 0 to 9999(0.0 to 999.9 sec) D41009 Word Hysteresis range attwo-position control 0 to 9999(0 to 50% value of input scale)*HyS41010 Word COOL 0 to 1000(0.0 to 100.0)CooL 41011 Word Dead band -500 to 500(-50.0 to +50.0%)db 41012 Word Anti-reset windup -1999 to 9999 (0 to 100% value of input scale) * Ar41013 Word Output convergence value -1000 to 1000(-100.0 to 100.0%)bAL41014 Word PV shift -1999 to 9999(-10 to 10% value of input scale)* PVOF41015 Word SV offset -1999 to 9999(-50 to 50% value of input scale)* SVOF41016 Word Input type code 0 to 16 P-n2 41017 Word Temperature unit 0:ºC1:°F P-F 41018 Word Input scale lower limit -1999 to 9999 P-SL 41019 Word Input scale upper limit -1999 to 9999 P-SU 41020 Word Decimal point place 0 to 2 P-dPRegisterNo.TypeMemory contentsRead-out dataWrite-in data setting rangeAffected byinput rangeRemarks orcorrespondingparameter 41021 Word (Do not use)41022 Word Input filter time constant 0 to 9000(0.0 to 900.0 sec )P-dF 41023 Word RCJ yes/no 0: Disable RCJ compensation(do not perform reference cold junction compensation)1: Enable RCJ compensation (perform reference cold junction compensation)rCJ41024 Word MV limit kind0 to 15PCUT 41025 Word Output 1 lower limit -30 to 1030(-3.0 to 103.0%) PLC1 41026 Word Output 1 upper limit -30 to 1030(-3.0 to 103.0%) PHC1 41027 Word Output 2 lower limit -30 to 1030(-3.0 to 103.0%) PLC2 41028 Word Output 2 upper limit -30 to 1030(-3.0 to 103.0%) PHC2 41029 (Do not use) 41030(Do not use)41031 Word Set value (SV) lower limit -1999 to 9999(within input scale ) * SV-L 41032 Word Set value (SV) upper limit -1999 to 9999(within input scale ) * SV-H 41033 (Do not use) 41034 (Do not use) 41035 (Do not use) 41036 (Do not use) 41037 (Do not use) 41038(Do not use)41039 Word Heater burnout alarm set value 0 to 500(0.0 to 50.0A ) Hb 41040 Word Setting lock 0 to 5 LoC 41041 Word Alarm 1 type 0 to 34 ALM1 41042 Word Alarm 2 type 0 to 34 ALM2 41043WordAlarm 3 type0 to 34ALM3 41044 WordAlarm 1 set value oralarm 1 lower limit set value * AL1 or A1-L 41045 WordAlarm 2 set value oralarm 2 lower limit set value * AL2 or A2-L 41046 WordAlarm 3 set value oralarm 3 lower limit set value -1999 to 9999For absolute value alarm0 to 100% value of input scale For deviation alarm-100 to 100% value of input scale * AL3 or A3-L 41047 Word Alarm 1 upper limit set value * A1-H 41048 Word Alarm 2 upper limit set value * A2-H 41049 Word Alarm 3 upper limit set value -1999 to 9999For absolute value alarm0 to 100% value of input scale For deviation alarm-100 to 100% value of input scale * A3-H 41050 Word Alarm 1 hysteresis * A1hy 41051 Word Alarm 2 hysteresis * A2hy 41052 Word Alarm 3 hysteresis0 to 9999(0 to 50% value of input scale ) * A3hy 41053 Word Alarm 1 ON-delay set value dLy1 41054 Word Alarm 2 ON-delay set value dLy2 41055 Word Alarm 3 ON-delay set value 0 to 9999(0 to 9999 sec ) dLy3 41056(Do not use)41057 Word Ramp/soak No. 1 target value * Sv-1 41058 Word Ramp/soak No. 2 target value * Sv-2 41059 Word Ramp/soak No. 3 target value * Sv-3 41060 Word Ramp/soak No. 4 target value * Sv-4 41061 Word Ramp/soak No. 5 target value * Sv-5 41062 Word Ramp/soak No. 6 target value * Sv-6 41063 Word Ramp/soak No. 7 target value * Sv-7 41064 WordRamp/soak No. 8 target value-1999 to 9999(within set value limit)*Sv-8RegisterNo.TypeMemory contentsRead-out data Write-in data setting rangeAffected byinput rangeRemarks orcorrespondingparameter41105 WordDSP5(parameter mask designation) 0 to 255 dSP5 41106 WordDSP6(parameter mask designation) 0 to 255 dSP6 41107 WordDSP7(parameter mask designation) 0 to 255 dSP7 41108 WordDSP8(parameter mask designation) 0 to 255 dSP8 41109 WordDSP9(parameter mask designation) 0 to 255 dSP9 41110 WordDSP10(parameter mask designation) 0 to 255 dSP10 41111 WordDSP11(parameter mask designation) 0 to 255 dSP11 41112 WordDSP12(parameter mask designation) 0 to 255 dSP12 41113 WordDSP13(parameter mask designation)0 to 255dSP13 41114 Word Type of Re-transmission output0:PV ,1:SV ,2:MV ,3:DV Ao-T 41115 WordRe-transmission output scalinglower limit-10000 to 10000 (-100.00 to 100.00%) Ao-L 41116 WordRe-transmission output scalingupper limit-10000 to 10000 (-100.00 to 100.00%) Ao-H 41117 WordLocal/remote operationchangeover0: Local 1: Remote CMod 41118 WordRemote SV input zeroadjustment-1999 to 1999(-50 to 50% of input scale) * rEM0 41119 WordRemote SV input spanadjustment-1999 to 1999(-50 to 50% of input scale) * rEMS 41120 WordRemote SV input filter timeconstant0 to 9000 (0.0 to 900.0 sec)r-dFNote) Read-out/write-in data from resister No. 41083 (ramp/soak mode selection) correspond to parameter "PTn"to be displayed as shown below:Read-out/write-in data Parameter PTn Ramp/soak execution mode0 1 1 to 4 ramp/soak executed 1 2 5 to 8 ramp/soak executed 2 3 1 to 8 ramp/soak executedWord data (read-out only) :RegisterNo.TypeMemory contentsRead-out dataAffected byinput rangeRemarks orcorrespondingparameter 31001 Word Process value (PV)-1999 to 9999 (within input scale) *(Displayed PV)31002 Word Currently used set value (SV) -1999 to 9999 (within set value limit) *(Displayed SV)31003 Word Currently used deviation (DV) -1999 to 9999(-100 to 100% value of input scale ) * 31004 Word MV (output 1) -30 to 1030(-3.0 to 103.0%)OUT1 31005 Word MV (output 2) -30 to 1030(-3.0 to 103.0%) OUT2 31006 Word Station No. 0 to 255STno 31007 Word Alarm status*③ (refer to Section 7.3.) 31008 Word Input/main unit abnormal status *④ (refer to Section 7.3.) 31009 Word Ramp/soak current running Position 0 to 17*⑥ (refer to Section 7.3.) STAT 31010 Word Heater current0 to 500(0.0 to 50.0A ) CT 31011 Word Timer 1 current count 0 to 9999(0 to 9999 sec ) TM-1 31012 Word Timer 2 current count 0 to 9999(0 to 9999 sec ) TM-2 31013 Word Timer 3 current count 0 to 9999(0 to 9999 sec ) TM-3 31014 (Reserve)31015 Word DI action status*⑤ (refer to Section 7.3.) 31037 WordRemote SV input value-1999 to 9999*rSVNotes)・ For details of * ② to * ⑥in the table, refer to Section 7.3.・ The area marked (Do not use) is a reserve area. Do not write in there.・ Register numbers 31002 (currently used SV) and 41003 (face panel set SV) do not become the same value while switching-SV is active or ramp/soak is under way. (Example: While SV-1 is selected, thevalue of SV-1 is read out of register number 31002.) For reading out SV for monitoring, use SV inregister number 31002.7.3 Additional Explanation of Address MapDatas in the ② to ⑤are Numerous Value calculated from corresponding bit data.Therefore, calculation from value to bit data or is based on the following calculation formura.(1) Write-in dataAdd the all bit values corresponding to bits to be written-in as "1" according to the Bit value table (7-2).Ex.) How to write-inbit 0, 5 and 9 as "1"Write-in data = 1 (bit 0) +32 (bit 5) +512 (bit 9)=555(2) Read-out dataExecute AND logic calculation of Read-out data and the bit value of bit which you would like to know the status.Ex.) How to take out bit 8 and 9 when Read-out data is 324.Read-out data = 324 = 0000101000100BBit value of 8 and 9 = 256+512 = 768 =Result of AND 256 ==Bit value 8, then only bit 8 = “1”Table 7-2 Bit valueBit Bit weight (additional value)0 11 22 43 84 165 326 647 1288 2569 51210 102411 204812 4096。

串口通信系统设计

串口通信系统设计

串口通信系统设计一、串口通信系统的基本原理串口通信系统采用串行传输方式进行数据传输,即将数据一位一位地按照顺序发送或接收。

系统中一般包含两个主要部分:发送端和接收端。

发送端将数据转换为串行形式,通过发送线路将数据发送给接收端。

接收端接收到串行数据后,将其转换为并行形式,供后续处理。

串口通信系统一般采用异步传输方式,即发送端和接收端之间没有时钟同步信号。

为了确保数据的可靠传输,通常使用起始位、数据位、校验位和停止位来组织数据帧。

其中,起始位用于标识数据帧的开始,停止位用于标识数据帧的结束,数据位用于传输实际数据,校验位用于检测数据传输过程中的错误。

二、串口通信系统的设计流程1.确定通信协议:根据实际需求确定数据的传输格式和协议,包括数据帧结构、波特率等参数。

2.硬件设计:设计发送端和接收端的硬件电路,包括串口芯片、电平转换电路、连接接口等。

根据通信协议确定硬件电路的接口标准。

3.软件设计:编写发送端和接收端的软件程序。

发送端的软件程序将要发送的数据转换为串行形式,并通过串口发送出去;接收端的软件程序接收串口数据,并将其转换为并行形式。

4.系统测试:将设计好的硬件电路和软件程序进行组装,并进行测试。

测试内容包括数据传输的正确性、稳定性、抗干扰性等方面。

5.系统优化:根据测试结果进行系统优化,对于数据传输的错误率较高的情况,可以考虑增加纠错机制,提高系统的可靠性。

三、串口通信系统在单片机中的应用1.与计算机进行数据通信:通过串口通信系统,可以将单片机与计算机进行数据交互。

通过串口连接,单片机可以向计算机发送采集到的数据,也可以从计算机接收指令控制。

2.与外部设备进行数据通信:通过串口通信系统,单片机可以与各种外部设备进行数据通信,实现数据的采集、控制等功能。

例如,可以与传感器进行数据交互、与显示屏进行数据显示等。

3.远程控制:通过串口通信系统,可以实现对单片机的远程控制。

将单片机与无线模块结合,可以实现远程监控、远程调试等功能。

05-自由口通信详细设计

05-自由口通信详细设计

详细设计1 地址符号的分配在编写库函数的时候,不能够使用绝对地址进行编程,必须使用符号地址,所以在编写程序之前须定义符号地址,符号地址的定义如下:表1 自由口库函数符号地址定义符号名地址填充开始地址VW1000发送数据个数VB1000发送帧帧头VB1001站地址_发送(字)VW1002站地址_发送(字节)VB1002控制码_发送VB1004发送控制码_低VB1005数据标识_发送(字)VD1006数据标识_发送VB1006数据长度_发送VB1010数据域_发送VB1012接收数据个数_以字形式表VW1099接收数据个数高位VB1099接收数据缓冲首地址VB1100站地址_接收(字)VW1102站地址_接收(字节)VB1102接收控制码_高VB1104接收控制码_低VB1105数据标识_接收VD1106数据域长度_高VB1110数据域首址VB1112生成控制码VB1041发送长度VW1042发送长度_高VB1042发送长度_低VB1043发送数据标识VW1044发送数据标识_高VB1044BCC校验_当前循环次数VW1046BCC校验_当前值VB1048BCC校验_V存储地址VD1049发送完成标志V1055.0接收完成标志V1055.1BCC校验成功标志V1055.2接收到信息BCC计算结果VB1056接收数据帧控制码_16进制VB1057接收数据帧控制码_0 V1057.0接收数据帧控制码_1 V1057.1接收数据帧控制码_2 V1057.2接收数据帧控制码_3 V1057.3接收数据帧控制码_4 V1057.4接收数据帧控制码_5 V1057.5接收数据帧控制码_6 V1057.6接收数据帧控制码_7 V1057.7接收数据数据域长度_字VW1058接收数据数据域长度_高VB1058接收数据数据域长度_低VB1059缓冲区最后地址VB11992 错误代码定义在自由口通信中,当通信出现错误时,根据不同的错误类型,定义了一些错误代码。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

详细设计
1地址符号的分配
在编写库函数的时候,不能够使用绝对地址进行编程,必须使用符号地址,所以在编写程序之前须定义符号地址,符号地址的定义如下:
表1 自由口库函数符号地址定义
2错误代码定义
在自由口通信中,当通信出现错误时,根据不同的错误类型,定义了一些错误代码。

代码具体如下:
表2 自由口通信错误代码
3初始化
初始化库函数的主要功能是设置自由口通信的端口、接收信息开始字符、接收信息结束字符、接收信息控制字节、空闲检测时间、发送或接收的最大字符数。

为了贴近于实际情况,
在初始化局部变量中添加了3个输入型局部变量。

分别用于对通信端口、接收信息开始字符、接收信息结束字符的设置。

局部变量表如下:
表3初始化局部变量定义
4自由口
在自由口库函数中添加了7个输入型的局部变量和2个输出型的局部变量,局部变量表如下:
表4自由口局部变量定义
自由口库函数的主要功能是完成数据的发送、接收、对接收到数据信息BCC校验、对BCC校验成功的数据帧进行解码,在程序上对数据的发送、对接收到数据信息BCC校验、对BCC校验成功的数据信息进行解码三个功能是通过顺序控制继电器指令来实现的,当满足条件时,分别调用不同的顺序控制继电器来实现功能。

此外,由于库函数没有办法添加中断来检测数据帧的发送完成和接收完成,所以对于接收完成和发送完成是在该程序中通过检测特殊寄存器来实现的,该库函数的主体流程如图1。

图1自由口库函数主体流程图
4.1数据发送
所谓数据发送就是要将帧头、站地址、控制码、数据标识、数据域长度、数据域、BCC 校验码、帧尾组合成为一个数据帧发送出去。

在该环节中有两个地方需要注意:其一,求取BCC校验码时,需先取站地址开始处存储器里值与一个初值为0的地址符号存储器相异或,将异或所得结果再与下一个存储器相异或,一直到数据域的最后一个存储器,这个过程通过一个循环来实现,由于数据域长度的不确定,所以需要特别注意循环的次数确定;其二,求取
到的BCC校验码在数据发送缓冲区中存放的具体位置,只知道BCC校验码是存放在数据域的后面,但是由于数据域长度的不确定导致了BCC校验码存放的位置的不确定,故确定B CC校验码存放位置也是需要注意的。

由口库函数的数据发送流程图如图2:
图2 数据发送流程图
4.2 对应答帧BCC校验
对应答帧BCC校验是为了检测应答帧在数据传输的过程中是否出错,其校验的方法很简单,直接求取接收到的应答帧中站地址、控制码、数据标识、数据域长度、数据域的BCC 校验码,将所得的结果与应答帧中传过来的BCC校验码比较,如果一致,表明数据传输过程中没有出错,如果不一致表明数据传送过程中出现了错误。

对于校验发现出错的应答帧,不再对其进行解码,只需主站将错误信息代码通过错误代码存储器指示出来即可,BCC校验的流程图如图3:
图3BCC校验流程图
4.3 数据解码
数据解码是自由口通信中最为主要的一个部分,数据解码的结果是从应答帧返回的数据帧信息中找出主站需要的信息。

在数据解码过程中需要进行一些列的容错判断,比如说:返回的应答帧的站地址是否正确;返回帧的数据标识是否一致;返回帧的数据域长度是否正确等等,只有当所有的信息都正确的情况下,才能将应答帧中数据域的内容取出放入指定地方。

数据解码的流程图如图4:
图4数据解码流程图。

相关文档
最新文档