我们在2014年01月16日在中电网上举办了“电机控制开发中基于模型的设计”在线座谈。
本研讨会中,我们介绍了基于模型的设计(MBD),并讨论这种设计方法如何加快产品上市时间以及提升产品质量。涉及的主题包括:软件工具、工作流程、高级测试和嵌入式的代码开发。
这里分享研讨会中具有代表性的工程师与ADI专家之间的技术问答供大家参考,并附上讲义PDF资料供大家下载哦。关于电机控制、关于ADSP-CM40x相关的任何问题,欢迎跟帖提出,专家第一时间给予专业解答!
【问】 |
请问ADSP-CM40X在电机控制中有哪些优势 |
【答】 |
最快的ARM CORTEX-M4F,最高的ADC精度,最大的内置SRAM,FLASH,最强的SINC滤波,还有完备的系统安全性考虑。可以轻松完成双轴甚至3轴的控制。如果需要,可以发邮件,我为您提供独立第三方的具体分析数据。 |
【问】 |
MBD的设计流程是什么? |
【答】 |
针对今天的电机控制模型: 1 工厂建模:电机、负载、电力电子等 2 接口建模:传感器、设备驱动 3 控制器建模:三相永磁电机磁场定向控制 4 分析和综合:第1至3步创建的模型用于确定工厂模型的动态特性,系统调谐和配置 5 验证和测试:离线仿真和/或实时仿真,研究动态系统的时间响应 6 部署到嵌入式目标 自动代码生成,测试和验证 |
【问】 |
请问专家,基于模型的设计,能否提高设计速度和效率? |
【答】 |
这正是基于模型设计的优势。 |
【问】 |
可以FOC控制吗? |
【答】 |
这就是一个FOC控制的例子 |
【问】 |
请问哪里可以下载到MATLAB\SIMULINK及IAR配套的开发软件? |
【答】 |
在Matlab官网和IAR的官网可以下载安装程序。如果需要本次演示的Simulink模块,可以发邮件到processor.china@analog.com,我们会发送给您。基于IAR的ADSP-CM40X驱动可以在ADI官网上下载,https://www.analog.com/en/processors-dsp/cm4xx/products/index.html或者https://www.analog.com/en/evaluation/cm40x-ez/eb.html 的product download一栏 |
【问】 |
DSP-CM40X可否实现对无相位传感器的控制,请专家帮忙解答下[ |
【答】 |
无传感器的控制由于没有位置反馈,必须通过电流来计算反电动势,所以电流反馈的精度非常重要,CM40X内置16位AD,可以达到13位以上的ENOB,同时配备SINC3滤波器硬件模块,对SIGMA-DELTA ADC的处理起到极大的帮助,比目前任何其它处理器都更适合无传感器控制的精度提高。 |
【问】 |
代码开发用什么语言? |
【答】 |
我们的演示里,Simulink生成的是C语言,IAR里也是C语言,您也可以选用C++ |
【问】 |
MATLAB程序与硬件仿真的接口采用的是啥接口 |
【答】 |
我们的系统里用的是UART |
【问】 |
老师,工厂建模,接口建模和控制器建模如何不同又如何相互连接? |
【答】 |
它们使用的模型不同,工厂建模这里是指对电机建立模型,接口建模是指对传感器、AD等建模,控制器建模是对算法建模,每个模块都有它的输入输出参数,模块之间通过这些参数相连。 |
【问】 |
继续刚才的问题,而MCU工程师则把外设驱动和接口做好,并把matlab编译的控制软件代码移植到MCU中,然后实际运行验证。这样基于模型的设计分成两条并行的流程,matlab和MCU都可以实现控制功能,完成验证和测试? |
【答】 |
是的,只要接口统一。您可以申请我们的例子学习一下。processor.china@analog.com |
【问】 |
MATLAB可以实现对电机算法的实时仿真吗?如何实现的 |
【答】 |
实时仿真需要考虑系统运行环境,在我们的模型里对一些情况有所考虑,但不是很全面。但是我们生成C语言代码之后,在真实系统上运行的结果,包括电流速度力矩都都可以反馈到Matlab监视窗口,客户可以看到实时运行的结果。 |
【问】 |
ADI公司可提供哪些供设计用的模型?如何获得? |
【答】 |
请发邮件到processor.china@analog.com我为您提供完整的模型 |
【问】 |
电源板从哪能够购买?有没有原理图在网络上下载.能不能提供一下链接? |
【答】 |
请发送邮件到processor.china@analog.com,我们会发原理图给您。电源板是美国第三方设计的,支持中国客户比较麻烦,但是原理图可以免费提供。 |
【问】 |
请专家详细介绍ADSP-CM40x处理器中模拟信号的主要性能.谢谢! |
【答】 |
内置两个16位ADC转换器,每个采样率2.6MSPS, 有效位数13位以上。可与PWM, 编码器等同步,精确控制采样时间 |
【问】 |
ADI的M4F与ARM原型有什么差异?有哪些新功能? |
【答】 |
内核方面与M4F相同,减少了中断优先级个数(适应系统外设的多少),总线和memory上增加了奇偶校验CRC校验、DMA带宽监控、外设之间的触发器。在外围增加了晶振看门狗,信号看门狗,SINC3滤波器,13位有效位数的16-24通道ADC. 总结起来就是业界最快的内核速度,最大的内置SRAM和flash,最高的ADC精度,最强劲的硬件加速单元(SINC3/4,谐波分析) |
【问】 |
ADSP-CM40X在电机控制方面有应用案例吗,都有哪些,谢 |
【答】 |
目前已经有一些单轴和双轴控制的案例,在全国巡回演示中,客户对控制效果非常满意。我们需要得到客户同意才能公布客户信息。 |
【问】 |
MATLAB中的相关库函数代码是开放的不 |
【答】 |
根据license的不同,开放程度也不同。相信你可以解决license的问题 |
【问】 |
对于精度能控制到什么程度?在软体上有什么优势吗》? |
【答】 |
仿真的精度和实际的精度总是会有一些差别。因为实际应用中的环境差异会比较大,噪声较多,所以在建模的时候,如果充分考虑各个步骤的噪声,把噪声也引入模型中,仿真的效果会明显提高。仿真的精度可以很高,但是没有意义。实际系统中的精度主要有电流反馈,速度反馈,PWM精度,算法精度,实时性等因素决定,ADI的ADSP-CM40X提供最高的内置AD精度(16位,ENOB13位),最快的M4内核240M,还有SIN3/SINC4滤波,可以节约130M内核周期。 |
【问】 |
想问下有哪些相关电机控制的MATLAB书籍能参考学一下 |
【答】 |
比如 《电力电子与电机拖动系统的Matlab仿真》 机械工业出版社 |
【问】 |
控制的马达功率有多高? |
【答】 |
本demo的功率是480W。你可以选择不动的电机,在电机模型里修改参数即可 |
【问】 |
它们建模采用那些工具或软件? |
【答】 |
Simulink和C语言 |
【问】 |
请教专家SINC滤波器有哪些作用?请结合应用详细讲解一下好么 |
【答】 |
SIGMA-DELTA ADC是精度最高的ADC,它的信号经过调制发送到DSP或其他处理器,必须用SINC3/SINC4滤波解调。 |
【问】 |
请问你们的演示平台可用于哪些产品的设计? |
【答】 |
PMSM电机的FOC控制 |
【问】 |
新手,怎么能快速入门电机控制方面的MATLABSIMULINK及IAR?老师给讲讲呗 |
【答】 |
IAR的编程环境和你用过的其它环境区别并不大。我的建议是买几本书籍,实际动手建模。如果在用CM40x时遇到问题,可以发邮件给processor.china@analog.com |
【问】 |
相关应用的开发板信息及相关程序在哪儿能下载呀 |
【答】 |
https://www.analog.com/en/evaluation/cm40x-ez/eb.html可以下载ADSP-CM40X的驱动,Simulink模块请联系processor.china@analog.com |
【问】 |
磁场定向控制是通过什么来实现的? |
【答】 |
FOC控制是一个成熟的模型。通过速度,电流,力矩的PI控制,SVPWM等来完成,请参考专业书籍 |
【问】 |
请问老师在MATLAB中产生的代码如何与IAR中的代码相互调用?能讲解一下么?谢谢 |
【答】 |
C语言的函数可以生成S-FUNCTION,被simulink调用,Matlab生成的代码包括程序和头文件,头文件里定义的变量和程序接口可以被IAR的其它程序使用和调用。我还是把我们的例子给你研究一下吧。processor.china@analog.com |
【问】 |
ADSP-CM40X可以运行LINUX操作系统? |
【答】 |
CM40X本身的硬件是可以支持uclinux的,不过目前ADI没有计划移植。我们建议的首选操作系统是ucose III |
【问】 |
请问:通讯接口支持哪几种,对网络距离有何要求?谢谢 |
【答】 |
ADSP-CM40X支持UART, SPI, USB, ETHERNET等等接口。网络距离遵循五类线链接的标准 |
【问】 |
请问MATLAB有电机控制方面的视频教程吗,专家能否给链接看下 |
【答】 |
Motor control motor control examples that covers the whole development cycle (including debugging): http://www.mathworks.com/discovery/motor-control.html Specific information on embedded code generation: http://www.mathworks.com/products/embedded-coder/ Webinar on software and Hardware in the loop debugging: |