CN116400643A - 基于s7协议拓展的一种西门子数控系统实时采集方法 - Google Patents

基于s7协议拓展的一种西门子数控系统实时采集方法 Download PDF

Info

Publication number
CN116400643A
CN116400643A CN202310383816.6A CN202310383816A CN116400643A CN 116400643 A CN116400643 A CN 116400643A CN 202310383816 A CN202310383816 A CN 202310383816A CN 116400643 A CN116400643 A CN 116400643A
Authority
CN
China
Prior art keywords
numerical control
control system
reading
machine tool
plc
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310383816.6A
Other languages
English (en)
Inventor
褚博文
郭国彬
刘宽
赵轩
黄松
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu Aircraft Industrial Group Co Ltd
Original Assignee
Chengdu Aircraft Industrial Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chengdu Aircraft Industrial Group Co Ltd filed Critical Chengdu Aircraft Industrial Group Co Ltd
Priority to CN202310383816.6A priority Critical patent/CN116400643A/zh
Publication of CN116400643A publication Critical patent/CN116400643A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • G05B19/4063Monitoring general control system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/37Measurements
    • G05B2219/37533Real time processing of data acquisition, monitoring
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Abstract

本发明公开了基于S7协议拓展的西门子数控系统数据实时采集方法,属于数控加工领域。包括:首先,基于PLC内部通讯组件对不同型号数控系统进行连接与配置,使之能正确获取可编程逻辑控制器PLC和数字控制器NC的MLFB编码;其次,通过机床的配置文件获取机床全要素变量,并转换成可读取的数组格式;然后,通过自行开发的服务进行变量的单次读取和循环读取,并测试数据读取速度;最后将读到的数据实时发布到服务器端进行处理和存储。本发明的采集程序可直接安装在机床数控系统内部,随机床一同运行,无需占用机床的网络端口,以最小的资源占用、最高的采集频率进行西门子数控系统的数据采集。

Description

基于S7协议拓展的一种西门子数控系统实时采集方法
技术领域
本发明涉及数控加工领域,具体涉及基于S7协议拓展的西门子数控系统数据实时采集方法。
背景技术
随着工业生产的不断发展以及自动化系统集成度的不断提高、工业系统中设备数量的增加和现场信息交互共享能力要求的提高,传统的智能设备之间及智能设备与控制系统之间实现信息共享的通讯方式已不能满足工业控制系统的发展需要。我国多数高端数控机床使用的是西门子的数控系统,虽然都安装了世界领先的数控机床,但对如何管理数控机床,提高数控机床的利用率,缺乏有效的信息化管理手段。如何获取机床的实时工况,如何对机床绩效进行评价,如何对零件加工进行回溯,如何优化零件加工程序,这些都离不开对数控系统的高频数据采集。
目前常用的西门子数控系统采集方法包括:DDE采集、OPC/OPC UA采集、西门子第三方插件采集等等,但这些采集方式都受限于西门子数控系统,最高采集频率难以突破10HZ。
为了解决这一技术瓶颈,本发明基于S7协议的PLC内部通讯组件研究并开发了一套适用于西门子系统的高频数据采集方法。
发明内容
本发明旨在解决现有技术中的数控系统采集速度较慢,无法满足今后智能自动监控需求的问题,提出了基于S7协议拓展的西门子数控系统数据实时采集方法,使用该方法可实现对数控系统进行全要素采集,采集速度最高可达500HZ。
为了实现上述发明目的,本发明的技术方案如下:
基于S7协议拓展的西门子数控系统数据实时采集方法,其特征在于,包括如下步骤:
首先,基于PLC内部通讯组件对不同型号数控系统进行连接与配置,使之能正确获取可编程逻辑控制器PLC和数字控制器NC的MLFB编码;
其次,通过机床的配置文件获取机床全要素变量,并转换成可读取的数组格式;
然后,通过自行开发的服务进行变量的单次读取和循环读取,并测试数据读取速度;
最后将读到的数据实时发布到服务器端进行处理和存储。
进一步的,针对西门子数控系统840D SL,基于PLC内部通讯组件的连接与配置方法如下:
在机床的MMC网口用交换机分一条网线接入PC机,配置 PC机的IP地址使其与机床HMI接口处于同一网段,然后用PLC内部通讯组件的Configuration工具进行连接配置,在机床中查找可编程逻辑控制器PLC和数字控制核心NCK的rack和slot编号,然后配置device0,选用S7-TCP/IP连接方式,输入可编程逻辑控制器PLC和数字控制器NC的IP、RackNo、SlotNo以及PLC类型参数,并保存;
其次,对配置好的连接进行通讯测试,若无连接错误且能够正常获取到可编程逻辑控制器PLC和数字控制器NC的MLFB编号,与机床对应的MLFB参数一致,则已成功连接PLC和NC,此时通过PLC内部通讯组件的Configuration工具自动生成xml配置文件。
进一步的,针对西门子数控系统840D PL,基于PLC内部通讯组件的连接与配置方法如下:
在数控系统上用ACCON-NetLink-PRO转接头将MPI口转成网口进行连接;
将ACCON-NetLink-PRO转接头接入机床,通过网线连接至PC机后,在计算机上进行组态配置,配置过程如下:
通过Set PG/PC Interface设置PROFIBUS接口的IP地址和Station编号;
设置完成后,再进行连接配置、测试并读取MLFB编号。
进一步的,所述的通过机床的配置文件获取机床全要素变量,并转换成可读取的数组格式具体包括:
在数控系统中找到*.nsk变量地址配置文件并导出到计算机上,再基于PLC内部通讯组件开发一个nsk文件读取的应用程序,将nsk变量地址配置文件转换成PLC内部通讯组件可识别的数据格式,即NckDataRW[]数组;通过读取nsk文件得到对应变量的机床存储位置。
进一步的,针对变量单次读取,采取请求问答的通讯机制进行针对一次性变量的读取,当在某通讯端口收到外界发来的数据请求时,执行单次读取函数,读取成功并反馈结果。
进一步的,针对变量循环读取,开启一个单独的线程不停的对所有定义好的变量进行循环读,每次读取成功后通过一个新的端口将结果发布出去,其他的客户端或服务可以通过订阅此端口来获取数据。
进一步的,通过自行开发的服务进行变量的循环读取时,针对840D数控系统,采用AGL4.NCK_ReadMixEx(ConnNr, ref Realvars, timeout)单次读取函数进行线程内无延时的自动循环读取变量。
进一步的,采用NckDataRW[]数组来定义所有要采集的变量,通过NCK_ReadMixEx函数读取数据,当函数返回值不小于零时即为读取成功,可在NckDataRW[]数组变量的BUFF字段获得读取结果
综上所述,本发明具有以下优点:
本发明方法设计的采集程序可直接安装在机床数控系统内部,随机床一同运行,无需占用机床的网络端口,以最小的资源占用、最高的采集频率进行西门子数控系统的数据采集,可突破传统采集器采集速度慢的技术瓶颈,采集频率最高可达500HZ。
附图说明
图1是840DSL数控系统PLC连接配置方法图;
图2是840DSL数控系统的设备连通测试图;
图3是840D PL数控系统的NetLink-PRO转接头组态配置图;
图4是基于通讯组件开发的nsk文件读取应用程序示意图。
具体实施方式
为了更清楚地说明本发明,下面结合优选实施例和附图对本发明做进一步的说明。本领域技术人员应当理解,下面所具体描述的内容是说明性的而非限制性的,不应以此限制本发明的保护范围。本发明的说明书和权利要求书及上述附图中的属于“第一”、“第二”等是用于区别不同的对象,而不是用于描述特定顺序。此外,术语“ 包括”和“ 具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法或设备固有的其他步骤或单元。
实施例1
本实施例提供了一种基于S7协议拓展的西门子数控系统数据实时采集方法,通过基于S7协议的PLC内部通讯技术,研究并开发了一套适用于西门子840DPL/SL数控系统的高频数据采集程序,能够突破传统采集器采集速度慢的技术瓶颈,采集频率最高可达500HZ。本采集程序可直接安装在机床数控系统内部,随机床一同运行,无需占用机床的网络端口,以最小的资源占用、最高的采集频率进行西门子数控系统的数据采集。
本方法的具体实施步骤如下:
步骤一、基于PLC内部通讯组件对不同型号数控系统进行连接与配置,使之能正确获取PLC(可编程逻辑控制器)和NC(数字控制器)的MLFB编码。PLC内部通讯组件是德国deltalogic公司基于PLC S7协议开发的一款应用,专门用于数控系统连接配置。本申请也可以采用市面上常用的PLC连接配置工具,将连接配置的参数转换成xml 文件,用于后面采集器程序的开发。
步骤二、其次通过机床的配置文件获取机床全要素变量,并转换成可读取的数组格式(即NckDataRW[]数组)。
步骤三、然后通过自行开发的服务进行变量的单次读取和循环读取,并测试数据读取速度。
步骤四、最后将读到的数据实时发布到服务器端进行处理和存储。
根据上述步骤,基于PLC内部通讯组件可开发成一款用于840D数控系统高频数据采集程序,并将其打包成windows服务安装在与机床MMC上,运行该服务即可实现机床加工时数控系统内部数据的高频采集。
将开发好的Windows服务程序安装在机床MMC上,配置好机床的IP、数据端口后运行服务。在与此台机床联网的PC机上运行测试数据接收的程序,测试通过后,在PC机上安装正式的数据中转服务,并配置与之连接机床的IP地址和数据端口,可以成功将机床采集的数据接收并存储至上层服务器端。
经反复测试,此采集器可稳定运行,采集频率最高可达500HZ,可成功应用于生产现场的西门子数控系统数据采集。
具体的,步骤一中关于PLC内部通讯组件的连接与配置,针对不同型号的西门子数控系统,连接与配置方式区别较大,下面分别对西门子数控系统840D PL与SL两种型号进行描述。
下面分别对西门子数控系统840D SL与PL两种型号进行描述。
①针对840D SL系统
首先,在机床的MMC网口用交换机分一条网线接入PC机,配置计算机的IP地址使其与机床HMI处于同一网段,用该组件的Configuration工具进行连接配置,在机床中查找PLC和数字控制核心NCK (Numerical Control Kernel)的rack和slot编号,然后按图1所示方式配置device0,即:
选用S7-TCP/IP连接方式,输入PLC和NC的IP、RackNo、SlotNo以及PLC类型等参数,并保存。
其次,如图2所示,对配置好的连接进行通讯测试,若无连接错误且能够正常获取到PLC和NC的MLFB编号,与机床对应MLFB参数一致,则已成功连接PLC和NC。此时通过该组件的Configuration工具自动生成xml配置文件,在高频采集器开发时需要用到此文件。
②针对840D PL系统
由于840D PL系统的MMC无网口,需要在数控系统上用ACCON-NetLink-PRO转接头将MPI口转成网口进行连接,因此需要对转接头进行组态配置,如图3所示,具体操作为:将转接头接入机床,通过网线连接至PC机后,在计算机上进行组态配置,方法为:通过“SetPG/PC Interface”设置PROFIBUS接口的IP地址和Station编号,设置完成后再用与SL系统同样的方法进行连接配置、测试并读取MLFB编号。
实施例2
本实施例基于实施例1所述的采集方法,进一步的,步骤二的具体实施步骤如下:
在机床数控系统中找到*.nsk变量地址配置文件并导入计算机上,基于PLC内部通讯组件开发一个nsk文件读取的应用程序,用于将nsk变量文件转换成组件可识别的数据格式(即NckDataRW[]数组),如图4所示。
通过对nsk文件的读取可以获取到该变量的机床存储位置,variable为变量地址,area为变量所在区域,block为变量所在块,bufflen为变量存储所占字节,unit为变量单元号,column为变量列,row为变量行。
例如,通过变量手册查到刀具半径对应的DDE变量地址:/channel/state/actToolRadius,在变量列表里查找到此地址对应的区域为eNCK_AreaChannel,块为eNCK_BlockS,数据缓存长度:8,数据列位置:27,行位置:1,单元位置:1,DDE变量类型:eNCK_LE_Float64等参数,可以组合成数据类型如下:
rwfield[0] = new AGL4.NckDataRW();
rwfield[0].Area= AGL4.NCK_Area.eNCK_AreaChannel;
rwfield[0].Block = AGL4.NCK_Block.eNCK_BlockS;
rwfield[0].Column = 27;
rwfield[0].Row = 1;
rwfield[0].RowCount = 1;
rwfield[0].Unit = 1;
rwfield[0].DDEVarType= AGL4.NCK_DDEVarFormat.eNCK_LE_Float64;
rwfield[0].BuffLen = 8;
rwfield[0].Buff = new Byte[rwfield[0].BuffLen];
rwfield[0].Result = 0。
实施例3
本实施例基于实施例1或2所述的采集方法,进一步的,步骤三中,PLC内部通讯组件可提供多种PLC变量读取方法,包括单次变量的读取,变量循环读取等。但循环变量读取的最小循环时间为100ms,为了提高数据采集的频率,针对840D数控系统我们选用AGL4.NCK_ReadMixEx(ConnNr, ref Realvars, timeout)单次读取函数进行线程内无延时的自动循环读取变量。
其具体开发步骤如下:
首先,在程序中进行数控系统PLC连接配置,针对不同通讯组件版本进行激活。通过已连接成功获得的xml配置文件进行路径导入,在程序中设置好设备号、PLC号、slot号和rack号后尝试进行该组件连接。连接成功后获取MLFB编号,并与机床系统对比是否一致。
其次,在采集器中对变量的读取分为两种:一次性的变量读取和循环读取,分别采用了两种通讯方式:
针对一次性变量的读取采取请求问答的通讯机制,当在某通讯端口收到外界发来的数据请求时,执行单次读取函数,读取成功并反馈结果;
另一种为变量循环读取,开启一个单独的线程不停的对所有定义好的变量进行循环读,每次读取成功后通过一个新的端口将结果发布出去,其他的客户端或服务可以通过订阅此端口来获取数据。
程序中采用NckDataRW[]数组来定义所有要采集的变量,通过NCK_ReadMixEx函数读取数据,当函数返回值不小于零时即为读取成功,可在NckDataRW[]数组变量的BUFF字段获得读取结果。
虽然结合附图对本发明的具体实施方式进行了详细地描述,但不应理解为对本专利的保护范围的限定。在权利要求书所描述的范围内,本领域技术人员不经创造性劳动即可做出的各种修改和变形仍属本专利的保护范围。
以上所述,仅是本发明的较佳实施例,并非对本发明做任何形式上的限制,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化,均落入本发明的保护范围之内。

Claims (8)

1.基于S7协议拓展的西门子数控系统数据实时采集方法,其特征在于,包括如下步骤:
首先,基于PLC内部通讯组件对不同型号数控系统进行连接与配置,使之能正确获取可编程逻辑控制器PLC和数字控制器NC的MLFB编码;
其次,通过机床的配置文件获取机床全要素变量,并转换成可读取的数组格式;
然后,通过自行开发的服务进行变量的单次读取和循环读取,并测试数据读取速度;
最后,将读到的数据实时发布到服务器端进行处理和存储。
2.根据权利要求1所述的基于S7协议拓展的西门子数控系统数据实时采集方法,其特征在于,针对西门子数控系统840D SL,基于PLC内部通讯组件的连接与配置方法如下:
在机床的MMC网口用交换机分一条网线接入PC机,配置PC机的IP地址使其与机床HMI接口处于同一网段,然后用PLC内部通讯组件的Configuration工具进行连接配置,在机床中查找可编程逻辑控制器PLC和数字控制核心NCK的rack和slot编号,然后配置device0,选用S7-TCP/IP连接方式,输入可编程逻辑控制器PLC和数字控制器NC的IP、RackNo、SlotNo以及PLC类型参数,并保存;
其次,对配置好的连接进行通讯测试,若无连接错误且能够正常获取到可编程逻辑控制器PLC和数字控制器NC的MLFB编号,与机床对应的MLFB参数一致,则已成功连接PLC和NC,此时通过PLC内部通讯组件的Configuration工具自动生成xml配置文件。
3.根据权利要求1所述的基于S7协议拓展的西门子数控系统数据实时采集方法,其特征在于,针对西门子数控系统840D PL,基于PLC内部通讯组件的连接与配置方法如下:
在数控系统上用ACCON-NetLink-PRO转接头将MPI口转成网口进行连接;
将ACCON-NetLink-PRO转接头接入机床,通过网线连接至PC机后,在计算机上进行组态配置,配置过程如下:
通过Set PG/PC Interface设置PROFIBUS接口的IP地址和Station编号;
设置完成后,再进行连接配置、测试并读取MLFB编号。
4.根据权利要求1所述的基于S7协议拓展的西门子数控系统数据实时采集方法,其特征在于,所述的通过机床的配置文件获取机床全要素变量,并转换成可读取的数组格式具体包括:
在数控系统中找到*.nsk变量地址配置文件并导出到计算机上,再基于PLC内部通讯组件开发一个nsk文件读取的应用程序,将nsk变量地址配置文件转换成PLC内部通讯组件可识别的数据格式,即NckDataRW[]数组;通过读取nsk文件得到对应变量的机床存储位置。
5.根据权利要求1所述的基于S7协议拓展的西门子数控系统数据实时采集方法,其特征在于,针对变量单次读取,采取请求问答的通讯机制进行针对一次性变量的读取,当在某通讯端口收到外界发来的数据请求时,执行单次读取函数,读取成功并反馈结果。
6.根据权利要求1所述的基于S7协议拓展的西门子数控系统数据实时采集方法,其特征在于,针对变量循环读取,开启一个单独的线程不停的对所有定义好的变量进行循环读,每次读取成功后通过一个新的端口将结果发布出去,其他的客户端或服务可以通过订阅此端口来获取数据。
7.根据权利要求1或6所述的基于S7协议拓展的西门子数控系统数据实时采集方法,其特征在于,通过自行开发的服务进行变量的循环读取时,针对840D数控系统,采用AGL4.NCK_ReadMixEx(ConnNr, ref Realvars, timeout)单次读取函数进行线程内无延时的自动循环读取变量。
8.根据权利要1、5或6所述的基于S7协议拓展的西门子数控系统数据实时采集方法,其特征在于,采用NckDataRW[]数组来定义所有要采集的变量,通过NCK_ReadMixEx函数读取数据,当函数返回值不小于零时即为读取成功,可在NckDataRW[]数组变量的BUFF字段获得读取结果。
CN202310383816.6A 2023-04-12 2023-04-12 基于s7协议拓展的一种西门子数控系统实时采集方法 Pending CN116400643A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310383816.6A CN116400643A (zh) 2023-04-12 2023-04-12 基于s7协议拓展的一种西门子数控系统实时采集方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310383816.6A CN116400643A (zh) 2023-04-12 2023-04-12 基于s7协议拓展的一种西门子数控系统实时采集方法

Publications (1)

Publication Number Publication Date
CN116400643A true CN116400643A (zh) 2023-07-07

Family

ID=87017692

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310383816.6A Pending CN116400643A (zh) 2023-04-12 2023-04-12 基于s7协议拓展的一种西门子数控系统实时采集方法

Country Status (1)

Country Link
CN (1) CN116400643A (zh)

Similar Documents

Publication Publication Date Title
CN102402215B (zh) 用于收集过程控制数据的方法及装置
CN109274178B (zh) 一种电力调度前置运行信息的自动化分析系统和方法
CN102495591B (zh) 数控机床监控方法
CN111698268A (zh) 一种设备通讯协议转换器
CN111026460A (zh) 一种组态工具中利用区域模板快速配点的方法及装置
CN107817401A (zh) 一种用电信息采集系统的压力测试方法及装置
CN110769002A (zh) 基于LabVIEW的报文解析方法、系统、电子设备和介质
CN110632461A (zh) 同步相量数据集中器的测试方法、测试终端及测试系统
CN112615428A (zh) 一种线损分析治理系统及方法
CN114095535A (zh) 一种将物理设备时序变量自动映射为数字模型的方法
CN108847714B (zh) 一种高压直流输电暂态数据录波装置及控制保护装置
CN116400643A (zh) 基于s7协议拓展的一种西门子数控系统实时采集方法
CN112350912A (zh) 一种基于Modbus协议的数据采集方法、系统和装置
CN111212093A (zh) 数据处理系统及控制设备
CN113671924B (zh) Dcs实时值置值方法和系统、设备及存储介质
CN112650765B (zh) 工位故障的判断方法、装置、设备及存储介质
CN210724868U (zh) 数据处理系统及控制设备
CN104787634A (zh) 电梯一体机的监控方法、电梯一体机及其监控系统
CN102722975A (zh) 一种基于profibus的智能电表数据抄读方法及系统
CN109324573B (zh) 一种用于simatic tdc系统gdm网络的嵌入式数据采集系统及方法
CN103345239B (zh) 基于安卓平台的宽带用电信息采集系统现场调测工具
CN212305381U (zh) 一种设备通讯协议转换器
CN117194501A (zh) Dcs趋势测点跳转逻辑组态的方法、系统、设备及介质
CN117637013B (zh) 电源控制装置与电源测试系统
CN111131477B (zh) 一种数据处理方法、装置及设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination