(SIEMENS)上海赞国自动化科技有限公司(西门子分销商)
上海赞国自动化科技有限公司
地址(Add):上海松江区方松街道新松江路久阳文化府邸2218弄6号
本公司只销售西门子原装正品,享受西门子免费一年保修
我公司代理西门子PLC;ET-200,S7-200S7-300 S7-400 S7-1200 触摸屏,变频器,6FC,6SNS120 V10 V60 V80伺服数控备件:原装进口电机(1LA7、1LG4、1LA9、1LE1),国产电机(1LG0,1LE0)大型电机(1LA8,1LA4,1PQ8)伺服电机(1PH,1PM,1FT,1FK,1FS)西门子保内全新原装产品‘质保一年。一年内因产品质量问题免费更换新产品;不收取任何费。欢迎致电咨询。您的满意将是我们最大的成功。
上海赞国自动化科技有限公司是专业从事西门子工业自动化产品销售和系统集成的高新 技术企业。在西门子工控领域,公司以精益求精的经营理念,从产品、方案到服务,致 力于塑造一个“行业专家”品牌,以实现可持续的发展。
“信誉第一,客户至上”是公司成立之初所确立的宗旨,在公司领导的严格要求和员工们不折不扣地贯彻执行下发展延续至今。“假一罚十”一直是我公司的主动承诺。
面对纷繁变化的市场和日益严峻的竞争,客户的需求和利益始终被我们放在工作的首位。我们想客户之所想,急客户之所急。针对各行业客户的不同需求,我们尽心尽力地为客户需要解决的难题提供精准的解决方案,竭尽全力将服务落到实处、做到最好。在协助客户解决难题、实现突破的基础上,获得双赢!
我公司一直致力于推广西门子高性能自动化系统和驱动产品,所经营产品范围:LOGO!通用模块、SIMATIC S7全系列可编程控制器、PCS7 控制系统、WINCC组态软件、STEP 7编程软件和博图软件; 触摸屏、工控机、网络交换机、开关电源;6RA70/80系列直流调速装置,MM4、V20、G120、G130、G150、S120等全系列变频器;V90伺服产品,数控系统等工业自动化与驱动技术全系列产品。公司所备各类产品齐全,货量充足,能够满足客户对现货的需求,保证工程进度。
公司自成立以来,始终坚持以人才为本、诚信立业的经营原则,坚持“质量到位、服务一流”的经营理念,在电工电气-工控系统及装备行业获得了客户的一致认可和高度评价,公司以为客户创造价值为己任,期待为您服务!
请相信上海赞国自动化科技有限公司是您忠诚的长久的合作伙伴,我们愿与广大客户携手向前,共同进步!
1. S7通信简介 S7通信是S7系列PLC基于MPI、PROFIBUS、ETHERNET网络的一种优化的通信协议,主要用于S7300/400PLC之间的通信。SIMATIC S7- PN CPU包含一个集成的 PROFINET 接口,该接口除了具有 PROFINET I/O功能,还可以进行基于以太网的S7通信。SIMATIC S7- PN CPU支持无确认数据交换、确认数据交换和单边访问功能。功能块的调用如图1、图2所示。
块 S7-400 | 块 S7-300 | 描述 | 简要描述 |
SFB 8 | FB 8 | 用于发送 | 无确认的快速数据交换,发送数据后无对方接收确认。 |
SFB 9 | FB 9 | 用于接收 |
SFB 12 | FB 12 | 用于发送 | 确认数据交换,发送数据后有对方接收确认。 |
SFB 13 | FB 13 | 用于接收 |
SFB 14 | FB 14 | 读数据 | 单边编程读访问。 |
SFB 15 | FB 15 | 写数据 | 单边编程写访问。 |
表1
图1
图2
要通过 S7-PN CPU 的 集成PROFINET 接口实现S7 通信,需要在硬件组态中建立连接。
2. 硬件及网络组态 CPU采用两个315-2PN/DP,使用以太网进行通信。 在STEP7中创建一个新项目,项目名称为PN S7。插入两个S7-300站,在硬件组态中,分别插入CPU 315-2 PN/DP。如图3所示。
图3
新建以太网,打开“NetPro”设置网络参数,选中CPU,在连接列表中建立新的连接。如图4所示。
图4
然后双击该连接,设置连接属性。在“General”属性中块参数ID = 1,这个参数即是下面程序中的参数“ID”。在SIMATIC 315PN-1中激活“Establish an active connection”,作为Client端,SIMATIC 315PN-2作为Server 端。
3. 软件编程
3.1. 无确认数据交换 SFB/FB 8 "USEND" 向类型为“URCV”的远程伙伴SFB/FB发送数据。执行发送过程而不需要和SFB/FB伙伴进行协调。也就是说,在进行数据传送时不需要伙伴SFB/FB进行确认。 S7-300:在REQ的上升沿处发送数据。在REQ的每个上升沿处传送参数R_ID、 ID和SD_1。在每个作业结束之后,可以给R_ID、ID和SD_1参数分配新数值。 S7-400:在控制输入REQ的上升沿处发送数据。通过参数SD_1到SD_4来指向要 发送的数据,但并非都需要用到所有四个发送参数。 然而,必须确保参数SD_1到SD_4/SD_1和RD_1到RD_4/RD_1 (在相应通讯伙 伴SFB/FB "URCV" 上)所定义的区域在以下几个方面保持一致: • ®编号 • ®长度 • ®数据类型 参数R_ID必须在两个SFB中完全相同。如果传送成功完成,则通过状态参数DONE来表示,此时其逻辑数值为1。 SFB/FB 9 "URCV" 从类型为“USEND”的远程伙伴SFB/FB中异步接收数据,并 把接收到的数据复制到组态的接收区域内。 当程序块准备好接收数据时,EN_R输入处的逻辑值为1。可以通过EN_R=0来取 消一个已激活的作业。 S7-300:在EN_R的每个上升沿处应用参数R_ID、ID和RD_1。在每个作业结束 之后,可以给R_ID、ID和RD_1参数分配新数值。 S7-400:通过参数RD_1到RD_4来指向接收数据区。 必须确保参数RD_i/RD_1和SD_i/SD_1 (在相应通讯伙伴SFB/FB "USEND" 上)所定义的区域在以下几个方面保持一致: •® 编号 • ®长度 • ®数据类型。 通过NDR状态参数逻辑数值为1来指示已经成功完成复制处理过程。参数R_ID必须在两个SFB/FB上完全相同。 打开SIMATIC 315PN-1的OB1,在OB1中依次调用FB8,FB9如图5、图6所示:
图5
程序中的参数说明见表2
参数 | 描述 | 数据类型 | 存储区 | 描述 |
REQ | INPUT | BOOL | I、Q、M、D、L | 上升沿触发工作 |
ID | INPUT | WORD | M、D、常数 | 连接ID |
R_ID | INPUT | DWORD | I、Q、M、D、L、常数 | 连接号,相同连接号的功能块互相对应发送/接收数据 |
DONE | OUTPUT | BOOL | I、Q、M、D、L | 为1时,发送完成 |
ERROR | OUTPUT | BOOL | I、Q、M、D、L | 为1时,有故障发生 |
STATUS | OUTPUT | WORD | I、Q、M、D、L | 状态代码 |
S7-300: SD_1 S7-400: SD_i (1 ≤ i ≤ 4) | IN_OUT | ANY | M、D、T、Z I、Q、M、D、T、C | 发送数据区 |
表2 FB8参数说明
图6
程序中的参数说明见表3
参数 | 参数 | 数据类型 | 存储区 | 描述 |
EN_R | INPUT | BOOL | I、Q、M、D、L、常数 | 为1时,准备接收 |
ID | INPUT | WORD | M、D、常数 | 连接ID |
R_ID | INPUT | DWORD | I、Q、M、D、L、常数 | 连接号,相同连接号的功能块互相对应发送/接收数据 |
NDR | OUTPUT | BOOL | I、Q、M、D、L | 为1时,接收完成 |
ERROR | OUTPUT | BOOL | I、Q、M、D、L | 为1时,有故障发生 |
STATUS | OUTPUT | WORD | I、Q、M、D、L | 状态代码 |
S7-300: RD_1 S7-400: RD_i (1 ≤ i ≤ 4) | IN_OUT | ANY | M、D、T、Z I、Q、M、D、T、Z | 接收数据区 |
表3 FB9参数说明维修西门子6ES7400-0HR04-4AB0
同样,在SIMATIC 315PN-2的OB1中,调用FB8/FB9。通信双方的“R_ID”均设为0。将SIMATIC 315PN-1的MB100-MB109赋值B#16#02,在SIMATIC 315PN-2中,将FB9的“EN_R”置1,然后在SIMATIC 315PN-1中,将FB8中“REQ”设置上升沿信号,此时SIMATIC 315PN-2的MB110-MB119接收到B#16#02。如图7所示。
图7
同理,将SIMATIC 315PN-2 的MB100-MB109赋值为B#16#03,SIMATIC 315PN-1的MB110-MB119接收到B#16#03。如图8所示。
图8
3.2. 确认数据交换 SFB/FB 12 "BSEND" 向类型为“BRCV”的远程伙伴SFB/FB发送数据。通过这种 类型的数据传送,更多的数据可以在通讯伙伴之间传输,超过任何其它用于组态的 S7连接的通讯SFB/FB所能传输的数据量,通过集成PN口的S7-400和S7-300是65534字节。 要发送的数据区是分段的。各个分段单独发送给通讯伙伴。通讯伙伴在接收到最后 一个分段时对此分段进行确认,该过程与相应SFB/FB "BRCV" 的调用无关。在调用块之后,当在控制输入REQ上有上升沿时,发送作业被激活。发送用户存储区中的数据与处理用户程序是异步执行的。 由SD_1指定起始地址和要发送数据的最大长度。可以通过LEN来确定数据域的作业指定长度。在这种情况下,LEN替换SD_1的长度区域。参数R_ID必须在相应的两个SFB/FB上完全相同。如果在控制输入R处有上升沿,则当前数据传送将被取消。如果传送成功完成,则通过将状态参数DONE的数值设置为1来进行指示。如果状态参数DONE或ERROR的数值为1,则在前一个发送处理结束之前,不能处理新的发送作业。 SFB/FB 13 "BRCV" 接收来自类型为“BSEND”的远程伙伴SFB/FB的数据。在收 到每个数据段后,向伙伴SFB/FB发送一个确认帧,同时更新LEN参数。在块调用完毕,并且在控制输入EN_R数值为1之后,块准备接收数据。可以通过EN_R=0来取消一个已激活的作业。 由RD_1指定起始地址和接收区的最大长度。由LEN指示已接收数据域的长度。 从用户存储区中接收数据与处理用户程序是异步执行的。参数R_ID必须在相应的两个SFB/FB上完全相同。通过状态参数NDR的数值为1来指示所有数据段的无错接收。接收到的数据保持不变,直到通过EN_R=1来重新调用SFB/FB 13为止。如果在数据的异步接收期间调用块,则将引发一个警告,该警告通过STATUS参数输出;如果当控制输入EN_R数值为0时进行调用,则接收将被终止,并且SFB/FB将返回到它的初始状态。