【开源硬件】紧凑、高性能闭环步进电机驱动器

开源、紧凑、高性能闭环步进电机驱动器,专为 NEMA17 外形电机设计,该驱动器具有安静平稳的运动、高精度位置控制和节能功能等先进功能,非常适合各种应用,包括机器人、数控机床和 3D 打印机

该项目非常详细,完善,走心,值得一读~

Github地址

https://github.com/creapunk/CLN17

项目概述

CLN17 电机驱动器是一款开源、紧凑型高性能闭环步进电机驱动器,专为 NEMA17 外形尺寸电机而设计。该驱动器具有静音、平滑运动、高精度位置控制和节能等先进功能,是机器人、数控机床和 3D 打印机等各种应用的理想之选。

NEMA17是一种混合式步进电机,以1.8度的步距角旋转,要完成一圈旋转,轴需要200步。NEMA17步进电机(外形如下图)已成为非常流行的步进电机。NEMA17中的17指的是电机的机座尺寸是1.7*1.7英寸(约为42*42毫米,因此NEMA17步进电机也常被称作42步进电机)。而这个数字17与电机的工作电压、电流、步进角度或极性没有关系。

原理框图及原理图(非常nice)

    

系统架构

为便于理解系统的交互作用和功能,架构分为以下子系统:

  • MCU 和接口子系统:处理反馈处理并管理与外部设备的通信,确保完美集成。
  • 电源子系统:实现对所有系统组件的电源保护、转换和分配。
  • 运动和位置控制子系统:管理连续的电机反馈并精确控制其位置。

     

PCBA

主要功能

  • 闭环控制:电机驱动器支持闭环控制,集成了用于实时位置监控和调整的编码器,确保在恶劣条件下实现精确运动。
  • 精确定位:0.01 度的超高位置控制精度可确保高效、低延迟地处理位置信息,并将噪音降至最低,从而实现平稳运行。
  • 嵌入式 6 轴 IMU:LSM6DSO IMU 模块具有出色的惯性测量能力,配备 3 轴陀螺仪和 3 轴加速计,可提供精确的运动反馈、系统振动检测和应急响应。
  • 自适应扭矩控制:电机驱动器可根据负载要求调整扭矩,从而优化能效、减少压力并延长电机寿命。
  • 被动制动和空转:通过被动制动和空转功能,电机可实现平稳减速和滑行,从而提高控制能力和效率。
  • 增强的兼容性:多种连接选项,包括 UART、I2C、CAN-Bus(支持 FD)和 USB2.0 Type-C(支持 PowerDelivery),有助于实现无缝通信并轻松集成到现有系统中。
  • 运行可靠:通过宽温度范围、诊断功能以及针对 ESD、电流限制、极性反接、过载和 3.3V/5V IO 容差的内置保护,确保可靠运行。
  • 增强型安全算法:增强型安全算法可智能监控电机状况,保护电机系统和用户免受潜在伤害。
  • 带实时时钟的精确定时:专用的 HSE 和 RTC 时钟晶体可确保关键时间任务的精确定时、可靠的代码执行和准确的时间处理。模块化概念:各种配置既能满足尺寸和性能要求,又能保持成本效益,支持扩展板以实现更多功能。

     

主要规格

  • 宽输入电压:5-25VDC,具有过流保护、极性反接保护和浪涌保护功能
  • 额定电流:2ARMS,峰值电流高达 3A
  • 功能强大的电机控制:每相连续1.4A RMS 电流,峰值高达 2.5A,微步高达 1/256
  • 工作频率:高达 40kHz PWM(可实现无声平稳运动)
  • 相位通道电阻:两侧 Mosfets RDSON 170mΩ + 100mΩ 电流感应电阻器
  • 编码器位置反馈分辨率:每转一圈 14 位或在 20kHz下 0.02°
  • 诊断功能:过热检测、短路检测、欠压检测、连接器未插稳时的开载检测
  • 高性能 MCU:运行频率为 170MHz 的 STM32G431CB Arm Cortex-M4,具有经典 EN/DIR/STEP 接口、CAN-Bus、I2C、UART 和支持 PD2.0 的 USB Type-C、
  • 紧凑耐用的设计:38x38mm PCB,可选铝制外壳,用于散热和机械保护,高度仅为 7.5mm(带连接器时为 10mm)。
  • 工作温度范围:-25 至 +80 摄氏度     

 

软件部分

主要包括以下功能代码组件:

运动控制,负责与电机驱动芯片及其运动的接口。

1).TMC2209 UART 驱动程序控制库

2). 根据给定参数,从 t 开始定期计算函数  [delta steps / dt]:

3). 不同运动模式算法

位置监控器

1).TLE5012 SPI 编码器库

2).绝对坐标控制器

3).步进电机位置控制器

4).位置误差检测器

错误恢复处理系统误差补偿算法。        

  • 向层次结构中的上一级控制器发出简单的位置错误通知
  • 回滚并执行最后一条导致错误的指令
  • 主动 PID 补偿

     

运动规划器负责将抽象命令转换为运动控制算法的标准格式。  

  • G 代码叠加
  • Klipper 叠加
  • 阶梯导轨接口处理
  • UART/I2C/CAN-Bus 的定制叠加

     

系统参数控制,确保系统安全运行和错误检测 

  • 工作电压
  • 防止过热
  • 接口错误预防
  • 电机连接检测
  • 编码器磁铁存在检查

     

附加算法

  • 无传感器停车
  • 工作区自动检测
  • IMU 数据处理器
  • PowerDelivery UCPD 控制器
  • RTC 和独立操作系统         

     

应用场景

  • 学习平台
  • 数控机床和 3D 打印机
  • 机器人与自动化系统
  • 协作机器人
  • 摄像机和望远镜稳定系统
  • 实验室设备
  • 工业运动控制系统
  • 触觉和力反馈系统

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注