说实话前两年AI技术刚火起来那阵我是真没当回事。干了十年PLC天天跟接触器、继电器、扫描周期、梯形图打交道总觉得AI写网页、写Python跟我有什么关系直到上个月接了个项目三十多个电动阀门的启停逻辑要写复制粘贴改地址改了整整两天整个人快疯了。抱着试试看的心态我把IO表和设备需求整理成一段话丢给AI它还真给我生成了一套能跑的框架代码。那一刻我承认以前是我格局小了。这篇文章想把最近半年用AI辅助写PLC程序的真实经验写透哪些场景能放心用、哪些打死别碰、提示词怎么组织、AI生成的代码要改哪些地方、以及我踩过的那些坑。不管你是刚入行的PLC新人还是跟我一样摸爬滚打多年的老师傅只要工作里用到三菱、西门子、汇川、Codesys这些环境应该都能从里面捞点干货。1. 干了十年PLC我为什么一直不用AI现在又为什么用了1.1 过去十年我拒绝AI的三个理由先说第一个理由安全。PLC程序员写的每一行最终都要去控制电机、阀门、气缸这些真家伙。写错一个地址轻则设备不动重则撞机、烧电机、伤到人。干这行时间越长胆子越小本能地排斥一切不靠谱的东西。而AI最大的毛病就是用非常笃定的语气给你一个错的答案这跟PLC行业追求确定性、因果可回溯的基调完全是反着来的。第二个理由是工具链。互联网程序员天天用GitHub、IDE插件、AI辅助工具而我们PLC工程师面对的是一堆封闭的工控软件三菱GX Works、西门子博途TIA、Codesys、信捷/汇川各有各的IDE。这些软件钻研的是协议、组态、硬件树跟AI编程、插件生态基本绝缘。实事求是讲我总不能一边写着梯形图一边切到浏览器里问AI吧那体验太割裂了。第三个理由是信任成本。我见过太多AI生成的看起来很专业的代码注释齐全、变量命名规范但仔细一查要么是调用了不存在的指令要么是把三菱的软元件编号写成了西门子的地址风格。让这种错误百出的助理给我写设备控制程序等于让一个考了满分但不会开机床的毕业生去操机风险没人担得起。1.2 改变我态度的那个项目30个电动阀门和两天复制粘贴转折点是一个水处理项目。工艺要求很简单30套电动阀门每套都是开到位反馈、关到位反馈、自动命令、手动命令、运行超时报警这套逻辑唯一的区别是IO地址不一样。干过这行的都知道这类活不复杂但特别耗人。我按老办法办事写好一套功能块然后CtrlC、CtrlV改地址核对注释一遍遍看有没有漏改的。三十套改下来头晕眼花脑子和眼睛都是木的。那天实在熬不住我决定试试AI。把一套阀门的IO表和控制要求写成一段话贴给AI要求它用ST语言生成一个功能块模板。十几秒后它给出来一段代码结构清晰、注释规范核心的开到位才能开阀、关到位才能关阀、开阀时禁止关阀、超时报警这些逻辑全都有就是地址需要我换一下。那一刻给我的冲击不是它也会写PLC而是这种复制粘贴的重复劳动终于可以扔给机器了。这让我想到一个关键点AI真正擅长的是模式高度重复的工作而PLC项目里这种活其实海量存在。一套产线上几十台同样的电机、几十套同样的阀组、几十个同样的报警回路以前全靠人工复制现在AI可以替你起稿人工只需要做核对。1.3 我对AI的定位一个有知识、没常识的助理工程师说白了AI在我眼里就像一个刚毕业的助理工程师指令语法背得滚瓜烂熟经典电路逻辑张口就来但它对你现场的工艺、设备、安全要求一无所知。你交代得越清楚它做得越好你交代得含糊它真敢给你编一个看着像样、实际不能用的方案。所以用AI的核心问题不是怎么让AI写程序而是你怎么把脑子里那些工艺逻辑翻译成它能理解的输入。这个翻译能力恰恰是十年工控经验里最值钱的部分。以前我们找年轻工程师干活也是先讲需求、画流程图、定IO表然后人家才能写程序。现在只不过把给助理讲需求变成了给AI写提示词而已。2. AI写PLC程序哪些能放心用哪些打死别碰2.1 我实测下来AI真正好用的方向清单先说结论AI不是万能的但在下面这几个方向它确实能帮你省下大量时间。第一通用功能块的骨架。电机启停、阀门控制、报警器、星三角降压启动、正反转回路这些是PLC课程里的经典内容也是工厂里最常用的标准逻辑。AI对这类电路非常熟悉你只要给它IO表和控制要求它生成的FB/FC骨架基本靠谱你只需要替换软元件地址和调整参数。第二通用算法的ST代码。平均值滤波、滑动滤波、查表插值、校验和计算、配方数据校验之类的数学逻辑AI非常擅长。这类代码和具体工艺解耦纯粹是算法层面的东西AI写出来几乎可以无修改使用。我最近让AI写了一个滑动平均滤波函数块它连数组越界保护都考虑到了比我自己写的还严谨。第三注释和交接文档。老设备程序没注释或者前任工程师跑路了留下一堆没文档的梯形图这种活是最痛苦的。我把代码片段贴给AI让它生成结构化注释效率比人肉看代码快几倍。它还能顺手帮你整理IO表、生成设备交接清单对维护存量设备特别有用。第四跨品牌程序翻译。把三菱的程序翻译成西门子风格或者把西门子的程序给Codesys用AI能给出一个初稿。但注意这里必须强调是初稿地址映射、定时器用法、指令差异都需要人工逐句核对。AI在翻译时的最大问题是用目标语言的语法写源语言的逻辑看起来像但运行起来总差点意思。第五逻辑隐患检查。把一段程序贴给AI让它找隐患它常常能指出一些你容易忽略的问题比如正反转没有互锁、断电保持遗漏、同一线圈重复输出、上升沿脉冲在循环扫描中的竞争风险。这不是说AI比人聪明而是它不会累能一遍遍把逻辑过一遍。第六学习和毕设参考。抢答器控制、星三角降压启动、电机正反转、十字路口红绿灯这些PLC课程设计和毕业设计经典题目AI能给出一套完整的梯形图思路、IO分配方案和ST代码框架。对初学者来说相当于请了个24小时在线的私教关键看你会不会用它。2.2 打死也不能让AI碰的雷区有放心用的方向就一定有不能碰的地方。我给自己划了几条红线供大家参考。首先是安全回路。急停、双手启动、安全光栅、安全门互锁这些和人的安全直接相关的逻辑绝对不能交给AI连让它给个建议我都尽量避免。AI不理解安全标准和现场风险它只会按通用套路来而安全逻辑最重要的恰恰是特殊场景下的冗余、失效保护这些反直觉设计。其次是伺服和变频器的关键参数。脉冲当量、电子齿轮比、加减速时间、转矩限制、零速保持这些参数取决于你现场的机械结构、负载特性、减速比AI完全不知道你的设备和工况。它给的参数顶多是个正常范围直接用可能让设备抖动、丢步、过载甚至撞机。第三是现场调试判断。传感器有没有坏、气缸有没有到位、电机啸叫是因为共振还是因为参数不对这些需要手、眼、耳在现场综合判断的活AI没有感官只能猜。你要是真听它的指不定把好设备调成坏设备。第四是通讯和硬件底层细节。Profinet从站配置的具体路径、Modbus寄存器映射表里的地址换算、PLC网口的MAC地址和端口的读取方法、西门子AMS NetID和端口号的设置、博途与第三方模拟屏的兼容性问题……这类高度依赖具体版本、固件版本、硬件型号的点击路径式问题AI的回答经常是半对半错或者拿一个看起来合理但实际不存在的菜单路径糊弄你。第五也是最隐蔽的一类工艺性时序。某一步必须先等真空到位才能关阀某一段必须先等气缸收回才能启动输送带这些工艺细节AI全然不知。如果这些逻辑交给AI自由发挥它写出来的时序在纸面上完全通顺到了现场就会出现两个动作同时执行、互锁失效之类的问题。2.3 我给自己定的三条铁律一是AI生成的代码每一行我都必须能解释。解释不了的不管它看着多专业一律不用因为到了现场出问题你连排查方向都没有。二是凡是和人的安全沾边的逻辑一律自己手写AI只能事后平行检查。比如我写的急停回路我会让AI看看有没有遗漏但绝不让AI写第一版。三是地址、变量名、注释全部人工复核一遍再进工程。地址是PLC程序的命门AI容易混淆不同品牌的软元件编号规则这个不核清楚轻则变量冲突重则把A工艺的数据写到B工艺的地址里。这三条铁律的核心其实就是一句话AI翻车不可怕可怕的是你发现不了它翻车。只要把校验这一步做到位AI就能从风险源变成加速器。3. 实操让AI替我写一套正反转星三角降压启动程序3.1 为什么选这个例子以及提示词模板怎么用正反转星三角降压启动是PLC教学里最经典的训练题也是工厂里最常见的电机控制方案。选这个例子来演示是因为它涵盖了定时器、互锁、主电路切换、急停处理这些PLC编程的核心要素足够说明AI提示词该怎么组织。我当时用的提示词模板可以照抄我用的PLC是三菱FX5U编程软件是GX Works3语言用ST。 硬件IO如下 输入正转启动按钮X0反转启动按钮X1停止按钮X2热继电器常闭触点X3。 输出正转接触器Y10反转接触器Y11主接触器Y12星形接触器Y13三角形接触器Y14。 控制要求 1. 按X0正转接触器和星形接触器吸合电机星形启动延时5秒后切换为三角形运行。 2. 按X1反转接触器和星形接触器吸合延时5秒后切换为三角形运行。 3. 正转运行中按X1无效反转运行中按X0无效正反转之间必须有互锁。 4. 停止按钮X2或热继电器X3断开时所有输出复位。 5. 不要使用M50到M80之间的中间继电器地址该区间已被占用。 6. 输出三段式变量声明、逻辑体、注释。这里面每一条都不是废话。品牌和型号决定指令集AI看到FX5U就会用三菱的ST语法而不是西门子风格IO表让AI知道你的接线方式热继电器常闭触点正常为1断开发0这是安全信号互锁、停止、热保护是控制要求的核心缺了AI就会默认写成最简单能转的逻辑。特别强调不要用M50-M80是因为我上一个项目已经有程序占用了那个区间AI如果随手用了编译不报错但运行会乱掉。3.2 AI生成的ST代码和我改动的地方以正转这一路为例AI当时给出的逻辑大致是这样我用注释标出了改动点// 变量声明省略Y输出定义部分 bStartFwd : BOOL; // X0映射 bStop : BOOL; // X2映射 bThermoOK : BOOL; // X3映射常闭触点正常TRUE bFwdOn : BOOL; // 正转运行状态 bRunStar : BOOL; // 星形运行标志 tStarDelay : TON; // 星三角切换延时5s // 逻辑体 bStartFwd : X0; bStop : X2; bThermoOK : X3; // 正转启动禁止条件停止、热保护、正在反转 IF bStartFwd AND bStop FALSE AND bThermoOK AND NOT bFwdRev THEN bFwdOn : TRUE; END_IF; // 停止或热保护触发复位 IF bStop OR NOT bThermoOK THEN bFwdOn : FALSE; bRunStar : FALSE; END_IF; // 星形启动延时5秒后切角形 tStarDelay(IN : bFwdOn, PT : T#5S); IF tStarDelay.Q THEN bRunStar : FALSE; ELSE IF bFwdOn THEN bRunStar : TRUE; END_IF; END_IF; // 输出互锁保证正反转不同时吸合 Y10 : bFwdOn AND NOT Y11; // 正转接触器 Y12 : bFwdOn; // 主接触器 Y13 : bRunStar AND NOT Y14; // 星形接触器 Y14 : bFwdOn AND NOT bRunStar AND NOT Y13; // 三角形接触器乍一看逻辑是对的但我亲手改了几个地方。第一AI把延时功能块直接嵌在ST里用TON时它忽略了定时器复位条件我加了一行逻辑让bRunStar在停止时强制复位。第二AI输出的变量声明里没有把Y13和Y14的互锁做到位只写了NOT Y14或NOT Y13我在输出端又补了一层互锁防止星形和三角形接触器同时吸合这是主电路短路级别的隐患。第三AI默认延时5秒是写死的T#5S我改成用触摸屏可以调的配方值不然每次改时间都要下载程序太麻烦。第四也是最重要的我把AI代码里用到的中间变量地址全换到了M100以上避开了它不知道的那些占用区间。3.3 从AI初稿到现场运行我的五步落地流程拿到AI代码我并不会直接下载进PLC。有一套固定的流程每一步都有它的道理。第一步静态检查。对着IO表逐条核对地址X0到X3、Y10到Y14一个都不能错同时看注释和变量名是否对得上防止AI指东打西。第二步仿真验证。把代码导入三菱GX Works3用内置仿真器跑一遍观察正转启动、星形切角形、反转互锁、急停复位这几组时序。仿真最大的价值在于把逻辑问题暴露在办公室而不是现场。这一步也是我判断要不要回去让AI改的分水岭。第三步现场空载点动。电机不接只给接触器线圈通电听接触器吸合的声音看动作顺序。这一步是为了确认输出回路的接线和程序里写的逻辑一致防止出现程序说Y12吸合实际吸合的是Y14这种接线错误。第四步接小功率电机试运行。用小电机带负载观察星三角切换瞬间的机械冲击、切换延时是否合适顺带测一下热继电器的整定值能不能正常跳闸。第五步带真实负载稳定运行。进了这一步AI代码里的框架已经完全变成你验证过的程序了后面如果还要调调的是工艺参数而不是逻辑结构。这一套流程下来AI的产出只是让第一步之前的生成过程快了很多剩下的每一步都是靠经验在兜底。AI能替你写初稿但写不了你在现场那几十年的手感。3.4 提示词工程在PLC场景下的四个进阶技巧第一个技巧把工艺说明书直接贴进提示词不要凭记忆描述。说明书里的动作条件、时间参数、安全要求是经过设计院和工艺部门确认的比你脑子里的印象准确得多。AI处理文本的能力很强给它越完整的需求文档它写出来的代码越贴合现场。第二个技巧先让它写伪代码或流程描述确认逻辑后再要ST代码。不要一上来就要最终代码。让AI先用文字描述按下X0后做什么、延时多久、哪些条件禁止执行你看一遍文字逻辑有没有问题再让它翻译成代码。这一步能挡掉一大半逻辑方向错了的问题。第三个技巧要求它输出三段式——变量声明、逻辑体、注释。这样生成的结果可以直接复制进GX Works3、博途或者Codesys的工程里变量不用重命名注释不用补写落到项目里就是能用的东西。第四个技巧一个问题不要试图一次性解决多轮追问效果更好。比如先生成主逻辑然后追加一句加一个限制第二次启动必须在上次停止后30秒才能执行AI会基于前一轮的上下文做增量修改比重新生成整个程序稳定得多。4. 我踩过的AI翻车现场和排查实录4.1 翻车一AI信心满满地发明了一条不存在的指令第一次用AI写三菱FX3U的ST程序时它给了一个类似ZRST的批量复位指令我印象里FX3U没有这个用法编译果然直接报错。我把报错截图发给它它先说这个指令应该存在然后又给出一个看起来很像、但依然不存在的替代方案。好在我没继续纠缠翻出三菱官方指令手册按手册写法改了才算过。这个坑的本质是AI的语言模型在猜指令它根据见过的文本模式推断这里应该有一个什么功能的指令猜错了也无所谓反正不负责。所以遇到编译报错别跟AI吵架把官方手册的指令清单直接丢给它让它照着清单来才靠谱。4.2 翻车二地址张冠李戴差点把A工艺写成B工艺提示词里我给了D100到D120作为配方数据区AI写出来的代码在使用时把数据写进了D200。如果我没有在下发前对照变量表核一遍现场就会出现设置A工艺参数时实际上改的是B工艺参数这种极难排查的软故障。地址是PLC程序的命门。三菱的D区、M区西门子的DB块、M区不同品牌、不同系列的软元件编号规则都不一样AI大模型很容易把风格混着用。我现在每让AI生成一段代码都会让它额外输出一份变量引用清单然后拿这份清单和我自己整理的IO表、数据区分配表逐行比对。这个步骤非常花时间但它是把AI从玩具变成工具的关键门槛。4.3 翻车三不懂扫描周期把整个程序卡死了这是我最深的一个坑。AI在ST循环里写了一个类似等待到位后再执行下一步的逻辑实现方式是循环里做延时等待。在PC平台上这种写法没问题但在PLC里循环体内阻塞等待会让整个扫描周期卡住后面的输出刷新全停程序直接跑飞。AI默认你在写一个CPU上的顺序程序而PLC是循环扫描的读输入、执行逻辑、写输出一遍遍扫扫描周期以毫秒计。在逻辑体里做阻塞等待相当于把整个控制器摁住不动。解决的办法是提示词里明确加一句PLC是循环扫描的不要在循环体内使用阻塞等待延时一律用定时器指令同时自己在走查代码时看到循环延时的组合就要立刻警觉。4.4 翻车四通讯配置类问题十个里九个是半对半错之前遇到过一个工控现场配置的需求牵扯到读取PLC网口MAC地址、设置端口号、AMSNetID这类底层通讯细节。我一开始顺手问AI它回答得头头是道给的操作路径和参数说明一看就很有道理但照着一步步做就是不对最后还得去官方手册和工控论坛翻出实际案例才解决。这类问题基本可以定性AI适合做思路顾问不适合做操作手册。你问它这个功能大方向怎么做它说的方向一般没问题但具体到这个型号在哪个菜单里、端口号是几位、超时时间怎么设它有很高的概率给过时信息或者编造信息。尤其涉及具体版本、固件差异、不同品牌混搭比如ABB变频器配合西门子PLC的场景AI的答案只能作为排查方向的参考绝不能作为操作依据。4.5 我的排查套路速查表症状最快的排查路径要不要问AI备注编译报错贴原始报错给AI让它给修改建议可以但以官方手册为准AI容易坚持错误时序不对自己画时序图把时序描述贴给AI对照可以让它指出逻辑冲突点地址引用错误让AI输出变量引用清单人工逐行比对别完全靠AI地址是命门必须人核程序跑飞、动作卡死先查扫描周期、循环内延时、定时器复位AI能指方向现场定位还得靠自己通讯配置失败直接查官方手册或论坛案例只取思路不取路径版本差异太大4.6 真话AI不是替你干活而是逼你把需求想清楚用AI写了半年程序之后我最大的体会反而不是代码生成速度而是提示词这件事本身的价值。每次让AI写程序我都要先把工艺要求、IO表、安全条件、互锁关系一条条整理出来。这个过程其实就是把以前脑子里乱糟糟的东西变成一份清晰的需求文档。以前给新人交接的时候也有这个需求但总嫌麻烦能省则省。现在为了给AI喂得好我反而养成了把需求写清楚的职业习惯。很多现场的疑难杂症追根溯源都是需求没想清楚。老工程师习惯了边写边改但AI没法替你边写边改你只能先把需求理顺了再让它动笔。从这个角度看AI是一个足够挑剔的审核员逼着你把脑子里的工艺逻辑条理化这比它替你写的那几行代码值钱多了。5. 给同样想用AI写PLC程序的你几句实在话5.1 先学会校验再依赖AI检验能力的本质是你对工艺的理解、对安全风险的敬畏、对现场设备的熟悉程度。这些东西是AI没有的也是AI生成的代码最需要的。你不能因为AI写得快就把校验这一步跳了。AI是加速器不是方向盘方向永远得自己把握。5.2 注意公司数据的保密底线这是很多人用AI编程时忽略的一条。工厂的工艺参数、配方数据、设备控制逻辑都是公司花了大量时间调试出来的资产直接丢到公共模型上去等于把这些家底交给别人。我现在处理敏感代码时会先做脱敏处理把变量名统一改成a1、a2这类无意义编号把注释删掉只保留逻辑结构。有些保密要求高的项目我会在本地部署一个小规模模型专门用来处理脱敏后的代码让数据不出内网。5.3 把AI写程序变成团队规范而不是个人爱好一个人偷偷用AI效率提升是有限的把AI写程序纳入团队流程才是规模化收益。我们团队现在定了一条规矩AI生成的代码只能作为初稿必须经过双人复核和仿真验证才能进入版本库。这条规矩看起来麻烦实际上帮我们挡掉了不少低级错误。日常交接文档里也会标注哪段逻辑是AI生成的哪段是人工审核过的这样后续排查问题能有更多的上下文。这个思路其实是向软件行业的CodeReview学的只是PLC领域要严格得多。毕竟网页代码出了问题刷新一下就行PLC程序出了问题可能是一台设备趴窝、一批工件报废甚至是一场安全事故。5.4 给新人和学生的建议先手写再问AI如果你是刚接触PLC编程的学生或新人我强烈建议先自己手写一遍哪怕是写得又丑又长也要先写完再去问AI。因为地址映射、互锁逻辑、扫描周期这些基本功不亲手写一遍根本形成不了直觉。你让AI写一百遍星三角你也不会真正理解为什么星形接触器先吸合、为什么切换前要有一小段释放时间。只有在你已经有思路、但卡在某个细节的时候去问AI它才真正成为你的老师而不是你的替身。别以为有AI就能跳过学习过程。去面试的时候面试官问一句为什么这里要加互锁你不能说AI告诉我的这只会让面试官更相信你简历里那行熟练使用TIA Portal是假的。5.5 我最想分享的一件事最后分享一段个人最近的小实践。有个老项目要加一套抢答器PLC控制系统作为企业培训展示设备核心就是检测哪个按钮先按下、锁定该通道、其余的不能响应。这种逻辑很经典但我手头堆满了其他活。我把需求丢给AI它先生成了一套梯形图思路我确认后又让它转成ST代码前后不到半小时初稿就出来了剩下的时间全部花在仿真验证、装卸栽方、接按钮线这些“真正的工作”上。半年用下来我现在的习惯是所有重复性、模板化的PLC程序先让AI起稿所有跟安全、工艺、关键参数相关的部分我自己来。AI负责把我从大量低价值的复制粘贴中解放出来我负责把多出来的精力投入到现场验证和工艺优化上。这个分工模式大概就是我接下来几年在工控行业里最舒服的干活方式。
企业数字化 ERP 产品动态
相关推荐
Atlas 300V 24G部署YOLOv5:推理卡上的模型转换与优化实践 我最早接触Atlas 300V 24G这块卡,是因为一个24小时不间断的视频检测项目。当时手里有几路720P的摄像头流,要做实时的行人检测,机器上插着两片消费级显卡,功耗和散热都是问题。有同行推荐试试昇腾的推理卡,我就借了一块… · 2026/9/25 10:36:50
国产AI芯片推理与边端部署全解析:品牌盘点与实战指南 这两年只要聊到 AI 落地,绕不开的话题就是算力。但大家被英伟达刷屏刷得太多,张口闭口都是 H100、A100,很少有人认真掰扯过:在国产芯片这边,到底有哪些品牌真的在干这行,哪些能买到、能上手,哪些… · 2026/9/25 10:36:44
OCLP-Mod独家功能详解:全界面中文汉化、KDK/MetalLib下载加速与更多实用特性 OCLP-Mod独家功能详解:全界面中文汉化、KDK/MetalLib下载加速与更多实用特性 【免费下载链接】OCLP-Mod A mod version for OCLP,with more interesting features. 项目地址: https://gitcode.com/gh_mirrors/oc/OCLP-Mod
OCLP-Mod 是一个基于 OpenCore Lega… · 2026/9/25 10:36:38
I2C总线调试全攻略:从万用表到示波器,彻底解决ACK丢失问题 1. 从一根“不听话”的I2C总线说起调试嵌入式系统时,最让人头疼的场景之一,莫过于代码逻辑看起来天衣无缝,但传感器就是没反应。你翻遍数据手册,时序参数算了又算,上拉电阻也按推荐值焊了,可SDA和SCL两条线… · 2026/9/25 11:04:51
AI苹果育苗智能分选移栽机器人 QT信创完整工程 # AI苹果育苗智能分选移栽机器人 QT信创完整工程 适配统信UOS、银河麒麟Qt5.12/5.15,针对苹果工厂化育苗开发;AI视觉识别**实生砧/八棱海棠/M9T337矮化砧、嫁接愈合度、苗木分级、花叶病/锈果病、缺苗弱苗**;依据国标苹果苗木壮苗标准自动分级筛选,机械臂柔性抓取移栽,土壤… · 2026/9/25 11:04:51
高速数字电路仿真设计与测试实战:从信号完整性到量产判断 最近几年,高速数字电路设计已经很少再有“画出来就能跑”的运气了。接口速率从几十Mbps涨到几十Gbps,信号边沿越来越陡,PCB上的一条走线、一个过孔、一段封装引脚,都可能变成影响系统能不能稳定跑起来的决定性因素。靠经验、靠余量… · 2026/9/25 11:04:51
NumPy傅里叶变换API从入门到实战:频谱分析与工程避坑指南 如果你做过信号处理、故障诊断或者图像分析,大概率绕不开 NumPy 的傅里叶变换接口——也就是numpy.fft那一组 API。我最开始在项目里用到它们,是因为需要从一段振动传感器数据里找出异常频率。当时我还不太明白原理,只知道调用np.fft.fft能得… · 2026/9/25 11:04:32
深圳售后完善的购物中心管理系统品牌企业实力参考 选购物中心管理系统必踩的4大常见坑很多购物中心、商管公司在选型数字化管理工具时,很容易掉进这些共性误区里:
怕选到功能适配差的系统:比如买了全链路方案却没法适配自身商圈的多业态布局,零售和餐饮商户不能共用一套系统&#… · 2026/9/25 11:04:26
力扣128最长连续序列:哈希表如何将复杂度优化到O(n) 在力扣刷题的过程里,128“最长连续数列”属于那种让人印象特别深的题目。它表面上看是一个数组遍历的问题,可实际上考察的是对时间复杂度的敏锐程度、对数据结构的选择,以及面对数字集合时能不能跳出“排序惯性”的思维定式。这道题被归类为中… · 2026/9/25 11:04:26
创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31
MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:37