☰
三菱FX3U与信捷触摸屏三轴搬运程序:结构设计与调试全解析
2026/10/11 20:43:31 网站建设 项目流程

1. 项目概述与整体设计思路

1.1 立项背景与核心需求拆解

我最早接触三轴搬运这个项目,是很多年前在车间做设备改造的时候。老实说,三轴搬运在工业现场属于最典型的“入门级自动化应用”——三台步进电机、一个PLC、一个触摸屏,就能完成从A点抓料、运到B点放下的整套动作。但是越基础的设备,越考验程序结构。很多新手写三轴搬运程序,喜欢把所有逻辑堆在一起,看起来“跑得通”,一旦遇到原点丢失、掉电重启、手动自动切换这些现场老问题,就手忙脚乱。

这套基于三菱FX3U系列PLC与信捷触摸屏的三轴搬运程序,核心目标就一句话:结构清晰、注释齐全、拿来能改、改完能跑。我把它拆成了几个层次来说明——第一层是电气部分,从CAD图纸就能看到每个传感器、每个驱动器的接线去向;第二层是PLC程序,按“手动—回原点—自动”三大模式划分,互不干扰;第三层是触摸屏画面,操作工只需按“启动”“停止”“急停”就行,参数调整都在“手动画面”里完成。

这套程序适合谁?如果你是刚入行的电气工程师、调试工程师,或者正在做毕业设计的自动化专业学生,拿这套程序作为蓝本是非常省力的一条路。它不追求花哨指令,绝大部分逻辑用基础指令就能实现,但每一个线圈、每一个触点后有中文注释,你顺着梯形图就能读完整台设备的“动作周期”。哪怕是没写过三菱PLC程序的朋友,只要能够看懂继电器回路,结合注释也能把搬运时序推出来。

1.2 为什么选三菱FX3U与信捷触摸屏这套组合

先说说PLC选型。三菱FX3U在小型控制领域里属于“常青树”,它最核心的优势是高速脉冲输出稳定、指令生态成熟、学习资料极多。三轴搬运对PLC的要求其实不高,但有一个硬指标——至少三路独立脉冲输出,分别控制X轴、Y轴、Z轴。FX3U-32MT/MT001晶体管输出型的Y0、Y1、Y2正好对应三路脉冲,控制步进驱动器完全够用。

有人可能会问,伺服行不行?当然行。FX3U同样支持脉冲+方向信号控制伺服驱动器,只需在图纸上把脉冲信号接到伺服驱动器的Pulse端子,方向信号接到Sign端子,程序部分几乎不用改。这就是用“脉冲方向信号”做轴控的好处,无论步进还是伺服,只要驱动器的信号接口是“脉冲+方向”,这套程序就能平移。

再说触摸屏。信捷触摸屏在中小型设备里的性价比确实香,而且它对三菱FX协议的支持做得相当省心——不用写复杂的通讯脚本,新建工程时选好PLC品牌、通讯协议、波特率,元件地址直接填三菱的D、M、X、Y就行。硬件上,FX3U的编程口(圆头8针)通过一条RS232电缆,或者走FX3U-485-BD扩展板的RS485口,都能和信捷触摸屏通讯。我这次用的是RS485方式,通讯距离长、抗干扰好一点,适合电柜和触摸屏面板分离的安装方式。

1.3 程序结构设计的整体思路

写三轴搬运程序,我给自己定的“规矩”是三层分离:手动模式、回原点模式、自动模式。三个模式用三个主状态位区分,互锁之后才能互切,防止误操作引发撞机。自动模式内部,用“步进号”的方式推进,每完成一步就加一步,到哪一步、当前在干什么、条件是否满足,触摸屏上全部能监控。

搬运动作本身很单调,但恰恰因为单调,更要考虑“会不会卡住”“会不会撞到”。我的处理方式是:每个轴动作之前,必须有“到位条件”和“安全条件”双重检查。比如Z轴要下降抓料,先确认X轴、Y轴已经停在取料位上方,再确认Z轴正处于上位传感器信号内,然后才允许下降。这种写出来看似“啰嗦”的连锁,现场避免的撞机事故是实打实的。

2. 硬件选型与电气图纸解析

2.1 控制系统总体硬件配置

在动手画CAD图纸之前,先把这张硬件清单理清楚。我这次项目的具体配置如下:

  • PLC:三菱FX3U-32MT/001,晶体管输出,220V供电
  • 触摸屏:信捷TG465-UT,7英寸,RS485通讯
  • X轴:57步进电机+DM542驱动器,行程400mm
  • Y轴:57步进电机+DM542驱动器,行程600mm
  • Z轴:42步进电机+TB6600驱动器,行程100mm,带动真空吸盘
  • 传感器:X轴、Y轴各2个接近开关(原点、极限),Z轴2个接近开关(上、下极限),另加2个光电开关做料仓检测
  • 执行元件:真空发生器+吸盘、两位五通电磁阀、蜂鸣器、三色灯

为什么步进电机用57和42搭配?这取决于负载。X、Y轴行程长,要拖动整个横梁,57机座扭矩更足;Z轴只带吸盘组件上下移动,重量轻,42机座就够了。你如果做更重的搬运负载,Z轴同样可以换成57或者带刹车的步进电机,刹车的作用是断电时不让Z轴掉下来。

2.2 I/O分配与接线要点

三菱FX3U的输入输出地址是八进制,X0到X7、X10到X17这样排,输出同理。很多新手容易在这个细节上翻车,画图的时候地址写成十进制,结果接线和程序对不上。我这套程序的I/O分配表如下,照着这张表接线,再照着表写程序,基本不会乱:

PLC地址信号名称功能说明元件类型
X0X轴原点X轴回零近点信号NPN常开接近开关
X1X轴正限位防止X轴往正方向超程NPN常闭接近开关
X2X轴负限位防止X轴往负方向超程NPN常闭接近开关
X3Y轴原点Y轴回零近点信号NPN常开接近开关
X4Y轴正限位防止Y轴往正方向超程NPN常闭接近开关
X5Y轴负限位防止Y轴往负方向超程NPN常闭接近开关
X6Z轴上极限Z轴上升到位NPN常开接近开关
X7Z轴下极限Z轴下降到位NPN常开接近开关
X10取料位光电取料仓有料检测NPN光电开关
X11放料位光电放料仓有料检测NPN光电开关
X12启动按钮自动启动常开按钮
X13停止按钮自动停止/暂停常闭按钮
X14急停回路硬急停,接常闭点急停旋钮
Y0X轴脉冲输出脉冲到X轴驱动器驱动器PUL+
Y1Y轴脉冲输出脉冲到Y轴驱动器驱动器PUL+
Y2Z轴脉冲输出脉冲到Z轴驱动器驱动器PUL+
Y3X轴方向控制X轴方向,ON为正驱动器DIR+
Y4Y轴方向控制Y轴方向,ON为正驱动器DIR+
Y5Z轴方向控制Z轴方向,ON为正驱动器DIR+
Y6真空吸盘电磁阀ON时吸料电磁阀线圈
Y7蜂鸣器故障报警发声蜂鸣器
Y10三色灯红故障指示灯组
Y11三色灯绿运行指示灯组

接线时有两个关键点你必须盯住。第一,所有NPN传感器,棕色接24V正,蓝色接0V,黑色接PLC输入端子;第二,步进驱动器的PUL+和DIR+接PLC输出的24V信号,PUL-和DIR-接对应的Y端子,这种接法叫“共阳极”,是三菱晶体管输出和步进驱动器的标准配合方式。注意驱动器侧需要把拨码开关的“信号模式”设为共阳模式,否则信号可能不触发。

2.3 电气CAD图纸的看懂与复用

这套图纸我没有做成那种“一套图一个版本”的僵尸图,而是按功能拆成了独立页面——主回路图、PLC接线图、按钮指示灯图、传感器图、步进驱动器接线图。这样维护的时候,改哪里就只翻哪一页,新手拿到手也能按图排查。

主回路图相对简单,就是一路AC220V进线,经过空气开关、开关电源(24V/5A)、急停继电器触点,分别供给PLC、触摸屏、传感器、驱动器的控制电。很多设备出问题就出在“电源混接”上,比如步进驱动器的供电和传感器共用一路24V,驱动器启停瞬间电流波动大,传感器就误动作。我的建议是:开关电源出来分两路,一路给PLC和传感器(同时给触摸屏),另一路单独给驱动器控制信号,这样抗干扰好得多。

PLC接线图要注意每个输入端的公共端子COM,FX3U的输入COM是S/S端子,接24V+(漏型接法,即“源极输入”)。网上很多案例用源型接法,即S/S接0V,此时NPN传感器要接PLC输入点,负极信号作为输入触发。整套图纸中“传感器—PLC输入—内部梯形图”是一条完整链路,千万别搞混。

关于CAD图纸的复用,我的经验是把这份图纸当模板存起来。以后不管做两轴、四轴,只需要复制一份,改地址标注、改线号,再改掉设备命名就行。图纸上手写的注释越多,现场排查越省力,你甚至可以把“这根线的作用”直接写在CAD的文本说明栏里,打印出来给电工接线时当提示卡用。

2.4 安全回路设计:除了急停,还要考虑“断电保持”

三轴搬运设备运行中最大的风险是掉电后Z轴掉落砸工件,以及恢复供电后各轴位置错乱。我在这套系统里做了两个处理。一是硬件层面,Z轴电机建议用带刹车步进电机——刹车线圈和Z轴驱动器控制信号并联,驱动器一断电,刹车立刻抱死。二是程序层面,掉电再上电后,系统强制进入“回原点”状态,所有自动模式操作全部封锁,必须手动把三个轴依次回零,才能再次启动。

另外,急停按钮必须接硬回路,不要依赖PLC内部软锁。急停按下后,直接切断步进驱动器的使能信号和电磁阀电源,这样即使程序卡死,设备也能立即停下来。图纸上这部分要用“常闭触点串联回急停继电器”,指示灯跨接在继电器线圈上,按下急停灯亮,是个非常直观的排查信号。

3. 程序框架与核心逻辑实现

3.1 程序架构:主程序、回零、手动、自动四段式

我把程序在GX Works2里按“子程序方式”组织,主程序通过CALL指令调用不同功能块,整体看起来像这样:

  • 主程序段(步0开始):开机初始化、模式互锁、总报警处理
  • 回原点子程序(P0):三个轴按“Z先、X再、Y最后”的顺序依次回零
  • 手动子程序(P1):点动X/Y/Z三轴,吸盘吸料/放料
  • 自动子程序(P2):按步进号执行的整段搬运动作

为什么回原点顺序要“Z先”?因为Z轴是垂直轴,如果X、Y轴先移动,Z轴却还在下方,很可能撞到周边物体。先把Z轴升到上极限,等于先把“最危险的一轴”收起来,之后X、Y轴随便跑都不会刮碰。这个顺序看着简单,但现场要是搞反了,轻则撞坏吸盘,重则损坏机械结构,务必记牢。

3.2 高速脉冲输出与定位指令的选择

三菱FX3U有三个高速脉冲输出口Y0、Y1、Y2,正好对应三轴。定位指令我强烈建议用“带相对定位符号的DRVI配合绝对定位DDRVA”组合,而不要用单个绝对定位走天下。原因在于,起始/相对位置的第一段走绝对定位,便于让各轴精确停在工件抓取点,之后的运动用相对定位,更直观地按“再往前往后移多少”来编程,逻辑更清晰。

举个例子,假设取料点在X轴坐标300mm、Y轴坐标200mm处,每1mm对应1000个脉冲,则X轴绝对位置参数是D300000,Y轴绝对位置参数是D200000。DRVA指令写法是:

DDRVA K300000 K50000 Y0 Y3 ; X轴绝对定位到300mm位置,速度50kHz DDRVA K200000 K50000 Y1 Y4 ; Y轴绝对定位到200mm位置,速度50kHz

等等,三菱的DRVA指令格式,DDRVA指的是双字32位绝对定位,第一个操作数是目标位置,第二个操作数是速度,第三个操作数是脉冲输出端口,第四个是方向输出端口。对于地形,需要确认指令的具体写法,但整个思路是对的。速度上,50kHz对应步进电机每秒50mm(在1mm=1000脉冲的分辨率下),X轴400mm行程跑完全程只要8秒,效率是完全够的。

需要注意的是,DDRVA是32位指令,操作数用的是D寄存器,而且必须连续占用两组16位寄存器,比如D300、D301这种组合,转换成32位数值时“高位在后”,这个细节容易搞混。条件允许的话,用标签编程或填写32位常数,避免寄存器组合问题。

3.3 自动流程的步进号设计

自动模式内部,我采用M10开始的步进号来驱动。每走完一步动作,执行条件满足后,就把步进号加1。梯形图里典型的推进写法是:

LD M10 ; 当前在取料位等待 ANI X10 ; 取料位光电检测到有料 SET M11 ; 跳到下一步:X轴Y轴就位、Z轴下降 RST M10

这样一个一个往下推,程序阅读性极强,后续加动作也不必大改,只要在中间插入步进号即可。整段自动流程是这样的:

  1. M10:等待启动信号,取料位有料才继续
  2. M11:X/Y轴定位到取料坐标上方
  3. M12:Z轴下降,碰到下极限后停止
  4. M13:吸盘电磁阀得电吸料,延时0.5秒
  5. M14:Z轴上升,到上极限后停止
  6. M15:X/Y轴定位到放料坐标上方
  7. M16:Z轴下降
  8. M17:吸盘电磁阀失电放料,延时0.2秒
  9. M18:Z轴上升
  10. M19:如果连续运转信号保持,则跳回M10循环,否则停在结束状态

每一步的“完成确认”除了靠传感器信号,还需要加上“超时报警”保护。也就是说,某一步执行超过设定时间还没到位,PLC判定为异常,停止运行并蜂鸣报警。这个超时判断用定时器T做个“看门狗”就好——除每一步启动时清零重启,超过5秒未完成就报警,非常实用。

3.4 触摸屏画面规划与变量绑定

信捷触摸屏工程,我在TouchWin里搭了四个画面:主画面、手动画面、参数画面、报警画面。

主画面用来显示当前状态——运行中/停止/报警,三个大指示灯分别绑到M50(运行中)、M51(停止)、M52(报警),再加启动和停止两个按钮,绑M0和M1。操作工日常基本只用这一个画面。安全考虑,启动按钮我设了“按钮按下持续0.5秒才有效”的属性,防止误触碰。

手动画面是我调试时最常用的一屏。每个轴设一个点动按钮加一个方向选择开关,点动按钮绑到M30(X轴正向点动)、M31(X轴负向点动)等。由于手动是调试阶段用的,没做权限限制,生产模式下隐藏这个画面。参数画面则是显示三个轴的目标位置值、当前位置值,方便对坐标。

报警画面把各种报警码做成文本列表,比如“Z轴下降超时”“吸盘真空不足”“Y轴正限位触发”,对应的触发条件用PLC的D寄存器写入报警码,触摸屏按报警码显示文本。这样出现故障时,操作工抬头看屏就知道什么原因,不用爬到电柜里看指示灯。

4. 实战调试、常见问题与避坑心得

4.1 空跑调试与参数整定步骤

设备装好后,我习惯按照“不通电源先查线,通完电源先查信号”的节奏来调试。送电之前,用万用表蜂鸣档从开关电源出线到每个传感器端子逐个量通断,确保没短路、没接错。送电后,先手动按每个传感器,看PLC输入指示灯是否亮,再逐个强制Y输出,看驱动器动作是否正确。

第二步是设步进驱动器的细分。DM542把细分拨到“2000脉冲/转”,也就是转一圈2000个脉冲,导程5mm,这样每1mm对应400个脉冲,精度在0.005mm以内。分辨率对搬运设备来说绰绰有余,同时步进电机在低细分下力矩更均匀,不容易丢步。

第三步才轮到空跑程序。在不装吸盘、不装工件的前提下,手动模式点动每个轴,确认运动方向正确。方向错了就在程序里改方向输出的逻辑,而不是把驱动器方向端子反过来接——因为后续加第二台设备时,波形正确性依赖程序的一致性。点动没问题后,运行回原点,再单步执行自动流程,每一步看一眼动作和传感器状态是否匹配。

4.2 常见问题速查表

调试和运行阶段,我遇到的高频问题基本就那么几个,下面列成表格,每条都是实战换来的经验,照着排查能省不少事。

故障现象可能原因排查思路与解决
某个轴不动作脉冲信号未到驱动器用万用表测Y0端子和驱动器PUL之间电压,PLC输出端口是否有电压跳变
轴只能往一个方向动方向信号异常重点查Y3/Y4/Y5到驱动器DIR的接线,是否共阳极接法正确
回原点找不到信号近点信号和原点信号顺序问题三菱ZRN指令要求先遇近点信号,再遇原点信号才停止,检查两传感器间距
步进电机高速振动丢步驱动器细分低或速度过高降速度到20kHz以内,或把细分翻倍,算好机械行程对应的脉冲数
触摸屏通讯不上协议/波特率/站号不一致检查触摸屏的PLC类型选择、波特率是否和FX3U的编程口一致(通常9600/8/E/1)
运行时偶发误报警24V电源干扰驱动器供电和控制信号供电分开,或加开关电源滤波电容
自动流程停在某一步该步完成信号没满足进入强制监视,逐一查看该步条件传感器是否亮,超时定时器是否误触发
Z轴下降后吸盘不吸真空发生器气路/电磁阀问题检查电磁阀得电输出Y6、气源压力、吸盘是否破损漏气

4.3 避坑经验:细节决定调试效率

最后分享几个容易踩但很少人写出来的细节。

第一个是原点回归指令的选择。三菱FX3U的ZRN指令,在执行时是“先以快速趋近,然后减速碰到近点信号后停止”。但我习惯不用ZRN自带的近点信号处理,而是自己写“先慢速找原点开关,再高速离开,再慢速找一次”这种双沿回零逻辑。原因在于,ZRN在新旧设备上机械惯性差异大,原厂指令可能出现“越过原点”的现象,自写逻辑虽然多几行梯形图,但可靠性提升非常明显。

第二个是程序注释。电气工程师在GX Works2里写注释,常见问题是注释写得太“个性”,什么“前面那个感应器”“料放好再走”,自己看得懂,别人接手就是天书。我这里所有注释都统一成“动作+条件+目的”的三段式,例如“X轴正方向点动——按下手动画面+X按钮时——用于调试对位”。这套注释写下来,程序通用性和可维护性直接上一个台阶。

第三个是触摸屏上的坐标参数最好做成掉电保持。FX3U断电后普通D寄存器会清零,下次开机还要重新输坐标,非常影响生产。解决办法是用三菱的锁存保持型寄存器——比如D512以后,或者在初始化时把参数从M到F写到保持区。另外,触摸屏工程里把坐标参数的地址直接指向保持寄存器,这样修完一次坐标,以后每次开机都还记得。

第四个经验是关于“手动—自动切换瞬间”。设备在手动状态下移动到了极限位置,这时候切到自动模式,自动流程会默认当前坐标为起点,一启动就可能撞限位。所以我在模式切换处加了“当前位置合法性校验”,如果当前坐标超出自动流程允许的范围,切换时触摸屏弹出提示,必须先把轴点动移回安全区,自动才能启动。这个细节救过我很多次,工人误操作再也不是“一启动就撞机”。

调完了整套程序,我心里最踏实的一点是:这套“三轴搬运”的逻辑框架,几乎是所有通用搬运设备的“模板”。你按这个思路做两轴、四轴、带夹爪或带视觉引导的版本,核心就是改轴数、改坐标、改动作顺序。程序、图纸、触摸屏工程的注释和结构,基本可以原样迁移。我后来做过的几个设备改造,都是在这个蓝本上花了很少的时间就完成了,实际验证下来“结构清晰”这四个字,才是程序真正值钱的地方。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询