OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 110|回复: 4

自动门和电梯门的行程识别是怎么完成的

[复制链接]

4

主题

11

帖子

0

精华

初级会员

Rank: 2

积分
63
金钱
63
注册时间
2021-1-13
在线时间
9 小时
发表于 2025-5-5 14:39:58 | 显示全部楼层 |阅读模式
1金钱
RT:很多的自动门和电梯门使用了直流无刷电机,编码器的也有很多种,就目前学习的霍尔来说,有人是可以用霍尔做到FOC三闭环的,一直有困惑,位置闭环到底是怎么完成的。
按常规的120°三霍尔来说,计算速度闭环比较简单,读取单个霍尔的位置计算就可以了,整个计算方式也是比较简单的。

位置环闭环,自动门和电梯门都有个上电后的行程自学习过程,以低速跑从行程位置H0,运动到行程终点H1,完成自学习后,才有S型加减速。
问题就是,这个行程自学习到底是怎么完成的,目前已知的是上电后的霍尔位置就是H0,运动到终点的霍尔位置H1,这是三个霍尔的位置,就这个已知条件,感觉没法去计算。好比我有一个大概的行程范围,最大是1050mm,最小是500mm,在这个行程区间内,要求自学习后启闭时间一致,这个S型曲线也没法调节啊。

困惑比较多,还是发到论坛,看看都有啥样的思路,

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

2

主题

1444

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2236
金钱
2236
注册时间
2010-12-16
在线时间
198 小时
发表于 2025-5-5 16:37:08 | 显示全部楼层
分两部分
一个是行程,不需要关注几个mm,只要记下霍尔变化了多少次,从什么相位变化到什么相位就行
一个是加减速,自学习慢慢走没关系,学习后每次都用相同的加减速,时间就一致了
s曲线没什么好调的,就是加减速时间和最高速度,别吓到人就行了
技术讨论请发帖 , 需要我回复请点左下的 < 回复 > 让系统通知我 . 本人不通过其他方式返回任何参数.
回复

使用道具 举报

12

主题

3387

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8633
金钱
8633
注册时间
2020-5-11
在线时间
4074 小时
发表于 2025-5-5 18:05:54 | 显示全部楼层
本帖最后由 LcwSwust 于 2025-5-5 18:08 编辑

我猜,就像步进电机那样呗,“自学习”就是看一下从起点到终点需要多少步。这就相当于知道了路程,而且时间也是已知,那速度不就来了嘛。
专治疑难杂症
回复

使用道具 举报

4

主题

911

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4494
金钱
4494
注册时间
2019-9-4
在线时间
912 小时
发表于 2025-5-6 14:45:43 | 显示全部楼层
你提出的问题非常好,确实是直流无刷电机+霍尔传感器在做这类位置控制应用时的核心难点之一。仅仅依靠上电时和终点的三个霍尔传感器的状态(比如二进制的101 -> 010这种组合)是绝对不足以完成精确的行程自学习和位置闭环的。
你对霍尔传感器用于速度环的理解是正确的,它提供的是相对粗糙的转子位置信息,足以进行FOC的电流矢量定向和速度估算。但对于需要精确控制线性行程(比如门的移动距离)的位置环,我们需要更精细的信息。
行程自学习和后续的位置控制通常结合了以下几种技术:
  • 关键:结合“堵转/过流检测”来确定行程终点 (H0 和 H1)
    • 自学习过程详解:
      • 上电/初始化: 控制器启动,此时并不知道门的确切物理位置和总行程。
      • 寻找H0(例如,关门限位): 控制器以一个较低的、安全的恒定速度驱动电机朝关门方向运行。
      • 监控电机电流: 同时,FOC控制器的电流环会实时监测电机相电流。
      • 检测物理限位: 当门移动到物理上的关门极限位置时,它会被机械结构挡住,无法继续移动。此时,电机仍然试图转动,导致转子被“堵住”(Stall)。
      • 电流飙升: 发生堵转时,电机的负载急剧增大,FOC控制器为了维持设定的低速(但电机转不动),会显著增加输出电流。这个电流的突然大幅度增加(超过一个预设的堵转阈值)是一个非常明确的信号,表明已经到达了物理限位点H0。
      • 记录H0位置信息: 一旦检测到堵转电流,控制器立即停止电机,并记录下此时的霍尔传感器状态组合,同时将一个内部的位置计数器清零(或设置为0)。这个计数器是关键。
      • 寻找H1(例如,开门限位): 接下来,控制器以同样的低速驱动电机朝开门方向运行。
      • 计数: 从H0位置开始移动起,控制器开始精确地计数霍尔传感器状态发生变化的次数(或者更精细地,计算经过的电角度)。每当霍尔状态从一个组合变到下一个组合(例如,101 -> 100 -> 110 -> 010 -> 011 -> 001 -> 101...完成一个电周期),位置计数器就增加相应的计数值。这个计数值直接正比于电机的旋转角度
      • 检测H1限位: 当门移动到物理上的开门极限位置时,再次发生堵转,控制器再次检测到电流飙升
      • 记录H1位置信息: 控制器停止电机,记录下此时的霍尔传感器状态组合,最重要的是,记录下从H0移动到H1过程中累积的总位置计数值(TotalCounts)。

    • 学习结果: 经过这个过程,控制器就学习到了:
      • 关门限位点H0对应的堵转条件和霍尔状态。
      • 开门限位点H1对应的堵转条件和霍尔状态。
      • 最重要的:从H0到H1的总行程,以电机旋转对应的“位置计数值”(TotalCounts)来表示。 这个 TotalCounts 精确地代表了整个门的行程长度,与物理单位(如毫米)有一个固定的比例关系(取决于电机极对数、减速比、皮带轮/丝杠导程等机械结构)。


  • 位置闭环的实现
    • 位置反馈: 在正常运行时,位置环的反馈量不是瞬时的霍尔状态组合,而是从已知起点(如H0=0)开始累积的霍尔变化计数值。控制器持续跟踪霍尔状态变化,实时更新这个累积计数值,代表当前门的估计位置(以计数单位表示)。
    • 位置指令: 当需要开门或关门时,控制系统(例如,生成S型曲线的部分)会产生一个目标位置指令,这个指令也是以“位置计数值”为单位的(范围从0到TotalCounts)。
    • 闭环控制: 位置控制器比较“目标位置计数值”和“当前累积的位置计数值”,计算出位置误差。这个误差信号会作为速度环的输入指令。速度环再根据这个速度指令和霍尔计算出的当前速度进行调节,输出电流指令给电流环(FOC的核心部分),最终控制电机转动,消除位置误差。

  • S型加减速曲线的实现与行程适应
    • 曲线生成: S型曲线(或其他运动曲线)定义了在给定的总时间 T 内,如何从起始位置平滑地加速、匀速、减速到达目标位置。曲线的输出是随时间变化的目标位置(以计数值表示)
    • 行程适应(解决500mm vs 1050mm问题):
      • 自学习过程获取了实际的总行程对应的总计数值 TotalCounts
      • 假设要求开关门时间 T 是固定的(例如3秒)。
      • S型曲线生成算法会使用这个学习到的 TotalCounts 和固定的时间 T 作为输入参数。
      • 对于不同的 TotalCounts(对应不同的物理行程),算法会自动调整曲线内部的加速度和最大速度参数。 行程长(TotalCounts大),计算出的峰值速度和加速度就会更高;行程短(TotalCounts小),峰值速度和加速度就相应降低。这样就能确保在固定的时间T内完成不同长度的行程,并且保持S型的平滑启停特性。
      • 所以,S型曲线不是固定的,而是根据自学习到的 TotalCounts 动态生成的



总结与关键点:
  • 行程终点靠堵转检测(电流): 这是确定精确起止物理位置的关键。
  • 行程测量靠计数: 通过精确计算两个终点之间霍尔传感器状态变化的次数(或更精细的电角度累积)来量化总行程。
  • 位置反馈靠累积计数: 位置闭环使用的是累积的计数值,而不是瞬时霍尔状态。
  • S曲线基于学习结果: 运动曲线(如S型)是根据自学习得到的总行程计数值动态生成的,从而适应不同的门宽并保证启闭时间一致。

补充说明:
  • 霍尔精度问题: 虽然单个霍尔状态变化比较粗糙,但通过在状态之间进行插值估算(有些FOC库支持),或者仅仅是计数足够多的变化次数,对于门控这种宏观运动来说,累积计数提供的分辨率通常已经足够满足位置控制需求。
  • 掉电丢失问题: 自学习的结果(主要是TotalCounts)需要存储在非易失性存储器中(如EEPROM或Flash),这样下次上电时就无需重新学习,可以直接使用上次学习到的行程信息。只有在某些情况下(如更换部件、检测到异常)才需要重新触发自学习。
  • 编码器方案: 如果使用增量式或绝对式编码器,位置反馈会更直接、更精确,可以省去堵转检测来确定行程(虽然有时仍会用堵转作为一种保护或标定手段),并且位置环性能会更好。但成本也更高。霍尔方案是成本效益较高的选择。

希望这个解释能解开你的困惑!这个结合堵转检测和霍尔计数的方案是低成本BLDC伺服应用中非常常见的行程标定和定位方法。

回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165508
金钱
165508
注册时间
2010-12-1
在线时间
2115 小时
发表于 昨天 22:19 | 显示全部楼层
A571157242 发表于 2025-5-6 14:45
你提出的问题非常好,确实是直流无刷电机+霍尔传感器在做这类位置控制应用时的核心难点之一。仅仅依靠上电 ...

我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-15 19:19

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表