ARTICLE DETAIL

资讯详情

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

基于PLC S7-1200博图V15的完整设计源文件制作全流程指南

基于PLC S7-1200博图V15的完整设计源文件制作全流程指南 每年到毕业设计季总能看到一批学生抱着同样的困惑来找我梯形图已经画得差不多了仿真也能跑起来但一份设计源文件整理得跟散装零件一样报告还是从百度文库拼出来的。问题出在哪里出在很多人把基于PLC 1200设计这件事理解成了把程序跑通就完事。实际上一套像样的S7-1200博图V15项目交付物是源文件、万字报告、讲解逻辑三位一体的每一部分都在向导师和评审传递同一个信息你真的会做工程而不是恰好调通了一段程序。这篇内容我就围绕基于PLC 1200设计博图V15这个命题把一套完整的设计源文件从立项、组态、编程、仿真到报告成稿的整个过程拆开讲。包括为什么选S7-1200和博图V15、I/O表为什么是整套设计的地基、OB/FC/FB/DB到底怎么分工、仿真调试时那些让人挠头的按钮没反应怎么排查以及万字报告的重点不是字数而是结构。不管你是正在做课程设计还是被毕设逼到墙角按这个思路走一遍都能交出一份拿得出手的完整方案。1. 为什么现在的PLC毕设大多绕不开S7-1200加博图V151.1 这个搭配到底解决了什么痛点西门子S7-1200是中小型PLC里的常青树它跟老一代S7-200 SMART最大的区别是组态和编程环境完全换了一套逻辑。200 SMART还在用Micro/WIN SMART而S7-1200正式进入了博途TIA Portal时代。博图V15一个软件把PLC程序、HMI画面、驱动器组态全部收在一个工程里这叫集成开发环境。对做毕业设计的学生来说最直接的好处是你不用在三个软件之间来回导来导去源文件里同时装着程序、画面、硬件组态导出一个.zap15压缩包别人打开就是整个项目。为什么绝大多数课设和毕设指定博图V15而不是V16、V17甚至最新的V21核心原因是资源匹配。V15是2017年底发布的版本经过这么多年的沉淀教学视频、参考程序、各种基于S7-1200的某某系统设计论文里的截图几乎都是V15的界面。实验室电脑的配置普遍不高V15对内存和CPU的要求相对友好安装时间也短。更重要的是很多学校的PLC课程大纲和实验指导书上面的版本号就写着V15。你拿着V17的界面去对照指导书操作光是菜单位置不一样就够你折腾半天。1.2 博图V15安装时的组件取舍博图V15安装的时候会让你勾选组件很多人图省事全选结果装了三小时还报错或者装完发现许可证不够用。我的建议是根据题目按需安装只做PLC程序设计勾选STEP 7 Professional要做HMI触摸屏画面加一个WinCCV15里叫WinCC Engineering要做纯电脑仿真加装S7-PLCSIM要用高级虚拟仿真比如配合PLCSIM Advanced做OPC UA测试单独装S7-PLCSIM Advanced V6.0需要提醒的是博图V15各组件之间存在版本耦合安装顺序最好是STEP 7基础组件优先之后再补WinCC和PLCSIM。如果你在安装过程中遇到未找到许可证的报错先别急着重装系统检查一下许可证管理器里是否存在冲突的旧版本授权拔掉U盾/加密狗之后重新启动授权服务大概率能解决。1.3 什么样的题目适合用S7-1200来做S7-1200适合的控制对象非常明确数字量为主的离散控制、带少量模拟量采集的过程控制、简单的运动控制、以及带触摸屏的人机交互。典型题目有十字路口红绿灯、8人抢答器、电机顺启逆停定时控制、冷库温度监控、大棚灌溉系统、皮带输送线分拣等。这些题目有一个共同点逻辑清晰、I/O点数不多一般不超过三四十个、有明确的时序或状态转换关系。哪怕题目看起来是基于PLC的冷库监控系统设计去掉冷库这个壳核心依然是温度采集加压缩机启停控制本质上跟大棚灌溉是同一种套路——传感器输入、比较判断、执行器输出。所以选题时不用慌别怕题目看着陌生。只要它满足传感器信号进PLCPLC输出控制执行机构这个基本框架S7-1200都能稳稳拿住。2. 动手写程序之前先把图纸和表折腾明白我见过太多人打开博图就开始拖梯形图拖到一半发现输入点不够用了或者硬件组态里选的CPU模块跟实际题目对不上又回头改。这个顺序是错的。PLC项目跟写代码一样最重要的设计文档不是程序本身而是程序前面的那一堆表和图纸。2.1 控制需求书一句话一件事地列控制需求书就是把你脑子里的控制逻辑变成白纸黑字。比如红绿灯题目你至少要列出系统上电后进入初始状态南北向绿灯亮、东西向红灯亮按下启动按钮后按预定时序切换南北绿灯30秒、黄灯5秒、红灯35秒东西向同步相反按下急停按钮所有输出复位蜂鸣器报警再次按下启动重新开始循环写需求书的过程本质上就是在逼你把程序的每一个分支都想清楚。这一步做得到位后面写梯形图只是翻译工作。很多学生程序改来改去就是因为需求书没写清楚逻辑边界模糊一会儿认为绿灯完了直接红灯一会儿又加个黄灯闪3次最后程序里堆满了临时拍脑袋的M继电器。2.2 I/O点表是整套设计的地基I/O点表在报告里可能只占一页表格但它是整个设计的命根子。点表的长这样地址符号名说明数据类型I0.0SB1_Start启动按钮BOOLI0.1SB2_Stop停止按钮BOOLI0.2SQ_Limit限位开关BOOLI0.3PT100_IN温度传感器信号PT100INTQ0.0KM_Forward正转接触器BOOLQ0.1KM_Reverse反转接触器BOOL做点表时最容易忽略的是模拟量通道。S7-1200的CPU本身就带模拟量输入1214C DC/DC/DC型号自带2路模拟量输入地址从IW64开始注意不同型号的起始地址可能不同以硬件组态里实际显示为准。很多毕设题目都涉及温度、湿度、压力的采集这一块必须在点表阶段就规划好不然后期引脚根本不够用。2.3 硬件组态时的几个细节坑S7-1200的CPU选型看着就几种实际应用时还是有几个容易踩的地方。第一CPU自带的I/O是固定的如果你需要扩展数字量或模拟量得在CPU左侧挂信号板SB在右侧挂信号模块SM。信号板SB的优点是直接嵌在CPU上不占导轨空间适合补一两个点比如SB 1231模拟量输入板。信号模块SM才是正经扩展一块SM 1231八路模拟量输入就能解决多点采集问题。第二组态时务必给PLC分配IP地址和名称。博图V15里双击CPU模块在PROFINET接口里设置IP和子网掩码。这里有个高频错误很多人把PLC的IP设成192.168.1.10电脑网卡却是自动获取结果在线访问根本找不到设备。做毕设时最好手动把电脑网卡IP设置成同一网段比如电脑192.168.1.1PLC 192.168.1.10子网掩码255.255.255.0网关不用填。第三硬件组态要和实际设备严格一致。如果实际PLC固件版本是4.4而组态里选了4.0下载的时候会报模块不存在或固件不兼容。解决办法是在组态里修改CPU固件版本或者先进行在线更新让博图识别真实版本。3. 博图V15里的程序架构从能跑进化到耐看程序能跑起来只能算及格能让导师一眼看出你有工程思维才算真正的高分。这套思维主要体现在程序的组织结构上——你用什么块、怎么分功能、怎么管理数据。3.1 OB、FB、FC、DB到底怎么分工博图V15的程序结构跟老式PLC最大的不同是它强制按块组织。主程序循环跑在OB1里另外还有OB100负责初始化、OB35负责定时中断循环中断。很多人写程序一股脑全堆在OB1里几十个网络往下摞能跑但谁看谁头疼。正确做法是OB1只做总指挥调用各个功能块不直接写复杂的控制逻辑FC函数Function用于没有保持性需求的计算和逻辑比如把按钮信号做去抖、把模拟量原始值换算成工程量FB功能块Function Block用于需要记忆的场合比如一个电机控制块它需要记住启动、停止、故障状态这些状态存在配套的背景数据块DB里全局DB用来存放跨块共享的数据比如系统启停标志、报警字、配方参数打个比方OB1是公司前台FC是外包团队接到活干完就走不留私人数据FB是正式员工每个员工配一个工位背景DB上次干到哪、下次接着干都记在工位上。你用这个框架去应对红绿灯、抢答器、冷库系统程序结构都会清晰很多。3.2 优化的块访问与经典访问怎么选博图V15新建DB时默认是优化的块访问。这个选项的意思是数据块的地址不是固定的系统自动分配好处是可以任意调整变量顺序而不影响地址坏处是很多老资料里的DB1.DBW0这种绝对地址直接失效很多学生照着资料操作半天找不到地址。毕设场景下我的建议是如果参考资料的写法是绝对地址比如DIW0、DBD4你可以在DB属性里取消勾选优化的块访问如果你全程用符号访问比如电机状态.运行中那优化访问反而更方便。关键是别混着用一边想着绝对地址一边用符号名很容易把变量对应关系搞乱。顺带说一句博图里改DB的访问方式有可能会影响程序其他部分所以最好在程序规模变大之前就确定方案中途变更会很痛苦。3.3 模拟量处理和PID的典型套路带模拟量的题目里最常写的两段程序是量程转换和PID控制。温度4~20mA信号进AI模块后原始值不是一个固定比例那么简单。你需要在程序里先做归一化再用缩放指令。博图V15里提供了NORM_X和SCALE_X指令。NORM_X把原始值比如0~27648归一化成0.0~1.0之间的浮点数SCALE_X再把这个浮点数映射到实际量程比如0~100度。别记公式直接拖这两个指令就行。但有一个坑NORM_X和SCALE_X的引脚类型需要匹配如果你用的是整型变量记得在中间加转换指令CONV不然编译会报数据类型不一致。PID控制的话博图V15的PID_Compact功能块还是挺好用的。初始化的时候需要填两个关键参数Input过程值和Setpoint设定值然后组态PID参数。如果你不知道PID参数怎么定先用自整定让系统自动跑一轮辨识。毕设答辩时对方问PID参数怎么整定的你答用PID_Compact自整定跑出来的然后手动优化了比例增益和积分时间这个回答已经足够专业了。3.4 符号命名和注释最容易被扣分的地方我当评审的时候最头疼的就是看X0Y1M3这种注释。很多学生觉得这是PLC圈的传统写法但博图V15完全支持中文符号名你完全可以把输出点命名为正转接触器反转接触器蜂鸣器。程序里每个网络Network的标题和注释也要写这个习惯在几百行的工程里看不出来但一旦程序超过一千行注释的重要性直接翻倍。写注释的核心规则是注释是给下一个看你程序的人看的八周后的你也是下一个。你调试的时候连续通宵改的逻辑一周后回看大概率一脸懵有注释至少能顺着思路找回来。4. 仿真和在线调试那些让初学者挠头的经典故障4.1 S7-PLCSIM的基本用法与局限博图V15自带的S7-PLCSIM可以虚拟一个S7-1200/1500控制器不需要真实硬件就能跑程序。用法很简单程序编译通过后点击启动仿真按钮选择加载PLC程序然后打开变量表监控。真正会用PLCSIM的人不只是看变量通断还会用它的仿真模式去模拟按钮按下、传感器触发。但PLCSIM有几个天然局限它虚拟的是CPU逻辑不能模拟真实的模拟量信号连续变化。你要测PID得手动在变量表里改过程值一步一个台阶完全体会不到实际传感器的波动。另外PLCSIM不支持所有通信功能比如某些PROFINET设备通信场景就模拟不了这时候需要更高级的工具。4.2 HMI仿真按钮没反应的排查链路博图HMI仿真按钮无反应是我见过频率最高的问题之一。现象描述通常是HMI画面运行起来了按钮点了像没点一样PLC侧也没有反应。多数人的第一反应是怀疑HMI组态错了其实大多数问题出在连接上。正确排查顺序是先确认PLC程序已经通过S7-PLCSIM下载并运行。HMI仿真运行时它连接的是仿真PLC如果PLCSIM没启动HMI就是连了个寂寞。再检查HMI设备组态里的运行系统设置找到仿真一栏确认勾选了允许仿真。很多默认设置没勾这个导致HMI在PC上运行时不接受任何外部访问。检查HMI变量是否连接到PLC变量。在HMI变量表里每个变量的连接路径要指向PLC对应地址。如果你用了内部变量比如内部Bool它跟PLC毫无关系按钮逻辑自然也过不去。如果以上都正常试试先停止HMI仿真再重新启动。博图的仿真连接偶尔会有假死状态重启往往能解决。4.3 在线访问搜不到CPU时的通用排查顺序接下来说更真实的情况你有实物PLCS7-1200用网线连上电脑打开博图的在线访问结果搜不到设备。这个问题的核心通常不在博图里而在网络链路。排查顺序我来列一遍按这个顺序来90%的问题都能解决看网卡。确认PG/PC接口设置里选的是PN/IE或者PROFINET不是选了别的网卡。看IP。打开Windows的更改适配器选项看看有线网卡的IP是否和PLC在同一网段。如果PLC是192.168.1.10电脑至少得是192.168.1.x。看防火墙。Windows防火墙经常拦截博图的在线访问PC上装了360之类的安全软件也可能拦截。调试阶段临时全部关闭找到设备后再开回来。看线缆。PLC直连电脑用网线就行现在的网卡一般自适应交叉不需要CROSS OVER线但如果遇到老网卡可能不支持自适应。重新搜索。博图在线访问里选好网卡后双击更新可访问的设备让它彻底扫一遍别盯着第一次扫描结果。如果还是搜不到可以把PLC断电重启再用博图可访问设备功能按MAC地址搜索。S7-1200最初是没有IP的时候可以用这种方式强制分配IP。4.4 PLCSIM Advanced想要更高级的仿真怎么选如果你的毕设涉及OPC UA通信比如通过OPC UA协议读取PLC、传感器、数控机床等设备的运行状态数据标准的S7-PLCSIM就不够了需要安装S7-PLCSIM Advanced V6.0。这个软件能在PC上创建虚拟以太网接口模拟出多个虚拟PLC并支持OPC UA服务器功能。PLCSIM Advanced和博图的连接方式是在软件里先创建一个虚拟实例启动后回到博图编程软件在下载对话框里把目标接口选成PLCSIM Advanced然后就能把程序下载到虚拟PLC里。之后你用任何支持OPC UA的客户端包括Process Simulate、KEPServer甚至自己写Python程序都能从这个虚拟PLC里读取数据。相比真实PLC这套方案成本为零很适合做通信类毕设验证。5. 万字报告的结构怎么把程序讲成一套完整方案5.1 报告目录与设计流程的对应关系万字报告这个要求吓退了很多人但我的看法是如果程序、点表、图纸都做扎实了报告其实是最容易的部分因为每一个章节你都有真实素材可写根本不用瞎编。万字报告的结构通常是这样的第一章 绪论背景与意义国内外研究现状第二章 系统总体方案设计控制需求分析、方案选型论证、系统架构框图第三章 硬件设计PLC选型、I/O点表、电气原理图、接线图第四章 软件设计程序流程图、块结构说明、核心程序解析、梯形图展示第五章 仿真与调试仿真过程、监控截图、问题与解决第六章 总结与展望成果总结、不足与改进第二章的方案选型论证是很多人容易敷衍的章节其实是体现思考深度的重点。你要写清楚为什么选PLC而不是单片机为什么选S7-1200而不选S7-200 SMART为什么用博图V15这些问题在答辩时十有八九会被问到报告里先写清楚答辩就不慌。5.2 从程序倒推图纸系统图、流程图、接线图报告的图纸不是单独的点缀它跟程序是映射关系。系统架构图最宏观画的是传感器-PLC-执行器-HMI这个整体链路用简单的方框和箭头表示。控制流程图对应程序功能比如红绿灯的时序状态图、冷库的压缩机启停决策流程图。I/O接线图表就是前面做点表时的扩展要画出PLC每个输入输出端子对应的外部器件。这三类图在博图V15里其实都能直接截取素材硬件组态编辑器里截PLC配置图程序编辑器里截梯形图变量表里导出I/O表。用自己的工程截图放进报告比去网上复制别人的图要可信得多。5.3 答辩时导师最爱问的几个点穿了这层报告的外衣答辩的核心还是考察你是不是真的做了。导师问的问题来来去去就是那么几个你这个PLC为什么选这个型号 答I/O点数、通信接口、性价比。PID参数怎么来的 答先用自整定再手动微调要说出大致的调整方向。如果温度传感器断线了会怎么样 答检查模拟量通道的断线诊断功能程序里做超量程报警。上下电瞬间会不会有误动作 答初始化组织块OB100里把所有输出复位考虑安全电路。这些问题都不是死记硬背能答好的但你只要真的按前面几节说的把需求书、点表、程序、调试过程都走了一遍你会发现答案都是现成的。6. 源文件交付与资料整理让你的设计能传三代6.1 工程文件夹的归档习惯一套能传三代的源文件交付包文件夹结构应该是清晰的。我自己的习惯是这样00_项目说明README写清楚用途、版本、环境要求01_工程源文件博图项目压缩成.zap15格式02_程序导出梯形图PDF、符号表Excel03_图纸电气原理图、接线图、流程图04_报告Word版和PDF版各一份05_参考资料手册、论文、数据手册很多学生交付的时候只有一个博图工程文件夹别人打开还要猜哪个是主文件体验很差。花十分钟整理一下观感完全不同。6.2 版本兼容与导出注意事项博图项目默认的工程文件格式不是跨版本通用的。V15建的项目用V16能打开会提示升级反过来不行。所以交付时最好提供归档格式。在博图V15里用项目菜单下的归档功能可以压缩成一个.zap15文件双击之后选择版本就能打开。归档前把工程里的临时仿真结果、缓存都清一下文件会小很多。另外建议从博图里导出符号表和变量表到Excel。这个操作在工具里可以完成导出的表格是通用的放到报告附录里非常加分。6.3 定制扩展的常见方向如果你做完红绿灯想升级一下或者导师说能不能加个通信功能这里有几个现成的扩展方向。一个是S7-1200与S7-200 SMART的PUT/GET通信。博图里做PUT/GET的伙伴通信需要在PLC组态里勾选允许PUT/GET通信访问然后在程序里调用PUT或GET块配置远程PLC的IP、数据区、长度。这个题目在知乎和百度知道上讨论非常多因为涉及两台PLC联动最接近实际产线场景。另一个是Modbus通信。S7-1200走Modbus RTU需要配CB1241或CM1241通信模块程序里用MB_COMM_LOAD加载端口参数再用MB_MASTER或MB_SLAVE做收发。走Modbus TCP的话直接用MB_CLIENT和MB_SERVER指令不需要额外硬件。这个方向适合那些需要跟仪表、变频器、传感器通信的题目。再一个是OPC UA。博图V15对S7-1200的OPC UA服务器支持已经相当成熟组态里启用OPC UA服务器设置好安全策略和用户名密码外部系统就能读取PLC里的变量。这个方向是智能制造类毕设的加分项也是毕设题目基于OPC UA的设备运行状态数据采集的核心内容。这三条路线你在项目主体做完之后任选一条加到报告里整体方案的含金量立刻不一样。最后再分享一点个人体会。做一套完整的S7-1200博图V15项目最忌讳的就是程序写完再补报告。我经手过的顺利项目几乎都是先写需求书再做点表然后边写程序边截图记录报告和程序同步推进。到后期你会发现程序里的每个注释、每个变量名都能直接变成报告里的文字。程序完稿的那一刻报告其实也写了六成。剩下就是花一天时间排版插图交上去之后你甚至会有一种这项目确实是我做的的底气。这种底气才是设计源文件、万字报告和讲解三件套真正值钱的地方。
返回列表