Engineering notes工程笔记
Trace hardware, firmware, and control questions through failures, source files, board bring-up, and verification.沿着故障、源文件、板级调试与验证,追踪硬件、固件和控制问题。
- notes篇笔记
- 38
- linked projects个关联项目
- 11
- years covered个年份
- 2
Projects项目
Filter筛选
All notes全部笔记Notes笔记列表
Newest first最新在前
- NUEDC 2025 Simple Self-Aiming Device2025 电赛简易自行瞄准装置The K230 Gimbal Tracking LoopK230 云台追靶回路On the afternoon of day three the NUEDC car's gimbal still could not hold the target, and three faults turned up in the K230 code: servo limits, a reversed loop sign and a missing branch. Following the loop from pixel error to servo duty cycle shows where each one sat, and why the extensions were still lost at the right-angle corners.电赛第三天下午,云台还是追不住靶,K230 代码里揪出三处毛病:舵机限位、回路方向、少了一层分支。顺着回路从像素误差走到舵机占空比,能看清这三处各卡在哪一环,也能看清发挥题为什么还是栽在了直角弯上。K230K230Servo舵机PIDPID+1
- NUEDC 2025 Simple Self-Aiming Device2025 电赛简易自行瞄准装置MPU6050 Interrupts as the Control Clock用 MPU6050 中断给控制环打拍子The NUEDC car's project configures a 5 ms timer and never starts it; the control loop actually runs inside the MPU6050's DMP data-ready interrupt, 200 Hz from the sensor's own clock, halved to 100 Hz, and shared with two encoders decoded at 2x. What that inherited structure buys, what it costs, and what the motors do if the sensor ever goes quiet.电赛小车的工程里配了一个 5 ms 的定时器,却从来没启动;控制环实际跑在 MPU6050 的 DMP 数据就绪中断里,传感器自己的时钟给出 200 Hz,控制减半到 100 Hz,还和两路二倍频解码的编码器挤在同一个中断里。这套从例程继承来的结构换来了什么、付出了什么,传感器一旦不再发中断,电机又会怎样。MSPM0MSPM0MPU6050MPU6050Interrupts中断+2
- NUEDC 2025 Simple Self-Aiming Device2025 电赛简易自行瞄准装置Two Power Systems and the Relay-Switched Laser两套电源与继电器控制的激光On day two of the NUEDC contest the grey-scale sensors' 5 V outputs killed the MSPM0 core board. Working back from that board through the datasheet and the car's two power systems, a buck plus LDO chain for the MSPM0 and three separately switched LM2596 bucks for the aiming side, ends at the relay that lights the laser when its K230 GPIO goes low.电赛第二天,灰度传感器的 5 V 输出烧掉了 MSPM0 核心板。从这块板子出发,翻数据手册,再顺着车上的两套电源往下走:MSPM0 这边是降压加 LDO,瞄准那边是单独开关的三颗 LM2596,最后走到那个让激光在 K230 的 GPIO 拉低时才亮的继电器。Power Supply电源MSPM0MSPM0GPIOGPIO+2
- NUEDC 2025 Simple Self-Aiming Device2025 电赛简易自行瞄准装置Weighted Six-Channel Line Tracking and Lap Counting六路灰度循迹的加权与计圈The NUEDC car's line tracking took the first two days and ran steadily only on the evening of day two. Read again, its handful of lines turn six grey-scale channels into a target wheel-speed difference, let a sum and a difference decide between a gentle arc and a pivot, and count laps off the same outer sensor that pulls hardest.电赛小车的循迹占掉了前两天,到第二天晚上才跑稳。把那几行代码重新读一遍:六路灰度加成一个轮速差目标,一个和、一个差决定车是缓缓画弧还是原地打转,计圈用的又恰好是拽得最狠的那一路传感器。MSPM0MSPM0Line Tracking循迹Motor Control电机控制+1
- AD831 Active Mixer BoardAD831 有源混频器板Capacitor Parasitics and Self-Resonance电容的寄生参数与自谐振The 0603 capacitors on the AD831 mixer board worked through as C plus ESL plus ESR: where each one self-resonates, what it looks like at 10.7 MHz and 120 MHz, why the signal path asks for C0G, and why a through-hole electrolytic stops helping long before RF.把 AD831 混频器板上的几颗 0603 电容按电容、ESL、ESR 串联的模型算一遍:各自在哪里自谐振,10.7 MHz 和 120 MHz 下是什么样子,信号路径为什么要求 C0G,插件电解电容为什么远没到射频就帮不上忙。RFRFCapacitor电容ESRESR+3
- AD831 Active Mixer BoardAD831 有源混频器板dBm, Vpp and the IF Output LeveldBm、Vpp 与中频输出电平What dBm measures and why RF work uses it, then the AD831 mixer board's IF output recomputed from the signal source to the scope: why 150 mVpp over 100 Ω was the wrong division, what a 1 MΩ scope input actually reads, and where the link budget's −6 dB really belongs.dBm 是什么、射频里为什么都用它,再把 AD831 混频器板的中频输出从信号源一路推到示波器:150 mVpp 为什么不该除以 100 Ω,1 MΩ 输入的示波器读到的是什么,链路预算里那个 −6 dB 实际该记在哪。RFRFdBmdBmLink Budget链路预算+2
- AD831 Active Mixer BoardAD831 有源混频器板Lumped Matching and Trace Impedance集总匹配与走线特性阻抗Impedance matching with resistors and reactive parts at an interface, and the characteristic impedance a trace gets from its geometry, worked through on the AD831 mixer board's RF input: what each one controls, and why 120 MHz on a 7 cm board only needed the first.用电阻和电抗元件在接口处做的阻抗匹配,和走线由几何尺寸决定的特性阻抗,放到 AD831 混频器板的 RF 输入端上各算一遍:两者分别管什么,以及 7 cm 的板子跑 120 MHz 为什么只需要前一种。RFRFImpedance Matching阻抗匹配Transmission Line传输线+2
- AD831 Active Mixer BoardAD831 有源混频器板Mixer Performance Metrics混频器的性能指标Starting from the defense question about a mixer's two most important specifications: what conversion gain, noise figure, third-order intercept, 1 dB compression and port isolation each measure, how they are tested, and how the AD831 board's own LO leakage compares with the datasheet.从答辩时那道“混频器最重要的两个指标”出发,把转换增益、噪声系数、三阶交调截点、1 dB 压缩点和端口隔离各自衡量什么、怎么测拆开讲,再拿 AD831 混频器板自己的本振泄漏和手册对一对。RFRFMixer混频器Noise Figure噪声系数+2
- GaN Quadrotor ESC Final-Year ProjectGaN 四旋翼电调毕业设计AM32 on AT32F421 Without a Bootloader去掉 bootloader 的 AT32F421 版 AM32Why the official AM32 layout starts the application at 0x08001000, and what had to change in the linker script, scatter file and vector table offset to flash it directly over SWD.官方 AM32 为什么把程序放在 0x08001000,以及要通过 SWD 直接烧录时,链接脚本、scatter 文件和向量表偏移各要改什么。AM32AM32AT32F421AT32F421BootloaderBootloader+3
- GaN Quadrotor ESC Final-Year ProjectGaN 四旋翼电调毕业设计LMG1210 Bootstrap Capacitor SizingLMG1210 自举电容选型A 220 nF bootstrap capacitor that matched the datasheet formula still distorted the GaN ESC's high-side waveform. Working the formula through a six-step ESC's floating phase shows where the missing charge went.按手册公式算出来够用的 220 nF 自举电容,装上 GaN 电调后高边波形还是失真。把公式放进六步换相里一相悬空的那段时间再算一遍,缺的电荷就找到了。GaNGaNLMG1210LMG1210Bootstrap自举电路+3
- GaN Quadrotor ESC Final-Year ProjectGaN 四旋翼电调毕业设计Propeller-Loaded Startup and AM32 Startup Parameters带桨起转与 AM32 启动参数Most blown transistors on the GaN ESC died the moment a propeller-loaded motor started from standstill. Why that moment draws so much current in a sensorless six-step drive, and what AM32's startup power, sine startup and stall protection settings each control.GaN 电调的炸管大多出在带桨电机从静止起转的那一下。无感六步驱动里,这一下为什么电流最大,以及 AM32 的启动功率、正弦启动和堵转补偿这几项参数各自管什么。AM32AM32BLDCBLDCSensorless无感+3
- GaN Quadrotor ESC Final-Year ProjectGaN 四旋翼电调毕业设计Same-Speed Comparison and DShot Mapping同转速对比与 DShot 转速映射With a propeller fitted, one DShot throttle value spun the GaN and Si ESCs at different speeds. Why that breaks a direct comparison, and how the P0 tachometer mapping matched both boards at 3000, 6500 and 10000 rpm.装上螺旋桨以后,同一个 DShot 油门值让 GaN 和 Si 两块电调转出了不同的转速。为什么这样没法直接比,以及 P0 怎样用转速计把两块板对齐到 3000、6500 和 10000 rpm。DShotDShotESCESCPropeller螺旋桨+3
- GaN Quadrotor ESC Final-Year ProjectGaN 四旋翼电调毕业设计Shoot-Through Current Paths and Protection上下管直通的电流路径与保护Shoot-throughs on the GaN ESC killed far more than the power transistors. Following the fault current through the bus, the ground and the gates shows what the dead time, gate TVS, input fuses and input TVS each protect, and where a gap remains.GaN 电调的几次直通,坏掉的远不止功率管。顺着故障电流走一遍母线、地和栅极,看清死区、栅极 TVS、入口保险丝和入口 TVS 各自护住的是哪一段,又在哪里留了空档。GaNGaNShoot-Through直通Protection保护+3
- Claude Chime Power BoardClaude Chime 电源板Protected Battery Startup Measurements带保护电池的启动测量Separating cell and pack voltage, capacitor charging and protection timing when investigating a failed cold start.从一次冷启动掉压出发,研究电芯与电池包输出的区别、电容充电,以及保护判断所需的测量。Battery电池Inrush Current浪涌电流Boost Converter升压变换器+1
- Claude Chime Power BoardClaude Chime 电源板A Switched Battery Divider and ADC Settling电池采样开关与 ADC 建立时间Calculating the settling, current consumption and error sources of the Claude Chime battery-voltage divider.从 Claude Chime 的受控分压电路出发,计算建立时间、采样耗电与电压换算误差。ADCADCBattery电池RC FilterRC 滤波+1
- Custom Driver Board and Sensorless FOC自制驱动板与无感 FOC 实践Angle Continuity in Sensorless FOC Handoff无感 FOC 接管时的角度连续性Separating speed agreement, angle offset and controller-state continuity when moving from open-loop operation to an observer.把速度接近、角度偏差和控制器状态连续性分开,研究开环切换到观测器时应检查什么。FOCFOCObserver观测器EKFEKF+1
- Custom Driver Board and Sensorless FOC自制驱动板与无感 FOC 实践Current Sampling Within a PWM CyclePWM 周期内的电流采样Following the actual shunts, analog filtering and four-rank injected ADC sequence on the STM32F446 FOC board.沿实际分流电阻、模拟滤波与四通道注入序列,研究 FOC 电流采样是否处在合适的时刻。FOCFOCADCADCPWMPWM+1
- Cirro Phase-Change Cooling Controllers卷云相变散热器控制系统Cooperative Task Timing on the ACUnitACUnit 的协作式任务时序Examining execution time, deferred sensor reads and missed deadlines in a bare-metal EEV controller.沿 ACUnit 的阀步进与慢速传感器读取,研究执行耗时、任务推迟与错过节拍后的处理。STM32STM32Scheduling调度EEVEEV+1
- DIY Laptop CoolerDIY 压风式笔记本散热器Temperature Sampling and Fan Response温度采样与风扇响应Following sensor selection, asynchronous reading and sending, and peak resets to understand when a temperature sample changes fan output.沿传感器选择、异步读取与发送、温度峰值清空,研究一条温度样本何时影响风扇输出。ESP32ESP32C#C#Temperature Sampling温度采样+2
- DIY Laptop CoolerDIY 压风式笔记本散热器PWM Fan Control and Speed FeedbackPWM 风扇控制与转速反馈Studying fan power and PWM connections, waveform frequency and duty, and separate tachometer feedback for measuring each fan’s response.从风扇供电与 PWM 接线,研究频率、占空比和独立测速反馈,理解怎样观察每只风扇的实际响应。ESP32ESP32PWMPWMFan Control风扇控制+2
- Cirro Phase-Change Cooling Controllers卷云相变散热器控制系统Flash Parameter Saving and RecoveryFlash 参数保存与恢复Studying delayed writes, committed records and page turnover using the BaseUnit fan setting.从 BaseUnit 的风扇设定值出发,研究延迟写入、记录提交与双页切换时的恢复顺序。STM32STM32FlashFlashPersistence持久化+1
- Tianjin Jintie STM32 Internship天津津铁 STM32 嵌入式实习I²C Communication and OLED DebuggingI²C 通信与 OLED 调试Studying pull-ups, transfer timing and acknowledgment, then comparing software and peripheral I²C when troubleshooting an OLED.从上拉、电平、地址与应答,研究软件和硬件 I²C 的区别,以及 OLED 不显示时怎样定位问题。STM32STM32I2CI2COLEDOLED+2
- Tianjin Jintie STM32 Internship天津津铁 STM32 嵌入式实习Light Calibration and Lookup Control光照标定与查表控制Working through an ADC-to-PWM interpolation example, uneven calibration intervals and a possible correction for changing ambient light.从目标 ADC 到 PWM 的一次插值计算,研究采样点分布、标定条件和环境光变化后的修正思路。STM32STM32ADCADCPWMPWM+2
- Seamly2D Qt Development Internship南京图灵 Seamly2D 开发实习Local Account Permission Rules本地账户的权限判断Separating actor, target and action in Seamly2D role management, then checking state changes and persistence.从 Seamly2D 的本地角色管理出发,拆开操作者、目标账户与操作,再检查状态变化和保存结果。QtQtState Machine状态机Authorization权限+1
- Seamly2D Qt Development Internship南京图灵 Seamly2D 开发实习Qt Windows Runtime DependenciesQt 程序的 Windows 运行依赖Tracing a packaged Qt application through DLL loading, platform plugins and a clean-machine check.从缺少 DLL 的报错出发,研究 Qt 程序的动态依赖、平台插件与换机验证。QtQtWindowsWindowsDeployment部署+1
- Arduino Breadboard Two-Digit Seven-Segment CounterArduino 面包板两位数码管计数器Latching Switches and Counter Control自锁按键与计数控制Studying latching contacts, input bias, debouncing, state changes, and elapsed-time counting to define predictable pause and reset behaviour.从自锁触点和输入上下拉,研究消抖、状态变化与计数时序,理清暂停和复位怎样按预期响应。ArduinoArduinoSwitches按键Debounce消抖+2
- Arduino Breadboard Two-Digit Seven-Segment CounterArduino 面包板两位数码管计数器Common-Anode Displays and BCD Decoding共阳数码管与 BCD 译码Following decimal digit splitting and BCD bit order into active-low LS47 outputs, common-anode LED current paths, segment resistors, and display controls.沿十进制拆位与 BCD 位序,理解 LS47 低有效输出、共阳 LED 电流路径、逐段限流和显示控制。ArduinoArduinoBCDBCDSeven-Segment Display数码管+1
- Arduino Smart Car Line-Tracking KitArduino 循迹小车焊接与控制实训Arduino Car Line Sensing and Input AcquisitionArduino 小车的循迹信号与输入采集Tracing reflected infrared light through the sensor circuit, 74HC165 input thresholds, parallel loading, serial read order, and the code's mapping from bits to sensor positions.从黑线与悬空会触发同一判断的注释出发,沿反射光、电压、电平门限与 74HC165 读取时序,理解每个比特怎样对应车底的传感器。ArduinoArduinoInfrared Sensing红外检测74HC16574HC165+1
- Arduino Smart Car Line-Tracking KitArduino 循迹小车焊接与控制实训Arduino Car Power and Wheel-Speed MeasurementArduino 小车的供电与轮速测量Following the car’s battery and logic rails through L293D drive and PWM, then deriving wheel rpm from optical marks, interrupt timing, and the course library’s feedback routine.沿电池与逻辑电源追到 L293D 和 PWM,再从轮子标记、中断计时推导 rpm,读懂课程电机库里的反馈调速。ArduinoArduinoPower Supply电源PWMPWM+2
- Cirro Phase-Change Cooling Controllers卷云相变散热器控制系统ACUnit Automatic Refrigeration Control and Protection LogicACUnit 自动制冷控制与保护逻辑The later ACUnit firmware moved EEV and compressor decisions onto a portable board-side control core with STOP, QUIET, PERF, and ZERO modes, while keeping sensor validity, superheat, pressure, and startup protection above the temperature target.后期 ACUnit 固件把 EEV 与压缩机决策移到可移植的板端控制核心,形成 STOP、QUIET、PERF、ZERO 模式,并让传感有效性、过热度、压力与启动保护始终优先于温度目标。STM32STM32Control控制EEVEEV+3
- Cirro Phase-Change Cooling Controllers卷云相变散热器控制系统Comparing ACUnit V2.0 and V2.1 System DiagramsACUnit V2.0 与 V2.1 系统框图对比A comparison of the V2.0 routed block diagram and V2.1 interface mind map, limited to visible connections, labels, and unanswered revision questions.比较 V2.0 连线框图与 V2.1 接口思维图,只讨论可见连接、标签,以及两张图没有回答的版本问题。PCBPCBRevision改版Manufacturing制造+1
- Cirro Phase-Change Cooling Controllers卷云相变散热器控制系统DHT11 and AM2302 Pinouts and Interface RequirementsDHT11 与 AM2302 的引脚定义与接口要求An archived DHT board plan and the AM2302 manual expose a GND/NC conflict that must be resolved before approving a footprint or claiming verification.对读归档 DHT 小板计划与 AM2302 原厂手册,发现一处 GND / NC 冲突;批准封装或声称完成验证前,必须先解决这处冲突。Sensor传感器PCBPCBDHT11DHT11+1
- Cirro Phase-Change Cooling Controllers卷云相变散热器控制系统Hardware Development SOP硬件开发 SOP 整理The Juanyun hardware-development SOP I wrote during the internship, kept as readable webpage text with the original PDF linked at the end.实习期间写下的卷云硬件开发 SOP,以网页正文保留阅读,也在文末保留原 PDF 链接。SOPSOPHardware硬件Documentation文档
- Cirro Phase-Change Cooling Controllers卷云相变散热器控制系统ULN2003A Electronic Expansion Valve Drive and Step ControlULN2003A 电子膨胀阀驱动与步进控制An archive reading of the EEV driver board, ULN2003A schematic, STM32F103 phase mapping, blocking valve routines, and the thinner BLDC file trail.沿 EEV 驱动小板、ULN2003A 原理图、STM32F103 相线映射与阻塞式阀控制函数阅读一组历史归档,并标出较薄的 BLDC 文件线索。Actuator执行器BLDCBLDCSTM32STM32+1
- Seamly2D Qt Development Internship南京图灵 Seamly2D 开发实习Release Packaging Across Windows And macOSWindows 与 macOS Release 打包记录The original Seamly2D release packaging Markdown rendered as a full webpage note, covering Windows dependency collection, signing, Inno Setup, and follow-up packaging checks.把 Seamly2D Release 打包发布流程的原始 Markdown 直接渲染成完整网页笔记,覆盖 Windows 依赖收集、签名、Inno Setup 和后续验证。QtQtRelease发布windeployqtwindeployqt+2
- Seamly2D Qt Development Internship南京图灵 Seamly2D 开发实习sm2d XML Sample Reading Notessm2d XML 样例文件观察笔记The original README note around the Seamly2D sample folder plus the full public .sm2d and .smis XML samples rendered on the note page.把 Seamly2D 样例文件夹 README 里的原话,以及公开 .sm2d / .smis XML 样例全文直接放到笔记页。Seamly2DSeamly2DXMLXMLData Format数据格式+1
- Seamly2D Qt Development Internship南京图灵 Seamly2D 开发实习CMake And Build Logic Learning NotesCMake 与编译底层逻辑学习笔记Two Notion-exported source notes rendered directly as the CMake/build-logic note: one CMake primer and one Qt-oriented compiler/toolchain map.把两份 Notion 导出的原始笔记直接渲染成 CMake / 编译底层逻辑笔记:一份 CMake 入门,一份 Qt 学习导向的编译器与工具链地图。CMakeCMakeCompiler编译器NinjaNinja+1
- Seamly2D Qt Development Internship南京图灵 Seamly2D 开发实习Qt6 Seamly2D First Run NotesQt6 环境跑通 Seamly2D 的记录The original Windows 11 Qt6 Seamly2D onboarding text rendered directly as a webpage note, with the raw TXT/DOCX kept as source links.把 Windows 11 下 Qt6 跑通 Seamly2D 的原始记录直接渲染成网页笔记,并保留 TXT / DOCX 源文件链接。QtQtSeamly2DSeamly2DMSVCMSVC+1