第七章 网络及网络编程.docx
《第七章 网络及网络编程.docx》由会员分享,可在线阅读,更多相关《第七章 网络及网络编程.docx(20页珍藏版)》请在冰豆网上搜索。
![第七章 网络及网络编程.docx](https://file1.bdocx.com/fileroot1/2023-2/5/610f318b-1eb1-4695-8d88-366c4248bd95/610f318b-1eb1-4695-8d88-366c4248bd951.gif)
第七章网络及网络编程
第七章网络及网络编程
7.1典型嵌入式PLC产品介绍
7.1.1典型嵌入式PLC产品的功能特征
、硬件按客户要求或市场要求进行定制。
、产品专用功能可用梯形图进行二次开发。
、支持多家人机界面。
、支持CANBUS总线网络,在网络中可主可从。
、支持485串口网络,在网络中可主可从。
7.1.2典型嵌入式PLC产品的基本接口
、开关量输入输出接口(DI/DO)。
●DI:
无源输入,有源输入。
●DO:
继电器输出、晶体管输出、可控硅输出。
、模拟量输入输出接口(AI/AO)。
●AI:
标准信号输入,热电偶输入,热电阻输入。
●AO:
标准信号输出。
、设置/运行模式控制接口(SET/RUN)。
●SET/RUN=ON,设置模式。
●SET/RUN=OFF,运行模式。
、梯形图编程口(RS0)。
●RS0设置模式:
下载EasyWin生成的梯形图。
●RS0运行模式:
梯形图监控及元件监控;此口可连人机界面或计算机。
、CAN网络接口(CAN)。
●CAN设置模式:
无。
●CAN运行模式:
CAN网络接口。
、通用串口(RS1)。
●RS1设置模式:
下载CanSet生成的CAN网络配置文件。
●RS1运行模式:
485网络接口。
7.2CAN现场总线网络
7.2.1CAN网络结构
、几个概念
●有平台节点:
可用PLC梯形图编程的、符合CANBUS应用层协议标准的网络节点。
加“
”标记以示区别。
任何一个有平台节点均可设置成主节点;任何一个有平台节点均可与人机界面连接。
●无平台节点:
符合CANBUS应用层协议标准的、自身不带梯形图编程功能的网络节点。
●主节点:
主动向其它各站发送命令并取得信息的节点。
主从结构网络必须有主节点。
又称主站。
●从节点:
在网络中接受主节点命令,返回要求信息的节点,称为从节点。
又称从站。
、CAN网络特征
●CAN网络是主从结构网络。
●通过专用设置软件CanSet进行网络设置,设置内容包括:
网络设备总数、网络设备地址、网络通讯数据内容、网络数据通讯速度等。
●通过连线,构成CANBUS网络数据通路。
、注意事项
●主站节点必须是有平台节点,主站节点只有一个,地址固定为0。
●一个网络最多有63个从节点,从节点地址可设定,但不能有相同的地址。
●从节点既可以是有平台节点,也可以是无平台节点。
●主站与任一从站都能通讯,而从站与从站之间交换数据必须通过主站才能进行。
●任何有平台节点(有“
”标记)都可与人机界面连接。
可连人机界面达数十家。
如HITECH、DELTA、MITSUBISHI、EVIEW等。
、CAN网络示意图
7.2.2CAN网络编程
、CAN主站编程
有平台节点既可为主站,也可为从站。
CAN网络规划占用资源:
D6000----D6999。
嵌入式PLC上电将D6000---D7999清零
●将有平台节点设置成主站。
●将CanSet生成的网络内容下载到主站。
进行CanSet设置前,必须了解从站的网络变量特征。
按下菜单‘连接’→‘自动’后,网络设置内容自动下载到主站。
此时主站‘SET/RUN控制’应处于设置模式。
●监视CAN网络运行。
通过读取主站上的网络状态字,可监视网络上各从站点的工作状态:
正常或脱线。
此时主站‘SET/RUN控制’应处于运行模式。
状态寄存器:
D6990---D6994
D6990:
CAN网络节点个数,用N1表示。
D6991:
00#---15#设备状态。
0为正常,1为脱线。
D6992:
16#---31#设备状态。
0为正常,1为脱线。
D6993:
32#---47#设备状态。
0为正常,1为脱线。
D6994:
48#---63#设备状态。
0为正常,1为脱线。
上述00#---63#是CanSet指定的逻辑地址,而非物理地址。
二者可以统一。
状态寄存器可软件重置。
、从站说明
从站使用由厂商提供相关使用说明,在CanSet中加以应用。
此处从站指的是有平台节点,即典型嵌入式PLC产品作从站时应用说明。
●设为从站
用程序设置,因嵌入式PLC上电将D6000---D7999清零。
地址设置范围:
1----63。
●变量说明
设为从站时,网络通讯占用固定资源区(900Words):
D6000-----D6899。
发送变量:
sDATAn_D6XXX;
s表示发送send。
n表示报文号,0-----149。
D6XXX表示该变量对应的从站资源的超始地址,与n有严格对应关系。
接收变量:
rDATAn_D6XXX;
r表示接收receive。
n表示报文号,0-----149。
D6XXX表示该变量对应的从站资源的超始地址,与n有严格对应关系。
变量列表:
从站CAN网络变量如下(共150行)
sDATA0_D6000rDATA0_D6003
sDATA1_D6006rDATA1_D6009
sDATA2_D6012rDATA1_D6015
...........................
sDATA98_D6588rDATA98_D6591
sDATA99_D6594rDATA99_D6597
sDATA100_D6600rDATA100_D6603
...........................
sDATA147_D6882rDATA147_D6885
sDATA148_D6888rDATA147_D6891
sDATA149_D6894rDATA147_D6897
发送和接收是从主站的角度定义的:
发送是主站→从站;
接收是从站→主站;
●从站状态:
D6900:
从站是否在线。
在线=0;脱线=1。
状态寄存器可软件重置。
、CAN网络要点:
●重点学习CanSet网络设置软件。
●掌握从节点网络变量的应用。
●规划主站资源与从节点网络变量对应关系。
7.2.3CAN网络从节点开发****
CANBUS是一种开放性强的现场总线,CANBUS在物理层和数据链路作了具体的规划外,在应用层上并没有严格的规定。
一方面,使其更具开放性;另一方面,应用层的标准化存在一定难度。
因为不同厂家在应用层上可作不同的规划。
我公司在应用层上作了标准规划,凡遵循该标准的CANBUS产品,可直接由CanSet软件设置连到CAN网络中来。
我公司可向第三方提供该标准。
7.3RS485串口网络
7.3.1485网络结构
、几个概念
●有平台节点:
可用PLC梯形图编程的、遵循串口协议标准的网络节点。
加“
”标记以示区别。
任何一个有平台节点均可设置成主节点;任何一个有平台节点均可与人机界面连接。
●无平台节点:
自身不带梯形图编程功能的、但遵循串口协议标准的网络节点。
●主节点:
主动向其它各节点发送命令并取得信息的站点。
主从结构网络必须有主节点。
又称主站。
●从节点:
在网络中接受主节点命令,返回要求信息的节点,称为从节点。
又称从站。
、485网络特征
●485网络是主从结构网络。
●通过梯形图进行网络设置,设置内容包括:
网络设备地址、网络通讯数据内容、网络数据通讯速度等。
●通过加进行连接,构成485网络数据通路。
RS422是全双工RS485。
、注意事项
●主站节点必须是有平台节点,主站节点只有一个,地址固定为0。
●一个网络最多有.63个从节点,从节点地址可设定,但不能有相同的地址。
●从节点既可以是有平台节点,也可以是无平台节点。
●主站与任一从站都能通讯,而从站与从站之间交换数据必须通过主站才能进行。
●任何有平台节点(有“
”标记)都可与人机界面连接。
可连人机界面达数十家。
如HITECH、DELTA、MITSUBISHI、EVIEW等。
、485网络示意图
7.3.2485网络编程
、485主站编程
有平台节点既可为主站,也可为从站。
485网络规划占用资源:
D7000----D7999。
嵌入式PLC上电将D6000---D7999清零
●将有平台节点设置成主站。
●用梯形图控制网络通讯。
先必需了解网络通讯控制字和网络设备状态字。
控制寄存器:
D7960----D7971
D7960:
0级任务读起始地址;K7000表示D7000作为起始地址。
D7961:
0级任务读报文数;不超过250。
D7962:
0级任务读报文长度,以字节为单位,双数;不超过96。
D7963:
0级任务写起始地址;K7020表示D7020作为起始地址。
D7964:
0级任务写报文数,不超过250。
D7965:
0级任务写报文长度,以字节为单位,双数;不超过96。
D7966:
1级任务读起始地址;K7500表示D7500作为起始地址。
D7967:
1级任务读报文数;不超过250。
D7968:
1级任务读报文长度,以字节为单位,双数;不超过96。
D7969:
1级任务写起始地址;K7620表示D7620作为起始地址。
D7970:
1级任务写报文数;不超过250。
D7971:
1级任务写报文长度,以字节为单位,双数;不超过96。
控制字设置结果必须保证数据交换区在D7000---D7899以内。
状态寄存器:
D7990---D7992
D7990:
00#---15#设备状态;0为正常,1为异常。
D7991:
16#---31#设备状态;0为正常,1为异常。
D7992:
32#---47#设备状态;0为正常,1为异常。
D7993:
48#---63#设备状态;0为正常,1为异常。
通过梯形图给控制字赋值,即可控制网络通讯。
状态寄存器可软件重置。
0级任务与1级任务的区别:
分配时间不一样:
0级占2/3T,1级占1/3T。
据此有以下结论:
◆在数据量相同的情况下,0级数据循环比1级数据循环快1倍。
◆如果0级数据量等于1级数据量的两倍,则在通讯循环次数上0级和1级一样,无快慢之分。
◆如果0级数据量超出1级一次数据量的两倍以上,则0级循环次数比1级循环次数还少。
●根据控制字发送和接收报文。
[例1]根据控制字接收报文(读从站数据)。
定义0级读任务中一个报文长度为10bytes(5Words),共有5个报文,5个报文分别来自1#从站、2#从站、2#从站、3#从站、4#从站。
起始地址为D7000。
则0级读控制字及报文格式如下:
读起始地址D7960=K7000;
读报文数D7961=K5,
读报文长度D7962=K10。
嵌入式PLC主站报文格式如下:
报文号
D7000(地址)
D7001
D7002
D7003
D7004
D7005
1#
0001
ReadData
ReadData
ReadData
ReadData
ReadData
D7006(地址)
D7007
D7008
D7009
D7010
D7011
2#
0002
ReadData
ReadData
ReadData
ReadData
ReadData
D7012(地址)
D7013
D7014
D7015
D7016
D7017
3#
0002
ReadData
ReadData
ReadData
ReadData
ReadData
D7018(地址)
D7019
D7020
D7021
D7022
D7023
4#
0003
ReadData
ReadData
ReadData
ReadData
ReadData
D7024(地址)
D7025
D7026
D7027
D7028
D7029
5#
0004
ReadData
ReadData
ReadData
ReadData
ReadData
由主站填写所读报文的发出站地址。
D7000:
1#报文发出站地址。
D7006:
2#报文发出站地址。
D7012:
3#报文发出站地址。
D7018:
4#报文发出站地址。
D7024:
5#报文发出站地址。
各指定从站必须按主站要求将数据填到对应位置。
D7000指定的从站填写1#报文:
D7001-----D7005(从站)。
D7006指定的从站填写2#报文:
D7007-----D7011(从站)。
D7012指定的从站填写3#报文:
D7013-----D7017(从站)。
D7018指定的从站填写4#报文:
D7019-----D7023(从站)。
D7024指定的从站填写5#报文:
D7025-----D7029(从站)。
主站从对应位置读取来自从站的报文内容。
1#报文:
D7001-----D7005(主站)。
2#报文:
D7007-----D7011(主站)。
3#报文:
D7013-----D7017(主站)。
4#报文:
D7019-----D7023(主站)。
5#报文:
D7025-----D7029(主站)。
[例2]根据控制字发送报文(向从站写数据)。
定义0级写任务共有5个报文,一个报文长度为10bytes(5Words),5个报文分别写到1#从站、1#从站、1#从站、2#从站、2#从站,起始地址为D7200。
则0级写控制字及报文内容如下:
起始地址D7963=K7200。
报文数D7964=K5。
报文长度D7965=K10。
嵌入式PLC主站报文格式如下:
报文号
D7200(地址)
D7201
D7202
D7203
D7204
D7205
1#
0001
WriteData
WriteData
WriteData
WriteData
WriteData
D7206(地址)
D7207
D7208
D7209
D7210
D7211
2#
0001
WriteData
WriteData
WriteData
WriteData
WriteData
D7212(地址)
D7213
D7214
D7215
D7216
D7217
3#
0001
WriteData
WriteData
WriteData
WriteData
WriteData
D7218(地址)
D7219
D7220
D7221
D7222
D7223
4#
0002
WriteData
WriteData
WriteData
WriteData
WriteData
D7224(地址)
D7225
D7226
D7227
D7228
D7229
5#
0002
WriteData
WriteData
WriteData
WriteData
WriteData
由主站填写要发送的内容:
1#报文:
D7201----D7205(主站);
2#报文:
D7201----D7205(主站);
3#报文:
D7201----D7205(主站);
4#报文:
D7201----D7205(主站);
5#报文:
D7201----D7205(主站);
由主站填写目的从站地址:
D7200:
1#报文目的从站地址。
D7206:
2#报文目的从站地址。
D7212:
3#报文目的从站地址。
D7218:
4#报文目的从站地址。
D7224:
5#报文目的从站地址。
相应地,各目的从站在指定处接收主站发来的报文:
D7200指定的从站接收1#报文:
D7201-----D7205(从站)。
D7206指定的从站接收2#报文:
D7207-----D7211(从站)。
D7212指定的从站接收3#报文:
D7213-----D7217(从站)。
D7218指定的从站接收4#报文:
D7219-----D7223(从站)。
D7224指定的从站接收5#报文:
D7225-----D7229(从站)。
、485从站说明
有平台节点既可为主站,也可为从站。
485网络规划占用资源:
D7000----D7999。
嵌入式PLC上电将D6000---D7999清零
●将有平台节点设置成从站。
●在主站规定的交换区交换数据。
485网络规划占用数据区是(900Words):
D7000----D7899。
对于从站而言(参看上述例子):
向发送区(从站角度而言)填数据;
从接收区(从站角度而言)取数据;
●状态寄存器:
D7990:
表示从节点与网络无数据交换的时间=当前值*500ms。
也就是说,不通讯时,是每500ms加1的计数器。
状态寄存器可软件重置。
7.3.3485网络从节点开发
很多设备具有RS232接口。
RS232是标准通讯接口,通过转接均可接入485网络。
但要与网络设备进行通讯,必须遵循同一协议。
加载的通讯协议是FX2N计算机链接协议的子集,即软元件D通讯部分。
凡遵循该协议的第三方设备均可接入RS485网络。
7.4网络解决方案
7.4.1与第三方PLC互连
、按已有协议与第三方PLC连接
RS1通用口已加载FX2N计算机链接协议的子集,遵循该协议的第三方设备可直接接入RS485网络;如FX2N系列PLC与嵌入式PLC可并联运行,FX2N作从站。
加入FX2N后的网络仍为RS485网络,嵌入式PLC部分编程方法不变。
FX2N用D8121指定从站地址,同时D8120=H6081,保证RS485通讯参数。
此后按主站指定的交换区进行网络数据交换。
具体使用方法参看〈7.3.2485网络编程〉。
、重新加载第三方PLC协议,实现与第三方PLC连接。
RS1通用口可根据用户要求,加载不同的通讯协议,从而保证第三方PLC连入RS485网络中。
7.4.2与计算机互连
、当底层网络为CAN时,用RS1通用口接入计算机,计算机为主站。
计算机程序按FX2N计算机链接协议格式一,与嵌入式PLC数据寄存器D进行数据交换。
数据通讯格式参照FX2N中D8120=H6081确定。
、当底层网络为RS485时,需加一模块,用RS1通用口接入计算机。
计算机程序按FX2N计算机链接协议格式一,与嵌入式PLC数据寄存器D进行数据交换。
数据通讯格式参照FX2N中D8120=H6081确定。
也可以在计算机内插入CAN总线接口卡,从而与计算机连接。
就理论而言,因嵌入式PLC产品具有两个网络接口:
CAN网络接口和RS485网络接口,从而可以无限级联下去。
在结构上可组成各种形式的网络。