很多人问三菱PLC怎么入门问得多了我反而觉得这个问题比想象中复杂。説实话如果你现在打开电商平台搜三菱PLC学习套件跳出来的多半还是FX3U甚至更老的FX2N配上GX Developer或者那个只活在Win XP时代的FXGP/WIN光是装软件就能劝退一半人。我的建议很直接今天学三菱PLC别碰老古董直接从FX 5U搭配GX Works3开始。这篇文章我就用一套完整的FX 5U实战案例把入门路径、核心概念、编程步骤、调试技巧掰开揉碎讲给你保证你照着做就能把第一个程序跑起来。1. 入门第一课先选对平台再谈编程1.1 老软件FXGP/WIN的教训别让历史包袱拖慢你我在网上搜资料的时候看到一条热搜词三菱老式PLC——FX2编程软件 fxgpwin win7_8_10_xp.zip一下就把我带回了十几年前。当年学FX2N用的是FXGP/WIN那个软件界面是Windows 98时代的风格写梯形图全靠鼠标怼保存格式还是专有的连注释都没法好好导出来。更痛苦的是兼容性Win7、Win8、Win10系统上经常装上就打不开要么就是打开后一操作就闪退网上各种兼容性补丁满天飞折腾一下午程序还没写一行。这不是学PLC这是学修电脑。我见过太多新手被这种老掉牙的工具链劝退以为是自己智商有问题其实是时代变了。FX 5U这一代产品用GX Works3软件界面现代支持Win10/Win11能仿真、能在线监控、能写ST结构化文本编程体验完全是另一个量级。所以我不是说老PLC不能学而是说没必要用最难的路径入门。就好比学开车你非要从手摇把启动的老解放开始学那确实能练出本事但没必要。1.2 FX 5U硬件选型MR、MT、ES、ESS怎么选选FX 5U的时候第一个遇到的坑就是型号命名。最常见的是FX5U-32MR/ES和FX5U-32MT/ESS看起来差不多实际用起来差远了。先说中间的MR和MT这是输出类型。MR是继电器输出触点容量大可以直接驱动小接触器但响应速度慢寿命有限不适合高频动作。MT是晶体管输出响应速度快能输出脉冲信号控制步进电机和伺服但负载能力弱一般要配合中间继电器去带外部设备。简单说如果你想学习控制伺服、步进这类运动控制必须买MT如果只是控制灯、接触器、电磁阀这类开关量MR完全够用价格还便宜。再看结尾的ES和ESS。FX 5U全系都内置了以太网口这点比老款强太多了。而带S的型号比如ESS额外内置了RS-485通信口以后你要连变频器、连温控表、做Modbus通信直接用这个口就行。我建议预算允许就直接上带S的版本省得以后扩展通信模块多花钱还占位置。另外注意一点FX 5U本体扩展时直接往右侧安装扩展模块即可不需要很多老款的扩展电缆这是模块化设计的一个小优势。1.3 配套软件GX Works3安装与工程初体验GX Works3是三菱新一代的编程软件它同时支持FX 5U和iQ-R系列以后你往上进阶不用换软件。安装的时候有几个细节必须注意第一安装路径不要带中文某些系统中文路径会导致仿真功能打不开第二安装前最好关闭杀毒软件GX Works3运行时需要加载驱动杀毒软件拦一下就可能装出半残废的软件第三安装完成后检查一下是否有仿真功能如果没有单独装GX Works3的模拟器模块。建工程的流程是这样的打开GX Works3选择新建弹出对话框后选FX5U然后选CPU型号比如FX5U-32MT/ESS程序语言选梯形图确认后进入编程界面。如果你之前用过GX Works2会发现界面逻辑不太一样——左边是工程树中间是编辑区下面是输出窗口监控和诊断都从菜单里调。第一次打开别慌先点几遍在线菜单里的功能看看有哪些选项心里有个数。2. 学编程前必须搞懂的三件事2.1 软元件与地址X、Y、M、D、T、C到底怎么记三菱PLC的程序本质就是操作一堆软元件元件相当于继电器、寄存器这些硬件资源在软件中的映射。搞清楚这些东西程序才看得懂。X是输入继电器接按钮、开关、传感器信号地址是八进制的也就是说X0到X7之后是X10到X17没有X8、X9。这个坑几乎所有新手都踩过写程序时随手写个X8编译直接报错。Y是输出继电器的地址同样也是八进制用来控制接触器、电磁阀、指示灯这类执行元件。M是内部中间继电器相当于程序里的辅助开关不接外部线纯粹用来做逻辑。D是数据寄存器存数值的比如计数结果、模拟量读取值都是16位的两个相邻的D寄存器可以组合成32位数据用。T是定时器C是计数器这俩后面专门讲。我见过最快的入门方法就是把PLC想象成一个配电柜X就是柜子上的按钮Y就是柜子里的接触器线圈M就是中间继电器在柜里默默做逻辑转换D就是柜里的小黑板临时记个数。这样类比之后编程就不再是神秘的代码而是接线逻辑的软件化表达。2.2 扫描周期PLC为什么不会卡死很多人写PLC程序时有个困惑为什么输出总是比输入慢半拍为什么一个程序里我改了某个M的值下面的指令要过一会儿才生效这就是扫描周期在起作用。PLC不像电脑那样事件驱动它是循环扫描的每次从头到尾把用户程序全部执行一遍执行完再从头来周而复始。扫描一遍用的时间就叫扫描周期FX 5U默认状态下快的话一毫秒上下跟你的程序长短有关。理解扫描周期有个实际意义同一个扫描周期内你前面的指令改变了某个M触点状态后面的指令再读取这个M的时候读到的还是旧状态要下一个扫描周期才会更新。这就是为什么某些复杂逻辑会出现慢半拍的现象。初学者其实不用深究这个但至少要记住PLC程序不是事件触发的是一遍一遍跑的逻辑一定要围绕循环执行来写而不是围绕等某个事件发生来写。2.3 标签化与结构化FX 5U带来的新思路FX 5U和GX Works3带来一个和老款非常不一样的东西标签化编程。所谓标签就是给软元件起名字比如M0叫启动按钮记忆D100叫当前产量然后在程序里直接用名字编程。好处很明显程序的可读性大大提高写一个月之后再翻回来还能看懂自己当时干了啥。你还可以把一段重复功能做成FB功能块比如伺服回原点逻辑、称重读取逻辑封装一次到处调用。但我的建议是入门阶段还是先老老实实用软元件写也就是直接写X0、Y0、M0。原因有两个。第一工厂里存量设备的程序绝大多数是软元件风格的你要是只会看标签到现场看老程序会完全发懵。第二软元件写法的逻辑链路直观哪里接通哪里断开一目了然方便理解扫描和接线这些底层概念。标签化这扇门等你入了门再推开不迟。3. 第一个实战案例电机正反转带定时停止3.1 控制需求与I/O分配学编程最怕的就是纸上谈兵。我设计了一个典型的入门案例电机正反转控制附加一个定时自动停止功能。需求描述如下按下正转按钮电机正转按下反转按钮电机反转正转和反转不能同时接通否则相间短路烧接触器按下停止按钮电机停止电机的热继电器动作时无论正转反转都必须立即停止正转启动后默认运行5秒自动停止反转同理但也可以通过参数改时间。这个需求覆盖了自锁、互锁、定时器、急停保护这几个最核心的套路。先看I/O分配用表格列出来最清楚元件地址说明正转按钮SB1X0常开按下时接通反转按钮SB2X1常开按下时接通停止按钮SB3X2常闭按下时断开热继电器FRX3常闭过载时断开正转接触器KM1Y0驱动外部接触器线圈反转接触器KM2Y1驱动外部接触器线圈3.2 梯形图逐行拆解程序逻辑分成两个几乎对称的网络正转网络和反转网络。以正转为例拆解。第一行X0常开触点串X2常闭触点串X3常闭触点串Y1常闭触点最后接Y0线圈。这行逻辑的意思是按下正转按钮X0接通且停止按钮没被按下X2闭热继电器没动作X3闭且反转没在运行Y1常闭那么正转输出Y0得电。但这行只有按下时接通一松手Y0就断了不行。所以要在X0两端并联一个Y0的常开触点作为自锁保持。这样一旦按下过即使松开Y0也能通过自己的触点保持通电相当于锁住了启动状态。停止按钮X2一断开整个回路断电Y0失电自锁解除这就是最经典的起保停电路。反转网络同理只是互锁触点换成Y0常闭来防止正转时反转误动作。3.3 定时停止定时器数值怎么定接下来实现定时5秒自动停止。最直观的做法用Y0的常开触点去驱动一个定时器。FX 5U的定时器有两种用法一种是传统方式的OUT T0 K50一种是功能指令方式的TON。传统方式里T0是定时器编号K50是设定值默认单位是100毫秒所以K50就是50乘以0.1秒等于5秒。这个单位可以在CPU参数里改进去但新手建议先用默认值。定时器线圈得电后开始计时到达设定值时定时器触点动作。那怎么用定时器实现5秒后自动停止呢思路是这样把定时器T0的常闭触点串联到正转控制回路里去也就是说正转启动后T0开始计时5秒后T0常闭触点断开整个正转回路失电电机停止。这个思路延伸出来就能做出启动延迟停止正反转自动循环等一堆实用功能。3.4 仿真验证与在线监控程序写完了别急着往PLC里下载先用GX Works3的模拟仿真功能跑一遍。点仿真运行梯形图上会有一层灰色底纹输入条件可以通过调试菜单里的软元件测试功能强制置ON/OFF。我习惯的仿真顺序是先只强制X0为ON看Y0是否ON然后强制X0为OFF看Y0是否因为自锁继续保持ON再强制X2为ON模拟停止按钮断开看Y0是否OFF。这样一项一项测逻辑通顺了再上真机现场调试时间能缩到最短。仿真还有一个好处可以看到定时器的实时动作过程。在监控模式下把鼠标停在T0上当前值会一直跳动你能直观看到从K0涨到K50的过程对理解定时器的工作机制帮助巨大这比看任何教程都来得生动。4. 把这些指令吃透你就入门了4.1 位逻辑指令与自锁互锁套路案例里已经用到了LD取常开、LDI取常闭、AND串联常开、ANI串联常闭、OR并联常开这些最基础的位指令。这些指令构成了PLC编程的基本语法再复杂的程序拆解到最后都是这些元件的组合。真正有价值的是组合出来的套路。自锁是最常用的一招可以把瞬时信号变成持续状态比如按钮信号保持输出互锁则是安全的核心防止两个冲突输出同时导通比如正转和反转。还有延时启动、延时停止、脉冲触发这些都是固定格式。我的经验是把套路记熟比盲目背指令有用。你看到按下启动后5秒再动作这类需求第一时间就该想到定时器配合常开触点做延时这个反应要靠练出来。关于SET和RST这对指令多说一句。SET就是置位相当于把某个线圈锁住接通RST就是复位把它断开。用起来比自锁回路还要简单但要注意一点SET之后线圈不会自己断开除非有对应的RST指令所以用SET/RST一定要写清楚释放条件否则容易出现输出下不来的现场事故。新手阶段我对你们的建议是先用经典的起保停回路把自锁互锁的基本功练扎实再体验SET/RST的爽快之处。4.2 定时器与计数器时间与次数的表达定时器T和计数器C是PLC程序里最常用的软元件也是案例里已经用到过的重点。FX 5U的定时器类型比老款丰富了很多还有累计型定时器可以断电保持计时值这里不过度展开你只需要掌握OUT T和TON两种写法。传统OUT T的编程方式直观但如果你以后想写ST结构化文本就必须理解TON这种功能指令的写法因为它更接近高级语言的函数调用。计数器C的用法和定时器极其相似某个触点从OFF变ON一次计数器当前值加一到达设定值K之后计数器触点动作。和定时器的最大区别是计数器的单位是次数而不是时间。经典应用就是产量计数传送带上的光电传感器接到X4每个产品经过时X4接通一次假设每10个产品为一组那么用C0 K10计数计满10个就触发Y10输出同时用C0的触点给自己复位重新开始下一轮计数。这个逻辑在自动包装、灌装线上非常常见。4.3 数据传送、比较与运算指令入门阶段很多教材只讲开关量但到了FX 5U这个级别数据处理能力很强完全值得早点接触。MOV是传送指令作用是把一个数放到指定的D寄存器里比如MOV K100 D0就把100写入D0。CMP是比较指令两个数比大小结果反映在标志位上。加法ADDD、减法SUBD这些也都有。掌握了这些你就能做出温度超过80度打开风扇产量达到1000自动停机这类带条件的逻辑。举个例子模拟量通道读到温度值存放在D100里你事先用MOV指令把K80写到D102作为比较基准然后用CMP指令把D100和D102比较比较结果一旦满足大于就接通一个M点用这个M点去控制风扇接触器。这套思路虽然比纯开关量复杂一点但逻辑链路非常清晰也是今后做任何自动化项目都躲不开的技巧。4.4 ST语言要不要学先放一放FX 5U和GX Works3支持ST语言也就是结构化文本写法类似高级编程语言。很多新手一上来看到ST语言觉得很高端问我能不能直接用ST入门PLC。我的意见很直接第一阶段的入门最好别用ST。原因很简单PLC的核心思维是梯形图思维——并发、循环、顺序扫描这些用梯形图表达最直观。你在ST里写一个IF语句在梯形图里可能就是几个触点的串并联组合前者容易让你迷失在代码逻辑里后者让你看着硬件接线就能理解程序行为。那ST要不要学当然要但那是第二阶段的事。当你用梯形图做了十几个小项目对扫描周期、软元件、数据块这些概念有体感之后再用ST去写复杂的数学运算、配方管理、通信协议解析会事半功倍。到时候你会发现梯形图是肉体ST是灵魂两者结合才是FX 5U的正解。5. 新手踩坑实录与排查速查表5.1 连不上PLC八成是这几种原因新手最崩溃的时刻十有八九是写好了程序却连不上PLC。GX Works3连FX 5U有两种常见方式USB直连和以太网连接。USB直连时先在GX Works3的连接目标里选直接连接CPU型号选对你的CPU再点通信测试。如果提示失败检查USB驱动是否安装。FX 5U的USB口是Mini-B类型一定要用正规的数据线有些线只能充电不能传输数据这个坑我亲眼见过好几个。以太网连接更现代一些但要先设置IP地址。出厂时FX 5U的IP默认是192.168.3.250你把电脑的网卡改成192.168.3.x网段比如192.168.3.100子网掩码255.255.255.0然后把网线直连PLC再在GX Works3的连接目标里选择以太网方式填入PLC的IP地址通信测试一般就能通过。注意电脑防火墙一定要放行GX Works3否则软件发出去的报文被防火墙拦截你还在那怀疑IP配错了。5.2 程序上传被拦、CPU报ERR怎么办程序下载之后想再上传回来看看有时候会提示无法上传或者要求输入密码。这多半是下载时设置了PLC密码或者程序保护功能。新手测试阶段下载时注意看弹出的选项千万别勾选那些加密保护选项否则自己给自己找麻烦。真遇到上传被拦的情况在GX Works3的在线-用户认证/PLC安全性菜单里查找密码管理输入密码解除保护即可但密码真忘了就只能重新初始化PLC了初始化操作会清空PLC里的全部程序务必慎重。CPU面板上那盏ERR指示灯一亮很多新人就慌了。先别急着怀疑硬件坏了按这个顺序排查先把PLC切换到STOP状态然后在GX Works3里点在线-诊断-PLC诊断诊断结果会告诉你具体的错误信息比如指令执行出错软元件范围溢出之类的。绝大多数ERR都是程序编写时的小毛病比如定时器编号冲突、数据寄存器访问越界修改程序后重新下载就恢复了。只有诊断结果为硬件错误时才需要考虑送修。5.3 现场调试的几条保命原则最后分享几条我多年调试总结下来的实践经验每一条都是用代价换来的。第一紧急停止回路永远用硬接线不要依赖PLC程序。急停按钮要直接串联在接触器主回路或者控制回路里按下时物理切断电源。PLC程序600毫秒的扫描周期紧急情况下你等不起这个时间。第二修改程序之后先检查I/O分配表确认没有地址冲突再下载。下载时建议把CPU切到STOP再下载虽然FX 5U支持在线写入但那是对微调场景的大范围改动时在线写入很容易造成逻辑混乱。第三现场带电调试时养成一个好习惯拨到STOP再插拔通信线避免瞬间的电涌干扰到PLC内部电路。第四程序里所有输出线圈尽量只在梯形图里出现一次不要多个地方驱动同一个Y点否则不仅逻辑难查有些PLC还会直接报错。结尾最后说点掏心窝的话从FXGP/WIN那个只能活在Win XP时代的软件一路走过来再看到今天GX Works3配合FX 5U的编程体验我是真的发自内心觉得现在的学习者条件好太多了。有人可能觉得我说的型号选型、指令套路这些太基础但基础恰恰是最重要的。你把我上面提到的项目案例从仿真到真机完整走一遍把自锁互锁、定时器、计数器这些套路练扎实再去学模拟量、通信、伺服定位都会顺很多。学PLC不存在天赋碾压就是重复、做案例、踩坑、总结不断循环。希望这篇文字能帮你少走一点我当年走过的弯路。