新闻详情

新闻详情

首页 / 资讯中心 / 详情

基于STM32与红外传感器的自动泊车系统:从硬件搭建到算法实现

发布时间:2026/9/4 22:50:27来源:尧图网络
基于STM32与红外传感器的自动泊车系统:从硬件搭建到算法实现
简介本资源是一份面向嵌入式初学者与高校课程设计学生的STM32实践项目包聚焦红外传感与自动泊车控制这一典型应用场景解决从传感器数据采集、电机驱动到停车逻辑实现的完整闭环开发问题。压缩包共18个文件7个C源码、6个头文件支撑模块化开发1个PDF含主控电路原理图1个IOC配置文件用于STM32CubeMX初始化1个PNG展示SW建模结构1个README.md说明工程组织1个TXT标注关键端口映射总大小仅124KB轻量易读且结构清晰。已有520人学习下载适合嵌入式系统入门者快速掌握STM32外设配置GPIO/ADC/PWM、红外避障信号处理、直流电机方向与速度控制、以及简易路径规划算法的软硬协同实现。所有代码基于标准外设库或HAL库编写注释完整可直接编译运行于常见STM32F1/F4开发板是理解自动泊车底层原理与嵌入式工程落地的优质教学参考。1. 项目缘起从“倒车入库”到“自动泊车”的工程实践每次在狭窄的停车场里看着前后左右都紧挨着的车小心翼翼地转动方向盘反复调整角度生怕一个不小心就刮蹭到旁边的车这种经历想必每个司机都深有体会。自动泊车这个听起来充满未来感的功能其实离我们并不遥远它背后的核心逻辑远没有想象中那么神秘。这次我们就来动手实现一个基于STM32和红外传感器的自动泊车系统这不仅仅是一个课程设计更是一次将嵌入式控制、传感器融合和简单算法落地的绝佳实践。你可能在很多视频里见过那些搭载超声波雷达、摄像头甚至激光雷达的豪华车型演示自动泊车但对于我们学生党或嵌入式爱好者来说成本是首要考虑因素。红外传感器以其低廉的价格、简单的接口和可靠的测距能力成为了入门级自动泊车方案的首选。而STM32作为嵌入式领域的“瑞士军刀”其丰富的外设特别是定时器和ADC和强大的处理能力足以胜任这个项目的控制核心角色。这个项目能做什么简单来说我们将打造一个能够自主探测车位、规划路径、并控制小车模型或简易底盘完成侧方位泊车动作的微型系统。它适合谁如果你是电子信息、自动化、车辆工程等相关专业的学生正在寻找一个有挑战性又接地气的课程设计或毕业设计课题或者你是一名嵌入式开发爱好者想从点亮LED、驱动电机的阶段迈向一个更综合、更贴近实际应用的项目那么这个内容正是为你准备的。我们将绕过复杂的数学模型和昂贵的传感器用最“硬核”的方式把自动泊车的核心流程走通。2. 系统架构设计与核心器件选型在开始写代码和接线之前我们必须先把整个系统的骨架搭起来。一个清晰的架构能让你在后续开发中事半功倍避免陷入“哪里出错改哪里”的混乱局面。2.1 整体系统框图与工作流程我们的自动泊车系统可以抽象为一个典型的“感知-决策-执行”闭环。其核心工作流程如下感知阶段车辆模型在低速行进过程中通过侧向布置的红外传感器阵列持续扫描道路一侧探测是否存在符合长度要求的空车位。决策阶段STM32主控芯片接收到传感器数据后通过预设的算法判断车位是否有效。一旦确认发现有效车位立即记录当前位置并规划出一条从当前位姿到目标泊车位的路径。这条路径通常被简化为几个关键阶段初次调整、倒车入库、最终摆正。执行阶段主控芯片根据规划好的路径通过电机驱动模块精确控制两个驱动轮差速驱动模型的转速和转向从而控制车体的前进、后退、转弯等动作直至车辆完全停入车位中央并保持与边线的平行。整个系统的硬件核心围绕STM32展开它需要完成传感器数据采集、滤波处理、车位识别算法、路径规划计算、电机PWM控制信号生成以及可能的调试信息输出等一系列任务。2.2 主控芯片为什么是STM32在众多微控制器中STM32系列几乎是嵌入式项目的不二之选原因在于其极佳的性价比和生态成熟度。对于本项目我们推荐使用STM32F103C8T6即常说的“蓝色药丸”Blue Pill或其升级版STM32F401。选择它们基于以下几点考量充足的IO与定时器我们需要连接多个红外传感器至少3-4个、电机驱动模块2路PWM可能还需方向控制IO、以及调试用的串口或OLED屏。STM32F103提供了多达37个GPIO和多个高级/通用定时器完全满足需求。ADC资源大多数红外测距传感器输出的是模拟电压信号其电压值与距离成反比。STM32F103拥有2个12位ADC支持多通道扫描这正是我们同时读取多个传感器数据所必需的。足够的计算能力虽然我们的算法不复杂但实时读取传感器、运行判断逻辑、并生成电机控制信号对主频72MHz的Cortex-M3内核来说绰绰有余。成熟的开发环境无论是使用寄存器、标准库还是HAL库STM32都有海量的教程和社区支持。Keil MDK、STM32CubeIDE、甚至VSCodePlatformIO都可以作为开发工具极大降低了开发门槛。成本与可获得性核心板价格仅十余元极易获取。注意如果你手头有STM32F4或H7等更高端的板子当然可以用但F103的性能对本项目已完全过剩。选择最合适的而不是最贵的。2.3 感知核心红外传感器的原理与局限红外测距传感器如夏普的GP2Y0A21YK0F10-80cm或GP2Y0A02YK0F20-150cm是本项目的“眼睛”。其工作原理是三角测量法传感器内部的红外LED发射光束照射到物体后反射被位置敏感探测器PSD接收。物体距离不同反射光点在PSD上的位置也不同从而输出不同的电压值。关键特性与使用要点非线性输出传感器输出电压与距离成反比且是非线性的。厂家会提供特性曲线图。在实际使用中我们不能直接用电压值当作距离必须通过查表法或拟合公式进行转换。通常我们需要先用尺子实际测量一组“距离-电压”数据然后在代码中建立查找表或使用分段线性插值来获取真实距离。需要稳定电源红外传感器对供电电压波动比较敏感建议使用LDO如AMS1117-3.3为其提供稳定的3.3V电压并与MCU的模拟地良好共地以减少噪声。干扰与滤波环境光特别是日光灯、深色或吸光物体、光滑反射面都会影响测量精度。因此在软件上必须进行滤波处理。最常用的是滑动平均滤波或中值滤波。例如连续采样10次去掉最大最小值后求平均能有效抑制偶然的跳变。布局方案为了实现车位探测我们需要将多个红外传感器并排安装在车辆模型的一侧假设是右侧泊车。常见的布局是3个传感器一个朝前探测车头与障碍物距离一个垂直侧面探测车身与路沿或车位线的横向距离一个朝后探测车尾位置。更复杂的方案可以用4-5个传感器提高探测精度和可靠性。2.4 执行机构电机、驱动与车模选择执行机构负责将STM32的“思想”转化为实际动作。电机最常用的是N20减速直流电机它体积小、扭力足、自带减速箱且价格便宜。我们需要两个构成差速驱动平台通过左右轮速差来实现转向。驱动模块必须使用电机驱动芯片STM32的GPIO口无法直接驱动电机。TB6612FNG或DRV8833是理想选择。它们支持双路直流电机驱动内置H桥可通过PWM控制转速通过两个逻辑输入引脚控制正转、反转和刹车。相比古老的L298N它们发热小、效率高。车模底盘你可以购买现成的两轮差速驱动机器人底盘套件这通常包含了电机、轮子、底盘和电池盒。也可以自己用亚克力板或3D打印制作。确保底盘刚性足够且电机安装对称以减少行进中的系统误差。电源电机和控制系统最好分开供电。建议使用两节18650锂电池串联约7.4V给电机驱动供电同时通过一个降压模块如LM2596降到5V或3.3V给STM32和传感器供电。避免电机启停时的大电流波动影响MCU的稳定性。3. 硬件电路连接与核心外设配置当所有器件在手边时正确的连接是成功的第一步。这里我们以STM32F103C8T6、GP2Y0A21红外传感器3个、TB6612FNG驱动模块和N20电机为例详解连接方法。3.1 STM32与红外传感器的模拟接口连接GP2Y0A21有三根线VCC3.3V、GND、Vo模拟输出。连接如下传感器1前侧Vo 接 STM32 的 PA0ADC1_IN0。传感器2侧向Vo 接 STM32 的 PA1ADC1_IN1。传感器3后侧Vo 接 STM32 的 PA2ADC1_IN2。所有传感器的VCC接3.3VGND接公共地。在STM32CubeMX或代码中需要配置ADC1为“扫描模式”Scan Conversion Mode和“连续转换模式”Continuous Conversion Mode并启用这三个通道。DMA直接存储器访问在此处非常有用它可以自动将ADC转换结果搬运到内存数组中无需CPU频繁干预提高效率。ADC配置代码要点HAL库示例// 在CubeMX中配置好后生成代码 // 主要配置步骤 // 1. ADC1 时钟使能。 // 2. 配置ADC参数分辨率12位数据右对齐扫描模式开启连续转换模式开启。 // 3. 配置规则组添加通道0、1、2设置采样时间如239.5周期提高精度。 // 4. 启用DMA连续请求模式。 // 5. 校准ADC然后启动。 uint32_t adc_value[3]; // 用于存储DMA搬运结果的数组 HAL_ADC_Start_DMA(hadc1, (uint32_t*)adc_value, 3); // 启动ADC的DMA传输之后adc_value[0],[1],[2]就会自动更新为三个传感器的原始ADC值。你需要将这些值通过之前标定好的查找表或公式转换为实际距离单位厘米。3.2 STM32与TB6612电机驱动的连接TB6612FNG模块控制一个电机需要三个信号PWMAPWM速度、AIN1、AIN2方向控制。对于两个电机我们需要6个GPIO。左侧电机PWMA接 STM32 的定时器通道输出如TIM2_CH1(PA0但PA0已被ADC占用可改用PA5/TIM2_CH1)。AIN1接 STM32 的任意GPIO如 PB0。AIN2接 STM32 的任意GPIO如 PB1。右侧电机PWMB接 STM32 的定时器通道输出如TIM2_CH2(PA1同样冲突可改用PA6/TIM2_CH2)。BIN1接 STM32 的任意GPIO如 PB10。BIN2接 STM32 的任意GPIO如 PB11。TB6612的电源VM接电机电源7.4VVCC接逻辑电源3.3V或5V与STM32 IO电平一致。GND共地。方向控制真值表AIN1AIN2电机状态00刹车停止10正转01反转11刹车停止PWM配置我们需要配置一个定时器如TIM2的两个通道为PWM输出模式。设置预分频器PSC和自动重载值ARR来产生一个频率合适的PWM波。对于直流电机1kHz到10kHz都是常见范围。例如系统时钟72MHz预分频72则计数器时钟为1MHz。设置ARR为999则PWM频率为1MHz / 1000 1kHz。通过修改通道的捕获比较寄存器CCR值0-999来改变占空比从而控制电机速度。3.3 电源与接地设计的注意事项这是硬件部分最容易出问题的地方务必重视模拟地与数字地虽然STM32F103没有独立的模拟电源引脚但最好在PCB布局或面包板连接时将红外传感器的地线先汇聚到一点再通过一条较粗的导线连接到STM32的GND引脚形成一个“星型接地”减少数字电路噪声通过地线串扰到敏感的模拟信号。去耦电容在STM32的每个电源引脚VDD/VSS附近尽可能靠近引脚放置一个100nF的陶瓷电容。在主电源入口处并联一个10uF的电解电容和一个100nF的陶瓷电容用于滤除低频和高频噪声。电机电源隔离电机驱动模块的电源输入端VM一定要并联一个大容量的电解电容如470uF/16V以吸收电机启停和换向时产生的瞬间大电流防止电源电压被拉低导致系统复位。4. 核心算法车位探测、路径规划与差速控制硬件是躯体算法才是灵魂。这一部分我们将深入代码层面探讨如何让小车“看见”车位并“思考”如何停进去。4.1 基于红外传感器的车位探测算法车位探测的目标是在车辆沿路边平行移动时识别出一个足够长且没有障碍物的空间。算法逻辑如下数据准备通过ADC和DMA持续获取三个传感器的距离值dist_front,dist_side,dist_rear并经过滑动平均滤波。状态定义定义一个状态机例如SCAN_STATE包含SCANNING扫描中、FOUND_GAP发现缺口、MEASURING_LENGTH测量长度、CONFIRMED确认车位等状态。扫描过程初始状态为SCANNING车辆缓慢直行例如左轮右轮同速低速前进。当dist_side的值从一个较小的值表示靠近路沿突然跳变到一个很大的值超过阈值如50cm表示车身侧面出现了“缺口”可能是一个空位入口。此时记录入口位置entry_point并进入FOUND_GAP状态。长度测量在FOUND_GAP状态车辆继续前进同时开始用编码器或通过计时*速度来估算行驶距离。持续监测dist_side。只要dist_side保持较大值就认为缺口在延续。当dist_side再次下降到较小值表示遇到了下一个障碍物或路沿的尽头记录出口位置exit_point。计算gap_length exit_point - entry_point。车位确认将gap_length与预设的“最小车位长度”进行比较。这个最小长度需要大于你的车模长度加上安全余量例如车长20cm余量前后各10cm则最小需要40cm。同时检查dist_front和dist_rear在扫描过程中是否一直大于安全距离确保车位入口没有障碍物。如果长度足够且无障碍则车位确认状态转为CONFIRMED并记录下当前车辆后轴中心或某个参考点相对于车位入口的位置。否则状态重置为SCANNING继续寻找。这个算法相对简单但非常有效。为了提高鲁棒性你可以加入“持续计数”逻辑要求dist_side大于阈值的状态必须持续一定时间对应一定行驶距离才判定为有效缺口以避免因单个传感器误报导致的误触发。4.2 简化路径规划三段式泊车轨迹对于差速驱动平台侧方位泊车可以简化为三个阶段。我们假设车辆初始与路边平行且已找到车位并停在车位前方车尾与车位入口大致平齐。第一阶段倒车并转向。目标让车尾甩入车位。动作控制车辆以固定的、较小的转弯半径向后倒车。对于差速小车这意味着给左右轮设定一个速度差例如左轮慢速反转右轮快速反转或左轮停右轮反转形成绕左后轮内侧的旋转。终止条件通过侧向红外传感器监测车身与路边或车位线的距离当车身与路边的夹角达到预设值如45度或者车尾的传感器检测到即将碰到后方障碍物时进入下一阶段。第二阶段回正方向。目标将车身摆正与路边平行。动作向相反方向打方向盘。即左轮快速反转右轮慢速反转或右轮停左轮反转使车身绕右前轮此时的内侧旋转。终止条件侧向传感器读数稳定在一个较小的、理想的距离值如10cm并且车身前后端的侧向距离差在允许范围内表明车身已基本平行。或者通过陀螺仪如果加装检测到车身角度已回正至0度。第三阶段直线倒入。目标将车辆完全倒入车位内部。动作左右轮同速反转车辆直线后退。终止条件车头前侧的传感器检测到与前车或障碍物的距离达到安全值如5cm或者车辆后侧的传感器检测到已到达车位底部。路径参数化上述每个阶段的“转弯半径”和“行驶距离”都需要在实际车模上反复调试确定。你可以将这些参数如各阶段左右轮的速度值、运行时间或编码器脉冲数定义为常量写入代码。更高级的做法是根据车位长度和车辆尺寸进行简单的几何计算动态生成这些参数。4.3 差速控制与电机PID调速要让小车精确地按照规划路径行走简单的“给固定PWM值”是不够的。由于电机特性差异、电池电压波动、地面摩擦不同两个轮子的实际转速很难保持一致会导致跑偏。解决方案加入编码器与PID闭环控制。增量式编码器为两个N20电机安装编码器通常每转输出几十到几百个脉冲。将编码器的A、B相分别接到STM32定时器的编码器接口如TIM3和TIM4。速度测量在固定时间间隔如10ms内读取定时器计数器的值这个变化量就代表了轮子在这段时间内转过的角度从而可以计算出轮子的瞬时速度。PID控制器为每个电机建立一个速度环PID控制器。输入误差期望速度 - 编码器测量的实际速度。输出PWM占空比的调整量。作用PID控制器能动态调整PWM输出抵抗外部干扰使两个轮子的实际速度紧紧跟随我们设定的期望速度。这样当我们命令“左轮100转/分右轮80转/分”时小车就能稳定地以特定转弯半径行驶。PID参数整定经验可以先从纯P控制开始增大P值直到系统开始振荡然后取振荡值的一半。然后加入I值来消除静差。对于小车速度控制D值通常可以设为0或很小因为系统惯性不大。整定过程需要耐心在车模上实地测试调整。5. 软件实现、调试与系统集成有了清晰的算法和控制策略接下来就是将它们用代码组织起来并解决实际调试中会遇到的各种问题。5.1 软件架构与任务调度对于这样一个多任务传感器读取、状态判断、电机控制、调试输出的实时系统一个好的软件架构至关重要。即使不使用RTOS我们也应该采用“前后台”或“时间片轮询”的方式。推荐使用FreeRTOS对于STM32F103移植FreeRTOS是可行的它能让代码结构更清晰。你可以创建几个主要任务Sensor_Task负责周期性地读取ADC值通过DMA进行滤波和距离转换并将处理后的数据放入队列或全局变量。ParkingFSM_Task泊车状态机任务。它读取传感器数据根据当前状态执行车位扫描、路径规划决策并输出电机控制指令期望速度。MotorCtrl_Task电机控制任务。它接收期望速度结合编码器反馈运行PID算法最终更新定时器的CCR寄存器来改变PWM输出。Debug_Task通过串口将系统状态、传感器数据、PID输出等信息发送到电脑方便调试。如果不用RTOS则可以在主循环中利用定时器中断来划分时间片。例如设置一个1ms的SysTick中断在中断服务函数中设置标志位。在主循环中查询这些标志位以不同的频率执行不同优先级的任务。5.2 关键代码模块剖析1. 传感器数据处理模块// 距离转换函数示例需根据实际标定修改 #define ADC_MAX 4095 // 12位ADC uint16_t ADC_To_Distance(uint32_t adc_val) { // 方法1查表法最准确 static const uint16_t lookup_table[] {80, 75, 70, ... , 10}; // 对应ADC值0, 100, 200... uint16_t index adc_val / 100; // 假设每100个ADC值一个点 if (index sizeof(lookup_table)/sizeof(lookup_table[0]) - 1) { return 0; // 超出范围 } // 线性插值 uint16_t dist_low lookup_table[index]; uint16_t dist_high lookup_table[index 1]; return dist_low (dist_high - dist_low) * (adc_val % 100) / 100; // 方法2公式法近似需根据数据手册拟合 // float voltage adc_val * 3.3f / ADC_MAX; // return (uint16_t)(27.86 * pow(voltage, -1.15)); // 示例公式 } // 滑动平均滤波 #define FILTER_SIZE 5 uint16_t Moving_Average_Filter(uint16_t new_val) { static uint16_t buffer[FILTER_SIZE] {0}; static uint8_t index 0; static uint32_t sum 0; sum - buffer[index]; // 减去最旧的值 buffer[index] new_val; // 存入新值 sum new_val; index (index 1) % FILTER_SIZE; return (uint16_t)(sum / FILTER_SIZE); }2. 泊车状态机实现简化版typedef enum { STATE_IDLE, STATE_SCANNING, STATE_FOUND_GAP, STATE_MEASURING, STATE_CONFIRMED, STATE_BACKING_TURN, STATE_STRAIGHTENING, STATE_FINAL_BACK, STATE_FINISHED } ParkingState_t; ParkingState_t current_state STATE_IDLE; uint32_t gap_start_encoder 0; uint32_t gap_length 0; void ParkingFSM_Update(uint16_t dist_side, uint16_t dist_front, uint16_t dist_rear, int32_t encoder_pos) { switch(current_state) { case STATE_SCANNING: SetMotorSpeed(SLOW_SPEED, SLOW_SPEED); // 直行 if(dist_side GAP_THRESHOLD) { current_state STATE_FOUND_GAP; gap_start_encoder encoder_pos; // 可以增加一个延时或距离判断避免瞬时误触发 } break; case STATE_FOUND_GAP: // 继续前进测量长度 if(dist_side GAP_THRESHOLD) { // 缺口结束 gap_length encoder_pos - gap_start_encoder; if(gap_length MIN_PARKING_LENGTH dist_front SAFE_DIST dist_rear SAFE_DIST) { current_state STATE_CONFIRMED; // 触发停车准备倒车 StopMotors(); // 记录当前位姿开始规划路径 PlanParkingPath(); } else { current_state STATE_SCANNING; // 无效车位继续扫描 } } break; case STATE_CONFIRMED: // 切换到执行泊车动作的状态 current_state STATE_BACKING_TURN; break; case STATE_BACKING_TURN: // 执行第一阶段倒车转向 SetMotorSpeed(-LEFT_TURN_SPEED, -RIGHT_TURN_SPEED); // 判断终止条件例如侧向距离变化率或角度估算 if(/* 达到预设角度或距离 */) { current_state STATE_STRAIGHTENING; } break; // ... 其他状态处理 default: break; } }5.3 调试技巧与排坑指南在实际调试中你会遇到各种各样的问题。以下是一些常见坑点及解决方案问题1红外传感器数据跳动剧烈无法稳定判断。排查首先检查电源是否稳定地线连接是否良好。用万用表测量传感器VCC和GND之间的电压在电机动作时观察是否有波动。解决加强软件滤波。除了滑动平均可以结合“限幅滤波”本次值与上次值之差过大则舍弃和“中值滤波”。增加ADC采样时间牺牲速度换取稳定性。在传感器输出端并联一个1040.1uF电容到地硬件滤波。问题2小车走不直或者转弯半径不稳定。排查检查两个电机在相同PWM值下空载转速是否一致。检查轮胎是否打滑地面是否平整。检查编码器安装是否牢固接线是否正确A、B相是否接反。解决为每个电机单独进行“开环标定”。记录不同PWM值对应的空载转速建立一个PWM-转速表在发送速度指令时进行补偿。务必引入编码器和PID闭环控制这是解决此问题的根本方法。PID参数需要耐心整定。问题3车位识别误报率高经常把非车位空间当成车位。排查检查GAP_THRESHOLD缺口阈值和MIN_PARKING_LENGTH最小长度设置是否合理。用串口打印出dist_side的实时数据观察在真实车位和类似空间如两棵树之间的数据差异。解决增加判断条件。例如不仅要求dist_side大于阈值还要求dist_front和dist_rear在探测过程中始终大于另一个安全阈值以排除T型路口等情况。增加“持续距离”判断要求缺口长度必须稳定持续超过一定时间对应编码器计数再进入测量阶段。问题4泊车过程中撞到路沿或前后车。排查路径规划的参数转弯半径、各阶段运行距离是否合适安全距离阈值是否设置得太小传感器安装位置是否准确反映了车体轮廓解决在关键位置车头、车尾、车侧增加更多的红外传感器形成更全面的感知。在路径执行的每个阶段都持续监测相关传感器的距离一旦低于紧急停止阈值立即刹车。可以引入一个“慢速逼近”策略在接近障碍物时自动降低速度。问题5系统偶尔死机或复位。排查最可能的原因是电源问题。电机启动瞬间电流很大可能导致电压骤降使STM32复位。也可能是软件跑飞比如数组越界、堆栈溢出。解决用示波器观察系统电源电压在电机启动时的波形。加大电机驱动电源的电容。在软件中加入看门狗IWDG定时复位。检查代码中是否有未处理的异常中断。使用FreeRTOS时合理设置任务堆栈大小。调试时串口打印是你的最佳伙伴。将关键变量传感器距离、编码器计数、PID输出、系统状态实时打印出来可以让你清晰地了解系统内部正在发生什么快速定位问题所在。本文还有配套的精品资源点击获取
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

Python自动化监控系统构建:从数据采集到智能告警的完整实践 2026/9/4 23:32:47

Python自动化监控系统构建:从数据采集到智能告警的完整实践

简介:这是一套面向Python开发者与电商数据分析师的闲鱼智能监控与分析工具,解决人工盯梢效率低、筛选逻辑僵化、信息过载等痛点,适用于二手商品比价、热门商品抢购、竞品动态追踪等实际场景。资源包共39个文件,含11个核心Python脚…

阅读更多 →
Ice:macOS 菜单栏图标管理与整理工具 2026/9/4 23:32:47

Ice:macOS 菜单栏图标管理与整理工具

Ice:macOS 菜单栏图标管理与整理工具 【免费下载链接】Ice Powerful menu bar manager for macOS 项目地址: https://gitcode.com/GitHub_Trending/ice/Ice 周五下午,你又一次在 Mac 顶部那排密密麻麻的图标里找 WiFi 开关。Ice 这款菜单栏管理工…

阅读更多 →
Grok iOS 新增库支持与媒体筛选,本地相册直连 AI 应用 2026/9/4 23:32:47

Grok iOS 新增库支持与媒体筛选,本地相册直连 AI 应用

Grok 在 iOS 端要更新了。根据最近传出的消息,Grok iOS 将新增两项与本地媒体体验强相关的能力:库支持,以及媒体筛选功能。先说我对这条信息的理解:如果这次更新落地,Grok 就不只是一个“聊天窗口”,而会更…

阅读更多 →
Element Plus 官网打开慢:三步在本地跑起文档站解决 2026/9/4 23:32:47

Element Plus 官网打开慢:三步在本地跑起文档站解决

Element Plus 官网打开慢:三步在本地跑起文档站解决 【免费下载链接】element-plus 🎉 A Vue.js 3 UI Library made by Element team 项目地址: https://gitcode.com/GitHub_Trending/el/element-plus Element Plus 文档站打开转圈半天、组件示例…

阅读更多 →
电池SOC精准估算:从等效电路建模到AEKF与粒子滤波算法实践 2026/9/4 23:32:47

电池SOC精准估算:从等效电路建模到AEKF与粒子滤波算法实践

简介:本资源面向电池管理系统(BMS)算法研究者、新能源方向研究生及嵌入式控制工程师,聚焦锂离子电池荷电状态(SOC)高精度在线估计问题,提供基于戴维南二阶RC等效电路模型的自适应扩展卡尔曼滤波…

阅读更多 →
WezTerm 配置 10 分钟上手:换主题、调渐变背景、搭多窗格布局 2026/9/4 23:29:47

WezTerm 配置 10 分钟上手:换主题、调渐变背景、搭多窗格布局

WezTerm 配置 10 分钟上手:换主题、调渐变背景、搭多窗格布局 【免费下载链接】wezterm A GPU-accelerated cross-platform terminal emulator and multiplexer written by wez and implemented in Rust 项目地址: https://gitcode.com/GitHub_Trending/we/wezter…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞