news 2026/9/17 20:35:26

三菱FX2N顺序控制与机械臂大小球分拣步进编程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
三菱FX2N顺序控制与机械臂大小球分拣步进编程

简介:本资源为一套面向自动化、机电一体化专业学生及PLC初学者的课程设计与毕业设计参考文档,围绕三菱FX2N系列PLC实现大小球自动分拣展开,解决机械臂上下左右移动与抓取释放动作的编程控制问题,适合作为课程设计模板、答辩备查材料或自学梯形图编程的实操范例。压缩包内共1个docx文件,约251KB,内容完整覆盖硬件设计、I/O地址分配及接线图、元件选型、系统流程图、顺序功能图、梯形图与指令表、程序分析以及软硬调试等章节,并附有摘要、目录、设计感想与参考文献。读者可据此了解从控制要求分析到程序落地的完整设计链路,掌握机械臂动作时序编排与递进式分拣逻辑的编写思路。该资源已有643人学习下载,对需要快速搭建设计框架、参照格式撰写文档或排查程序逻辑的读者具有一定参考价值。

1. 大小球分拣为什么适合用FX2N顺序控制

一条传送带上混着大小球,机械臂停在左限、上限的原点,按下启动后要完成下降、吸球、上升、右行、下降、释放、上升、左行返回。这个动作链看着简单,真正难的是每一步的转换条件:没到上限不能右行,没吸住球不能上升,小球和大球的右行终点还不是同一个限位开关。三菱FX2N系列PLC适合这种小规模、强顺序、点位固定的分拣系统,输入端接启动/停止按钮、左限、上限、下限、小球右限、大球右限和接近开关,输出端接电磁阀和位置指示灯。课程设计里反直觉的一点是球径判别:小球能被吸盘压到下限,X2接通;大球顶住吸盘,X2断开。把X2和接近开关X6一起用,吸球完成后才能分流。适合复现机电课程设计、PLC编程入门和小型分拣台架的人。

2. FX2N硬件链路与I/O地址分配

2.1 主电路与PLC控制回路边界

这套系统的主电路仍然是电动机正反转拖动机械臂上下、左右移动,PLC处理的是控制回路:按钮、行程开关、接近开关进入X端,接触器线圈、电磁阀、指示灯挂在Y端。机械臂右行和左行、上行和下行之间要做互锁,常见做法是主电路用接触器常闭触点做电气互锁,程序里再用输出步互锁作双保险。三菱PLC输出有继电器型和晶体管型,如果Y1到Y4直接带交流接触器线圈,继电器输出寿命会被频繁动作吃掉,我一般会加中间继电器,再由中间继电器去带接触器;Y5吸球电磁阀如果是DC24V,线圈两端并一只续流二极管,减少断电反峰。

接近开关X6用来确认吸盘下方确实有球,下限开关X2用来区分球径。这里要特别注意:控制要求写的是“压着大球时X2断开,压着小球时X2接通”,所以X2的机械安装和触点类型必须围绕这个逻辑选,不能只看常开常闭哪个顺手。若选错,后面梯形图的大小球分支会整体反过来,表现为小球跑到大球右限、大球跑到小球右限,程序本身却没有任何语法错误。

2.2 I/O地址分配表与接线图落地

按原始设计要求,输入输出分配可以整理成下面这张表。接线前先把每个地址对应的物理器件写在标签上,再对应到PLC端子,能省掉大量“监控到X动作但找不到是哪个开关”的时间。

类型地址功能信号来源/负载备注
输入X0启动按钮绿色按钮常开按下置位启动步
输入X1左限位开关微动式行程开关原点条件之一
输入X2下限位开关压合/断开判别球径小球接通,大球断开
输入X3上限位开关微动式行程开关原点条件之一
输入X4小球右限位开关小球落点检测右行到位
输入X5大球右限位开关大球落点检测右行到位
输入X6接近开关霍尔式,检测有球吸球确认
输入X14停止开关停止按钮原始指令表未展开,复现时补
输出Y0原点显示指示灯左限且上限时亮
输出Y1下行接触器/中间继电器驱动下降
输出Y2上行接触器/中间继电器驱动上升
输出Y3右行接触器/中间继电器驱动右移
输出Y4左行接触器/中间继电器驱动左移
输出Y5吸球电磁阀线圈通电吸,断电放

为了在编程时少翻表格,可以先把软元件命名写成一份映射草稿,GX Developer 或 GX Works2 里建工程时按FX系列选型,再逐条核对X/Y地址。

// FX2N软元件命名草稿,注释仅用于对照,不占用程序行 START_BTN := X0 // 启动,常开 LS_LEFT := X1 // 左限 LS_LOWER := X2 // 下限,球径判别:小球ON,大球OFF LS_UPPER := X3 // 上限 LS_RIGHT_SMALL := X4 // 小球右限 LS_RIGHT_BIG := X5 // 大球右限 SENSOR_BALL := X6 // 接近开关,有球吸合 STOP_BTN := X14 // 停止 ORIGIN_LAMP := Y0 // 原点显示 DOWN_VALVE := Y1 // 下行 UP_VALVE := Y2 // 上行 RIGHT_VALVE := Y3 // 右行 LEFT_VALVE := Y4 // 左行 MAGNET_VALVE := Y5 // 吸球电磁阀

这段映射不是要写进PLC,而是用来检查“程序里的X2是不是接线端子上的X2”。参数上唯一要盯住的是X2和X6的配合:X2只说明机械臂压到了下限,X6才说明吸盘附近有球。启动后进入下降步,X2和X6同时满足才允许进入吸球步,这样比只看X2可靠。若接近开关是NPN输出,FX2N输入公共端接法要和传感器类型匹配,接反时X灯可能常亮或不亮。

2.3 元件选择与接线细节

按钮按使用场合选,绿色启动、红色停止,常见规格交流500V、持续电流5A,够课程设计台架用。行程开关有直动式、滚动式、微动式,直动式结构简单但触头容易烧蚀,滚动式价格高,台架小、动作轻时用微动式更合适。接近开关用霍尔式检测铁球,安装位置要避开机械臂金属干扰,感应面离球太远会漏检,太近又容易撞坏。

接触器选交流电磁式CJ12系列时,要按负载电流、控制电压和主回路电压核对,50Hz、380V场景下线圈电压别接错。熔断器选RT15型有填封闭管式,额定分断能力和最大额定电流按主回路选,别为了“保险”把熔体选得过小,否则接触器吸合瞬间就会误断。电磁阀从可靠性、经济性看,直动式适合这种小流量吸放动作,线圈断电释放铁球,程序中Y5的SET/RST时机直接决定球是吸住还是落下。

2.4 上电前静态检查

先断主电路,只给PLC控制电源,按下面顺序查一遍:

  1. 用万用表通断挡确认X0、X1、X3、X4、X5、X14在对应机械位置下能可靠通断。
  2. 手动压住吸盘模拟小球,确认X2接通;垫住模拟大球,确认X2断开。
  3. 遮挡霍尔接近开关,确认X6输入灯变化,传感器供电电压与FX2N输入匹配。
  4. 查Y0到Y5所带负载,电磁阀和中间继电器线圈并联续流二极管,极性不能反。
  5. 把PLC切到RUN前,先只监控输入,不让输出带机械负载,确认每个X点与物理动作一一对应。

提示:第一次上电不要直接吸球,先把电磁阀气管断开或把机械臂架空,用输出指示灯看Y5动作,确认程序时序无误后再接机械负载。

3. 顺序功能图到梯形图:机械臂分拣步进编程

3.1 状态步划分与转换条件

这套动作适合用三菱PLC的步进指令写,S0是初始等待,S20到S31把每个动作拆开。每个状态只负责一件事:输出某个动作、等待某个转换条件、置位下一步。原始程序里S20显示原点,S21下行,S22/S25开始按X2分流,S23/S26上行,S24/S27右行,S28下降释放,S29复位吸球并延时,S30上行,S31左行回原点。

动作输出转换条件下一步
S0上电等待X1且X3S20
S20原点显示Y0X0启动S21
S21下降Y1X2且X6S22
S21下降Y1非X2且X6S25
S22吸球,小球分支Y5T0到S23
S23上升Y2X3S24
S24右行至小球位Y3X4S28
S25吸球,大球分支Y5T0到S26
S26上升Y2X3S27
S27右行至大球位Y3X5S28
S28下降释放Y1X2S29
S29复位吸球并延时T1到S30
S30上升Y2X3S31
S31左行返回Y4X1S20

这张表里最容易写错的是S21的分支:X2接通对应小球,X2断开对应大球。原始程序分析文字里有一处把大小球说反了,按控制要求和梯形图应以X2接通为小球、断开为大球为准。复现时先照表检查,再照梯形图检查,别照着文字描述硬改。

3.2 初始化、下降与大小球分支

下面截取关键指令表,行号按原始表整理,注释是我加的,用于对照动作。M8002只在FX2N上电后的第一个扫描周期ON,用它置位S0;X1和X3同时满足说明机械臂在左限和上限,进入S20等待启动。

; 上电初始化与原点确认 0 LD M8002 1 SET S0 2 STL S0 3 LD X1 ; 左限 4 AND X3 ; 上限 5 SET S20 6 STL S20 7 OUT Y0 ; 原点显示 8 LD X0 ; 启动按钮 9 SET S21 ; 下降与吸球分流 10 STL S21 11 OUT Y1 ; 机械臂下行 12 LD X2 13 AND X6 14 SET S22 ; X2接通且吸到球,走小球分支 15 LDI X2 16 AND X6 17 SET S25 ; X2断开且吸到球,走大球分支

逻辑上,STL指令让每个S步有独立的母线,S21内OUT Y1只在下行步有效。转换条件X2与X6的关系要连起来看:X6表示有球,X2表示压到下限;小球能被压到下限,所以X2为ON,程序进入S22,后面右行到X4;大球顶住吸盘,X2为OFF,程序进入S25,后面右行到X5。参数上M8002不能换M8000,M8000上电后一直ON,会让S0反复置位,原点显示和启动步都会乱。

3.3 吸球延时、右行与释放回原点

吸球和释放都要给电磁阀一点保持时间,原始程序用T0和T1,各K10。FX2N里T0到T199是100ms定时器,K10就是1s;如果换成T200以后,时基会变,K10只有0.1s。下面片段展示小球分支的吸球、上升和右行,大球分支结构相同,只是右限从X4换成X5。

18 STL S22 19 SET Y5 ; 吸球电磁阀通电 20 OUT T0 K10 ; 吸球保持1s 21 LD T0 22 SET S23 24 STL S23 25 OUT Y2 ; 上升 26 LD X3 27 SET S24 28 STL S24 29 OUT Y3 ; 右行 30 LD X4 31 SET S28 ; 到小球右限 ; 释放与返回部分 46 STL S28 47 OUT Y1 ; 下降 48 LD X2 49 SET S29 50 STL S29 51 RST Y5 ; 断电释放铁球 52 OUT T1 K10 ; 释放后延时1s 54 LD T1 55 SET S30 56 STL S30 57 OUT Y2 ; 上升 58 LD X3 59 SET S31 60 STL S31 61 OUT Y4 ; 左行返回

S28到S31这段决定球能不能平稳放下。RST Y5之后电磁阀断电,铁球落下,T1延时1s再上升,避免吸盘还带剩磁或球还没完全离开。左行返回时,程序应等待X1左限接通,回到S20显示原点。原始指令表第62、63、64行出现“LD X1 / ANI X1 / SET S20”,从逻辑上X1与“非X1”不可能同时成立,复现时不要照抄,应改成“LD X1 / SET S20”;若需要停止后回原点,再把停止请求串进回原点条件。

3.4 停止按钮与回原点逻辑补充

X14停止开关在原始指令表里没有完整展开,但控制要求写得很明确:停止时机械臂必须已回到原点。比较稳的写法不是一按停止就切断所有输出,而是置位一个停止请求M10,让当前动作走完,回到左限X1、上限X3后复位M10并回到S20。示意逻辑如下:

; 停止请求锁存 LD X14 SET M10 ; 回原点后清除停止请求 LD M10 AND X1 AND X3 RST M10 SET S20

这段逻辑里X14建议按停止按钮的常闭或常开统一处理,程序里SET M10的触发沿最好只取一次,避免长按反复置位。M10不直接切Y输出,是为了防止机械臂停在中途、吸盘还吸着球。实际调试时可以把M10接到一个备用指示灯,按停止后看灯什么时候灭,就能判断回原点流程有没有走完。

4. 指令表逐段分析与软硬件联调排错

4.1 从M8002到S20的程序骨架

M8002置位S0后,S0步等X1和X3,这两个信号一个是左限,一个是上限。很多台架第一次上电原点灯不亮,不是程序错,而是机械臂停在中间,X1或X3没被压住。S20步输出Y0,再等X0启动,这里X0只置位S21,不直接驱动Y1,是为了让启动动作也纳入步进链,后续每一步都能被X1、X2、X3、X4、X5、X6约束。

STL步进指令的特点是:进入某个S步后,该步内的OUT才有效,上一步的输出会自动断开,不需要额外写互锁。但要注意RET指令的位置,所有STL步结束后要写RET,再写END。原始指令表最后有RET和END,复现时别漏。若漏RET,程序可能报语法错误,或者后续普通梯形图段不按预期扫描。

4.2 用GX Developer或GX Works2做软元件监控

三菱PLC编程教学里最实用的调试手段不是反复改程序,而是先监控软元件。把PLC切到监控模式,添加下面这些点位,按动作顺序观察哪个条件卡住。

监控窗口建议加入: X0, X1, X2, X3, X4, X5, X6, X14 Y0, Y1, Y2, Y3, Y4, Y5 S0, S20, S21, S22, S23, S24, S25, S26, S27, S28, S29, S30, S31 T0, T1 M10(如果补了停止请求)

监控时先手按启动X0,看S21是否置位;再看Y1是否输出,机械臂是否下行;压到下限后看X2和X6是否同时ON,S22或S25是否按预期置位。若X2状态和实际球径相反,不用改程序,先改行程开关触点或安装位置。若S22置位但Y5不吸,查Y5输出端子和电磁阀电源;若T0不走,查S22步是否被后续步意外置位打断。强制输出功能只建议在空载时用,带机械负载强制Y1到Y4很容易撞限位。

4.3 典型故障与排查表

现象可能原因排查点
上电原点灯Y0不亮X1或X3未接通,原点条件不满足监控X1、X3,手动压限位看变化
按启动无反应X0接线松动,S0未置位,PLC未RUN看X0输入灯,监控S0、S20
下降后不吸球X6未检测到球,接近开关距离不对看X6,调整霍尔开关位置
吸球后不进分支X2状态与球径相反小球应X2 ON,大球应X2 OFF
小球走到大球右限X4/X5接反,或X2判别反监控X4、X5撞块位置
右行到位不停行程开关常开常闭选错监控X4或X5,查撞块是否压住
释放后不上升T1未到,RST Y5后条件没转监控T1、S29、S30
停止后停在中途X14停止逻辑未写回原点补M10锁存和X1/X3复位
左行不回原点X1信号未到,回S20逻辑有误检查原始LD X1/ANI X1段

这张表里最值得提前做的是X2和X6。X2是机械压合信号,X6是传感器信号,两者都可能因为安装位置变化而漂移。调试时不要只看一次,连续放十个小球和十个大球,观察每次S22、S25是否稳定,必要时在吸球步前加一个短延时确认X6,避免机械振动造成瞬间误判。

4.4 空载、单步、联调的顺序

我一般按三步走:第一步空载,不接电磁阀气管,只让PLC输出指示灯和接触器动作,确认每个S步能按顺序走完;第二步单步,手动压X1、X3、X2、X4、X5、X6,逐个模拟传感器,看分支和回原点是否闭合;第三步带载,先放小球,再放大球,最后混放。带载时先调下限开关X2,再调右限X4和X5,最后调接近开关X6。若机械臂右行时撞到限位才停,说明右限开关撞块位置太靠后,或者程序里等待的X4/X5不是当前分支该等的位置。

5. 从单球分拣到节拍优化:状态机写法与验证技巧

5.1 用M寄存器和状态机替代大段STL

STL写顺序动作很直观,但步数一多,分支和停止逻辑会显得散。想继续优化,可以用M寄存器写状态机,每个状态只做三件事:输出、判断、转移。下面是一个下降和吸球段的状态机示意,M20表示下降状态,M21表示吸到小球,M25表示吸到大球。

; M状态机片段,每个状态独立转移 LD M20 ; 下降状态 OUT Y1 LD X2 AND X6 SET M21 ; 小球:X2 ON LDI X2 AND X6 SET M25 ; 大球:X2 OFF LD M21 SET Y5 OUT T0 K10 LD T0 SET M22 ; 进入小球上升 LD M25 SET Y5 OUT T1 K10 LD T1 SET M26 ; 进入大球上升

M状态机的好处是可以用普通触点、置位、复位指令组合,便于把停止请求M10串进每个转移条件,也方便在HMI或触摸屏上做状态显示。参数上T0、T1仍然按100ms时基算,K10为1s;如果改用10ms定时器,K100才是1s。状态机里要记住每次置位新状态时复位旧状态,否则两个状态同时ON,Y输出会打架。

5.2 节拍测量与互锁增强

验证节拍时,可以在启动步和回原点步各加一个计数器或数据寄存器,记录一个完整周期的时间。简单做法是用T2做周期计时,S21置位时RST T2,回S20时读T2当前值。若节拍偏慢,先看T0、T1这两个1s延时能不能压缩:吸球保持时间取决于电磁阀和球重,常常可以从K10降到K5,即0.5s;释放延时如果球能可靠落下,也可以缩短。但下限X2、上限X3、左限X1这些机械行程开关,不能为了快而绕过,它们仍然是安全互锁。

增强互锁时,把X6吸球确认串进每一步的转换条件,而不是只在吸球步检查,节拍会多几毫秒,但废品率更可控。

本文还有配套的精品资源,点击获取

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

STM32CubeMX生成STM32H7工程指南:供电、时钟、Cache与MPU避坑

简介:针对STM32H7系列开发的实际需求,这份49页的docx文档围绕STM32CubeMX配置流程,完整讲解了从项目初始化到常用外设部署的工程应用方法,能帮助减少配置项分散、外设初始化易出错等问题,适合使用STM32CubeMX进行STM32…

作者头像 李华
网站建设 2026/9/17 20:32:51

毕夏AI官网:课程论文写的是“作业”,不是“遗书”

毕夏AI官网 www.bixiaai.com 毕夏AI写作官网 www.bixiaai.com 毕夏官网 www.bixiaai.com 毕夏智能写作官网 www.bixiaai.com 说一个让很多大学生深夜破防的场景。 凌晨两点,你盯着Word文档,标题下面只有一行字:“一、引言”。光标在那…

作者头像 李华
网站建设 2026/9/17 20:32:33

GameDevMind 游戏开发数学基础实战指南:向量、矩阵、碰撞与插值全解析

GameDevMind 游戏开发数学基础实战指南:向量、矩阵、碰撞与插值全解析 【免费下载链接】GameDevMind 最全面的游戏开发技术图谱(Game Development Map)。帮助游戏开发者们在已知问题上节省时间,省出更多的精力投入到更有创造性的工作中去。 项目地址: …

作者头像 李华