
✅ 博主简介:擅长数据搜集与处理、建模仿真、程序设计、仿真代码、论文写作与指导,毕业论文、期刊论文经验交流。
✅ 具体问题可以私信或扫描文章底部二维码。
(1)基于滑模观测的IPMSM转子位置鲁棒观测方法设计
在车用内嵌式永磁同步电机(IPMSM)无位置传感器控制的研究中,针对实际应用环境中参数变动和外部干扰的问题,提出了一种基于滑模观测器(Sliding Mode Observer, SMO)的转子位置估计方法。此方法旨在提供一种鲁棒性强、能够适应参数变化的转子位置和转速估计方案。首先,在两相静止坐标系下建立了IPMSM的电气方程,以此作为系统模型的基础。考虑到实车运行过程中不可避免的参数不确定性,如温度变化引起的电阻变化、负载波动导致的电感变化等,SMO的设计充分考虑了这些因素的影响。通过引入适当的切换函数,SMO能够在不确定环境下维持稳定的性能,即使在面对较大的参数偏差时也能准确地跟踪转子的位置和速度。此外,为了进一步提高系统的抗干扰能力,还对观测器进行了优化,确保其不仅能在理想条件下工作良好,而且在存在噪声或其它形式的扰动时依然能保持精确的估计。这种方法的成功实现为后续的控制系统设计提供了可靠的位置信息,是整个无位置传感器控制策略的核心组成部分之一。
(2)基于模型参考自适应系统的电机参数在线估计与偏差补偿
对于IPMSM而言,由于实际运行条件的变化会导致电机参数发生偏移,这将直接影响到输出转矩的准确性。因此,本研究采用了基于模型参考自适应系统(Model Reference Adaptive System, MRAS)的方法来进行实时参数估计。MRAS的基本思想是构造一个理想的参考模型,并通过调整实际系统的参数来使其行为尽可能接近这个模型。具体来说,在这里我们构建了一个理想的IPMSM模型作为参考,然后根据实际测量的数据不断更新电机的实际电感值和永磁体磁链等关键参数。这一过程可以通过比较实际输出转矩与指令转矩之间的差异来驱动,即当两者之间出现误差时,说明当前使用的参数可能不再准确,需要进行修正。通过这种方式,不仅可以动态地获得最新的电机参数,还可以计算出电磁转矩的实际值,从而为后续的偏差补偿提供依据。这种在线估计和补偿机制大大提高了转矩控制的精度,确保了即使在复杂多变的工作环境中也能维持稳定的性能表现。同时,它还减少了对外部传感器的依赖,简化了系统结构,降低了成本。
(3)非线性鲁棒控制器设计及高频注入法的应用
为了克服经典滑模控制容易产生抖振现象的问题,并提升观测器在各种工况下的估计效果,本研究引入了高阶滑模观测器(Higher Order Sliding Mode Observer, HOSMO),并结合反演控制理论设计了一种非线性鲁棒控制器。HOSMO通过增加额外的状态变量,使得观测器能够在不损失快速响应特性的前提下有效抑制抖振,进而得到更加平滑的转子位置和转速估计结果。与此同时,考虑到低速阶段无位置传感器控制的挑战,本文还将高频注入(High Frequency Injection, HFI)技术应用于转子位置检测。HFI通过向定子绕组施加高频电压信号,利用感应电流中包含的信息来推断转子的具体位置。该方法特别适用于极低速甚至零速情况下的位置估计,弥补了传统SMO方法在低速区间的不足。通过智能选择合适的算法组合——即在高速区间采用HOSMO,而在低速区间切换至HFI——可以实现全范围内的高效无位置传感器控制。此外,针对转速控制方面,所提出的非线性鲁棒控制器融合了滑模控制和积分控制的优点,可以在保证快速响应的同时有效地减少稳态误差。这样的设计不仅增强了系统的整体稳定性,也为应对复杂的动态环境提供了强有力的保障。
最后,为了验证上述方法的有效性,我们在实验室搭建了一个模拟车用场景的IPMSM-两挡自动变速器集成驱动系统实验平台。通过对电机的各项参数进行精确测量,并标定最大转矩/电流比(MTPA)和弱磁控制(FW)的电流分配关系等,确保了实验条件的真实性和可靠性。随后,分别开展了无位置传感器转矩控制和转速控制的实验研究,测试结果显示:无论是在稳定状态下还是在频繁加速减速的过程中,所开发的控制系统均能保持较高的精度和良好的动态特性。特别是在集成驱动系统中,该控制策略成功实现了从低速到高速的平稳过渡,证明了其在实际应用中的可行性和优越性。这些成果为进一步推广无位置传感器控制技术在电动汽车领域的应用奠定了坚实基础。
# 模拟滑模观测器(SMO)转子位置估计函数
def sm_observer(current_voltage, current_current):
# 假设的内部状态更新逻辑(简化示例)
estimated_position = 0.0 # 初始估计位置
estimated_speed = 0.0 # 初始估计速度
# 更新观测器状态以估计转子位置和速度
# 这里省略了具体的数学运算,假设已通过某种方式完成状态更新
return estimated_position, estimated_speed
# 模拟高频注入(HFI)转子位置检测函数
def hfi_detection():
# 模拟施加高频信号并分析响应以确定转子位置
detected_position = 0.0 # 假设检测到的转子位置
return detected_position
# 模拟非线性鲁棒控制器的转速控制函数
def robust_controller(target_speed, current_speed, estimated_position):
# 计算控制量以调节电机达到目标速度
control_signal = target_speed - current_speed # 简化示例,实际会更复杂
print(f"Adjusting motor speed to {target_speed} rad/s.")
return control_signal
# 示例主循环
if __name__ == "__main__":
target_speed = 500 # 目标转速 (rad/s)
current_speed = 0 # 当前转速 (rad/s)
is_low_speed = True # 标记是否处于低速区间
while True:
if is_low_speed:
# 在低速区间使用HFI检测转子位置
position = hfi_detection()
else:
# 在高速区间使用SMO估计转子位置
position, speed = sm_observer(0, 0) # 假设电压和电流为输入
# 更新当前速度
current_speed = speed
# 使用非线性鲁棒控制器调整电机速度
control_signal = robust_controller(target_speed, current_speed, position)
# 模拟速度增加
current_speed += 1
# 判断是否进入高速区间
if current_speed > 50 and is_low_speed:
is_low_speed = False
print("Switching to SMO for higher speed operation.")
# 达到目标速度后结束循环
if current_speed >= target_speed:
break

1129

被折叠的 条评论
为什么被折叠?



