ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

欧姆龙CP1H四轴脉冲控制实战:从选型到调试全解析

欧姆龙CP1H四轴脉冲控制实战:从选型到调试全解析 刚接触欧姆龙CP1H的人多半是从一个脉冲轴开始玩的。等真正碰到四轴同时动的项目你会发现最难的不是指令本身而是为什么同一套程序单轴跑得好好的四轴一上去就丢步、报警、方向乱套。这篇文章我打算把CP1H四轴脉冲控制系统从头到尾捋一遍从选型、接线、驱动器参数到PLS2定位指令、电子齿轮比计算再到现场最常见的报警排查一次性说清楚。内容主要围绕伺服/步进系统集成来写尤其适合正在做贴标机、小型组装机、视觉定位平台或者想把现有步进升级成伺服的朋友。我尽量不说空话把你可能照着做的东西都放出来。1. 项目背景与整体设计思路1.1 为什么是CP1H而不是更高级的运动控制器很多人看到“四轴控制”四个字第一反应是上运动控制卡或者专用运动控制器。但实际回到项目需求如果四轴之间没有插补关系不需要圆弧、螺旋线只是各自独立定位、按顺序动或同时动那么CP1H这种内置4轴脉冲输出的中型小型PLC完全够用。CP1H的优势很明显它本体自带4路高速脉冲输出不用额外买定位模块。这一点在成本、柜内空间、程序维护上都比运动控制卡有优势。你如果去翻欧姆龙选型手册CP1H系列里晶体管输出型CPU支持4轴脉冲输出频率可以到100kHz。一百千赫兹听起来不高但配合伺服驱动器电子齿轮已经能覆盖大量常规自动化设备的点位运动需求。我见过不少人一上来就想着用CANopen总线伺服用EtherCAT做高同步运动。不是说这些技术不好而是很多项目只是为了“做一个动作”用脉冲输出是最直接、最可靠、也最好排查的方案。CP1H在该用脉冲的场景里其实是很能打的。1.2 伺服和步进怎么搭配四轴不一定全是伺服。项目里如果几个轴负载差异很大通常会把小负载轴用步进大负载或精度要求高的轴用伺服。这样既不浪费也能控制成本。我做过一套设备X、Y轴用台达B3伺服Z轴和一个旋转轴用步进。为什么这么分X、Y轴要配合视觉做位置修正需要闭环响应必须用伺服。Z轴只做升降两点位置重复精度不太高步进加细分也足够。旋转轴负载轻步进就够了。这里要特别注意一点伺服和步进的脉冲输入形式虽然有区别但大多数驱动器都支持“脉冲方向”这种方式。CP1H每个轴输出两路信号一路脉冲一路方向这个接口逻辑对所有主流驱动器都通用。比如台达、三菱、松下、汇川、ABB伺服的脉冲接口基本上都能直接对接。ABB的伺服如果写成差动输入那就要加转接板或者改接法所以买设备之前一定要确认驱动器是否支持集电极开路输入。1.3 四轴控制系统的架构整个系统大概分成三层PLC是控制核心负责发脉冲、收原点信号、走逻辑流程伺服/步进驱动器是执行核心负责把脉冲变成电机转动电机带着同步轮、丝杠、皮带等机械结构实现动作。CP1H这四路脉冲输出的轴号在PLC端子排上一般对应100.00到100.07这一组输出点两个点一组一路脉冲、一路方向。要注意的是不同电流规格的机型输出端子可能有些差别动手接线前一定要对着硬件手册里的“脉冲输出分配表”查一遍千万别想当然。控制流程通常是PLC收到启动信号先检查各轴原点、急停、驱动器报警信号都正常后按工艺顺序触发定位指令等待到位信号再启动下一轮。上位机如果存在一般通过串口或以太网给PLC发目标位置和速度信号PLC内部再把坐标换算成脉冲数据。2. 硬件选型与驱动器参数2.1 CPU型号别忘了晶体管输出CP1H选型最容易被忽略的一点就是要选晶体管输出型。继电器输出型号没法发高速脉冲这是硬伤。所以规划四轴控制时CPU必须是CP1H-X或CP1H-XA系列的晶体管输出型号。我见过有人拿继电器输出的CP1H报完价最后现场才发现不能发脉冲只能换成晶体管型整个柜子接线全部返工。这种事只要提前看一眼“输出形式”就能避免。另外CP1H有两种输出极性漏型NPN和源型PNP。国内项目里漏型更常见。伺服驱动器的脉冲输入端口一般也有公共端定义比如台达B3大多支持差动和开集电极两种输入如果你的PLC是NPN输出驱动器侧公共端就要接到对应的低电平公共端。这个具体接法在驱动器手册里都有图不要自己猜。2.2 台达B3/步进驱动器的参数设置要点以台达B3伺服驱动器为例新拿到一台驱动器第一件事不是连PLC而是把驱动器的几个基本参数设好。首先是控制模式。把驱动器设成位置模式也就是PR位置控制。很多驱动器默认已经是位置模式但有些版本可能需要显式设置不然动作会变成速度或扭矩模式。接着是脉冲输入形式。我们用的是脉冲方向信号所以驱动器输入形式要选“脉冲方向”而不是“双脉冲”。选错了电机要么不动要么方向控制混乱。然后是电子齿轮比。这一步最核心我单独在3.4里细讲。现在只需要知道伺服编码器分辨率很高比如三菱JE-A伺服编码器分辨率是131072脉冲/转直接让CP1H用100kHz频率去发脉冲电机转速远远不够必须通过电子齿轮把“指令脉冲数”转成“电机转动圈数”的比值放大。步进驱动器就简单一些。步进驱动器靠拨码设定细分和输出电流。细分设置决定一个脉冲对应多少步距角电流大小和电机额定电流匹配即可。CP1H的100kHz输出对步进驱动器来说完全够用。2.3 抱闸、原点开关和急停要提前规划四轴系统里垂直轴必须有抱闸。伺服电机的抱闸一般由驱动器输出控制或者在PLC逻辑里控制中间继电器。台达A2/B3这类驱动器都有抱闸输出接口但要单独接一个继电器因为驱动器自身带不动大电流抱闸。抱闸时序特别重要。电机在静止状态下才应该抱闸启动时先松闸再发脉冲否则电机憋着电流很容易报警过载。这个时序最好在PLC程序里做不要只靠驱动器内部逻辑。原点开关也是四轴控制的重点。CP1H支持原点搜索但每个轴的原点输入信号位不能搞混。实际接线时每个轴的原点开关都要回到PLC的高速计数器输入点或普通输入点同时在程序里定义好搜索方向和搜索速度。我之前遇到过反向撞极限就是因为原点搜索方向设反后来加了限位开关才保住机械。急停回路最好硬接线不要只依赖PLC程序。急停按钮断开后直接切断驱动器使能信号和机械电源PLC程序只能做辅助。四轴系统伺服越多急停越不能省。3. 程序设计与核心指令3.1 最常用的五条脉冲指令CP1H的脉冲输出指令有好几条但真正干活用得多的其实就那几条PULS、SPED、PLS2、ACC、INI。PULS是设置脉冲量告诉PLC“这一轮要输出多少个脉冲”。SPED是速度指令直接让某个轴以固定频率连续输出脉冲常用于点动和连续进给。PLS2就厉害了它把目标位置、运行速度、加减速时间整合到一起做一次带加减速的定位大部分点位运动都靠它。ACC用来调整正在输出脉冲的加减速速度适合在运行中动态改速。INI专用来停止脉冲输出或者中断定位。对于四轴独立定位最常用的组合是PLS2。它省了你很多事不用先设脉冲量再启动也不用自己算加减速只要把位置、速度、加减速时间放进数据区一条指令搞定。网上那些欧姆龙PLC编程实例里有很多PLS2的单轴例子但四轴和单轴的差别在于轴号分配和同时启动的时序控制。3.2 单轴定位程序怎么写我习惯把每个轴的运行数据放到固定的D区。比如轴0D10存目标脉冲数D12存速度D14存加减速时间。轴1D20、D22、D24按这个规律一直推到轴3。程序逻辑里启动位上升沿触发的PLS2指令按轴号0到3分开写。每个PLS2指令都指定“目标位置D区地址”和“速度D区地址”再把运行方向放在控制字里。这样维护起来非常方便以后改参数只需要在触摸屏上改D区数据不用改程序。有一点要提醒CP1H的脉冲输出支持两种模式一种是单次定长输出一种是连续输出。做定位一定要用“单次定长”不然脉冲数到了该停不停会冲过头。3.3 四轴同启和独立运动的两种写法四轴项目有两种常见工艺场景。第一种是四个轴完全独立各自在不同时间执行不同动作。这种把四条PLS2分开写就行每个轴有自己的启动位、完成位和报警处理。第二种是四轴需要同时启动比如输送机构四角同步顶升。你可以把四个轴的PLS2放在同一个触点分支下输出让它们在同一扫描周期内被同时触发。因为PLC扫描是顺序执行的四条指令虽然一个接一个执行但间隔通常在微秒级对于大部分非高速高精度同步的场景足够了。如果你要求四个轴必须有精确的位置同步、速度同步靠CP1H本体脉冲输出是做不到的那得上电子凸轮或者运动控制器。我一般在方案设计阶段就会跟客户说清楚这个边界避免后面扯皮。3.4 电子齿轮比和速度换算实例这一节我拿一个真实参数来算。假设伺服是三菱JE-A伺服编码器分辨率131072脉冲/转带着一个5比1减速器减速器输出轴装5M20同步轮。5M20同步轮是20齿节距为5mm所以转一圈走的距离是20×5100mm也就是0.1米。项目要求线速度0.8米每秒。那么同步轮或者说负载轴转速就是0.8/0.18圈每秒。减速比是5:1所以电机转速是8×540圈每秒也就是40×602400转每分钟。这个转速在3000转额定转速以内电机选型OK。现在看脉冲频率。如果不设置电子齿轮伺服电机转一圈需要131072个脉冲那40圈每秒就需要40×1310725242880个脉冲每秒也就是5.24MHz。这远超CP1H的100kHz上限。所以必须用电子齿轮放大指令脉冲的“当量”。我们希望CP1H在100kHz输出频率时电机转速正好是40圈每秒。每圈需要的指令脉冲数就是100000/402500个。那么电子齿轮比就是131072/250052.4288。实际操作时先在驱动器里把电子齿轮比设为约52.43比如分子分母写成5243比100然后再用低速试跑验证方向。如果电子齿轮比设成52实际每圈指令脉冲是131072/52≈2520.6个同样100kHz频率下转速略低设成53转速略高。对精度要求高的场合你需要在PLC程序或驱动器里做速度微调不能只靠大概值。这个例子想说明一个道理伺服分辨率很高不代表你要用高频率脉冲去喂它电子齿轮就是用来匹配PLC频率上限和伺服分辨率差异的。4. 联调、排障与精度改进4.1 上电前检查项目每次给伺服系统上电我都会先做一遍目视检查不急着开电源。先把脉冲线和方向线确认一遍。这种线最好用屏蔽双绞线屏蔽层单端接地。接线前用万用表量一下公共端电压确认PLC输出点和驱动器输入点之间的电平匹配。特别是差动输入和开集电极输入接错很容易烧驱动器输入光耦。再看驱动器使能信号。不要一上电就给使能先把位置模式、电子齿轮比设好再给使能。第一次给伺服使能时如果电机轻微振动或“嗡嗡”响立即断使能检查参数有没有设错。这类问题十有八九是电子齿轮比设反或者位置环增益太大。第一次试运行我习惯只发100到200个脉冲让电机转很小的角度确认方向对不对。方向和机械逻辑方向一致以后再把速度慢慢往上提。这个习惯救过我很多次比直接输一个大批量脉冲老实多了。4.2 常见报警排查速查现场报警千奇百怪但很多是重复的。我把常见的问题整理了一下方便你上手时快速定位。现象可能原因排查方向电机不转PLC指令已触发使能没给接线错误脉冲方向接反先查驱动器状态面板是否显示运行使能再查脉冲线电机抖动、异响电子齿轮比设反增益太高机械卡滞将电子齿轮设为1:1低速测试再逐步改回行走距离偏大/偏小电子齿轮比不对机械减速比算错回3.4重新计算用同步轮周长核对驱动器过载报警抱闸未打开机械卡死加减速时间太短查抱闸时序看位置闭环是否锁死运行中丢步脉冲频率太高屏蔽线没接扭矩不足降低加减速调整伺服刚性查干扰PLC连接正常但四轴不同步程序里指令触发时序不对输出刷新有差异使用同一条触点并联多个PLS2指令如果控制柜里有欧姆龙EtherNet/IP设备偶尔会看到类似EIP21这样的通信类报警。这个报警一般指向以太网通信异常常见原因是IP地址冲突、网线接触不良、网关设置不对。跟脉冲轴本身关系不大但很多新手容易慌以为是伺服或PLC坏了。我的建议是先把网线重新插拔把上位机、PLC、触摸屏的IP段统一再检查交换机端口。至于汇川那边的InoDriverShop软件搜索不到伺服地址最常见的问题就是电脑网卡IP和驱动器IP不在同一个网段。先手动把电脑网卡改成驱动器默认网段关掉系统防火墙再用软件扫描大概率能解决。4.3 三环控制与高频运动调试伺服驱动器内部有电流环、速度环、位置环这三环决定了电机响应快不快、稳不稳。脉冲控制模式下PLC发脉冲给位置环位置环输出给速度环速度环再给电流环。日常调试时用户能碰到的一般是位置环和速度环的增益、刚性等级。很多设备会要求电机高频启停比如视觉检测里的小幅快移、高速对位。这种场合电机要频繁加减速如果伺服刚性调得太低动作拖泥带水调得太高机械会震。我的经验是先用驱动器自带的一键惯量估测或自动增益让它先把参数估出来再根据机械噪音微调不要一上来就手动怼增益。运动控制界常说“伺服三环的响应要匹配机械负载”这句话听着玄实际就是负载惯量越大速度和位置环增益就要越保守。你带一个5:1减速器等于电机侧看到的负载惯量变小但同步轮的机械刚性也在影响最终效果。总之调增益时看电机声音和到位时间别只看软件曲线。4.4 一些能让你少加班的经验脉冲线尽量和动力线分开走线管。现场如果动力电缆和脉冲线捆在一起跑高速脉冲时很容易出现偶发性丢步排查起来极其痛苦。分开走线成本几乎为零效果立竿见影。原点信号和限位信号不要用太长的导线尽量靠近PLC输入点接线。长距离走线建议用带屏蔽的电缆PLC输入公共端要接对不然会误触发。程序里一定要做驱动器报警监控。把伺服驱动器的报警继电器输出接到PLC输入点一旦报警PLC马上停止发脉冲。四轴系统如果少做一个报警监控设备撞机了都找不到原因。触摸屏或者上位机修改速度时尽量做速度限幅。我在程序里加了个比较器任何轴的速度指令超过工艺限制就直接按上限值执行。这个习惯让我少背了很多锅。5. 后续扩展与我的建议5.1 总线伺服是趋势但脉冲控制不会消失现在新项目里EtherCAT总线的伺服越来越多尤其是多轴同步和复杂运动。但CP1H这样的老将靠4路脉冲输出仍然是很多中小型设备的性价比首选。如果你真的要做CANopen协议的总线伺服CP1H本身不支持直接上总线一般得加通信主站模块或者换成NJ/NX系列。这也是为什么很多项目还是愿意用脉冲控制的原因一个PLC搞定四轴不需要额外的主站卡、总线网关也不需要花时间配从站地址。维护电工也更容易上手。5.2 配合视觉和上位机组线四轴脉冲控制经常配合视觉系统。比如视觉相机拍完产品把坐标偏差通过串口、以太网或TCP/IP发给PLCPLC再把坐标差换算成脉冲量修正伺服位置。这时候CP1H的灵活性就看出来了它既可以通过串口和视觉通信也可以用协议宏和第三方仪表对接。上位机方面如果产线需要MES追溯通常用HSL这类通信库读写欧姆龙PLC的数据区。这里要提醒一句PLC程序和上位机通信地址要提前规划最好把运动参数集中在D区留给上位机读写的地址要明确不然后期联调时改地址会很痛苦。5.3 换成汇川、三菱或西门子怎么迁移很多人问我现在会了欧姆龙CP1H遇到FX5U或S7-200 SMART怎么办。其实运动控制的核心逻辑是相通的。三菱FX5U同样有四轴脉冲输出指令换成了DRVI、DRVA、DPLSV但电子齿轮比的计算思路完全一样。西门子S7-200 SMART加V90伺服本质也是找脉冲输出点设电子齿轮。我给新人的建议是把脉冲控制当成基本功。不管以后用脉冲还是总线只要你理解“一个脉冲对应多少毫米、多少线速度、多少加速度”这层换算关系换任何PLC都只是换指令和地址的问题。做套项目下来我最想强调的一点是CP1H四轴脉冲控制的难点从来不在指令而在硬件匹配和参数换算。只要把电子齿轮比、加减速时间、原点逻辑、驱动器报警这几件事做扎实四轴其实和三轴、两轴没有本质区别。第一次上电时把速度放到10%方向确认后慢慢提这个习惯我用了很多年建议你也试一试。
返回列表