控制系统硬件架构:主控板、振镜驱动、激光器接口与编码器反馈

很多刚接触振镜控制的工程师,上来就看芯片选型。我个人的习惯是先画拓扑图,搞清楚信号怎么流,再定用什么主控。这章我们就聊聊这套硬件的骨架。

激光打标振镜控制系统硬件拓扑图 主控板 DSP/FPGA/ARM 振镜驱动板 X轴 + Y轴 激光器接口 模拟/数字调制 编码器反馈 位置/速度闭环 振镜电机 (X,Y) galvo scanner 上位机 (PC) ▸ 控制信号路径:上位机→主控→驱动→电机 ▸ 反馈回路:编码器→主控(用于闭环校准)

1. 主控板选型:DSP、FPGA、ARM 怎么选?

主控板是整个系统的脑子。我做过三版迭代,第一版用的纯DSP,第二版加了FPGA协处理,第三版干脆上了ARM+FPGA异构方案。你可以理解成这样:

特性DSPFPGAARM
实时控制优秀(专为电机控制优化)极强(硬件并行)一般(依赖RTOS)
算法灵活性中等(定点/浮点指令集)极高(可重配置逻辑)高(软件可编程)
接口扩展需外扩丰富(可自建IP)丰富(外设多)
开发难度中等高(RTL设计)低(C/驱动)
典型场景纯振镜位置环高精度激光同步上位机通信+系统管理
我个人的建议:如果做标准化产品,ARM+FPGA 是目前主流。ARM 跑协议栈和用户界面,FPGA 做高速激光控制和振镜插补。把两个芯片封装在一起,比如 Zynq,走 AXI 总线,延迟小。

2. 振镜驱动板:电流环与位置环的配合

振镜驱动板接收主控送来的模拟电压(±10V 或差分信号),然后驱动振镜电机转动。说白了就是一套伺服驱动器,只不过针对的是高响应、小惯量的扫描电机。

我在项目中踩过一个坑:驱动板的带宽不够,导致打标小字符时出现拖尾。后来把驱动板模拟部分的运放换了,电流环带宽从 20kHz 提到 80kHz,问题才解决。嗯,这里要注意:

  • 模拟通道:建议用差分输入,抗共模干扰。我用过单端方案,在强电磁环境下容易漂移。
  • 保护电路:驱动板输出端一定要加过流保护。曾经有一次电机线短路,驱动板直接冒烟,从此我都加了一级 PTC 自恢复保险。
  • 接口定义:通常用 DB15 或 DB25 连接器,分配好电源、模拟信号、编码器回传。

关键参数对照表:

参数常规值高精度场景
模拟输入范围±10V±5V(更高分辨率)
位置环更新率50 kHz≥100 kHz
电流环带宽20~40 kHz≥80 kHz
编码器输入差分正交 (RS422)Sin/Cos 或 BISS

3. 激光器接口:不是插上就能用

激光器接口负责把主控的指令转换成激光器能识别的信号。最常见的三种控制方式:

  1. 模拟调制:0~10V 模拟电压控制激光功率。适合 CO₂、光纤激光器。
  2. 数字调制:TTL 信号控制激光开/关。YAG 固体激光器常用。
  3. 脉冲串模式:另一种数字调制,但内部有 Q 开关同步。需要主控提供精确的触发时序。

我记得有个客户,调试时激光器怎么都不出光。查了半天,发现激光器接口的H(使能信号)需要 先建立再触发,而我的主控代码里触发信号先于使能拉高。调整时序后一切正常。你需要留意:

⚠️ 激光器接口的电气隔离:激光器内部往往有高压电源,建议用光耦或数字隔离器做隔离。我见过直接连IO导致主控板被反打烧毁的案例。别省这几块钱。

4. 编码器反馈:闭环的灵魂

编码器装在振镜电机尾部,返回电机实际位置。主控拿到这个值和目标位置做差,跑 PID 调节。没有反馈,就叫开环扫描——你会看到振镜在抖动,完全没法用。

编码器类型很关键:

  • 增量式正交编码器:便宜,通用,但上电需要找零。我习惯在振镜上电后做一次归零扫描。
  • 式编码器:上电即知位置,精度更高。但价格翻倍,而且接口协议多(SSI、BISS、EnDat)。
小经验:选增量式配 Z 相(零点)就可以。大多数商用振镜模块都提供 A/B/Z 差分信号。用 RS422 差分接收,抗干扰好。走线要和电机功率线分开,尽量加屏蔽。

5. 整个拓扑怎么连?

回到最上面的那张 SVG 图。你注意看:

  • 上位机(PC)通过以太网或 PCIe 把打标数据发送给主控板。
  • 主控板内部的轨迹规划器算出振镜位置序列,通过 DA 转换器输出到振镜驱动板。
  • 同时,主控板根据激光器类型,在正确的位置发出激光触发信号。
  • 编码器把电机实际位置反馈回主控,形成闭环。

这个结构不是唯一的。有些方案会把振镜驱动和主控集成在一块板上,减小接线和延迟。但作为教学,我建议你先把分立结构搞明白,再去做集成。

一句话总结:主控是大脑,振镜驱动是肌肉,激光器接口是手指,编码器反馈是眼睛。四者缺一不可,配合才对。