0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何在基于模型设计的基础上,进行机电一体化开发

jf_f8pIz0xS 来源:控制工程网 作者:控制工程网 2021-04-14 16:11 次阅读

机电一体化设计是一个典型的多物理域集成的学科:电机设计和驱动属于电力电子学科;机械部件和液压系统的设计属于机械学科;而要准确地控制这些电机、机械和液压设备去完成任务,则需要控制学科。这些控制模块通常运行在 MCU微控制器)中。为了有序地控制协调各种部件进行工作,除了闭环控制本身之外,还需要在微处理器中运行复杂的软件程序。这属于软件学科。

Simulink 作为一个基于模型设计的平台,结合 Simscape 物理建模软件,从而为机电一体化系统设计提供了便利。

本文试图用一个 Drawworks (石油钻井绞车)的例子,来阐述如何在基于模型设计的基础上,进行机电一体化开发。

上图中钻井绞车系统为一个 Simulink 仿真模型,由物理模型、控制部分和操作界面组成。物理模型由钻井绞车的框架和滑轮、传动滚筒和液压制动器和异步电机组成,他们分别属于机械、液压和电气系统。

上层操控提供了丰富的界面,可使绞车运行在自动或者手动模式下;也可以调整挂载的高度和速度,以及提供相应的屏幕显示。当然为了保证挂载和绞车的安全,必须保证挂载在上升过程不能对绞车框架进行碰撞。

控制部分运行在 PLC(可编程逻辑控制器)中,通过判断绞车高度和上层控制命令,来输出速度指令和刹车指令,保证绞车的安全运行。PLC 在各种工业设备中应用较为广泛,Simulink 可以自动产生符合 IEC 61131 的结构文本 PLC 代码或者梯形图。

当然,代码生成的前提是模型的准确性。什么是“准确”的模型?这个问题很难回答 。所有的模型都是对物理世界的抽象。在不同的设计问题中,有不同的答案 。就本例来说,对于机械系统,Simulink 仿真的目的就在于找到一个合适的机械系统配置,从而为电机提供选型依据。找到了这些参数,机械模型就是准确的。

对于电机来说,模型永远不可能和实际电机完全一样。但在某些情况下,如果通过模型参数的选择,而导致模型的仿真结果和实际电机一致,那电机模型在这些情况下就是准确的 。

对于控制系统,如果达到了前期设定的控制精度和裕度要求,并且软件经过完整功能测试和覆盖度测试,那控制系统就是准确的。

MathWorks 提出的基于模型的设计(MBD)就是这样的理念:在系统设计的早期就进行多域系统仿真和确认;持续进行设计的验证和优化;最终生成高质量的代码。

机电部件选型

在设计的初期,系统工程师需要针对系统的要求,选择合适的机电部件。这时候,系统工程师可以搭建一个初略的模型,进行系统配置选型的仿真。

上图为一个供选型用的系统模型。系统工程师通过选用滑轮的个数(5、7、9)来确定所需异步电机参数的峰值。在这种系统模型中,电机模型并不需要非常详细的模型,可以用电机的数学方程来代替,而电机的控制只是简单的速度控制。换句话说说,只需要将电机转速和输出扭矩、功率的数学方程式表达出来即可。这个方法也叫第一准则(first principle)。

第一准则比较适用于比较简单的被控对象,例如低自由度的机械系统、简单的直流电机等等。如果机械系统过于复杂,电力电子线路过于复杂,则推导这些方程则没那么容易。这时候可以用 Simuink 中的 Simscape 物理建模方法 -- 用“搭积木”的方法来搭建物理模型。下图的滑轮模型就是用 Simscape 搭建而成。利用模型变体管理功能,可以很快地进行滑轮数分别为 5、7、9 的情况下,所需要的电机参数峰值。

通过仿真可以确定:滑轮数分别为 5、7、9 的情况下,所需电机的峰值功率和扭矩。可见,5 个滑轮需要的电机功率和输出扭矩最大。

电机模型校准

在完成电机选型后,工程师需要在更细节的层面进行电机的建模和控制设计。Simscape Electrical 提供了各种各样的库供选择。

例如,上图就是一个异步鼠笼式电机的调速控制模型。电机控制部分为 FOC(磁场定向控制),在以前的文章中,对 FOC 已经做过比较深入的介绍,请参考《Field Oriented Control 和 Simulink》。此处不再展开。

值得一提是:整流器和逆变器的模型,用的是“均值模型”。均值模型中,没有 PWM 的发生器,输入到逆变器的只有 duty cycle。所以均值模型的仿真结果没有开关纹波。与之相反,开关模型需要 PWM 的发生器,所以在开关模型的仿真中,可以看到开关纹波。平均模型的优势是a)仿真速度块 b) Simulink 可以直接对电子线路线性化。但在一些需要高精度的场合,就丢失了 PWM 开关的特性。

而开关模型的优势是:保留了 PWM 发生器和电力电子开关的特性。但仿真速度会大幅度降低,而且 Simulink 不能直接对其进行线性化。如果需要了解在开关模型的基础上,进行控制器的设计。请参考《电力电子控制器 PID 参数的几种调试方法》。其中介绍了诸如“AC Sweeping”等业界标准的被控对象线性化的办法。

在电机模型中,有很多参数。例如定子和转子的电感电阻等等。这些一方面可以从电机的参数Datasheet中读取填入。有一些情况,例如电机参数不准确或者丢失的情况下。可以用 Simulink 的参数估计(parameter estimation)功能,通过实验数据和参数的曲线逼近,来获取电机的实际准确参数。

先看一下实际电机运行的速度曲线(蓝色)和电机模型的速度曲线。由于参数的不一致,很明显它们有较大差异。

然后以实际电机数据为基准,运行“Simulink Design Optimization”的参数估计功能。

在运行一段时间后,发现实际电机测试数据和待校准的参数所运行的速度曲线已经高度重合。这样所得出的电机曲线,就是和实际电机一致。由此得出了电机模型的参数,从而达到模型精确化的目的。

控制部分设计

控制部分设计主要分几个方面。1)闭环控制设计 2)上层逻辑状态机设计。

首先我们看一下整个异步电机控制的整体架构。首先外环为一个PI控制器,控制电机速度。

如果把内环打开看,又有三个 PI 控制器,分别控制磁链和 dq 轴电流。根据先调节内环,再调节外环的原则,我们可以先将 FOC 部分 PI 参数调节好,然后再调节速度环的 PI 参数。

现以外环为例,介绍用 Simulink 的 PID tuner 进行辅助调试的功能。

步骤 1 线性化:由于电机和逆变器模型都是均值模型,没有开关器件带来的不连续性。所以可直接应用 PID tuner 进行线性化。双击速度环 tune。然后选择 plant relinearzie close-loop。

之后,选择一个静态工作点做线性化。如下图所示,选择第3秒。

步骤 2 参数调试:PID tuner 会以拖动的方式显示时域和频域的控制器性能,方便用户进行交互调试。

如果用户对 Simulink 的 Control System Tuner 比较熟悉,也可以将内环外环的四个 PI 集中一起调试。这时候,需要手动的选择 4 个 PI 控制器作为被调试对象。然后分别加入 4 个 PI 控制器的控制调试目标,例如对于速度控制和磁链控制器,可以 Step Response 作为控制调试目标;对于 dq 轴的电流控制,可以用 loop-shaping 来描述其控制调试目标。

在定义好控制目标后,Control System Tuner 可以在一个静态工作点按照目标进行 PID 的参数调试,一次性集中确保所有4个控制器的参数都能满足控制要求。

在设计完所有的闭环控制器之后,用户还需要考虑上层逻辑控制。例如,系统运行模式的切换和状态逻辑控制。这一部分可以用 Stateflow 来完成。相对于代码,状态机可以给出清晰简单的逻辑跳转。例如,钻井绞车的运行模式可以分手动和自动两种状态。这种逻辑的切换,用状态机来表示非常清晰自然。用分层次的状态机,可以描述非常复杂的逻辑切换。

测试覆盖率

在控制逻辑(以软件的形式体现)完成后,需要对每个软件模块做严格的测试工作。考量测试是否充分的指标主要是测试覆盖率。测试覆盖率,可以从两个方面来考察1)功能测试对需求的覆盖 2)软件结构覆盖。

针对第一点,业界通行的做法是建立一个需求到测试用例的追踪矩阵。然后对每一个功能性需求,建立若干个测试用例。只要测试用例完全覆盖需求,或者说需求都被测试了。我们就认为基于需求的测试是充分的。

例如:如下的软件模块,对应于若干个测试用例。

即使这些测试用例都覆盖了所有需求,那么他们是不是就是足够了呢?我们可以运行一下测试用例。

Simulink 可以给出测试覆盖度的报告,注意这个覆盖度报告指的是对软件结构的覆盖度。

例如,对这个状态机,测试报告显示判定/条件覆盖(Decision/Condition coverage)和 修正判定条件覆盖(MC/DC)的覆盖率。很明显,它们并不充分。有些高安全的行业标准,例如汽车电子、航空电子等,需要高度的(例如 100%)的软件结构覆盖率。此时,仅仅靠从需求去人工写测试用例,很难满足这样的需求。

这时候,借助 Simulink Design Verifier 这样的形式化验证工具,可以自动化生成一些测试用例。这些测试用例并没有需求意义,但对结构化覆盖率是一个充分的补充。除了这个功能外,Simulink Design Verifier可以来识别模型中隐藏的设计错误。检测模型中导致整数溢出、死逻辑、数组访问越界和被零除的块。

代码生成

在模型得到完备的测试之后,我们可以生成代码了!很多的重型机械和工业领域,PLC 由于其可靠性高,抗干扰能力强,再加上配套齐全和完善的功能,依然占据大量的市场。Simulink 的模型既可以生成嵌入式C代码,也可以生成符合 IEC 61131-3:的结构文本(Structured Text )或者梯形图( Ladder Diagram )。

Simulink 产生的 PLC 代码运行在成千上万的工业设备上,所支持的 PLC 覆盖世界上主流厂商

编辑:lyn

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微控制器
    +关注

    关注

    48

    文章

    6809

    浏览量

    147635
  • plc
    plc
    +关注

    关注

    4974

    文章

    12254

    浏览量

    454887
  • 机电一体化
    +关注

    关注

    1

    文章

    93

    浏览量

    23021
  • 电机设计
    +关注

    关注

    0

    文章

    29

    浏览量

    13653
收藏 人收藏

    评论

    相关推荐

    人脸考勤打卡一体

    一体
    jf_66410442
    发布于 :2024年01月09日 11:09:22

    机电一体化设备的故障诊断方法分析

      机电一体化设备故障诊断技术原理是构建数学模型、数据采集与分析处理。构建数学模型的目的是了解设备参数,从而掌握设备是否处于正常运行状态,这是进行
    的头像 发表于 01-02 11:39 353次阅读

    鸿蒙原生应用/元服务开发-新版本端云一体化模板体验反馈

    、前言 云端一体化模板是基于Serverless服务构建的套模板,提供了应用生态常见场景需求的代码实现,开发者可将所需能力快速部署和集成到自己的应用中。 二、准备 体验最新的远端
    发表于 12-05 14:57

    用arduino做个功能强大的一体化万用表

    教你用arduino做个功能强大的一体化万用表。附带资料包含PCB设计图、相关代码等。你也可以简单自己制作!
    发表于 09-27 07:06

    物联网应用之智慧档案馆八防十防一体化平台

    一体化、联动化、自动化、智能化、现代化等特点。该方案通过将各种系统、设备、功能进行整合和优化设计,实现了资源共享和协同工作,提高了档案馆的安全性、可靠性和管理效率。同时,引入现代技术和创新管理模式,使
    发表于 09-14 10:33

    智能语音开放平台选哪家,启英泰伦提供硬件、软件一体化开发服务

    和降低了开发难度。 【小语种语音模型开发】:上传小语种命令词文件和少量录音音频文件,即可通过平台自动进行训练,从而识别小语种的语音识别。 03固件在线测试 做好的固件不清楚语音识别效果
    发表于 08-17 14:00

    21.5寸安卓工业一体机 嵌入式工控一体机 微嵌工业平板电脑厂家

    一体
    jf_91874718
    发布于 :2023年07月05日 16:44:25

    15寸工业触摸一体机-工业平板电脑厂家-微嵌工业一体

    一体
    jf_91874718
    发布于 :2023年07月05日 16:27:09

    国产化一体

    一体
    jf_22764069
    发布于 :2023年06月27日 14:38:48

    扬宇光电人脸测温一体

    一体
    jf_22764069
    发布于 :2023年06月27日 14:36:57

    石油石化室内外一体化定位解决方案

    一体化
    中海达
    发布于 :2023年06月21日 11:44:11

    HarmonyOS元服务端云一体化开发快速入门(下)

    界面,可查看刚刚新建的工程。关于工程的详细目录结构介绍,请参见端云一体化开发工程介绍。 ** 五、 工程初始化配置** 当您成功创建工程并关联云开发资源后,DevEco Studio会为您的工程自动
    发表于 06-15 15:52

    HarmonyOS元服务端云一体化开发快速入门(

    大小不能超过10MB。 三、配置工程信息 1.在工程配置界面,配置工程的基本信息。 点击“Next”,开始关联云开发资源。 *附件:HarmonyOS元服务端云一体化开发快速入门().docx
    发表于 06-14 17:10

    HarmonyOS应用端云一体化开发登录组件的使用

    说明:通用云开发模板目前仅支持手机验证码登录。 可使用端云一体化登录组件向应用用户提供登录和登出功能,目前支持帐号密码登录、手机验证码登录、以及邮箱验证码登录。组件基于ArkUI开发,提供登录对话框
    发表于 05-26 15:34

    HarmonyOS应用端云一体化开发主要流程

    图示 *附件:HarmonyOS应用端云一体化开发主要流程.docx
    发表于 05-19 14:27