OpenBuild 是一种建筑HVAC系统热力学仿真控制软件。

https://la.epfl.ch/files/content/sites/la/files/shared/common/openBuid/Manual.pdf

假设我们可以直接控制每个房间的热通量,并让总的用电量最小。因此,有函数J,

N是控制器的控制范围,x和u分别是预测状态和输入轨迹。

本模型的MPC模型可以写成:

最小化  

并满足所有

;

;   从建筑中提取出来的建筑空间模型假设全状态测量。(所以这里C为单位矩阵)

;

;

其中U为输入限制,是时变限制。

sE2 = simulationEngine(b);
sE2.addSimulatorEnergyPlus;

离散化状态空间模型ssM:

ssM.discretizeModel(b.buildingData.simulationData.timestep);

确定zone temperature空间温度为唯一可用的测量值:

measurement =regexpcmp(ssMd.outputLabels.getLabel(1:ssMd.outputLabels.length),’ZoneMean Air Temperature’,’ignorecase’);
ssMd.C = ssMd.C(find(measurement),:);
ssMd.outputLabels.removeLabels(find(~measurement));

为了纠正干扰预测误差,以及建模不匹配的情况,我们考虑无偏差公式,这实际上将增加整合行为到估计器。必须指定干扰模型。我们通常考虑输出干扰。该功能以恒定的输出干扰增强了建筑物的模型。 :

ssM.augmentModel();

我们现在可以设置估算器。估计器基于增强模型:它将测量值、之前的输入值和干扰值作为输入,输出建筑物状态和输出干扰的估计值。 使用卡尔曼滤波器:

kalmanEst = kalman(ssM,sE2.parameters);
sE2.addEstimator(kalmanEst);

最后建立MPC控制器:

MPCCtrl = MPCSetback(ssM,sE2.parameters);
sE2.addControllerMPC(MPCCtrl);

可以在相应的文件(MPCSetback.m和MPC_setback_update.m)中找到MPC实现的详细信息。 模型的增加不会导致(3)中的任何修改,除了这个,我们有,其中f是输出误差的当前估计。 它采用软约束实现,因此始终保证可行性。 在这里提供的示例中,使用工具箱YALMIP制定了MPC问题,并且已经使用求解器gurobi来解决问题。 Yalmip允许从大量求解器中进行选择。 不幸的是,对于这个问题,但是免费的替代方案包括例如SEDUMI。

【模型】OpenBuild中的MPC控制器相关推荐

  1. MPC控制器设计,模型预测控制,线性时变模型预测控制,LTV MPC,提供理论讲解与应用实现

    MPC控制器设计,模型预测控制,线性时变模型预测控制,LTV MPC,提供理论讲解与应用实现. 提供MPC算法.LTV MPC 算法在直升机和四旋翼中的应用实例. 提供模型预测控制资料. 提供matl ...

  2. php获取模型错误,php – 解析错误,期望activecollab模型类中出现“T_PAAMAYIM_NEKUDOTAYIM”错误...

    我正在研究activecollab自定义模块的权限,并在尝试调用静态方法的函数时得到此错误消息不知道为什么;请帮助将是真正的appericiatable .. Parse error: parse e ...

  3. 四足动物模型控制中的模型自适应神经网络

    四足动物模型控制中的模型自适应神经网络 (Mode-Adaptive Neural Networks for Quadruped Motion Control) 四足动物模型拥有不同的步态,比如行走, ...

  4. mvc jquery ajax方法,asp.net mvc-如何在jQuery $ .ajax()中将模型发送请求到MVC控制器方法...

    asp.net mvc-如何在jQuery $ .ajax()中将模型发送请求到MVC控制器方法 在使用以下代码进行自动刷新时,我假设执行发布后,模型将自动发送给控制器: $.ajax({ url: ...

  5. php中yii的controller,详解PHP的Yii框架中的Controller控制器,yiicontroller

    详解PHP的Yii框架中的Controller控制器,yiicontroller 控制器是 MVC 模式中的一部分, 是继承yii\base\Controller类的对象,负责处理请求和生成响应. 具 ...

  6. R语言使用lm构建线性回归模型、并将目标变量对数化(log10)实战:可视化模型预测输出与实际值对比图、可视化模型的残差、模型预测中系统误差的一个例子 、自定义函数计算R方指标和均方根误差RMSE

    R语言使用lm构建线性回归模型.并将目标变量对数化(log10)实战:可视化模型预测输出与实际值对比图.可视化模型的残差.模型预测中系统误差的一个例子 .自定义函数计算R方指标和均方根误差RMSE 目 ...

  7. 全国大学智能车竞赛完全模型组中的赛道标志

    §01 赛道标志   第十七届全国大学生智能车竞赛完全模型组 中定义了六种赛道标志.它们的定义为: ▲ 图1.1 赛道标志 §02 大型图标 ■ 相关文献链接: 第十七届全国大学生智能车竞赛完全模型组 ...

  8. FCN模型训练中遇到的困难

    FCN模型训练中遇到的困难 标签: 深度学习FCN神经网络caffe 2017-02-24 10:54 2675人阅读 评论(6) 收藏 举报  分类: 深度学习(18)  版权声明:本文为博主原创文 ...

  9. Qt模型视图中的委托

    文章目录 1 初探QT模型视图中的委托 2 自定义委托 3 深度解析视图与委托 3.1 实例1:自定义视图显示方式 3.2 实例2:自定义视图显示方式提升用户体验 1 初探QT模型视图中的委托 首先来 ...

最新文章

  1. mongoose Warning:Server Discovery and Monitoring engine is deprecated
  2. 如何找到Windows 7或8家庭组密码?
  3. 玩转oracle 11g(39):oracle11g密码过期后的解决方法
  4. ThinkPHP5访问去除/public/index.php
  5. 11g RAC环境下客户端配置TAF
  6. 关于敏捷方法的一次沟通记录
  7. vs2017html乱码,vs2017引用vue组件中文乱码
  8. 杭电计算机2016年机试真题详解
  9. SQL Server 2008 Service Broker
  10. python-excel读取代码1
  11. Oracle报998,无法加载oracle in oradb10g_home2 odbc驱动程序,系统错误代码998解决方法(转载+部分原创)...
  12. VS2015镜像安装教程
  13. 安利超实用的游戏unity3d场景模型素材网站
  14. 求素数 java 101 200_JAVA编程题2 101——200素数个数
  15. diskgenius扩容c盘重启电脑卡住_DiskGenius怎么给C盘扩容?DiskGenius无损调整C盘容量方法 (全文)...
  16. 直播入门(二)从视频采集到客户端播放
  17. JAVA性能优化,让程序更快更稳定
  18. Charles的下载安装配置大全
  19. 新高考全走班(4选2、6选3、7选3)陈老师排课原理及方案
  20. linux下虚拟机开机重置修改密码,完整步骤

热门文章

  1. [论文笔记]SwinSUNet: Pure Transformer Network for Remote Sensing Image Change Detection
  2. linux系统日志文件夹加密,linux系统环境下,对文件进行加密
  3. 第 5 章 ROS 常用组件 2 —— TF 坐标变换_多坐标变换 tf03_tfs(重难点)
  4. MySQL查年龄18到22的信息_MySQL之单表查询
  5. m5210阵列卡 linux驱动下载,IBM M5210阵列卡驱动下载|IBM阵列卡m5210 2008R2驱动 - 驱动无忧...
  6. 更新|UA开发者模式、页面翻译功能、修复浏览器插件问题
  7. [转载]汇总各浏览器核心(js引擎及排版引擎)深究
  8. 滴滴谋变:国内“关停并转”非主业,国外加码外卖等业务
  9. Keil5汇编语言之模拟仿真
  10. 机器学习模型评价指标+模型出错的四大原因及如何纠错