优先调节阀位,条件调节阀位
控制对象的执行机构可能存在多个,举例,压力通过变频和翻板这两个执行机构调节。默认调节翻板。这里定义一个全局布尔变量 bfgflag 初始默认为0;优先调节翻板,当翻板处于极限阀位时,bfgflag 赋值为1,开始调节变频,同样,当变频处于极限阀位时,bfgflag 赋值为0。当偏差特别大时,翻板和变频一起调节。
x表示阀位开度值数组
y表示阀位投切位数组
e表示偏差
em表示偏差最大值
xl表示阀位下限数组
xh表示阀位上限数组
//选主阀组
//数组返回值函数:返回值要么是全局变量,要么是静态变量。
BOOL bfgflag=0;//
double out2[2];//动作函数中无需定义变量接收数组元素
double* BFGV2Sel(double *x,BOOL *y,int n,double e,double em,double lmn,double *xl,double *xh)
{int model;//double out2[2];//动作函数中需要定义变量接收数组元素int i;//C++写法//double *rangefloat = NULL;//BOOL *rangebool = NULL;//double *rangenumbers = NULL;//double *out = NULL;//C++写法和WinCC写法double rangefloat[2]={0,0};//BOOL rangebool[2]={0,0};double xlfloat[2]={0,0};//double xhfloat[2]={0,0};//for(i=0; i<n;i++){rangefloat[i]=x[i];rangebool[i]=y[i];xlfloat[i]=xl[i];xhfloat[i]=xh[i];}if( rangebool[0] && !rangebool[1]) model=1;if(!rangebool[0] && rangebool[1]) model=2;if(!rangebool[0] && !rangebool[1]) model=3;if( rangebool[0] && rangebool[1]) model=4;switch(model){case 1:out2[0]=x[0]+lmn;out2[1]=x[1];break;case 2:out2[0]=x[0];out2[1]=x[1]+lmn;break;case 3:out2[0]=x[0];out2[1]=x[1];break;case 4:if(!bfgflag){if(fabs(e)>=em){out2[0]=x[0]+lmn;out2[1]=x[1]+lmn;}else {out2[0]=x[0]+lmn;out2[1]=x[1];}if(out2[0]>=xh[0] && out2[0]<=xl[0]){bfgflag=1;}else{bfgflag=0;}}else{if(fabs(e)>=em){out2[0]=x[0]+lmn;out2[1]=x[1]+lmn;}else {out2[0]=x[0];out2[1]=x[1]+lmn;}if(out2[0]>=xh[1] && out2[0]<=xl[1]){bfgflag=0;}else{bfgflag=1;}}break;default:out2[0]=x[0]+lmn;out2[1]=x[1]+lmn;bfgflag=0;
}//printf("%4.4f——%4.4f\r\n", out2[0], out2[1]);return out2;
}
相关文章:
优先调节阀位,条件调节阀位
控制对象的执行机构可能存在多个,举例,压力通过变频和翻板这两个执行机构调节。默认调节翻板。这里定义一个全局布尔变量 bfgflag 初始默认为0;优先调节翻板,当翻板处于极限阀位时,bfgflag 赋值为1,开始调节…...
oracle入门笔记六
一、索引(index) 1、索引的作用 索引是优化查询的一种,使得查询效率特别高,索引是优化存储,索引作用在字段上 2、什么样的字段适合建索引 a、经常被查询的字段 b、不能为空,不能重复 c、字段的值不会被经常…...
腾讯云优惠券种类、领取方法及使用教程分享
腾讯云是国内领先的云计算服务提供商,为用户提供丰富的云计算产品和服务。为了吸引更多用户使用腾讯云的产品和服务,腾讯云会定期推出各种优惠券活动。本文将为大家介绍腾讯云优惠券的种类、领取方法及使用教程。 一、腾讯云优惠券种类介绍 腾讯云优惠券…...
JavaScript使用类-模态窗口
**上节课我们为这个项目获取了一些DOM元素,现在我们可以继续;**这个模态窗口有一个hidden类,这个类上文我们讲了,他的display为none;如果我们去除这个hidden的话,就可以让这个模态窗口展现出来。如下 cons…...
【轻松玩转MacOS】外部设备篇
引言 在开始之前,我们先来了解一下为什么要连接外部设备。想象一下,你正在享受MacOS带来的便捷和高效,突然需要打印一份文件,但你发现打印机无法连接;或者你需要将手机投屏到电脑上,却不知道该如何操作。这…...
location rewrite
Nginx location 匹配的规则和优先级 Nginx常用的变量 rewrite: 重定向功能 Location 匹配 URI URI:统一资源的表示符,是一种字符串标识,用于标识抽象或者物理资源 先来巩固一些与location结合使用的正则表达式 正则表达式:匹…...
XLSX.utils.sheet_to_json()解析excel,给空的单元格赋值为空字符串
前言 今天用到XLSX来解析excel文件,调用XLSX.utils.sheet_to_json(worksheet),发现如果单元格为空的话,解析出来的结果,就会缺少相应的key(如图所示)。但是我想要单元格为空的话,值就默认给空字…...
安装Docker(Linux:CentOS)
大家好我是苏麟今安装一下Docker. 安装Docker Docker 分为 CE 和 EE 两大版本。CE 即社区版(免费,支持周期 7 个月),EE 即企业版,强调安全,付费使用,支持周期 24 个月。 Docker CE 分为 stab…...
2310月问题描述
apt包管理 修改apt目录,不存在apt.conf文件,但是存在apt.conf.d目录,如何修改apt的安装目录 apt-get 命令是 Ubuntu 系统中的包管理工具,可以用来安装、卸载包,也可以用来升级包,还可以用来把系统升级到新的版本。 语法格式&…...
y _hat[ [ 0, 1], y ]语法——pytorch张量花式索引
目录 1. y _hat[ [ 0, 1]例子 2.pytorch花式索引 (1)简单行、列索引 (2)列表索引 (3)范围索引 (4)布尔索引 (5)多维索引 3.张量拼接 (1…...
高级岗位面试问题
自我介绍 【我是谁】 、【我做过什么】、【我会什么】 面试官您好,我叫xxx,来自江西。20XX年毕业于XXXXX大学,已有X年软件测试工作经验,之前在XX家公司担任测试工程师 最近一家公司我主要负责了两个项目的测试,分别为XXXXX的编写,测试用例的设计,测试环境的搭建以及测…...
区块链游戏的开发框架
链游(Blockchain Games)是基于区块链技术构建的游戏。它们与传统游戏有一些显著不同之处,因此需要特定的开发框架和工具。以下是一些用于链游开发的开发框架及其特点,希望对大家有所帮助。北京木奇移动技术有限公司,专…...
Windows Nginx 服务器部署(保姆级)
大家好 我是寸铁 不知道怎么部署Windows Nginx 服务器看过来 手把手带你部署服务器 将你的本地网页部署到服务器上 话不多说,直接上操作!!! Windows Nginx服务器部署 进入下载地址: http://nginx.org/en/download.h…...
常用的Linux命令及其用法
常用的Linux命令及其用法 1. ls:列出文件和目录 ls命令用于列出当前目录中的文件和子目录。通过不同的选项,可以显示详细信息、隐藏文件等。 示例: ls -l ls -a2. cd:切换工作目录 cd命令用于切换当前工作目录。通过指定目标…...
linux总结
cat -n filename 查看文件,-n用来给每一行标行号,可以省略 cat /var/log/mysqld.log | grep password 我们可以通过上述指令,查询日志文件内容中包含password的行信息。 more 作用: 以分页的形式显示文件内容 语法: more fileName 操作说明: 回车键 …...
java - 设计模式 - 状态模式
文章目录 前言java - 设计模式 - 状态模式1. 概述2. 作用3. 示例 前言 如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。 而且听说点赞的人每天的运气都不会太差,实在白嫖的话…...
c/c++--编译指令(预处理之后) #pragma
1. #pragma 作用 #pragma 用于指示编译器完成一些特定的动作#pragma 的功能或作用 随编译器不同而变化。 即 不同的编译器可能以不同的方式解释同一条 #pragma 指令 2. 用法 常见用法示例 2.1 #pragma message 参考链接 自定义编译信息输出到终端(一般和#if配合使用&#…...
黑马JVM总结(三十二)
(1)类加载器-线程上下文1 使用的应用程序类加载器来完成类的加载,不是用的启动类加载器,jdk在某些情况下要打破,双亲委派的模式,有时候需要调用应用程序类加载器来完成类的加载,否则有些类它是找…...
接口自动化测试框架【reudom】
reudom Automated testing framework based on requests and unittest interface. 基于 Unittest 和 Requests 的 接口自动化测试框架 介绍 基于Unittest/Requests的接口自动化测试库 提供脚手架,快速生成接口自动化测试项目。 自动生成HTML测试报告。 支持用例参…...
【数据库问题】删除数据库失败,提示:there is 1 other session using the database
删除数据库失败,提示:there is 1 other session using the database 解决办法: SELECT pg_terminate_backend(pg_stat_activity.pid) FROM pg_stat_activity WHERE datnametest_database AND pid<>pg_backend_pid(); 使用上述命令先关…...
挑战杯推荐项目
“人工智能”创意赛 - 智能艺术创作助手:借助大模型技术,开发能根据用户输入的主题、风格等要求,生成绘画、音乐、文学作品等多种形式艺术创作灵感或初稿的应用,帮助艺术家和创意爱好者激发创意、提高创作效率。 - 个性化梦境…...
Prompt Tuning、P-Tuning、Prefix Tuning的区别
一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...
iPhone密码忘记了办?iPhoneUnlocker,iPhone解锁工具Aiseesoft iPhone Unlocker 高级注册版分享
平时用 iPhone 的时候,难免会碰到解锁的麻烦事。比如密码忘了、人脸识别 / 指纹识别突然不灵,或者买了二手 iPhone 却被原来的 iCloud 账号锁住,这时候就需要靠谱的解锁工具来帮忙了。Aiseesoft iPhone Unlocker 就是专门解决这些问题的软件&…...
Keil 中设置 STM32 Flash 和 RAM 地址详解
文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...
Linux-07 ubuntu 的 chrome 启动不了
文章目录 问题原因解决步骤一、卸载旧版chrome二、重新安装chorme三、启动不了,报错如下四、启动不了,解决如下 总结 问题原因 在应用中可以看到chrome,但是打不开(说明:原来的ubuntu系统出问题了,这个是备用的硬盘&a…...
tree 树组件大数据卡顿问题优化
问题背景 项目中有用到树组件用来做文件目录,但是由于这个树组件的节点越来越多,导致页面在滚动这个树组件的时候浏览器就很容易卡死。这种问题基本上都是因为dom节点太多,导致的浏览器卡顿,这里很明显就需要用到虚拟列表的技术&…...
Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)
参考官方文档:https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java(供 Kotlin 使用) 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...
C# 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...
【数据分析】R版IntelliGenes用于生物标志物发现的可解释机器学习
禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍流程步骤1. 输入数据2. 特征选择3. 模型训练4. I-Genes 评分计算5. 输出结果 IntelliGenesR 安装包1. 特征选择2. 模型训练和评估3. I-Genes 评分计…...
关键领域软件测试的突围之路:如何破解安全与效率的平衡难题
在数字化浪潮席卷全球的今天,软件系统已成为国家关键领域的核心战斗力。不同于普通商业软件,这些承载着国家安全使命的软件系统面临着前所未有的质量挑战——如何在确保绝对安全的前提下,实现高效测试与快速迭代?这一命题正考验着…...
