pid-max设置多少合适之原理

之前我读源码可能不仔细,“当时认为主机内核的pid-max是不需要修改的,因为已经是最大值了,这个值改大了也没有用,和主机的cpu物理核数有关,这个值是系统在开机的时候会帮我们设置成最大值。因为每核最大值是1024,比如我们32核的机器就是1024*32,也就是系统会设置成32768,40核机器就是40960,所以不需要修改,改小可以,改大改了也没有效果。”

但是,

刚仔细看了下代码,这个要看long字节大小 ,也就是操作系统版本,如果long是大于4字节的,就可以到2^22

/*
 * This controls the default maximum pid allocated to a process
 * 大致意思就是,如果在编译内核时指定或者为CONFIG_BASE_SMALl赋值了,那么默认值就是4096,反而就是32768
 */
#define PID_MAX_DEFAULT (CONFIG_BASE_SMALL ? 0x1000 : 0x8000)

/*
 * A maximum of 4 million PIDs should be enough for a while.
 * [NOTE: PID/TIDs are limited to 2^30 ~= 1 billion, see FUTEX_TID_MASK.] 
 * 如果CONFIG_BASE_SMALL被赋值了,则最大值就是32768,如果条件不成立,则判断long的类型通常应该是操作系统版本,
 * 如果大于4字节,取值范围大约就是4 million,精确计算就是4,194,304,如果条件还不成立则只能取值最被设置的PID_MAX_DEFAULT的值
 */

#define PID_MAX_LIMIT (CONFIG_BASE_SMALL ? PAGE_SIZE * 8 : \
    (sizeof(long) > 4 ? 4 * 1024 * 1024 : PID_MAX_DEFAULT))
### 关于BAS系统中模糊PID控制器的优化原理 #### 模糊PID控制器概述 模糊PID控制器结合了传统PID控制和模糊逻辑的优点,能够处理不确定性和非线性问题。这种组合提高了系统的响应速度、稳定性和抗干扰能力[^3]。 #### 自适应滑模(BAS)技术简介 自适应滑模控制(Adaptive Sliding Mode Control, BAS)是一种鲁棒性强的控制方法,在面对外部扰动或内部参数变化时仍能保持良好的性能。其核心在于设计合适的切换面以及相应的趋近律,使状态轨迹沿此表面运动并最终收敛到期望位置。 #### 结合BAS与模糊PID的优化机制 为了进一步提升模糊PID控制器的表现,可以引入BAS来进行参数调整: - **初始化设置**:定义初始条件下的比例系数\(K_p\)、积分时间常数\(T_i\)及微分提前角\(\tau_d\)。 - **构建隶属度函数**:针对输入变量e(t)(偏差),ec(t)(偏差变化率),建立合理的三角形/梯形分布形式,并确定各区间边界值范围;对于输出量u(t),则需考虑实际控制需求设定相应规则表。 ```matlab % 定义模糊集及其隶属度函数 fis = mamfis; input1 = addInput(fis,[min_e max_e],'Name','Error'); addMF(input1,'trimf',[low_mid high],'Name','NegativeBig'); ... output1 = addOutput(fis,[min_u max_u],'Name','ControlAction'); addMF(output1,'trimf',[low mid high],'Name','PositiveSmall'); ``` - **在线学习过程**:利用实时采集的数据更新权重矩阵W=[w_1 w_2 ... w_n]^T,其中n表示规则总数目。当检测到当前状态下存在较大误差时,则按照预设的学习速率η逐步修正这些权值直至满足精度要求为止。 - **滑模面S的设计**:考虑到实际应用场景中的动态特性差异很大,故而应精心挑选合适的形式表达式s=α*e+β*∫edt+γ*(de/dt),这里α, β 和 γ 都是可以随环境改变而自我调节的比例因子。 - **趋近律的选择**:为了让受控对象尽快到达预定目标而不至于引起过度震荡现象发生,通常会采用指数型或者幂次方程式的结构sign(s)*|s|^ρ作为参考模板之一,此处ρ∈(0,1)用来平衡快速性和平稳性的关系。 综上所述,通过对上述几个方面的综合考量与实践验证,可以在很大程度上改善原有单纯依靠经验试凑法所获得的传统PID参数配置方案,从而实现更加精准高效的闭环调控目的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值