MATLAB实现永磁同步电机控制

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1©2017TheMathWorks,Inc.永磁同步电机(PMSM)解决方案MathWorks2目录▪解决方案理念–基于模型的设计▪解决方案1–控制(驱动)侧建模、验证以及代码生成▪解决方案2–被控对象侧建模▪所需产品和咨询服务一览表3基于模型的设计4In-the-LoopTesting(在环测试)MIL主要考察模型的逻辑正确性。SIL指的是将驱动器的部分通过EmbeddedCoder生成C代码,然后将C代码编译后和电机模型联合测试。SIL主要考察C代码生成的正确性。PIL指的是将驱动器的部分生成代码加载到处理器上,通过外围接口和电机模型联合测试。PIL主要考察C代码到汇编语言的编译链接以及在处理器上执行的正确性。HIL指的是将成品电机驱动器和在高速实时工控机上运行的电机模型,通过实时总线进行联合测试。HIL主要考察在实时环境下电机驱动器的逻辑和性能。做各级在环测试的理由:1)减少对实物测试的依赖2)模拟各种难以模拟的工况3)增加开发效率5Model-in-the-loop在建模和仿真的过程中可注意如下几点:•可通过SimulinkCheck进行模型的静态检测,例如MAAB、ISO26262、MISRA等检查规则•可通过SimulinkTest进行模块级别单元测试,同时可通过SimulinkCoverage检测模型的覆盖率•可通过SimulinkDesignVerifier进行模型死区检测和自动生成一些测试用例(用来补足模型的测试覆盖率)6CompiledCCodeS-Function(WindowsDLL)CodeGenerationSoftware-in-the-loop7Processor-in-the-loopProductionProcessorCodeGeneration8Real-TimeHILSystemHardware-in-the-loopWiringandSignalConditioningECUorMicroControllerCodeGenerationCodeGeneration9代码生成▪驱动部分生成代码(通过EmbeddedCoder)▪MathWorks推荐使用非HardwareSupportPackage方式作为最终生产环境–生成的代码为应用层代码,调用芯片(板卡)厂商自带驱动–源代码集成有助于差错和通过相关安全认证–HardwareSupportPackage主要用于前期验证▪代码为标准C,可以和任何操作系统、调度模式紧密集成▪效率高、可读性高、可靠性高▪支持AUTOSAR▪EmbeddedCoder通过IEC61508、ISO26262、IEC62304、IEC50128、IEC61511认证10符合AUTOSAR标准的控制软件开发▪AUTOSAR是一种汽车电子的标准架构,由ASW、RTE、BSW等层次组成。Simulink可通过EmbedderCoder产生符合AUTOSAR架构的代码,该代码直接调用RTE接口。▪一般来说,Simulink支持两种开发模式:–自上而下模式–指的是Simulink可以导入如DavinciDeveloper等基于标准AUTOSAR的架构工具的ARXML文件,然后在此基础上进行ASW内部的runnable的设计,在设计完成后可生成可调用RTE的代码–自下而上模式–指的是Simulink可以已经做好的控制模型,将原有的非AUTOSAR输入输出接口配置成AUTOSAR的输入输出接口,形成标准的ASW。此后,可生成可调用RTE的代码▪Simulink对AUTOSAR的支持可通过从网上下载AUTOSAR支持包来完成,无需额外的许可证支持。11ISO26262标准的合规(一)▪MathWorks产品对于ISO26262标准的合规主要体现在第六章和第八章。第六章为软件部分,第八章为工具和支持过程。▪在第六章中,ISO26262提出了15个表格。每个表格中针对不同的ASIL等级,对一些软件开发过程中的技术做了不同层次的要求。用户需要证明其软件开发过程符合这些要求。MathWorks在IECCertificationKit中的Model-BasedDesignforISO26262文档中对于每一个表格都有相应的技术应对。12ISO26262标准的合规(二)▪第八章中,ISO26262对开发过程中使用到的软件做了一些规定。MathWorks的EmbeddedCoder,SimulinkDesignVerifier,SimulinkCheck,SimulinkCoverage,SimulinkTest,PolySpaceBugFinder,PolySpaceCodeProver都被TUV严格做了以下审核和认证:–SUV出具了对这些产品的工具认证报告–MathWorks推荐了这些产品的使用流程–TUV针对以上使用流程的若干使用场景做了TCL(工具置信度)的事先划分▪在实际认证过程中,如果为TCL1则无需做额外的工具资格认定(toolqualification),例如EmbeddedCoder如果严格按照MathWorks推荐的流程来使用,则为TCL1▪如果为TCL2或者TCL3,则用户需要做工具资格认定,MathWorks提供了工具资格认定所需的测试用例,用户只需要运行即可–用户须为以上被预认证过的产品提供一份TQP(ToolQualificationPackage)和CDT(ConformanceDemonstrationTemplate),用来说明该产品是如何被资格认定的。MathWorks提供了文档模板▪以上的证书、模板和测试用例都可在IECCertificationKit中找到。13电机建模(被控对象建模)▪MathWorks能提供三种不同精度的永磁同步电机被控对象模型:–线性模型–转矩和电流为线性方程–非线性饱和模型–转矩和电流的关系为非线性饱和型–饱和加空间谐波模型–转矩和电流的关系为饱和加空间谐波型14线性模型的建立▪Simulink中的SimscapePowerSystems以及PowertrainBlockset都提供了线性模型供设计参考。▪线性模型所需参数:▪如何获取参数:15非线性饱和模型的建立▪Simulink中的SimscapeElectronics以及PowertrainBlockset都提供了非线性饱和模型供设计参考。用户可通过两种方式获取数据后填充这些模型(即填充NonlinearFlux和Current表格)▪这两种获取数据方式为电机台架测试(DynoTesting)和有限元分析(FEA)-0.1-0.0500.050.1-0.2-0.100.10.2-1500-1000-500050010001500d[v.s]q[v.s]iq[A]-0.1-0.0500.050.1-0.2-0.100.10.2-800-600-400-2000200d[v.s]q[v.s]id[A][]din[]qin[]qn[]dn1Z1Z[1]dn[1]qn[]qvn[]dvn1Z1Z[1]din[1]qin3[][][][][]22edqqdpTnninnin[]eTn[][1][][1][1][1][][1][][1][1][1]ddSdSdeqqqSqSqednnTvnRinnnnnTvnRinnndiLookupTableqiLookupTableCalculateFluxCalculateTorque[][1](1/)([][][1])rmrmSeLrmnnTJTnTnBn[][]ermnPPn[]LTn1Z[]en[1]enCalculateSpeed16饱和加空间谐波模型的建立▪饱和加空间谐波模型的建立只有通过FEA的方式获得,MathWorks工程师为用户提供了:–基本的饱和加空间谐波模型的Simulink模型框架–通过不同FEA(ANSYS,JMAG等)工具获取数据后的处理脚本(处理导入数据至模型框架)17所需产品模块(一):电机驱动控制部分模块作用Matlab科学计算平台,内置各种基本数学函数,包括算法开发、数据计算与分析以及图像显示、界面开发,为基本模块Simulink状态机、流程图仿真,主要用于逻辑算法建模Stateflow离散事件系统建模SimulinkCheck建模规范检查SimulinkCoverage功能测试后模型和代码覆盖率检查SimulinkTest用来建立测试单元平台,构建和管理测试用例SimulinkReal-Time提供实时仿真环境的软件部分,包括实时仿真内核与一系列板卡驱动,可以将模型编译下载到仿真机,实现实时仿真(需要SimulinkCoder)SimulinkDesignVerifier基于形式化的方法识别模型设计错误(自动进行模型分析而不需要测试用例);基于覆盖度以及设置的功能需求生成测试用例;属性证明并在存在不满足属性时生成相应的测试用例PolyspaceBugFinder源代码静态检查PolyspaceCodeProver形式化的方法(基于代码分析不需要测试用例)证明源代码里是否存在运行时错误(run-timeerror)18所需产品模块(二):电机被控对象部分模块作用Simscape物理建模平台,提供了一些基础的元器件模块SimscapeElectronics提供了为电路系统以及机电系统建模仿真的电路元器件库。包括各种半导体器件、驱动电路、电机、放大器模块、逻辑元器件等等,可以用来开发各种机电系统,或者分析各种电路结构SimscapePowerSystems提供用于建模和仿真电力系统的组件库和分析工具。组件库包括电力组件的模型,如三相电机、电气驱动器,以及针对诸如柔性交流输电系统(FACT)和可再生能源系统等应用的组件。谐波分析、总谐波失真(THD)计算、负荷流以及其他关键电力系统分析都自动化进行PowertrainBlockset提供了汽车动力系统中的物理模型库,控制系统参考设计库,以及整车仿真的示例19所需产品模块(三):代码生成部分模块作用MATLABCoder将MATLAB脚本生成C/C++代码SimulinkCoder将Simulink(Stateflow)模型生成C/C++代码(用于测试仿真)EmbeddedCoder将Simulink(Stateflow)模型生成C/C++嵌入式代码20咨询服务(一):电机控制模块C语言转MBD描述:选择一个大小合适的模块,例如速度控制、FOC、扭矩控制等。MathWorks技术顾问帮助从传统的C语言开发模式转化成MBD。服务描述预估天数(以服务部门具体计算为准)Simulink/Stateflow模块搭建10基于模型的测试环境建立,测试用例建立,测试覆盖率计算,20代码生成、系统集成10符合AUTOSAR模型的建立与配置(optional)1021咨询服务(二):高精度电机模型建立服务描述预估天数(以服务部门具体计算为准)线性电机模型的建立3非线性饱和模型的建立10饱和加空间谐波模型的建立15与电机控制模型联调、形成闭环10指导MIL/SIL/PIL/HIL20描述:基于电机台架的测试数据和FEA数据,建立高精度电机模型,然后与电机控制模型形成闭环控制。可进行各级在环测试22咨询服务(三):ISO26262-6流程咨询描述:在模型、代码生成、测试用例和覆盖度、各级在环测试的基础上,指导进行符合ISO26262-6标准的流程评估、修改和落地具体时长待评估后定(半年以上)关键活动•Requirementstraceability•Requirements-basedtestingandcoverageofmodels•ModelstandardscheckingusingSimulinkModelAdvisor•Reviews,staticanalysis,andinspectionofsoftwareandmodel

1 / 23
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功