当前位置: 首页 > news >正文

电机控制常见面试问题(十二)

文章目录

  • 一.电机锁相环
    • 1.理解锁相环
    • 2.电机控制中的锁相环应用
    • 3.数字锁相环(DPLL) vs 模拟锁相环(APLL)
    • 4.锁相环设计的关键技术挑战
    • 5.总结
  • 二、磁链观测
    • 1.什么是磁链?
    • 2.为什么要观测磁链?
    • 3.怎么观测磁链?
    • 4.磁链观测的应用——让你身边电器更聪明
    • 5.总结
  • 三.谈谈积分饱和增益
    • **1. 什么是积分饱和?**
    • ​2. 抗积分饱和增益如何工作?
    • 3.​为什么需要抗积分饱和增益?
  • 四.聊聊电机电流采样
    • 1.硬件层实现
    • 2.信号处理层
    • 3.算法层应用
    • 4.工业级应用案例
  • 五.傅里叶变换和拉普拉斯变换区别
  • 六.谈谈电机里ADC的应用
    • 1.ADC在电机控制中的核心作用
    • 2.典型应用场景
    • 3.关键技术挑战与解决方案
    • 4.实际案例分析


一.电机锁相环

1.理解锁相环

定义:锁相环是一种闭环反馈控制系统,通过跟踪参考信号的相位和频率,实现输出信号与参考信号同步。其核心目标是消除相位误差,广泛应用于电机控制、通信同步、频率合成等领域。
在这里插入图片描述

你骑着自行车,前方有一辆匀速前进的汽车,你希望自己的车速和方向始终与汽车完全同步。这时候,你的身体会自动做这些事:
​眼睛(鉴相器)​:不断观察汽车的位置和速度(参考信号)。
​大脑(滤波器+控制器)​:计算你和汽车的距离、速度差,决定该加速还是减速。
​腿(压控振荡器)​:根据大脑的指令踩踏板,调整车速和方向。
​计数器(分频器)​:心里默数自己踩了多少圈踏板,确保节奏一致。
锁相环的作用:让你的自行车(输出信号)完全“克隆”汽车的行为(参考信号),哪怕汽车突然加速、减速或转弯,你也能瞬间跟上
在这里插入图片描述

2.电机控制中的锁相环应用

​1. 永磁同步电机(PMSM)无传感器控制
​核心问题:PMSM依赖稀土永磁体,传统传感器(如霍尔)增加成本和体积,​无传感器技术通过检测反电动势(Back-EMF)估算转子位置。
​PLL实现步骤:
​相位捕获:在电机启动时,通过检测三次谐波分量锁定初始转子位置。
​相位跟踪:运行时比较参考正弦波与实际反电动势的相位差,驱动VCO调整PWM信号。
​噪声抑制:利用滑动平均滤波器抑制高频开关噪声。
​优势:降低成本、提高可靠性(如汽车电机、工业伺服)。
示例电路:
STM32F4 → [PLL算法] → [6-Step PWM逆变器] → [PMSM]

[ADC采集反电动势]

​2. 交流感应电机(ACIM)转子磁链观测
​挑战:ACIM无永磁体,需通过电压/电流模型重构转子磁链。
​PLL应用:
​同步旋转坐标系:将定子电压/电流转换到与转子同步的坐标系。
​磁链估计:结合PLL跟踪转子转速,计算磁链幅值和相位。
​关键参数:
​转速辨识精度:±0.5rpm(工业标准)。
​响应时间:<10ms(动态负载变化)。

3.数字锁相环(DPLL) vs 模拟锁相环(APLL)

在这里插入图片描述

4.锁相环设计的关键技术挑战

​参数整定:
​超调与振荡:过高的Kp导致转速超调,需结合PID控制器。
​稳态误差:引入积分项(Ki)消除稳态相位偏差。
​鲁棒性设计:基于李雅普诺夫稳定性分析优化增益。

​高频噪声抑制:
​前馈滤波:在鉴相器前加入带通滤波器(带宽=1kHz~10kHz)。
​软件消抖:滑动窗口平均(如10点采样)。

​计算资源优化:
​模型简化:采用二阶PLL模型(忽略高频 dynamics)。
​硬件加速:专用DSP核(如TI dsPIC33E)处理鉴相和频率控制。

5.总结

锁相环的本质是“动态追踪艺术”​
​核心思想:通过“观察-计算-执行-反馈”闭环,让系统自动跟随目标。
凡是需要“同步、跟踪、稳定”的场景(从原子钟到自动驾驶),锁相环都是背后的“隐形管家”。

二、磁链观测

1.什么是磁链?

想象一下,电机的线圈就像一条​“快递通道”​,而磁链就是一群​“磁性快递包裹”​沿着这条通道来回运输。
​包裹里装的是“磁力”​:当电流通过线圈时,会在周围产生磁场(相当于派送员带着磁力包裹出发)。
​包裹必须“穿过线圈”才算完成任务:磁链(Φ)就是所有磁力包裹穿过线圈的总数量,单位是“韦伯”(Wb)。
举个栗子:
如果线圈是绕在铁芯上的,铁芯就像一个​“超大的快递中转站”​,能汇聚更多磁力包裹,让磁链更强大。这就是为什么电机里要用铁芯——快递量翻倍,效率更高!

2.为什么要观测磁链?

观测磁链,就像给电机装了一个​“导航系统”​,告诉你现在有多少磁力包裹在干活
​控制电机转矩:转矩(力量)= 磁链 × 电流 × 转速。
→ 比如电动车加速时,需要精准调整“磁链”和电流,否则会像踩油门突然熄火一样失控。
​保护电机:如果磁链突然减少(比如铁芯饱和),电流会飙升,容易烧毁线圈。
→ 好比快递太多堵车,系统要提前报警。
​提高效率:就像快递公司优化路线,知道磁链分布后,能更高效地转换电能→机械能。

3.怎么观测磁链?

​方法1:电压法​
​原理:法拉第定律说,变化的磁链会在线圈两端产生电压→ 用电压表测电压,再算出磁链的变化速度(dΦ/dt)。
​应用:简单便宜,适合初步估算,比如家用电器的电机。

​方法2:霍尔传感器​
​原理:霍尔传感器像微型摄像头,直接测量磁场的强→ 结合线圈形状,就能算出磁链总量。
​优点:直接、实时,适合高精度控制(比如工业机器人)。
​缺点:传感器贵,复杂环境(高温、振动)可能影响精度。

​方法3:有限元仿真)
​原理:先画出电机的3D模型,输入电流和材料参数,用软件模拟磁链分布。
​优点:能预测极端情况(比如铁芯饱和),优化设计。
​缺点:耗时耗力,适合研发阶段,比如新车电机的设计。

4.磁链观测的应用——让你身边电器更聪明

​电动汽车:通过实时观测磁链,精准控制电机扭矩,实现平顺加速。
​空调压缩机:避免磁链不足导致电流过大,省电30%以上。
​无人机:精确控制磁链,让多旋翼飞行更稳定,不怕风浪。
​工业机床:高精度磁链观测让切割头动作更丝滑,加工误差小于头发丝。

5.总结

​磁链观测 = 给电机的“磁力快递系统”装监控。
​目的:防堵车(过载)、防丢件(效率低)、算准力道(转矩控制)。
​未来趋势:AI+传感器,让磁链观测更智能,比如预测故障、自适应调速。

三.谈谈积分饱和增益

1. 什么是积分饱和?

在PI控制中,积分器的作用是消除稳态误差,但当系统存在持续正向或负向误差时,积分器的输出会不断累加,最终超出执行机构(如逆变器)的物理限制(例如电流最大值),导致:
​控制失效:积分器输出被“截断”,无法继续调节。
​振荡或超调:系统因积分器饱和后的突变恢复,产生剧烈振荡。
​性能下降:电机转矩或转速无法稳定跟踪指令。
示例场景:
假设电机突加负载导致电流误差持续为正,积分器输出会不断增加,当超过逆变器允许的最大电流时,积分器被“锁死”,此时即使负载消失,系统也无法快速恢复,因为积分器需要时间“回退”。

​2. 抗积分饱和增益如何工作?

抗积分饱和增益通过动态调整积分器的积分速率,在接近饱和时减缓积分积累,防止输出超出限制。其核心逻辑如下:

​正常情况:增益为1时,积分器按原始比例积分(输出 = Kp误差 + Ki积分(误差))。
​接近饱和时:增益自动减小,降低积分速率,例如当输出接近最大值时,增益可能降至0.5,使积分器“减速”,避免溢出。
​饱和后:增益可能进一步调整,甚至暂时停止积分,直到误差信号反转。
当误差较小时,增益接近1,积分正常。
当误差较大时,增益减小,积分速率降低。

3.​为什么需要抗积分饱和增益?

​1. 实际系统中的约束
电机电流受逆变器输出能力限制(如最大电流I_{max}=10A)。
若积分器输出超过I_{max},会导致逆变器保护触发或电流波形畸变。
​2. 典型问题举例
​问题:电机带载启动时,电流需求突然增大,积分器快速积分导致输出超过I_{max},系统崩溃。
​解决:抗积分饱和增益减缓积分速率,使电流逐渐逼近I_{max},避免跳变。

四.聊聊电机电流采样

电机电流采样通过高精度传感器实时采集绕组电流数据,经ADC转换和数字滤波后输入控制器,实现扭矩闭环控制与过流保护。

1.硬件层实现

​传感器选型
​霍尔效应传感器:低成本、非接触式测量,适用于中小功率电机(50A-500A),需注意温度漂移补偿
​电流互感器(CT)​:高隔离性(耐压1kV以上),适合大电流场景(1000A+),需解决二次侧信号调理
​Shunt电阻:精度最高(0.1%-0.01%),但需串联在主回路,存在功率损耗(I²R,需<5W)

​ADC架构
​24bit SAR ADC:典型采样率100kSPS,满足PWM频率5kHz以上的电流采样需求
​Δ-Σ ADC:24bit分辨率下可实现20Hz带宽,适合高频噪声抑制
​同步采样:6通道同步采集精度误差<0.5%

​抗干扰设计
​共模扼流圈:抑制PWM高频开关噪声(建议频率点选在PWM载波3倍以上)
​金属屏蔽罩:传感器信号线采用双绞线+屏蔽层,接地电阻<1Ω
​硬件滤波电路:一阶RC低通滤波(截止频率=1/(2πRC),典型值1kHz)

2.信号处理层

​数字滤波算法

// 二阶滑动平均滤波(递推实现)
float current_filter(int16_t raw_ADC) {filtered += (raw_ADC - filtered) * 0.333f; return filtered;
}

​时间常数选择:τ=3ms(对应50Hz工频干扰抑制)
​Kalman滤波:融合电压环反馈,动态补偿负载突变(残差阈值设为0.5%FS)

​噪声抑制技术
​差分采集:共模电压范围提升至±15V(优于单端5V)
​时钟抖动抑制:ADC时钟采用石英晶体振荡器(±50ppm)
​数字校准:生产阶段进行零点漂移校准(典型值<20μA)和增益误差校准(<0.1%)

3.算法层应用

​扭矩闭环控制
​Park变换:将三相电流分解为Id/Iq坐标系(采样周期<1ms)
​PI控制器参数:电流环Kp=0.1-0.5(取决于电机Td),Ki=0.001-0.01

​过流保护机制
​硬件比较器:独立于DSP的快速保护路径(响应时间<10μs)
​软件阈值动态调整:根据电机温度(NTC热敏电阻)进行过载电流折减(如每℃衰减3%)
​斜坡补偿:在PWM关断瞬间注入死区时间(典型值500ns-2μs)

4.工业级应用案例

​新能源汽车驱动系统
​要求:连续工作温度-40℃~125℃,EMC符合ISO 11452-2 Class 5
​解决方案:三重冗余设计(主从ADC切换+FPGA故障检测+双MCU表决)
​实测数据:电流采样精度±0.3%(RMS),THD<1.5%

​高精度伺服系统
​特殊需求:1kHz带宽的电流环,谐波畸变率<0.7%
​创新设计:电流采样同步于转子位置编码器(AB相信号)
​性能指标:稳态精度±0.1%,动态响应时间<5ms

五.傅里叶变换和拉普拉斯变换区别

傅里叶变换适用于分析无限长时间、稳态周期信号的频率成分(如正弦波),通过离散频率谱揭示信号能量分布,但要求信号绝对可积;而拉普拉斯变换通过引入复变量s=σ+jω ,既可处理瞬态非周期信号(如阶跃响应),又能表征系统动态特性(如极点位置决定稳定性),其收敛域由虚部ω和实部σ共同决定,工程中常用于电路分析和控制理论。简言之,傅里叶聚焦稳态频域分解,拉普拉斯兼顾瞬态时域性与系统因果性。

六.谈谈电机里ADC的应用

1.ADC在电机控制中的核心作用

​信号数字化
电机需实时监测电流、电压、温度、位置等模拟量(如电流传感器输出、热敏电阻阻值变化)。
ADC将这些连续信号转换为离散的数字值,供微控制器(MCU)或数字信号处理器(DSP)进行处理和分析。
​闭环控制实现
通过ADC反馈的实际参数(如相电流、转子位置),结合预设目标值,算法(如PID、FOC)可动态调整PWM输出,实现精准的速度/扭矩控制。
​安全与保护机制
实时监测过流、过压、过温等异常情况,触发保护动作(如关断IGBT、报警),避免硬件损坏。

2.典型应用场景

​1. 电流采样
​应用:直流无刷电机(BLDC)、永磁同步电机(PMSM)需采集三相电流,用于反电动势估算或直接电流控制。
​技术要点:
高分辨率ADC(如12-24位)以降低量化误差。
同步采样技术(如多通道ADC)捕捉瞬态电流波动。
光耦隔离或差分放大器抑制共模噪声。
​2. 电压监测
​应用:检测母线电压、绕组电压,防止过压损坏绝缘或器件。
​技术要点:
分压电路将高压信号降至ADC输入范围(如0-5V)。
快速响应ADC(≥100 kSPS)应对电压突变。
​3. 转子位置反馈
​应用:步进电机依赖霍尔传感器或编码器输出脉冲信号;BLDC需通过反电动势(EMF)推算位置。
​技术要点:
自适应滤波算法(如滑动平均)处理传感器噪声。
自动检测方向并同步PWM时序。
​4. 温度监控
​应用:热敏电阻(NTC)监测电机绕组、IGBT模块温度。
​技术要点:
恒流源激励提升测量精度。
查表法或线性化算法修正非线性特性。

3.关键技术挑战与解决方案

​噪声抑制
​问题:电机工作环境存在电磁干扰(EMI)、电源纹波。
​方案:硬件滤波(RC低通滤波器、金属屏蔽罩)、软件滤波(数字滑动平均、卡尔曼滤波)。
​高精度需求
​问题:电流/电压采样的微小误差会导致控制算法失真。
​方案:高分辨率ADC(如24位)、校准电路(增益校准、偏移校准)。
​实时性要求
​问题:电机高速运转时需高频采样(如FOC算法需kHz级采样率)。
​方案:并行ADC或多通道轮询、专用ADC硬件加速。
​功耗优化
​问题:电池供电设备需延长续航时间。
​方案:低功耗ADC模式(如空闲时关闭)、动态采样率调整。

4.实际案例分析

​案例1:BLDC电机驱动
​ADC配置:3通道16位ADC,同步采样三相电流。
​控制流程:ADC数据→ Clarke/Park变换→空间矢量调制(SVM)→ PWM输出。
​案例2:步进电机细分控制
​ADC配置:2通道ADC,分别采集AB相信号和参考电压。
​控制流程:正交编码器AB相信号解码→自适应PID调节→细分驱动电流。

相关文章:

电机控制常见面试问题(十二)

文章目录 一.电机锁相环1.理解锁相环2.电机控制中的锁相环应用3.数字锁相环&#xff08;DPLL&#xff09; vs 模拟锁相环&#xff08;APLL&#xff09;4.锁相环设计的关键技术挑战5.总结 二、磁链观测1.什么是磁链&#xff1f;2.为什么要观测磁链&#xff1f;3.怎么观测磁链&am…...

芯驿电子 ALINX 亮相德国纽伦堡,Embedded World 2025 精彩回顾

2025年3月13日&#xff0c;全球规模最大的嵌入式行业盛会——德国纽伦堡国际嵌入式展&#xff08;embedded world 2025&#xff09;圆满落幕。 在这场汇聚全球 950 家展商、3 万余专业观众的科技盛宴中&#xff0c;芯驿电子 ALINX 展位人头攒动&#xff0c;多款尖端产品吸引客户…...

西门子S7-1200 PLC远程上下载程序方案

西门子S7-1200 PLC远程上下载程序方案&#xff08;巨控GRM552YW-C模块&#xff09; 三步完成配置 | 全球适用 | 稳定高效 三步快速完成远程配置 硬件部署 准备巨控GRM552YW-CHE模块1台&#xff0c;通过网口连接西门子S7-1200 PLC以太网口。 模块支持4G/5G/Wi-Fi/网线接入外网…...

MFC窗口的创建/消息映射机制

mfc.h #include<afxwin.h>//mfc头文件//应用程序类 class MyApp:public CWinApp //继承于应用程序类 { public://程序入口virtual BOOL InitInstance(); };//框架类 class MyFrame:public CFrameWnd { public:MyFrame();//声明宏 提供消息映射机制DECLARE_MESSAGE_MAP()…...

【每日学点HarmonyOS Next知识】tab对齐、相对布局、自定义弹窗全屏、动画集合、回到桌面

1、HarmonyOS Tabs 是否能支持 tabbar 居左对齐&#xff1f; 当前方案为自定义tabbar实现&#xff0c;示例demo&#xff1a; Entry Component struct TabsExample {State tabArray: Array<number> [0, 1,2]State focusIndex: number 0State pre: number 0State inde…...

如何在TikTok网页版切换地区设置

今天我们来聊聊如何在TikTok网页版上更改地区设置。TikTok作为全球知名的短视频社交应用&#xff0c;不仅仅局限于某个国家或地区。修改地区设置可以让你探索来自不同地方的内容&#xff0c;享受更为丰富的社交互动体验。那么&#xff0c;具体该如何操作呢&#xff1f;让我一步…...

redis工具类

前言 Redis 是一个高性能的键值存储系统&#xff0c;广泛应用于缓存、消息队列、实时分析等场景。为了更高效地操作 Redis&#xff0c;许多开发者会选择使用 Redisson 客户端库。 依赖配置 首先确保您的项目中已经包含了 Redisson 的最新版本&#xff08;如 3.44.0&#xff…...

【Python办公】Excel通用匹配工具(双表互匹)

目录 专栏导读1、背景介绍2、库的安装3、核心代码4、完整代码总结专栏导读 🌸 欢迎来到Python办公自动化专栏—Python处理办公问题,解放您的双手 🏳️‍🌈 博客主页:请点击——> 一晌小贪欢的博客主页求关注 👍 该系列文章专栏:请点击——>Python办公自动化专…...

安徽省青少年信息学奥林匹克竞赛初中组第1题LuoguP762

先放题目: 【题目背景】.你 .可 .以 .选 .择 .跳 .过 .背 .景 .部 .分。初春的一天&#xff0c;正是乍暖还寒时候&#xff0c;狂风乍起。小可可裹紧了单薄的外衣&#xff0c;往小雪家中赶去。“今天真不是个出门的时候啊&#xff01;”小可可感叹道。“但是我还有东西要买………...

AVL树的平衡算法的简化问题

AVL树是一种紧凑的二叉查找树。它的每个结点&#xff0c;都有左右子树高度相等&#xff0c;或者只相差1这样的特性。文章https://blog.csdn.net/aaasssdddd96/article/details/106291144给出了一个例子。 为了便于讨论&#xff0c;这里对AVL树的结点平衡情况定义2个名称&#…...

NFS实验配置笔记

NFS NFS服务 nfs&#xff0c;最早是Sun这家公司所发展出来的&#xff0c;它最大的功能就是可以透过网络&#xff0c;让不同的机器&#xff0c;不同的操作系统&#xff0c;进行实现文档的共享。所以你可以简单的将他看做是文件服务器。 实验准备 ①先准备一个服务器端的操作…...

C盘清理技巧分享:释放空间,提升电脑性能

目录 1. 引言 2. C盘空间不足的影响 3. C盘清理的必要性 4. C盘清理的具体技巧 4.1 删除临时文件 4.2 清理系统还原点 4.3 卸载不必要的程序 4.4 清理下载文件夹 4.5 移动大文件到其他盘 4.6 清理系统缓存 4.7 使用磁盘清理工具 4.8 清理Windows更新文件 4.9 禁用…...

【云馨AI-大模型】RAGFlow功能预览:Dify接入外部知识库RAGFlow指南

介绍 Dify介绍 开源的 LLM 应用开发平台。提供从 Agent 构建到 AI workflow 编排、RAG 检索、模型管理等能力&#xff0c;轻松构建和运营生成式 AI 原生应用。比 LangChain 更易用。官网&#xff1a;https://dify.ai/zh RAGFlow介绍 RAGFlow 是一款基于深度文档理解构建的…...

大模型学习笔记------Llama 3模型架构之旋转编码(RoPE)

大模型学习笔记------Llama 3模型架构之旋转编码&#xff08;RoPE&#xff09; 1、位置编码简介1.1 绝对位置编码1.2 相对位置编码 2、旋转编码&#xff08;RoPE&#xff09;2.1 基本概念---旋转矩阵2.2 RoPE计算原理2.2.1 绝对位置编码2.2.2 相对位置编码 3、旋转编码&#xf…...

Anthropic 的模型

Anthropic 的模型&#xff08;特别是 Claude 系列&#xff09;之所以在性能和推理能力上表现强劲&#xff0c;可以从技术设计、研究理念、训练方法以及应用优化等多个方面进行详细分析。以下是基于当前信息&#xff08;截至 2025 年 3 月 13 日&#xff09;和行业趋势的深入剖析…...

初探大模型开发:使用 LangChain 和 DeepSeek 构建简单 Demo

最近&#xff0c;我开始接触大模型开发&#xff0c;并尝试使用 LangChain 和 DeepSeek 构建了一个简单的 Demo。通过这个 Demo&#xff0c;我不仅加深了对大模型的理解&#xff0c;还体验到了 LangChain 和 DeepSeek 的强大功能。下面&#xff0c;我将分享我的开发过程以及一些…...

FPGA初级项目10——基于SPI的DAC芯片进行数模转换

FPGA初级项目10——基于SPI的DAC芯片进行数模转换 DAC芯片介绍 DAC 芯片&#xff08;数字模拟转换器&#xff09;是一种将数字信号转换为连续模拟信号&#xff08;如电压或电流&#xff09;的集成电路&#xff0c;广泛应用于电子系统中&#xff0c;连接数字世界与模拟世界。 …...

【论文解读】Contrastive Learning for Compact Single Image Dehazing(AECR-Net)

文章目录 问题创新网络主要贡献Autoencoder-like Dehazing NetworkAdaptive Mixup for Feature PreservingDynamic Feature Enhancement1. 可变形卷积的使用2. 扩展感受野3. 减少网格伪影4. 融合空间结构信息 Contrastive Regularization1. 核心思想2. 正样本对和负样本对的构建…...

unity基础——线段与拖尾

1、LineRenderer&#xff08;线段渲染器&#xff09; 为空物体加上组件添加材质 选择默认线段的材质 Default—Line Color&#xff1a;可以修改颜色Corner Vertices&#xff1a;角顶点 圆滑度 End Cap Vertices&#xff1a;边缘顶点 线段编辑 1、可以移动线段点的位置&#xf…...

【服务器知识】Nginx路由匹配规则说明

Nginx路由匹配规则说明 **一、Nginx路由匹配核心机制****二、匹配规则语法详解**1. **精确匹配 ()**2. **前缀匹配 (^~ 或 /)**3. **正则匹配 (~ 或 ~*)**4. **通配符匹配 (*)** **三、路由匹配优先级顺序****四、高级路由技巧**1. **条件判断 (if语句)**2. **路径重写 (rewrit…...

Python----数据可视化(Pyecharts三:绘图二:涟漪散点图,K线图,漏斗图,雷达图,词云图,地图,柱状图折线图组合,时间线轮廓图)

1、涟漪特效散点图 from pyecharts.globals import SymbolType from pyecharts.charts import EffectScatter from pyecharts.faker import Faker from pyecharts import options as opts from pyecharts.globals import ThemeType # 绘制图表 es (EffectScatter(init_optsop…...

机器学习中的梯度下降是什么意思?

梯度下降&#xff08;Gradient Descent&#xff09;是机器学习中一种常用的优化算法&#xff0c;用于最小化损失函数&#xff08;Loss Function&#xff09;。通过迭代调整模型参数&#xff0c;梯度下降帮助模型逐步逼近最优解&#xff0c;从而提升模型的性能。 1.核心思想 梯…...

C语言中的字符串与数组的关系

在C语言中,字符串和数组之间有着紧密的关系。理解它们的区别和联系对于编写高效且可靠的代码至关重要。在本篇博文中,我们将详细分析字符串和数组在C语言中的概念、它们的关系以及如何在编程中应用它们。 一、字符串与数组的基础知识 1.1 数组概念 在C语言中,数组是一组相…...

Ubuntu 18,04 LTS 通过APT安装mips64el的交叉编译器。

安装 g-5v的版本&#xff1a; sudo apt update sudo apt install g-5-mips64el-linux-gnuabi64 How to Install g-5-mips64el-linux-gnuabi64 in Ubuntu 18.04 安装 gcc/g-7v的版本&#xff1a; sudo apt-get install gcc-mips64el-linux-gnu* g-mips64el-linux-gnu* -y 安装…...

MySQL 衍生表(Derived Tables)

在SQL的查询语句select …. from …中&#xff0c;跟在from子句后面的通常是一张拥有定义的实体表&#xff0c;而有的时候我们会用子查询来扮演实体表的角色&#xff0c;这个在from子句中的子查询会返回一个结果集&#xff0c;这个结果集可以像普通的实体表一样查询、连接&…...

C++ vector 核心知识:常用操作与示例详解

在C编程中&#xff0c;vector 是标准模板库&#xff08;STL&#xff09;中最常用的容器之一。它以其动态数组的特性、高效的尾部操作和便捷的随机访问能力&#xff0c;成为处理动态数据的首选工具。无论是初学者还是经验丰富的开发者&#xff0c;掌握 vector 的使用方法和性能优…...

不同开发语言对字符串的操作

一、字符串的访问 Objective-C: 使用 characterAtIndex: 方法访问字符。 NSString *str "Hello, World!"; unichar character [str characterAtIndex:0]; // 访问第一个字符 H NSLog("%C", character); // 输出: H NSString 内部存储的是 UTF-16 编…...

Qt从入门到入土(十) -数据库操作--SQLITE

认识 数据库是用于存储、管理和检索数据的系统化集合。它是一种按照特定结构组织数据的存储方式&#xff0c;通过软件&#xff08;数据库管理系统&#xff0c;DBMS&#xff09;来实现数据的高效存储、查询、更新和管理。通过文件存储数据适用于少量的数据&#xff0c;而当拥有…...

硬件驱动——51单片机:独立按键、中断、定时器/计数器

目录 一、独立按键 1.原理 2.封装函数 3.按键控制点灯 数码管 二、中断 1.原理 2.步骤 3.中断寄存器IE 4.控制寄存器TCON 5.打开外部中断0和1 三、定时器/计数器 1.原理 2.控制寄存器TCON 3.工作模式寄存器TMOD 4.按键控制频率的动态闪烁 一、独立按键 1…...

pgsql创建新用户并赋只读权限

在 PostgreSQL 中&#xff0c;为新用户赋予只读权限的步骤如下&#xff1a; —### 1. 创建新用户首先&#xff0c;创建一个新用户&#xff08;角色&#xff09;&#xff0c;并设置密码&#xff1a;sqlCREATE ROLE 用户名 WITH LOGIN PASSWORD 密码;例如&#xff1a;sqlCREATE R…...

【量化策略】动量突破策略

【量化策略】动量突破策略 &#x1f680;量化软件开通 &#x1f680;量化实战教程 技术背景与应用场景 动量突破策略是一种基于市场趋势的量化交易策略&#xff0c;它通过识别和利用资产价格的持续上升或下降趋势来获取利润。这种策略特别适用于那些价格波动较大、趋势明显…...

QT编程之QGIS

一、QGIS介绍 Quantum GIS&#xff08;QGIS&#xff09;是开源地理信息系统桌面软件&#xff0c;使用GNU&#xff08;General Public License&#xff09;授权&#xff0c; 属于 Open Source eospatial Foundation&#xff08; OSGeo &#xff09;的官方计划。在 GNU 授权下&am…...

LangChain-chatchat 0.3.x入门级教程

前言 一种利用 langchain 思想实现的基于本地知识库的问答应用&#xff0c;目标期望建立一套对中文场景与开源模型支持友好、可离线运行的知识库问答解决方案。该项目支持市面上主流的开源 LLM、 Embedding 模型与向量数据库&#xff0c;可实现全部使用开源模型离线私有部署。…...

Vi/Vim命令详解:高效文本编辑的利器

Vi/Vim命令详解&#xff1a;高效文本编辑的利器 Vi和Vim是Unix/Linux系统中极为流行的文本编辑器&#xff0c;它们以其强大的功能和高效的操作方式赢得了广大用户的喜爱。无论是对于程序员、系统管理员还是普通用户&#xff0c;掌握Vi/Vim的基本命令和高级技巧都是非常有必要的…...

【前端三剑客】万字总结JavaScript

一、初识JavaScript 1.1 JavaScript 的作用 表单动态校验&#xff08;密码强度检测&#xff09; &#xff08; JS 产生最初的目的 &#xff09;网页特效服务端开发(Node.js)桌面程序(Electron)App(Cordova)控制硬件-物联网(Ruff)游戏开发(cocos2d-js) 1.2 HTML/CSS/JS 的关系…...

MySQL | MySQL表的增删改查(CRUD)

目录 前言&#xff1a;什么是 CRUD ?一、Creat 新增1.1 语法1.2 示例1.2.1 单行数据全列插入1.2.2 单行数据指定列插入1.2.3 多行数据指定列插入 二、Retrieve 检索2.1 语法2.2 示例2.2.1 全列查询2.2.2 指定列查询2.2.3 查询字段为表达式2.2.4 结果去重查询2.2.5 where条件查…...

【愚公系列】《高效使用DeepSeek》003-DeepSeek文档处理和其他顶级 AI模型的区别

标题详情作者简介愚公搬代码头衔华为云特约编辑,华为云云享专家,华为开发者专家,华为产品云测专家,CSDN博客专家,CSDN商业化专家,阿里云专家博主,阿里云签约作者,腾讯云优秀博主,腾讯云内容共创官,掘金优秀博主,亚马逊技领云博主,51CTO博客专家等。近期荣誉2022年度…...

OSC32IN与OSC32OUT对于无源晶振而言有区别吗?

OSC32IN与OSC32OUT对于无源晶振而言有区别吗&#xff1f; 答&#xff1a;没有区别。对晶振本身而言&#xff0c;两个频率管脚反接也是一样的。 如下图所示&#xff1a; 使用示波器连接晶振的两个引脚&#xff0c;并观察波形可以帮助确定输入和输出端口。 当晶振工作正常时&…...

究竟什么是虚拟同步机???虚拟同步机巨简单理解

1同步发电机 1.1同步发电机工作原理 同步发电机定子铁芯的内圆均匀分布着定子槽,槽内按一定规律嵌放着对称的三相绕组U1-U2、V1-V2、W1-W2,如图1所示。 图1 同步发电机的结构原理图 工作原理: 转子铁芯上装有制成一定形状的成对磁极,磁极上绕有励磁绕组。励磁绕组上通直流…...

ZVA-Z90,罗德与施瓦茨毫米波变换器

罗德与施瓦茨 ZVA-Z90毫米波变换器​ 商品品牌&#xff1a;R&S/罗德与施瓦茨 商品型号&#xff1a;ZVA-Z90 商品名称&#xff1a;毫米波变换器 产品简介: ZVA-Z 毫米波变换器 简介 R&SZVA-Zxx 毫米波变换器支持在 V、E、W、F、D、G、J 以及 Y 频段内的毫米波测量…...

TCP/IP 协议精讲-精华总结版本

序言 本文旨在介绍一下TCP/IP涉及得所有基础知识&#xff0c;为大家从宏观上俯瞰TCP/IP提供一个基石&#xff0c;文档属于《TCP/IP图解&#xff08;第五版&#xff09;》的精简版本。 专业术语 缩写 全称 WAN Wide area network广域网 LAN Local area network局域网 TC…...

电脑内存不足怎么办?

常规解决方法盘点 关闭后台程序&#xff1a;按下【Ctrl Shift Esc】组合键打开任务管理器&#xff0c;在 “进程” 选项卡里&#xff0c;把当前不用的程序统统 “结束任务” &#xff0c;像那些自动更新的软件、常驻后台的播放器&#xff0c;关了能释放不少内存。比如音乐软…...

PTP协议赋能高精度时间同步网络

什么是PTP&#xff1f; PTP&#xff08;精确时间协议&#xff0c;Precision Time Protocol&#xff09; 是一种基于IEEE 1588标准的网络时间同步协议&#xff0c;旨在为分布式系统中的设备提供亚微秒级&#xff08;甚至纳秒级&#xff09;的高精度时钟同步。其核心目标是通过消…...

【redis】string应用场景:缓存功能和计数功能

文章目录 缓存功能实现思路存在的问题伪代码实现 记数功能实现思路统计伪代码实现 缓存功能 实现思路 整体的思路&#xff1a; 应用服务器访问数据的时候&#xff0c;先查询 Redis 如果 Redis 上数据存在了&#xff0c;就直接从 Redis 读取数据交给应用服务器&#xff0c;不继…...

oracle中OS BLOCK的含义

在Oracle数据库中&#xff0c;OS BLOCK&#xff08;操作系统数据块&#xff09;是指操作系统层面上的数据块&#xff0c;它与Oracle数据库内部的逻辑存储单元BLOCK&#xff08;数据块&#xff09;有所区别但密切相关。以下是对OS BLOCK的详细解释&#xff1a; 定义与概念 OS BL…...

SSM企业台账管理平台

&#x1f345;点赞收藏关注 → 添加文档最下方联系方式咨询本源代码、数据库&#x1f345; 本人在Java毕业设计领域有多年的经验&#xff0c;陆续会更新更多优质的Java实战项目希望你能有所收获&#xff0c;少走一些弯路。&#x1f345;关注我不迷路&#x1f345; 项目视频 SS…...

Linux下使用pigz工具结合tar实现并行压缩提升压缩和解压速度

说明 tar命令是在 Unix 和类 Unix 系统中用于归档和压缩文件的常用工具。 基本语法 tar [选项] [归档文件名] [文件或目录列表]常用选项 创建归档文件: -c:创建一个新的归档文件。例如,tar -cvf myarchive.tar file1.txt file2.txt会创建一个名为myarchive.tar的归档文件…...

低代码与AI测试自动化:双剑合璧的未来

在数字化转型浪潮下&#xff0c;企业软件开发和测试的效率需求空前提高。低代码&#xff08;Low-Code&#xff09;平台因其直观的可视化编程方式、大幅降低开发门槛的特点&#xff0c;成为企业敏捷开发的首选。而AI测试自动化的兴起&#xff0c;则彻底改变了传统软件测试模式&a…...

JavaScript基础篇:三、 变量与数据类型

一、变量的概念与声明 在 JavaScript 中,变量是用于存储数据的容器。通过声明变量,可以为程序中的数据分配内存空间,以便后续的访问和操作。变量的声明使用`var`、`let`或`const`关键字。 (一)var关键字 `var`是 JavaScript 中传统的变量声明方式,具有函数级作用域。这…...

【2025最新版】如何将fnm与node.js安装在D盘?【保姆级安装及人性话理解教程】

目录 背景&#xff1a; 1.安装fnm 1.1下载fnm 1.2解压目录 1.3配置fnm的环境变量 1.4验证fnm是否安装成功 fnm大捷~ 2.相关配置为下载node.js做准备 2.1查看是否有环境配置文件 2.2获取环境配置文件 2.3新建文件 2.4写入配置 2.5重启powershell 2.5.1可能出现的错…...