资讯动态

兄弟CNC数据采集教程:网关配置到MES上抛全流程

发布时间:2026/10/24 3:20:27 来源:尧图企业网站定制
前一阵在车间做设备联网客户那有二十来台兄弟机天天问我数据能不能并到MES里看OEE。兄弟这类小型加工中心在3C、模具行业特别多但很多人一到数采这一步就卡住了——要么不知道从哪下手要么看了协议文档一头雾水。这篇教程是网关管理软件系列里的一个小节专门讲兄弟CNC的数据采集步骤版本是1.9。1.9这个版本在设备接入、变量点表、数据上抛这三块已经挺成熟车间里跑兄弟机数采用这套流程基本能趟平。我会把整个过程分成几个环节来讲先说明白网关在数采里的作用然后是机床侧和网络侧的准备工作再是软件里的实际配置操作最后是调试和排错经验。其中涉及的点表、地址、采集周期这类细节都是现场反复试出来的不是纸上谈兵。不管你是设备科想自己做联网还是做系统集成要交付项目照着这个路子走能少走很多弯路。1. 先搞清楚网关管理软件到底解决什么问题1.1 兄弟CNC采集为什么麻烦大家第一反应可能是机床不是有网口吗直接写个程序连上去读数据不就行了真做起来就会发现不是那么回事。兄弟这套控制系统对外通信的开放程度远不如用的FOCAS那种公开接口它的以太网口主要服务于FTP文件传输、DNC在线加工这些功能真正要把主轴转速、坐标、报警这些实时数据读出来需要走机床内部的宏变量或者特定的通讯协议而这些协议和地址映射关系不同系统版本之间还有差异。如果每台机床都自己写底层通讯代码工作量巨大而且后期维护非常痛苦。网关管理软件在这里起到的作用就是“翻译”和“搬运”。它把不同厂商、不同协议的数据采集逻辑封装成标准模块你只需要在软件里选择机床品牌和型号填好IP地址和端口它就知道怎么跟这台机床对话。从机床读出来的数据会统一映射成一个个采集变量叫“点表”然后再通过标准协议往上层平台送。这样就把最麻烦的协议层消化掉了留给使用者的只剩配置工作而不是编程工作。1.2 1.9版本的能力边界与适用场景1.9这个版本我测过一段时间它默认支持的设备类型覆盖了市面上主流数控系统兄弟机自然是重点之一。在采集能力上它大体支持周期采集和变化采集周期采集就是每隔几秒把所有点位刷一遍适合做曲线趋势变化采集是数据有变化才往上抛适合做报警记录和状态切换。上抛方面常见的就是MQTT、Modbus TCP和直接写数据库具体用哪个看上层平台的接口要求。需要提醒的是网关软件不是万能的。它解决的是“数据怎么取、怎么传”的问题但机床侧有些功能选项如果没开通比如宏变量的外部读写权限那软件再怎么配置也读不到东西。还有一点1.9版本对兄弟老款系统的支持会比新款弱一些老系统如果走纯FTP方式实时性会差不少这个后面我会详细讲。总的来说这台网关适合那些不想碰底层协议、希望快速把设备数据接上来的场景尤其是批量接入几十台同型号兄弟机的时候优势特别明显。2. 动手前的环境准备与网络规划2.1 兄弟CNC侧需要开哪些参数很多人在软件里折腾半天连不上最后发现是机床侧的网口参数都没设过这就很冤枉。兄弟机设置网络的地方一般在MDI/面板的维护或I/O配置界面里不同年代的系统菜单位置略有差别但核心要设的就这几样IP地址、子网掩码、默认网关。这些是让机床能跟外部设备通信的基础不设好等于机床网口是摆设。然后是通讯功能开关。兄弟机如果要通过宏变量被外部读取需要在机床参数里开启对应的数据输出权限具体参数号不同机型不一样最快的办法是让机床厂商或者你们设备科查一下手册。我遇到过好多次采集的变量全部返回0折腾了一个下午才反应过来是机床侧权限没开。如果这台兄弟机要做FTP方式采集那还得在机床上把FTP服务打开设置好用户名和密码并指定一个目录用来放加工程序和采集文件权限设置不好会出现能连上但读不了目录的情况。设置完之后建议在机床面板上先确认一下IP地址生效。有的系统改完参数要重启有的要重新上电才生效别急着去电脑ping先把机床这边确认了。2.2 网关和网络拓扑怎么搭一个很典型的接法是这样车间里几十台兄弟机通过工业交换机汇聚到一台网关上网关再通过一个独立网口接到厂区管理网络。这里有一个关键原则就是采集网络和办公网络尽量分开至少也要划分不同网段。CNC采集数据量虽然不算大但车间里变频器、伺服驱动器带来的电磁干扰很严重办公网里那些突发流量也会影响采集的实时性独立网段不仅能减少干扰还能避免IP冲突。我建议按这个方式来规划IP机床设备段用一个网段比如10.10.1.x网关用一个固定IP比如10.10.1.100上层平台用10.10.2.x。这样做的好处是后续扩容只需要往10.10.1.x里加IP就行不会动到管理网络里的既有配置。要是车间比较大设备分散在不同区域可以加一台汇聚交换机但网段规划还是要统一不然等以后设备多了查故障会查到怀疑人生。实际布线时注意一点兄弟机的网口一般都在电气柜里柜内温度高、振动大网线接头要压接牢靠有条件的话用带金属护套的工业网线。别图省事拿根普通跳线一插了事车间环境对普通网线的损耗非常快我见过插着插着莫名其妙掉线的情况最后排查出来是柜内网线老化。2.3 硬件与软件安装检查清单正式配置之前最好把环境检查清单过一遍免得配置做到一半才发现基础条件不满足。硬件方面网关设备是否上电指示灯状态是否正常网关的采集网口和上层网口是否插对。软件方面网关管理软件的版本是不是1.9登录账号有没有配置权限有些受限账号只能看设备状态不能新增点位或者改配置。网络验证就两条命令ping一下网关到机床的IP确认物理链路通不通再检查一下目标端口是否开放。兄弟机的通讯端口一般不是标准的22或80具体端口跟系统版本和通讯方式有关FTP通常是21宏变量读取可能走自定义端口以网关软件里填的为准。如果ping不通先查IP和网线不要急着填软件配置如果ping得通但软件连不上再查端口和通讯权限排查顺序不能反。3. 核心实操网关管理软件里建设备和点表3.1 新增兄弟CNC设备软件登录进去之后通常左侧是功能菜单先进入“设备管理”或者叫“设备台账”的页面点击“新增设备”。这时候会弹出一个表单里面有几个关键字段设备名称、设备编码、厂商类型、型号、IP地址、端口号、通讯超时时间、采集周期。设备名称和编码建议跟车间里的固定资产编号对应上这样以后报表能对得起来。厂商类型选择兄弟CNC1.9版本里通常已经有预设的兄弟设备模板直接选中就行。IP地址和端口按前面规划好的填。通讯超时时间一般默认3000毫秒到5000毫秒就够用如果网络质量差可以适当往上调但不要超过10秒否则设备掉线之后很难及时判断。采集周期这里我先填3秒这是比较稳妥的起步值既能满足大部分看板刷新要求又不会给机床通讯模块造成太大压力。填完之后保存回到设备列表看状态如果显示在线说明这一步已经通了如果显示离线多半是网络没通、信息填错或者机床侧权限问题。这里有个细节容易忽略有些同型号机床的端口和通讯参数不一定相同尤其是后期做过系统升级的批次。批量导入的时候最好先单独把一台配置通确认这台机床的通讯参数再拿它当模板去批量加设备否则几十台设备一台一台排查故障工作量翻倍。3.2 变量点表配置思路设备加进去只是第一步真正决定采集内容的是点表配置。点表就是把你想从机床里读的每一个数据定义成一个变量告诉网关这个变量的名字、类型和它在机床侧对应的地址。兄弟机的常用采集点我归纳了一下基本逃不出这些运行状态自动、手动、暂停、主轴转速、主轴倍率、进给倍率、当前程序号、当前刀具号、X/Y/Z轴坐标、主轴负载、报警号和报警内容。这里“当前程序号”和“报警号”是最容易被忽略但又最实用的程序号能看出机床在加工哪个工件报警号能帮你做停机原因分析没有这两项所谓设备联网就是空中楼阁。添加点表的具体操作很简单选中设备进入“变量配置”页点新增变量。变量名称写个自己能认出来的名字比如SPINDLE_SPEED数据类型根据实际选择转速、坐标这类是数值型INT或FLOAT报警内容是字符串型地址一栏填机床侧的变量地址比如宏变量#100到#199具体含义后面专门讲。填完之后把变量添加到采集组里设置采集周期保存并下发配置。我自己的习惯是一台设备先把最关键的五六个点配上跑通链路之后再慢慢加。别想着一次把上百个点全部配完一旦某个地址填错排查起来特别吃力而且点表下发时会整体生效增量式添加更安全。3.3 数据上抛到上层平台数据在网关里读出来还不够最终是要送给MES或者自己的可视化页面。1.9版本的上抛配置在“数据转发”或“接口设置”里核心就是选一种或几种上抛方式填好接收端的地址。如果对接的平台支持MQTT那是最省事的填上MQTT Broker地址、端口、主题前缀即可。数据格式一般是JSON每个采集周期上报一个数据体大概长这样{ deviceId: MC-001, timestamp: 1735534800, fields: { spindle_speed: 8000, program_no: O1001, axis_x: 12.345, alarm: } }如果对方只要Modbus TCP那网关就充当Modbus服务器你在软件里把点表映射到寄存器地址上层系统直接拉寄存器数据就行。这里要特别注意寄存器地址的分配一个16位寄存器最多只能存0到65535的整数像主轴转速8000这种没问题但坐标值带小数就需要用两个寄存器拼成32位浮点数或者提前做好量程换算不然上层平台显示出来全是零或者乱码。上抛频率和采集周期最好是分开设置的。采集周期是底层数据更新的频率上抛周期是往平台送的频率。比如底层3秒采一次上抛可以设为5秒一次或者设为“变化才上抛”报警信号这类突发数据能做到毫秒级响应普通数值则没必要刷那么快这能节省平台侧的数据处理压力。4. 兄弟CNC变量地址与协议细节4.1 用宏变量打通数据通道很多人配点表的时候卡在最核心的问题上地址到底填什么。兄弟机常用的数据读取方式之一就是宏变量。宏变量可以理解为机床内部的“公用内存条”里面存了一堆系统运行时的数值。宏变量分系统宏变量和用户宏变量常见的分配是#100到#199是系统运行变量会自动更新主轴转速、当前坐标这些信息#500到#999是用户宏变量一般用于在加工程序里存放自定义的工件参数。需要注意一点系统宏变量和用户宏变量不一样#100到#199这一段的数值是机床系统自动更新进去的从外部可以直接读但前提是机床参数把外部读写的权限放开不然读到的会是空值或者干脆报错。你可以把#100理解成机床主动在“黑板”上写的数字你只需要在软件里读那个编号就行。很多兄弟机用户联调时发现读出来的值一直是0说到底就是黑板写字的粉笔被没收了也就是权限没开放。配置时把变量地址设为相应的宏变量编号比如主轴转速地址填#100X轴坐标地址填#101具体哪个编号对应哪个数据要看那台机床的宏变量分配表不同系统不完全一样。网上能找到兄弟机宏变量的部分通用表但最可靠的办法是拿一台机床实测先在站上手动看一眼当前主轴转速再在软件里读一次对得上就说明地址对了。4.2 文件方式读取程序信息除了宏变量实时读数还有一种方式在兄弟机上也很常见就是通过FTP文件协议读取机床侧的文件系统。这种方式主要用来做程序管理兄弟机可以把当前执行的加工程序、刀具表等以文件形式放在系统目录里网关通过FTP登录到机床定时拉取这些文件解析出程序号、程序内容、修改时间等信息。FTP方式跟宏变量方式并不互斥各有优势。宏变量实时性好适合转速、坐标这种需要秒级刷新的数据FTP适合程序内容、批量上传下载这类不需要太高实时性的场景。一个比较成熟的配置组合是实时状态走宏变量程序管理走FTP两边互不干扰。但FTP方式有个坑频繁轮询FTP目录会对机床操作面板造成额外负载严重的时候甚至影响正常加工。我建议FTP轮询周期不要小于10秒如果只是做程序归档1分钟轮询一次足够。另外FTP的用户名和密码在网关软件里都是明文保存的一定要用低权限账号别用管理员账户不然一旦网关被渗透整个机床文件系统就暴露了。4.3 采集要点与性能调优谈到性能调优很多人容易走极端觉得采集周期越短越好。实际使用下来兄弟机做数据采集3秒到5秒的周期是黄金区间。为什么这么说因为机床的通讯模块要兼顾伺服控制、面板显示、程序执行这些核心任务外部高频读取会占用它的通讯资源可能只影响10%的性能但现场是加工设备稳定压倒一切没必要为了看板的一点点顺滑感去冒影响加工的风险。如果确实需要高频数据比如做振动分析或主轴功率曲线那建议不要用这种通用采集方式应该上更专业的硬件传感器方案直接进数据采集卡不要走机床通讯口。把网关合理定位成“看状态、做报表”的工具别让它干“高速采集”的活整个系统的稳定性会好很多。变量数量也要控制。一台设备配二三十个点足够了一两百个点虽然技术上可行但每次采集周期要把所有点全问一遍周期会被拉得很长某个点位通讯稍慢整组数据都会被拖住。分组采集是个好思路高频点位一组5秒采集低频点位一组30秒采集这样可以分流数据压力。5. 从零到上线一次完整数采调试实录5.1 现场调试流程说到具体上线调试我建议按照“物理层—通讯层—数据层—应用层”四步来做每一步都验证完再往下走可以省掉大量重复排查时间。物理层就是确认网线插好、指示灯正常、交换机端口没问题。通讯层是原先说的ping和端口检查。数据层是看网关软件里设备在线、变量读到合理数值。应用层是看MQTT或数据库里能不能收到实时数据。我见过很多人喜欢跳过前三步直接看平台页面一旦没数据就蒙圈其实每一步都有明确的现象可查按顺序来反而最快。调试时最好两个人配合一个人在机床旁边操作一个人盯网关软件或平台页面。比如验证主轴转速采集机床边的人把转速从8000转到12000平台这边看数据是否跟着变化。这样几秒钟就能确认这个变量地址对不对。一个人又开机床又看软件来回跑效率很低而且容易误判数据更新的时机。5.2 报警与状态采集中容易踩的坑报警采集看起来简单其实坑不少。首先要确认报警地址的读取方式兄弟机的报警状态一般会有一个专门的变量表示当前是否有报警还有一个变量存当前的报警代码。但报警内容往往是字符串可能包含空格和特殊符号配置数据类型时一定要选字符串类型别选成整型不然网关解析出来的内容会乱码或者丢字。触发时机也要搞清楚。有些报警是持续保持的比如急停、门开关报警有些是瞬间触发的比如超程报警复位之后马上消失如果采集周期是5秒就可能漏掉那条瞬间报警。这种情况可以一边在机床面板上看到报警记录一边把报警历史的事件通过网关的“变化上抛”功能推送出去而不是靠周期性采集去碰运气。状态判断还有一类经典问题大家习惯把“自动模式”当作“正在加工”。其实兄弟机在自动模式下程序可能处于暂停或者单步状态主轴可能没在转这时候用模式判断机床“有没有干活”是不准的。最好结合循环启动信号或者主轴转速来进行综合判断多个状态量配合而不是只靠一个单一信号这个经验在统计设备利用率的时候特别有用。5.3 离线和断网处理策略车间环境里网络不稳定是常态网关和机床之间偶尔断开很正常。关键问题在于断开之后怎么办。1.9版本里的离线处理策略主要看两点一是断线重连机制是否自动生效二是离线期间的数据是否缓存。重连的问题不大网关软件一般会按固定的间隔自动重新尝试连接。但缓存就复杂了。有些部署场景要求数据不丢那就要开启网关的本地存储功能离线期间的数据先存在网关内置存储里网络恢复后再补传。要注意补传的数据时间戳必须是机床侧的实际时间不能以上抛时刻来标注否则平台做数据分析时这些延迟数据全部会归到恢复时刻数据就废了。我一般给客户的配置建议是实时报表用当前数据就行历史统计最好依赖网关补传数据。如果平台侧有消息队列可以直接把网关的补传数据按时间戳写入数据库这样断网期间的数据也不会丢停机统计的准确度能有保障。至于缓存保留多长时间看网关存储空间正常建议缓存7天太久了没意义设备停了那么久数据也是垃圾。6. 常见问题排查速查表6.1 连接不通类问题现象可能原因处理办法ping不通IP网线故障、机床网口未启用、IP冲突检查网线确认机床网络参数生效换交换机端口ping通但设备离线端口错误、通讯参数不匹配核对端口号确认机床侧通讯权限开放有时在线有时离线网线接头松动、电磁干扰重新压接水晶头更换工业网线检查屏蔽接地一台能通同型号另一台不通批次不同、参数设置不一样单独查看该机床的网络参数和系统版本连接问题一定先从物理层查起。太多人在软件配置里反复折腾最后发现是交换机那根跳线没插紧这种低级错误费的时间最可惜。别信“看起来插好了”直接看交换机端口指示灯更稳。6.2 数据错乱类问题现象可能原因处理办法变量一直为0宏变量权限未开或地址错误在机床侧确认权限核对宏变量对应表数值偶尔跳变数据类型选错整数当浮点读检查变量类型定义确认高位低位字节序坐标值与面板显示不一致坐标类型选错机械坐标/相对坐标区分机床坐标类型选择需要的坐标系字符串乱码编码格式不匹配网关字符编码配置设为ASCII或UTF-8数值读出来不对先不要怀疑软件先用面板确认当前机床的真实值再核对软件里读到的值这类问题十有八九是地址或者类型配置错误。字节序的问题在Modbus上抛时特别常见高低字节反了数值会非常大或非常小遇到这种情况去查一下大小端设置通常能解决。6.3 稳定性问题现象可能原因处理办法运行几天后采集变慢变量点位过多、采集周期冲突优化点表分组设置采集周期网关重启后设备失联设备列表未保存或配置未下发配置完成后手动下发一次全部点表数据漏采采集周期太短上位机处理不过来降低采集频率开启变化上抛网关自身死机负载过高、供电不稳检查网关负载增加稳压电源合理规划设备数量稳定性问题的核心是负载均衡。网关的CPU和内存是有限的一台网关带二三十台设备通常没问题但如果每台设备几十个点全部高速采集早晚会出问题。我的建议是单台网关管理的CNC数量控制在20台以内变量总数控制在500个以内这样即使有些异常波动网关也有足够裕量处理不会连累整条产线的数据。个人在实际操作中的体会是兄弟CNC数采这件事七分靠准备三分靠配置。只要机床侧权限、网络规划、点表逻辑这三块想清楚后面一马平川反过来如果一开始就忙着在软件里点来点去后面大概率要返工。还有个小技巧想分享正式上线之前挑一台机床先跑一周稳定性测试观察它每天的数据完整率和报警上报延迟确认没问题再批量推广到全部设备。CNC数据采集不是装上就完事它是一个需要持续观察、持续调优的活。这套流程我自己跑了不止一个项目踩过的坑都写在这里了照着做至少能让你少加班几个通宵。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑