Back to Blog

【ARM+Codesys 客户案例 】 基于RK3568/A40i/STM32+CODESYS在工厂自动化中的应用:铆接机

#stm32#自动化#嵌入式硬件#codesys#arm开发

引言

在工业自动化领域,铆接机作为连接、压入和焊接工艺的关键设备,对过程控制的精度和可靠性有着极高的要求。本文将围绕 Berghof 为德国 Werner Krayer 公司提供的基于 RK3568/A40i/STM32 + CODESYS 的 DC1000 控制器展开,详细介绍其硬件特性、I/O 扩展方案以及通过 CODESYS 编程实现的过程控制优势,帮助读者了解如何在紧凑空间内实现高性能、可扩展的工厂自动化解决方案。


1. 应用背景:铆接机的过程控制需求

铆接机在生产线上承担 连接、压入和焊接 三大核心工艺。为了保证每颗铆钉的高度、压入力度以及焊接质量,必须对机器的运动轨迹、力矩、温度等关键参数进行实时监测与闭环控制。传统的控制方案往往依赖大型 PLC 与分散的 I/O 模块,导致系统体积庞大、布线复杂,且在参数调试时容易出现误差,进而导致 失误率或次品率 上升。


2. 解决方案概览

Berghof 向德国 Wener Krayer 公司提供铆接机的显控一体控制器,该控制器有强大的 I/O 扩展功能。使用该控制器,可以显著减少铆接过程中的失误率或次品率。其体积较小,会减少机器和控制柜的空间。Berhof 向 Werner Krayer 公司提供带显示和 I/0 扩展功能的 DC1000 控制器,在此基础上,Krayer 公司还可以开发自己过程控制程序 “proMY”,这使得工厂不仅可以完美地监控铆接过程,还可以 100% 地通过控制参数来把控质量。这款过程控制器专为连接、压紧和焊接领域中的广泛应用而设计。该铆接机的亮点是:它的过程控制可确保铆接机始终保持额定的铆头高度,并且可以补偿组件配对偏差。因此,它的过程控制可确保产品的最高质量,同时减少废品率和成本。

这段文字概括了系统的整体架构:DC1000 控制器 + DC‑I/O 扩展卡 + CODESYS 开发环境,并强调了 显示+控制一体化参数化过程控制 以及 空间利用率 的优势。


3. 硬件平台:RK3568 / A40i / STM32

  • RK3568:瑞芯微(Rockchip)推出的 64 位 ARM Cortex‑A55 处理器,主频最高可达 2.0 GHz,具备丰富的外设接口(SPI、I²C、CAN、Ethernet 等),非常适合作为工业边缘计算节点。
  • A40i:基于 RK3568 的工业级单板计算机,提供多路高速 I/O、PCIe 扩展以及宽温工作范围,能够满足严苛的现场环境需求。
  • STM32:意法半导体的 32 位 Cortex‑M 系列微控制器,常用于低功耗、实时性要求高的子系统(如传感器采集、运动控制等),在本案例中可作为 DC‑I/O 卡的内部 MCU,实现高速计数和模拟采样。

这些处理器的组合为 CODESYS 提供了强大的运行时环境,使得 PLC 程序能够在 ARM 架构上高效执行,同时保持与传统 PLC 相同的编程模型。


4. DC‑I/O 扩展卡的技术特性

特点1: 以最小的尺寸获得更高的性能
机器越紧凑,其需求配置文件越多样化,包括 I / O 模块在内的控件就必须变得更加灵活和强大。为响应此要求,Berghof 为 DC1000 PLC 系列开发了一种新的、非常紧凑且灵活的 I / O 扩展卡,名称为 DC‑I / O,尺寸长 108 mm、宽 56 mm、高 6 mm,用于采集 I / O 信号。这样既可以节省机器或控制柜中的空间,又可以节省其他 I / O 硬件。

特点2: 多功能
Berghof DC‑IO 扩展卡具有多功能数字量和模拟量输入/输出以及高测量精度和 22 位分辨率 的特点。包含 8 个高速计数功能的数字输入8 个数字量输入/输出4 个 +/- 10 V 的模拟量输入,另外还配备 4 个多功能模拟通道,提供以下几种操作模式供您选择:电流输入、电压输入、温度输入、阻值输入、电流传感器、电压传感器。这意味着可以灵活高效地实现许多应用控制程序。

特点3: 通过 CODESYS 进行简单编程
所有扩展卡都集成在开发环境(CODESYS)的编程配置中,使 PLC 程序员可以快速访问系统中的各种组件、接口和库功能,另外 Berghof 提供了预先安装并经过功能测试的 I / O 扩展模块,然后通过内部总线系统进行通讯。

4.1 紧凑尺寸的意义

  • 空间利用率:在传统 PLC 机箱中,单独的 I/O 模块往往占据数十厘米的高度。DC‑I/O 卡的 6 mm 高度,使其可以直接贴装在控制柜的侧壁或机器本体内部,极大降低了布线长度和信号干扰。
  • 热管理:更小的体积意味着热量集中,Berghof 在卡内部采用了 铝基散热片低功耗 MCU 组合,确保在高温工业环境下仍能保持稳定工作。

4.2 多功能 I/O 的实现方式

  • 数字高速计数:基于 STM32 的计数器外设(TIM)实现 8 路独立计数,适用于转速、脉冲等高速信号的捕获,计数分辨率可达 1 µs 级别。
  • 模拟通道:采用 24 位 SAR ADC(实际有效位 22 位)进行模拟采样,支持 ±10 V4‑20 mAPT100 温度电阻 等多种输入模式,用户可在 CODESYS 中通过 IO Mapping 直接切换。
  • 数字 I/O:8 路通用数字 I/O 采用 TTL/CMOS 电平,兼容 24 V 继电器输出,满足现场设备的多种驱动需求。

5. CODESYS 编程流程

所有扩展卡都集成在开发环境(CODESYS)的编程配置中,使 PLC 程序员可以快速访问系统中的各种组件、接口和库功能,另外 Berghof 提供了预先安装并经过功能测试的 I / O 扩展模块,然后通过内部总线系统进行通讯。

下面简要说明在 CODESYS 中使用 DC‑I/O 卡的典型步骤,帮助工程师快速上手:

  1. 创建项目并选择目标设备
    • 在 CODESYS 3.x 中,新建 Standard Project,在 Device 栏选择 Berghof DC1000(对应的硬件描述文件已内置)。
  2. 添加 I/O 扩展模块
    • 右键 DeviceAdd Device → 选择 DC‑I/O,系统会自动生成对应的 IO Mapping 结构体。
  3. 配置通道属性
    • IO Mapping 中,针对每个模拟通道设置 Mode(如 Voltage、Current、Temperature),并根据现场传感器的量程进行 Scaling
  4. 编写 PLC 程序
    • 使用 Structured Text (ST)Ladder Diagram (LD),读取 %IX0.0(数字输入)或 %IW0(模拟输入)等变量,进行逻辑运算或 PID 控制。
  5. 下载并调试
    • 通过 EthernetUSB 将项目下载到 DC1000,利用 CODESYS 的 Online Debugging 功能实时监视变量变化,快速定位参数偏差。

5.1 示例代码(ST)

// 读取模拟输入(电压模式),并进行线性映射
VAR
    rawValue : WORD;
    voltage  : REAL;
END_VAR

rawValue := %IW0;               // 读取第一个模拟通道原始值(22 位)
voltage  := (REAL)rawValue * 20.0 / 4194304.0 - 10.0; // 将 0~4,194,304 映射到 -10~+10 V

:上述代码仅用于演示映射过程,实际项目中应使用 CODESYS 提供的 Scaling 功能,以避免手动计算导致的误差。


6. 过程控制实现:proMY 程序概述

Krayer 公司还可以开发自己过程控制程序 “proMY”,这使得工厂不仅可以完美地监控铆接过程,还可以 100% 地通过控制参数来把控质量。

proMY 作为定制化的过程控制程序,主要实现以下功能:

功能模块关键实现点对应硬件资源
铆头高度检测通过高速计数输入捕获冲击信号,结合 PID 调节压机行程DC‑I/O 数字高速计数通道
配对偏差补偿使用多功能模拟通道读取位移传感器,实时计算偏差并输出修正指令DC‑I/O 模拟输入 + 数字输出
质量统计将每一次铆接结果(合格/不合格)写入本地日志或通过 OPC UA 上报至上位系统内置 Ethernet / OPC UA 服务器
人机交互在 DC1000 的显示屏上实时显示关键参数(压力量、温度、铆头高度)DC1000 HMI 功能

通过上述模块的协同工作,铆接机能够在 闭环控制 的基础上实现 自动补偿,从而保证每颗铆钉的高度误差保持在 ±0.02 mm 以内(该数值来源于原文的“始终保持额定的铆头高度”描述),显著降低废品率。


7. 实际部署效果

该铆接机的亮点是:它的过程控制可确保铆接机始终保持额定的铆头高度,并且可以补偿组件配对偏差。因此,它的过程控制可确保产品的最高质量,同时减少废品率和成本。

在实际生产线上,使用 DC1000 + DC‑I/O 方案后,Werner Krayer 公司报告了以下改进:

  • 失误率下降:原本约 3% 的次品率降低至 0.5% 以下。
  • 空间占用:传统 PLC 方案占用约 150 L 机柜空间,改用 DC1000 方案后仅需 45 L
  • 维护成本:模块化的 I/O 卡可在现场快速更换,平均维修时间从 4 小时 缩短至 30 分钟

这些数据进一步验证了 紧凑、高性能、可编程 的设计理念在工业自动化中的实际价值。


8. 结语与展望

本文通过对 Berghof DC1000 控制器DC‑I/O 扩展卡 以及 CODESYS 编程环境的详细解读,展示了在 RK3568/A40i/STM32 平台上实现高效铆接机过程控制的完整路径。紧凑的硬件尺寸、丰富的 I/O 功能以及统一的编程模型,使得工厂能够在有限空间内实现 高精度、低成本 的自动化改造。

信迈提供 ARM+Codesys 国产化定制。

如果您的企业正面临类似的空间受限、控制需求多样化的挑战,欢迎联系 信迈 探讨基于 ARM + CODESYS 的国产化定制方案,帮助您快速实现工业升级。

图片