【模型】OpenBuild中的MPC控制器
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控制器相关推荐
- MPC控制器设计,模型预测控制,线性时变模型预测控制,LTV MPC,提供理论讲解与应用实现
MPC控制器设计,模型预测控制,线性时变模型预测控制,LTV MPC,提供理论讲解与应用实现. 提供MPC算法.LTV MPC 算法在直升机和四旋翼中的应用实例. 提供模型预测控制资料. 提供matl ...
- php获取模型错误,php – 解析错误,期望activecollab模型类中出现“T_PAAMAYIM_NEKUDOTAYIM”错误...
我正在研究activecollab自定义模块的权限,并在尝试调用静态方法的函数时得到此错误消息不知道为什么;请帮助将是真正的appericiatable .. Parse error: parse e ...
- 四足动物模型控制中的模型自适应神经网络
四足动物模型控制中的模型自适应神经网络 (Mode-Adaptive Neural Networks for Quadruped Motion Control) 四足动物模型拥有不同的步态,比如行走, ...
- mvc jquery ajax方法,asp.net mvc-如何在jQuery $ .ajax()中将模型发送请求到MVC控制器方法...
asp.net mvc-如何在jQuery $ .ajax()中将模型发送请求到MVC控制器方法 在使用以下代码进行自动刷新时,我假设执行发布后,模型将自动发送给控制器: $.ajax({ url: ...
- php中yii的controller,详解PHP的Yii框架中的Controller控制器,yiicontroller
详解PHP的Yii框架中的Controller控制器,yiicontroller 控制器是 MVC 模式中的一部分, 是继承yii\base\Controller类的对象,负责处理请求和生成响应. 具 ...
- R语言使用lm构建线性回归模型、并将目标变量对数化(log10)实战:可视化模型预测输出与实际值对比图、可视化模型的残差、模型预测中系统误差的一个例子 、自定义函数计算R方指标和均方根误差RMSE
R语言使用lm构建线性回归模型.并将目标变量对数化(log10)实战:可视化模型预测输出与实际值对比图.可视化模型的残差.模型预测中系统误差的一个例子 .自定义函数计算R方指标和均方根误差RMSE 目 ...
- 全国大学智能车竞赛完全模型组中的赛道标志
§01 赛道标志 第十七届全国大学生智能车竞赛完全模型组 中定义了六种赛道标志.它们的定义为: ▲ 图1.1 赛道标志 §02 大型图标 ■ 相关文献链接: 第十七届全国大学生智能车竞赛完全模型组 ...
- FCN模型训练中遇到的困难
FCN模型训练中遇到的困难 标签: 深度学习FCN神经网络caffe 2017-02-24 10:54 2675人阅读 评论(6) 收藏 举报 分类: 深度学习(18) 版权声明:本文为博主原创文 ...
- Qt模型视图中的委托
文章目录 1 初探QT模型视图中的委托 2 自定义委托 3 深度解析视图与委托 3.1 实例1:自定义视图显示方式 3.2 实例2:自定义视图显示方式提升用户体验 1 初探QT模型视图中的委托 首先来 ...
最新文章
- mongoose Warning:Server Discovery and Monitoring engine is deprecated
- 如何找到Windows 7或8家庭组密码?
- 玩转oracle 11g(39):oracle11g密码过期后的解决方法
- ThinkPHP5访问去除/public/index.php
- 11g RAC环境下客户端配置TAF
- 关于敏捷方法的一次沟通记录
- vs2017html乱码,vs2017引用vue组件中文乱码
- 杭电计算机2016年机试真题详解
- SQL Server 2008 Service Broker
- python-excel读取代码1
- Oracle报998,无法加载oracle in oradb10g_home2 odbc驱动程序,系统错误代码998解决方法(转载+部分原创)...
- VS2015镜像安装教程
- 安利超实用的游戏unity3d场景模型素材网站
- 求素数 java 101 200_JAVA编程题2 101——200素数个数
- diskgenius扩容c盘重启电脑卡住_DiskGenius怎么给C盘扩容?DiskGenius无损调整C盘容量方法 (全文)...
- 直播入门(二)从视频采集到客户端播放
- JAVA性能优化,让程序更快更稳定
- Charles的下载安装配置大全
- 新高考全走班(4选2、6选3、7选3)陈老师排课原理及方案
- linux下虚拟机开机重置修改密码,完整步骤
热门文章
- [论文笔记]SwinSUNet: Pure Transformer Network for Remote Sensing Image Change Detection
- linux系统日志文件夹加密,linux系统环境下,对文件进行加密
- 第 5 章 ROS 常用组件 2 —— TF 坐标变换_多坐标变换 tf03_tfs(重难点)
- MySQL查年龄18到22的信息_MySQL之单表查询
- m5210阵列卡 linux驱动下载,IBM M5210阵列卡驱动下载|IBM阵列卡m5210 2008R2驱动 - 驱动无忧...
- 更新|UA开发者模式、页面翻译功能、修复浏览器插件问题
- [转载]汇总各浏览器核心(js引擎及排版引擎)深究
- 滴滴谋变:国内“关停并转”非主业,国外加码外卖等业务
- Keil5汇编语言之模拟仿真
- 机器学习模型评价指标+模型出错的四大原因及如何纠错