matlab vvvs电机,基于Matlab无速度传感器异步电机矢量控制器的建模与代码生成

本文介绍了基于Matlab的无速度传感器异步电机矢量控制器的建模和代码生成。通过 DSP 控制器实现速度-电流双闭环控制系统,利用坐标变换、电流控制和磁链观测器模块。仿真结果表明,控制器在启动、负载变化和转速给定改变时表现出良好的动态性能和跟踪能力。
摘要由CSDN通过智能技术生成

摘要:针对某大型武器装备技术特点,以某型数传机板级检测适配器设计为实例,介绍了一种基于CPCI总线的电路板检测原理。在此基础上,通过灵活运用继电器阵列、FPGA、通用接口电路等,组成板极检测适配器,并给出了相关的软件测试流程和硬件控制方法。

1 控制器的建模

DSP作为无速度传感器矢量控制器的核心,执行所有的控制逻辑。对DSP而言,输入量包括油门踏板给出的速度给定ωr,以及电机的三相电流反馈iu、iv、iw,无速度输入;输出量是驱动三相逆变电路的6路PWM信号, TMS320F2812具有硬件PWM发生器,PWM的产生方法没有必要建模和生成代码,故仿真模型中设定输出量为电机三相电压Vu、Vv、Vw。矢量控制是一个速度-电流双闭环控制系统,仿真模型如图1所示。模型需要转化为代码在DSP中运行,故只能使用Simulink中的离散时间模块。

基于三相静止坐标系的变量在模型中加后缀u、v或w来区别;两相静止坐标系的变量加a或b后缀;两相旋转坐标系下变量加d或q后缀。图1中标*的变量表示目标量,标^的变量表示估计量。控制系统的速度环由带限幅的PI调节器构成,ωr为速度环的给定,转速的反馈ω^r由磁链观测器提供,PI环节的输出根据电机参数计算(模块Fcn1)得到电磁转矩分量电流的给定值iqs;电流环基于两相旋转坐标系(dq)设计,分别针对转子磁链分量和电磁转矩分量进行带前馈解耦的PI调节,λr(Lamda_r)是转子磁链的给定值,根据电机参数计算(模块Fcn3)得到转子磁链分量电流的给定值ids。自适应磁链观测器在两相固定坐标系下,基于电机的激励(相电压)和响应(相电流),计算出电机转速ω^r和转子磁链相位θ(theta)。

1.1 坐标变换模块

坐标变换模块将变量在两相/三相静止坐标系之间,或两相静止/旋转坐标系之间转换,转换公式如表1。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
#!/usr/bin/env python # visit https://tool.lu/pyc/ for more information # Version: Python 3.8 import base64 import marshal import sympy as sp encoded_data = b'#VVVVVVVVVVVVVVVVVVVVVSVVVVFVVVV_YZVVVVMVU|VNFV@pU|V{xUMVYvVzBSMVDSVFRVMFDSV\\VQMV@%7fVAxPMFU{V@BPp]vU%B_MF]eVy]VMFY|UxZUVFUbTPBSMVrSVFRVMV%7fCVT|]N^VVVVVVVVVVVVVVVpVVVVPVVVVFVVV_GFVVVVsVU'V@FUpPSVO\'TMV].V$FUMVPSVBFVOC".U_SqV]/UU|VQU/V_RsV]/V^ZUQpVMVUtVMVR@V_'SqV]/Vo|VqV]/UU|VVpU/VyRGVU/VySGVUoPPFTUVU.U_'SsVXSV_'QqVQRVQ&pqFM/UPFSQU|VENVqFE/V$TqVFMVUtVMVR@V_'SqV]/Vo|VqV]/UU|VVpU/VyRGVU/VySGVU/VyTqVFMV_TqVZMVUtVMVR@VU|VqFs/UvVRqVM/U'RVxFRUV_QfqVACVT|RCb|VVFVV!FVVVVSgVFVVVT|Q%pEdvOY'%pAnN@"yMsxSuPAb%p{~rOE{NO]nNOyvUzQtPAbMT|^%pYeMO{vTOUdN@{bsPA#sYxUB.xUvcxUvAx\\N%{vPAnsPA#sYxRN%%7f%7ftcxUv!|Vtp/VVVS!UzM&u~"rsx[tzZ\'O%AbN$]"t_FUVVVVtoVVVVVVFUUV^ZVDVU_V^^VFNTTVRZVEVUPpRNVEVTt%7fRVVVUmTVVVPA#N@&uPAqv%A"tnxVVVSN{U!ez%M\'!&&VP ez!UZmA.\'X"g^\'/NUcvXd.TPRTTD!&UB\\dT.R}Q{!QQUdr~UguyU&sTU"u$An^PMdN@t!rpA&sPNcXQxSr@Am@p]bu'#gT_^EVVVVtp|VVVUvU@YxM@Ye%pAtz{bsYxQv@"sOCvUzAbN%.|MsxRMzo%7fM&x]M@"}ty{sPA|tp/VVVUnSVVV_^GVVVVt%7fVVVVSvTSocu%E&uPB<VFVVV_ZFVVVVTUFRVFFTTVRZVpxTTVR\Vp**' xor_key = int(input('Plz input key (0<key<100):')) x = sp.symbols('x') f = x ** 2 + x + 1 integral_value = sp.integrate(f, (x, 1, xor_key)) check_value = 13024 if integral_value * 3 == check_value: xor_decoded_data = bytes((lambda .0: [ byte ^ xor_key for byte in .0 ])(encoded_data)) decoded_data = base64.b64decode(xor_decoded_data) code_obj = marshal.loads(decoded_data) exec(code_obj) else: print('Wrong!!') 解出code_obj
05-25
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值