news 2026/6/15 12:11:27

涂布机程序欧姆龙NJ501-1400,无触摸屏。 整机全部使用欧姆龙产品,欧姆龙R88D系列伺服

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
涂布机程序欧姆龙NJ501-1400,无触摸屏。 整机全部使用欧姆龙产品,欧姆龙R88D系列伺服

涂布机程序欧姆龙NJ501-1400,无触摸屏。 整机全部使用欧姆龙产品,欧姆龙R88D系列伺服,NX-ECC201耦合器通信远程总线控制,远程搭载NXID5342,NX-OD5121,数字量模块,AD3603,DA2603,模拟量输入输出模块。 主机搭载CJ1W-AD081,CJ1W-DA08V,模拟量输入输入输出 OMRON总线伺服,主轴虚轴测长,电子齿轮凸轮同步控制应用,卷径计算,速度计算,轴棍速度运动控制,收放卷速度控制,收放卷张力转矩控制,全套欧姆龙元器件

最近在调试一台全欧姆龙血统的涂布机控制系统,主控用的是NJ501-1400这个硬核选手。没配触摸屏的操作让整个系统更考验底层程序功底,不过对习惯了Sysmac Studio的老司机来说反而有种裸机编程的爽快感。

系统架构上NX-ECC201耦合器带着一群小弟玩得飞起,远程IO模块直接挂在EtherCAT总线上。特别想说说AD3603和DA2603这对模拟量CP,在张力控制环节它们负责把物理世界的4-20mA信号和程序里的浮点数玩得团团转。这里有个读取收卷张力反馈的代码片段:

VAR rawValue : WORD; tension : REAL; END_VAR rawValue := AD3603_1.Ch1_Input; tension := (INT_TO_REAL(rawValue) - 16384.0) * 10.0 / 32768.0; //量程转换

这段看似简单的转换公式其实暗藏玄机,32768对应的是16位有符号数的量程,10.0对应的是传感器量程。调试时发现个坑——当收卷辊直径变化时,这个张力值需要动态补偿,后面会说到怎么破。

运动控制方面R88D伺服全家桶确实给力,主轴虚轴带着八个从轴跳电子齿轮的集体舞。举个卷径计算的例子,这个直接影响材料线速度的核心参数:

FUNCTION_BLOCK DiameterCalculator VAR_INPUT materialThickness : REAL; //材料厚度 rollCircumference : REAL; //初始周长 END_VAR VAR_OUTPUT currentDiameter : REAL; END_VAR VAR layerCount : UINT; END_VAR layerCount := (rollCircumference / (3.1416 * materialThickness)) - 1; currentDiameter := (layerCount * materialThickness * 2) + 0.15; //0.15是芯轴直径

这个算法需要配合编码器脉冲计数动态更新,实测中发现材料弹性形变会导致累积误差,后来加了脉冲补偿才解决。

涂布机程序欧姆龙NJ501-1400,无触摸屏。 整机全部使用欧姆龙产品,欧姆龙R88D系列伺服,NX-ECC201耦合器通信远程总线控制,远程搭载NXID5342,NX-OD5121,数字量模块,AD3603,DA2603,模拟量输入输出模块。 主机搭载CJ1W-AD081,CJ1W-DA08V,模拟量输入输入输出 OMRON总线伺服,主轴虚轴测长,电子齿轮凸轮同步控制应用,卷径计算,速度计算,轴棍速度运动控制,收放卷速度控制,收放卷张力转矩控制,全套欧姆龙元器件

在同步控制方面,电子凸轮表玩出了新花样。当需要快速切换收放卷模式时,这段同步触发逻辑是关键:

MC_GearIn( Master:=MainAxis, Slave:=RewindAxis, RatioNumerator:=gearRatio, RatioDenominator:=1, Mode:=MC_GEAR_SYNCHRONOUS);

重点是这个gearRatio的计算,结合了前面说的动态卷径和张力补偿系数。调试时发现伺服偶尔会报过载,最后发现是材料惯量突变时没做加速度斜坡,后来在gearRatio后面套了个FIR滤波器才稳定。

整套系统最秀的当属用CJ1W-DA08V做动态转矩控制。在收卷张力突变场景下,这段PID转矩控制代码立功了:

PID_Tension.Control( SetPoint:=targetTension, ProcessValue:=actualTension, Output=>torqueCommand); MC_TorqueControl( Axis:=RewindAxis, Mode:=MC_TORQUE_DIRECT, Torque:=torqueCommand * compensationFactor);

这里的compensationFactor是个经验值表格,根据不同材料类型切换。有次测试新材料时系统震荡得像蹦迪,后来发现是材料摩擦系数参数填反了,改完立马老实。

调试过程中NX-OD5121数字量模块的响应速度惊艳到我了,0.5ms级别的DI/DO处理让急停信号处理稳如老狗。不过也踩过总线同步的坑——有次伺服使能信号和模拟量输出不同步,材料直接被拉断。最后用EtherCAT的分布式时钟功能做了精准时间戳对齐才搞定。

现在这台涂布机已经稳定运行大半年,全欧姆龙方案的可靠性确实顶。虽然初期配置时被Sysmac Studio的轴参数树折磨得头秃,但底层控制权掌握在手里的感觉真不是盖的。下次考虑试试把卷径算法移植到ST语言做功能块,应该能让程序更风骚。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/14 22:26:28

别被“伪自律”绑架:为什么你的“中国胃”跑不动“西式沙拉”?

那个在茶水间接热水的“沙拉人”咱们唠唠闲天。以前在公司楼下吃饭,我发现个挺有意思的现象。现在的写字楼里,不管是刚入职的实习生,还是带团队的总监,好像都流行起了一股“吃草风”。记得有一天,我那做开发的老兄弟大…

作者头像 李华
网站建设 2026/6/15 11:06:35

揭秘MrBeast爆款视频的底层算法:四小时逆向工程揭示病毒式传播公式

我花了四个小时逆向分析MrBeast的视频。以下是病毒式传播背后的疯狂公式。 我本无意深入这个兔子洞。一切都始于一个简单的问题:MrBeast是如何让人们停止滚动屏幕的? 四小时后,我写满了一笔记本的潦草笔记——时间戳、镜头角度、音效&#xf…

作者头像 李华
网站建设 2026/6/12 20:48:10

什么是agent skills

agent skills 在 AI 辅助编程实践中,为确保 AI 输出的准确性和一致性,项目往往依赖日益详尽的规范文档进行约束与引导。这直接导致两个问题:规范本身难以维护,以及每次对话的上下文负载过重,造成显著的 Token 开销与效…

作者头像 李华
网站建设 2026/6/15 10:36:15

Android开发工程师职位深度解析与技术面试指南

宁波波导易联电子有限公司 Android开发工程师 职位信息 职位描述: 1.负责Android产品的功能研发和性能优化,能够独立完成高质量编码工作。 2.负责Android Framework开发和维护。 3.负责Android应用开发。 4.负责Android新技术的研究和新功能的扩展。 5.改善软件的易用性,不断…

作者头像 李华