
1. 从脉冲到转动S7-200 SMART 控制伺服的核心链路很多人第一次拿到 S7-200 SMART 和一台伺服驱动器脑子里想的都是“PLC 发脉冲伺服转起来”这么简单。但真到接线、编程、调试的时候问题就来了脉冲口是哪个方向信号怎么给伺服为什么不动动起来之后位置怎么对不上这些问题的根源其实都在于没有把“PLC 到伺服”这条控制链路彻底理清楚。S7-200 SMART 控制伺服电机本质上是一套位置闭环控制系统。PLC 负责发出高速脉冲串和方向电平信号伺服驱动器接收这些信号后驱动电机转动电机尾部的编码器再把实际位置反馈给驱动器驱动器内部完成位置环的闭环调节。PLC 本身并不直接读取编码器反馈它只负责“告诉驱动器走多少”至于“走没走到”那是驱动器自己的事。这个分工一定要先搞清楚否则后面调参数的时候会完全找不到方向。那为什么选 S7-200 SMART 来做这件事从成本和易用性来看S7-200 SMART 的 CPU 本体自带高速脉冲输出点标准型 CPU ST20、ST30、ST40、ST60 都支持最多 3 轴 100kHz 的高速脉冲输出。对于大多数中小型设备——比如包装机、送料机构、简单的两轴机械手——这个性能完全够用。而且它的编程软件 STEP 7-Micro/WIN SMART 内置了运动控制向导不需要你从零去写脉冲逻辑配置一下就能生成可调用的子程序对新手非常友好。但友好归友好坑还是不少。我见过太多人卡在第一步PLC 的脉冲输出点到底接伺服驱动器的哪个端子。S7-200 SMART 的脉冲输出是 PTOPulse Train Output方式CPU 上标注为 Q0.0、Q0.1、Q0.2 等具体哪个点能做高速输出取决于 CPU 型号。比如 ST20 是 Q0.0、Q0.1、Q0.2 三个点分别对应三轴脉冲方向信号则需要另外分配普通输出点。伺服驱动器这边以常见的汇川 IS620P 或者台达 ASDA-B2 为例位置控制模式下通常接收“脉冲方向”信号端子标为 PULS / PULS- 和 SIGN / SIGN-。接线时要注意差分接法和单端接法的区别如果 PLC 输出是 24V 单端信号伺服驱动器也支持单端输入那就直接对接如果驱动器只支持 5V 差分输入中间就得加限流电阻或者电平转换模块否则要么不动作要么烧端口。这里有一个很关键的细节S7-200 SMART 的高速输出是 24V 的而很多伺服驱动器的脉冲输入是 5V 差分。这时候你不能直接把 24V 怼进去必须做电平转换。常见的做法是用 2K 左右的电阻串联限流或者用专门的光耦隔离板。我个人的经验是如果驱动器手册明确写了“支持 24V 单端输入”那就放心接如果只写了“5V 差分”千万别赌老老实实加转换电路。烧一个驱动器输入口维修费够你买好几个转换模块了。还有一个容易被忽略的点PLC 的 1M 端子接地。S7-200 SMART 的晶体管输出型 CPUQ0.0 等高速输出点的公共端是 1M这个端子必须接到 24V 电源的 0V否则脉冲信号没有回路伺服根本收不到信号。我遇到过一位朋友接线检查了三遍程序也反复下载伺服就是不动最后发现是 1M 悬空了。这种问题说起来简单但在现场急起来的时候真的会让人抓狂。所以这一章的核心就一句话先把信号链路走通再谈控制逻辑。PLC 发脉冲驱动器收脉冲电机转编码器反馈驱动器闭环——这条链路里任何一个环节断了后面的编程都是白搭。下一章我会详细拆解运动控制向导的配置过程把每个参数背后的含义讲清楚。2. 运动控制向导里的参数每一个都有它的脾气STEP 7-Micro/WIN SMART 里的运动控制向导表面上看就是填几个数字、点几下下一步但如果你不知道每个参数在系统里起什么作用配出来的轴要么抖动要么定位不准要么直接报错。这一章我把向导里最关键的几个配置项拆开讲结合实测经验告诉你每个值该怎么定。2.1 测量系统与脉冲当量定位精度的地基打开运动控制向导第一步就是让你定义测量系统。这里有两个选项工程单位和脉冲数。工程单位就是你自己定义“走 1 毫米对应多少脉冲”脉冲数就是直接以脉冲为单位。对于初学者我建议先用脉冲数因为这样最直观——发 10000 个脉冲电机就走 10000 个脉冲对应的角度中间没有换算调试的时候不容易乱。但如果你要做实际的位置控制比如“走到 150 毫米处”那就必须用工程单位。这时候你需要计算脉冲当量也就是一个脉冲对应多少毫米。计算公式是这样的脉冲当量 丝杠导程 / (电机每转脉冲数 × 减速比)举个例子丝杠导程 5 毫米伺服电机编码器是 17 位每转 131072 个脉冲但驱动器接收的是 PLC 发的脉冲所以要看驱动器设置的电子齿轮比。假设驱动器设了 10000 个脉冲转一圈减速比是 1:1那脉冲当量就是 5 / 10000 0.0005 毫米/脉冲。也就是说PLC 发 10000 个脉冲丝杠走 5 毫米。这个计算看起来简单但实际调试的时候很多人会忘记电子齿轮比这一环。伺服驱动器内部有一个电子齿轮比参数它决定了“驱动器接收多少个脉冲电机转一圈”。如果你在 PLC 里按 10000 脉冲算但驱动器设的是 131072 脉冲转一圈那实际走的距离就只有你预期的 1/13 左右。所以配向导之前先把驱动器的电子齿轮比确认好这是定位精度的地基。2.2 最大速度与加减速时间别让电机“闪了腰”向导里会让你设置最大速度和加减速时间。最大速度的单位通常是脉冲/秒或者工程单位/秒这个值不能超过 PLC 高速输出的上限。S7-200 SMART 标准型 CPU 的高速输出上限是 100kHz也就是说每秒最多发 100000 个脉冲。如果你设的最大速度超过了这个值向导会直接报错。但即使不超过 100kHz也不建议把速度拉满。我实测下来长期跑在 80kHz 以上脉冲输出的稳定性会下降尤其是电缆较长或者屏蔽没做好的时候容易出现丢脉冲。丢脉冲的后果就是定位偏差而且这种偏差是累积的走十次可能偏个几毫米走一百次就偏得离谱了。加减速时间这个参数更微妙。设得太短电机启动和停止时会“猛冲”机械结构承受的冲击力很大长期下来丝杠、联轴器都容易松。设得太长节拍跟不上设备效率上不去。我的经验是先设一个保守的值比如加速 300ms、减速 300ms然后根据实际运行情况逐步缩短。每次缩短 50ms观察电机有没有异响、机械有没有抖动。如果没有就继续缩一旦出现异常就退回去加 50ms。这样试出来的值既保证了效率又不会伤机械。还有一个隐藏的坑加减速时间设得太短驱动器可能会报过载。因为电机在极短时间内要加速到高速电流会瞬间拉得很高驱动器如果保护阈值设得比较严就会直接报警停机。这时候不是驱动器坏了而是你的加减速曲线太激进了。2.3 限位与原点安全逻辑不能省运动控制向导里有一个“限位”配置项让你设置正限位和负限位的输入点。很多新手觉得“我程序里控制好行程就行了不用接限位开关”这是非常危险的想法。程序会跑飞PLC 会死机驱动器会丢脉冲任何一个小概率事件发生在高速运动的机械上都是撞机的后果。我强烈建议硬件限位开关一定要接而且要接常闭触点。常闭的意思是正常情况下开关是导通的一旦撞到限位开关断开PLC 检测到信号后立即停止脉冲输出。为什么用常闭而不是常开因为常闭更安全——如果限位开关的线断了PLC 检测到的状态和“撞到限位”是一样的会立即停机。而常开的话线断了 PLC 以为一切正常电机继续冲那就直接撞上去了。原点回归也是类似逻辑。S7-200 SMART 的运动控制向导支持多种原点回归模式最常用的是主动回零电机先以一定速度向原点方向运动碰到原点开关后减速停止然后再以低速反向找原点的上升沿找到后把当前位置清零。这个过程里原点开关的安装位置和触发方式很关键。我一般会把原点开关装在行程中间偏一侧的位置这样回零时电机不用走太远节拍更快。注意原点回归的速度参数里有一个“快速寻找速度”和一个“慢速寻找速度”。快速速度可以设得高一些但慢速速度一定要低建议在 5kHz 以下否则找原点的精度会很差。2.4 急停与错误处理给系统留一条退路向导的最后会让你配置急停输入。这个输入点一旦触发PLC 会立即停止所有轴的脉冲输出。急停按钮建议用蘑菇头带自锁的接常闭触点和限位开关一样的逻辑。急停触发后程序里要有对应的复位逻辑不能自动恢复运行必须人工确认安全后手动复位。错误处理方面S7-200 SMART 的运动控制指令会返回错误代码。比如 AXISx_GOTO 指令如果返回错误可能是目标位置超出了软限位范围也可能是轴没有使能。这些错误代码在手册里都有详细说明但实际调试的时候最常见的错误就是轴未使能和目标速度超过最大值。前者是因为忘了调用 AXISx_CTRL 指令使能轴后者是因为 GOTO 指令里的速度参数超过了向导里设的最大速度。我个人的习惯是在程序里加一个错误代码的监控变量每次调试的时候盯着看。一旦有错误先查代码再查参数最后查接线。这个顺序能帮你快速定位问题而不是盲目地改程序。3. 梯形图里的运动控制指令调用与逻辑编排配置完向导接下来就是在梯形图里调用运动控制子程序。S7-200 SMART 的运动控制向导会自动生成一组子程序包括 AXISx_CTRL、AXISx_GOTO、AXISx_RUN、AXISx_RSEEK 等。这些指令的调用顺序和触发条件直接决定了设备能不能按你的预期运行。3.1 AXISx_CTRL一切动作的前提AXISx_CTRL 是轴控制指令负责使能和初始化轴。这个指令必须在其他运动指令之前调用而且它的 EN 端要保持常通或者至少在轴运行期间保持导通。我见过有人用点动按钮触发 AXISx_CTRL按一下使能松开就失能结果电机刚转起来就停了。正确的做法是用一个中间继电器或者始终导通的触点来使能 AXISx_CTRL确保轴在整个运行周期内都处于使能状态。AXISx_CTRL 的参数里有一个 MOD_EN这是手动使能位。如果你在向导里配置了“自动使能”这个位可以不用管如果没有就需要在程序里把它置位。另外还有一个 DIS_AUTO 参数用来禁用自动使能。这些参数看起来琐碎但每一个都影响轴的运行状态。我的建议是先把 AXISx_CTRL 调通确认轴使能后电机处于锁定状态用手转不动再往下写其他逻辑。3.2 AXISx_GOTO绝对定位与相对定位的选择AXISx_GOTO 是最常用的定位指令它有两种模式绝对定位和相对定位。绝对定位是走到一个固定的坐标值比如“走到 100 毫米处”相对定位是走一段距离比如“往前走 50 毫米”。两者的选择取决于你的工艺需求。绝对定位的好处是位置不会累积误差。每次都是从原点算起走 100 毫米就是 100 毫米走一万次也是 100 毫米。相对定位的好处是编程简单不需要知道当前在哪只管走多少。但相对定位有一个致命问题如果中途有一次丢脉冲或者被急停打断当前位置就乱了后面所有的相对定位都会偏。所以我的原则是能绝对定位就绝对定位实在不行才用相对定位。用绝对定位的时候原点回归是必须做的而且每次开机都要做一次。有些设备为了省时间开机不做原点回归直接接着上次的位置跑这种操作在精度要求不高的场合可以但在精密定位场合就是埋雷。AXISx_GOTO 的参数里有一个 MODE 参数用来选择模式。另外还有一个 ABORT 参数用来中止当前运动。这个 ABORT 很有用比如你在走一个长距离定位的时候突然触发了急停或者限位就可以用 ABORT 立即停止而不是等它走完。3.3 AXISx_RUN连续运行与速度控制AXISx_RUN 是连续运行指令电机按照设定的速度和方向一直转直到收到停止命令。这个指令常用在传送带、旋转台这类需要连续运动的场合。和 GOTO 不同RUN 不关心位置只关心速度和方向。RUN 指令的参数里速度可以实时修改。也就是说你可以在电机运行过程中改变速度值电机会平滑地加速或减速到新的速度。这个特性在需要变速的工艺里很有用比如包装机在进料时慢速送料时快速。但要注意速度修改的频率不能太高如果每个扫描周期都改一次PLC 的处理负担会很大而且速度变化太频繁对机械也不好。还有一个细节RUN 指令的方向控制。方向是由一个单独的位决定的通常是 0 和 1 对应正反两个方向。切换方向的时候电机会先减速到零再反向加速这个过程中间有一个停顿。如果你的工艺要求快速换向这个停顿可能会影响节拍。这时候可以考虑用 GOTO 指令走相对定位通过正负目标值来实现换向响应会更快一些。3.4 多轴协调简单同步的实现思路S7-200 SMART 最多支持 3 轴对于简单的两轴或三轴同步可以通过同时触发多个轴的 GOTO 指令来实现。比如一个 XY 平台需要从 A 点走到 B 点你可以同时启动 X 轴和 Y 轴的 GOTO让两个轴各自走自己的距离。但这种方式是“各自走各自的”并不是真正的插补走出来的轨迹是折线而不是直线。如果要做直线插补S7-200 SMART 本身不支持需要换更高端的控制器。但在很多实际场合折线轨迹已经够用了。比如点胶机只要每个点的位置准确中间走什么路径并不重要。这时候用多轴同时 GOTO 的方式简单又可靠。多轴协调的时候要注意脉冲输出的资源分配。S7-200 SMART 的 3 轴脉冲输出是独立的但方向信号和限位信号需要占用普通输出点和输入点。在分配 I/O 的时候要确保高速输出点没有被其他功能占用。比如 Q0.0 被用作脉冲输出后就不能再用来控制其他普通负载了。4. 调试现场的真实问题从“不动”到“精准”的排查链路调试伺服系统最怕的不是问题多而是问题来了不知道从哪查。这一章我把自己和身边朋友踩过的坑整理出来按“现象—原因—排查—解决”的链路讲清楚希望能帮你在现场少走弯路。4.1 伺服完全不动先查信号再查使能伺服不动是最常见的问题原因可能有很多但排查顺序很重要。我的习惯是从后往前查先看伺服驱动器有没有报警再看驱动器有没有收到脉冲信号最后看 PLC 有没有发出脉冲。驱动器报警的话面板上会有代码查手册就能知道是什么问题。常见的有过载、编码器故障、欠压等。如果没有报警但电机不转那就要看驱动器的脉冲接收指示灯。大多数伺服驱动器上都有一个脉冲指示灯收到脉冲时会闪烁。如果灯不闪说明脉冲信号没到驱动器问题在 PLC 侧或者接线上。PLC 侧的问题首先看程序有没有执行到 GOTO 指令。可以在指令的 EN 端加一个计数器看看每次触发是不是真的执行了。如果执行了但没脉冲输出那就要检查向导配置里的最大速度是不是设成了 0或者轴有没有使能。轴没使能的话GOTO 指令会返回错误代码但电机不会动。接线的问题最常见的是脉冲线和方向线接反或者1M 端子没接地。脉冲线和方向线接反的话电机会转但方向不受控或者走的位置完全不对。1M 没接地的话脉冲信号没有回路驱动器收不到任何信号。这两个问题用万用表就能查量一下 PLC 输出点和 1M 之间有没有电压变化有变化说明 PLC 在发脉冲再量一下驱动器端子有没有收到对应的电压没有的话就是线的问题。4.2 定位不准丢脉冲还是电子齿轮比错了定位不准有两种表现一种是每次都偏同样的距离另一种是偏差随机变化。前者通常是电子齿轮比或者脉冲当量算错了后者通常是丢脉冲。每次偏同样距离的话先算一下偏差比例。比如你让电机走 100 毫米实际走了 80 毫米偏差 20%。那就检查电子齿轮比PLC 发了 10000 个脉冲驱动器是不是按 10000 个脉冲转一圈如果驱动器设的是 12500 个脉冲转一圈那实际走的距离就是预期的 80%。这个计算很简单但很多人会忽略因为电子齿轮比是在驱动器里设的不在 PLC 程序里。偏差随机变化的话大概率是丢脉冲。丢脉冲的原因有几个脉冲频率太高、电缆太长没有屏蔽、周围有变频器干扰。S7-200 SMART 的脉冲输出是 24V 单端信号抗干扰能力比差分信号弱。如果电缆超过 2 米建议用屏蔽双绞线屏蔽层单端接地。如果周围有变频器或者伺服驱动器本身尽量把脉冲电缆和动力电缆分开走线不要捆在一起。还有一个隐蔽的丢脉冲原因PLC 的扫描周期太长。S7-200 SMART 的脉冲输出是由硬件实现的不受扫描周期影响但 GOTO 指令的触发是软件逻辑。如果程序里有很多复杂运算扫描周期超过 10ms可能会导致 GOTO 指令的触发时机不准进而影响定位。这时候可以优化程序把运动控制相关的逻辑放在中断里执行或者减少不必要的运算。4.3 电机抖动或异响增益与加减速的平衡电机抖动通常发生在停止的时候或者低速运行的时候。停止时抖动一般是伺服驱动器的位置环增益设得太高系统在目标位置附近来回振荡。这时候需要降低增益或者增加积分时间。低速时抖动可能是机械共振需要调整驱动器的陷波滤波器。S7-200 SMART 这边能调的不多主要是加减速时间。如果加速时间设得太短电机会在启动时“冲”一下然后被驱动器拉回来表现出来就是抖动。把加速时间加长抖动通常会消失。但加长加速时间会影响节拍所以要在两者之间找平衡。异响的话先判断是机械异响还是电气异响。机械异响通常是联轴器松动、丝杠缺油、轴承磨损这些用手转动电机就能感觉到。电气异响通常是驱动器参数不匹配比如电机参数设错了或者编码器分辨率设错了。电气异响的声音比较尖锐而且和电机的运行状态相关停下来就不响了。我遇到过一次很典型的抖动问题电机在停止时来回晃幅度不大但频率很高。查了半天最后发现是伺服驱动器的刚性设置太高。把刚性等级从 15 降到 10抖动就消失了。刚性设置的本质是位置环和速度环的增益组合刚性越高响应越快但越容易振荡。对于皮带传动的机构刚性要设低一些对于丝杠传动的机构刚性可以设高一些。4.4 原点回归失败开关信号与搜索速度的配合原点回归失败的表现是电机一直往一个方向走碰到原点开关也不停或者停下来之后又反向走反复几次后报错。这个问题通常出在原点开关的信号类型或者搜索速度上。原点开关的信号类型要和向导里配置的一致。向导里可以选常开或常闭如果你接的是常开开关但向导里配的是常闭那 PLC 检测到的逻辑就是反的电机永远找不到原点。这个检查很简单在 PLC 的输入指示灯上看一下开关触发时灯亮还是灭和向导配置对一下就行。搜索速度的问题更微妙。快速搜索速度太高的话电机可能会冲过原点开关才停下来然后反向找的时候又冲过头来回几次就报错了。我的经验是快速搜索速度不要超过最大速度的 50%慢速搜索速度不要超过 10%。这样即使冲过头反向找的时候也能及时停下来。还有一个细节原点开关的安装位置。如果原点开关装在行程的最末端回零时电机要走完全程才能碰到开关节拍很长。如果装在中间回零快但要注意开关的触发范围不能太大否则慢速找上升沿的时候会找不到。一般建议原点开关的触发片宽度在 10-20 毫米之间太宽了上升沿不明显太窄了容易错过。5. 从单轴到多轴S7-200 SMART 控制伺服的扩展思路单轴控制调通之后很多人会想能不能用一台 S7-200 SMART 控制多个伺服轴答案是能但有几个限制需要提前知道。5.1 三轴脉冲输出的资源分配S7-200 SMART 标准型 CPU 最多支持 3 轴 100kHz 脉冲输出但具体是哪几个输出点不同型号不一样。ST20 是 Q0.0、Q0.1、Q0.2ST30 和 ST40 也是这三个点ST60 除了这三个点之外还有 Q0.3、Q0.4、Q0.5 等普通输出点。但高速输出只有 3 个也就是说最多只能控制 3 个伺服轴。如果你需要控制 4 个以上的伺服轴S7-200 SMART 就不够用了需要考虑 S7-1200 或者 S7-1500。S7-1200 的 CPU 1214C 支持 4 轴脉冲输出CPU 1215C 支持 6 轴而且支持 PROFINET 总线控制伺服布线更简单扩展性更好。但成本也更高对于 3 轴以内的应用S7-200 SMART 的性价比还是很高的。3 轴分配的时候要注意每个轴的方向信号需要占用一个普通输出点。3 个轴就是 3 个脉冲点加 3 个方向点一共 6 个输出点。再加上限位、原点、急停等输入点I/O 点数要提前算好。ST20 本体有 12 个输入和 8 个输出如果不够用可以加扩展模块。但扩展模块的输出点不能做高速脉冲输出只能做普通输出所以方向信号可以放在扩展模块上脉冲信号必须用本体的高速输出点。5.2 多轴同步的编程技巧多轴同步的编程核心是同时触发。比如 XY 平台走直线你可以在同一个扫描周期里触发 X 轴和 Y 轴的 GOTO 指令。但要注意两个 GOTO 指令不能放在同一个网络里用同一个触发条件因为 S7-200 SMART 的指令执行是顺序的第一个 GOTO 执行完才会执行第二个中间有时间差。虽然这个时间差很短微秒级但在高速高精度的场合还是会有影响。更可靠的做法是用一个触发位同时使能两个轴的 GOTO 指令但把两个指令放在不同的网络里用同一个中间继电器触发。这样两个指令在同一个扫描周期内被使能时间差只有一个扫描周期对于大多数应用来说足够了。如果要做更精确的同步比如两轴插补S7-200 SMART 本身做不到需要换支持插补功能的控制器。但在很多实际场合比如简单的搬运机构两轴不需要严格同步只要各自走到位就行这时候用同时触发的方式完全够用。5.3 与变频器、触摸屏的配合S7-200 SMART 控制伺服的同时往往还需要控制变频器、读取传感器、和触摸屏通信。这些功能会占用 PLC 的资源和通信端口。S7-200 SMART 本体有一个以太网口和一个 RS485 口以太网口通常用来连触摸屏或者编程电脑RS485 口可以用来做 Modbus 通信控制变频器。Modbus 通信控制变频器的时候要注意通信刷新周期。如果变频器数量多比如 3 台以上通信刷新周期会变长可能会影响伺服的响应。这时候可以把伺服控制放在主程序里Modbus 通信放在中断里或者用单独的通信模块。S7-200 SMART 的 RS485 口支持 Modbus RTU 主站和从站模式做主站的时候可以控制多台变频器但轮询周期要算好不要超过设备的响应要求。触摸屏这边通常用以太网和 PLC 通信读写 PLC 的变量。运动控制相关的变量比如当前位置、当前速度、轴状态等可以在触摸屏上显示。但要注意触摸屏的刷新周期不要太快否则会占用 PLC 的通信资源。一般 200-500ms 的刷新周期就够了太快了反而会影响 PLC 的扫描周期。6. 那些手册上不会写的实操细节最后这一章我把自己在调试 S7-200 SMART 控制伺服过程中积累的一些零碎经验整理出来。这些东西在手册里找不到但每一个都能帮你省下几个小时甚至几天的调试时间。第一脉冲电缆的长度和屏蔽。S7-200 SMART 的脉冲输出是 24V 单端信号抗干扰能力有限。如果脉冲电缆超过 2 米一定要用屏蔽双绞线而且屏蔽层要单端接地接在 PLC 这一侧。如果电缆超过 5 米建议加一个脉冲中转模块把单端信号转成差分信号再传输到驱动器那边再转回来。这样虽然麻烦一点但稳定性会好很多。第二伺服驱动器的使能顺序。正确的上电顺序是先给 PLC 上电再给伺服驱动器上电。因为 PLC 上电后会先执行初始化程序如果伺服先上电可能会在 PLC 还没准备好时就收到错误的脉冲信号。断电的时候反过来先断伺服再断 PLC。这个顺序看起来无关紧要但在一些伺服驱动器上上电顺序不对会导致使能失败或者报警。第三GOTO 指令的完成标志。AXISx_GOTO 指令有一个 Done 位运动完成后会置位。很多人用这个 Done 位来触发下一步动作但要注意Done 位置位的时候电机可能还在微小抖动并没有完全停稳。如果下一步动作对位置精度要求很高建议在 Done 位之后再加一个 50-100ms 的延时等电机完全停稳再执行下一步。第四急停后的恢复流程。急停触发后轴会立即停止但当前位置会丢失。恢复的时候不能直接继续走 GOTO必须先做一次原点回归重新建立坐标系。如果设备上有多个轴每个轴都要单独回零。回零的顺序也有讲究先回 Z 轴垂直轴再回 XY 轴避免工具撞到工件。第五程序里的软限位。除了硬件限位开关程序里也要设软限位。软限位是在 GOTO 指令的目标位置里做判断如果目标位置超出了设定的范围就不执行 GOTO直接报错。软限位的范围要比硬件限位小一些比如硬件限位在 200 毫米处软限位就设在 190 毫米。这样即使程序出错电机也会在碰到硬件限位之前停下来。第六定期备份程序和参数。伺服驱动器的参数、PLC 的程序、触摸屏的工程文件这些都要定期备份。我见过太多因为驱动器参数丢失导致设备停机的案例重新调参数花了大半天。备份的时候PLC 程序要备份源文件和下载文件驱动器参数要备份到电脑或者存储卡触摸屏工程要备份工程文件和运行文件。这些东西平时用不上但一旦出事就是救命的。第七注意环境温度。伺服驱动器和 PLC 都对温度敏感。夏天车间温度高的时候驱动器可能会过热报警PLC 的脉冲输出也可能不稳定。如果设备装在密闭的电柜里一定要加风扇或者空调。我遇到过一台设备冬天运行正常夏天一到下午就报警最后发现是电柜温度太高加了一个风扇就解决了。第八不要忽略接地。PLC、伺服驱动器、电机、电柜这些都要可靠接地。接地电阻要小于 4 欧姆接地线要够粗。接地不好会导致各种奇怪的干扰问题比如脉冲丢失、通信中断、触摸屏死机。这些问题排查起来非常困难因为时好时坏但根源往往就是接地没做好。第九用示波器看脉冲波形。如果条件允许用示波器看一下 PLC 输出的脉冲波形。正常的脉冲应该是干净的方波上升沿和下降沿陡峭没有毛刺。如果波形上有毛刺或者振铃说明电缆或者接地有问题。这个检查在调试初期做一次能避免后面很多麻烦。第十记录调试参数。每次调试的时候把关键的参数记下来脉冲当量、最大速度、加减速时间、伺服增益、电子齿轮比。这些参数在设备维护或者复制到另一台设备的时候非常有用。我习惯用一个表格记录包括参数名称、设定值、调整原因、调整日期。这样即使过了半年再回头看也能快速回忆起当时的调试思路。提示以上这些经验都是基于常见的工业现场实践总结的具体的参数值和操作步骤需要根据你使用的伺服驱动器型号、机械结构和工艺要求来调整。手册是基础但现场调试靠的是经验和耐心。文章写到这里基本上把 S7-200 SMART 控制伺服电机的核心链路、配置要点、编程逻辑和调试经验都覆盖到了。从脉冲接线到运动控制向导从梯形图指令到现场排错每一部分都是实际项目中会遇到的真实问题。伺服控制这件事说难不难说简单也不简单关键是把每个环节的原理搞清楚然后在实践中不断积累经验。希望这些内容能帮你在下一个项目中少踩几个坑一次调试成功。