Show HN:我们在蒙大拿州追逐气象气球却从未找到它

Hacker News Top 新闻

摘要

一个高空气球项目详细介绍了其载荷设计,包括3D打印绝缘测试和无线电图像传输,但气球在蒙大拿州从未被回收。

自四月以来,我一直与 Sam Flynn(<a href="https:&#x2F;&#x2F;drook.dev" rel="nofollow">https:&#x2F;&#x2F;drook.dev</a>)合作制作这个气球载荷 UpLink。去年我们与 Hack Club 做过一次类似的发射,但这是我们的第一次独立发射。 <p>UpLink 是一个 491 克的载荷,测试 3D 打印灯丝的绝缘性能,同时通过无线电链路传输 320x240 像素的图像——相比去年的 18x10 像素图像有所提升! <p>这是关于我们工程过程、所犯错误和学习经验的总结。它包括: <p>- 在 KiCad 中设计的自定义电子设备 <p>- 固件设计 <p>- 我们从地面接收到的数据结果 <p>- 图像传输 <p>- 发射日的后勤安排,以及哪里出了问题 <p>所有硬件、软件、固件和 CAD 均可在 GitHub 上找到:<a href="https:&#x2F;&#x2F;github.com&#x2F;radeeyate&#x2F;UpLink" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;radeeyate&#x2F;UpLink</a>,已获许可并认证为开源硬件:<a href="https:&#x2F;&#x2F;certification.oshwa.org&#x2F;us002826.html" rel="nofollow">https:&#x2F;&#x2F;certification.oshwa.org&#x2F;us002826.html</a> <p>如果您只想查看接收到的图像,我在这里建立了一个图库:<a href="https:&#x2F;&#x2F;uplink.gallery.radi8.dev&#x2F;" rel="nofollow">https:&#x2F;&#x2F;uplink.gallery.radi8.dev&#x2F;</a> <p>如果您有任何问题、评论或疑虑,请告诉我。我很乐意回答任何问题!
查看原文
查看缓存全文

缓存时间: 2026/08/20 19:16

# 我们追逐一个气象气球穿越蒙大拿州,却始终未能找到它 来源:https://radi8.dev/blog/uplink/ --- 载荷电路板侧视图 2025年6月,我与新英格兰科学技术中心合作,通过Apex (https://apex.hackclub.com/)项目发射了"StratoSpore" (https://radi8.dev/blog/stratospore)——我的首个高空气球项目。我利用这次机会将藻类作为高度生物传感器,在此过程中学到了很多。为了再次在平流层进行实验,我与Sam Flynn (https://drook.dev/)合作制作了一个可靠且可飞行的载荷。 基于去年的经验,我对本次载荷设定了几个目标: - 为追踪系统设计冗余备份 - 向地面传输包含实际细节的图像——上次载荷发送的图像仅有18x10*像素* - 使用更可靠的GPS模块 - 实现更复杂的无线电功能——使用我的业余无线电执照?——采用更高效的数据打包技术传输遥测数据 本文计划涵盖我如何实现这些改进,同时记录学习过程,希望能为未来的发射提供参考。 ## 实验(们) 去年的StratoSpore项目有两个目标:研究高度/紫外线暴露对藻类荧光的影响,以及通过无线电链路向地面发送图像。 我们今年的载荷**UpLink**遵循类似风格,完成了两项任务: - 测试3D打印材料(发泡PLA与非发泡PLA)对载荷隔热性能的影响 - 通过无线电链路传输高分辨率图像 ## 载荷隔热测试 历史上,大多数高空研究团队使用泡沫塑料箱 (https://www.amazon.com/s?k=styrofoam+box+shipper)作为载荷外壳。多数团队避免尝试其他类型外壳是有原因的:泡沫塑料提供出色的隔热性能且易于加工。 尽管广受欢迎,它们存在一些缺点: - 尺寸固定,重量承载能力受限 - 无法针对特定载荷灵活定制,难以优化布局效率 - 相比定制方案成本较高 我们发射的整个载荷(降落伞、飞行绳索、电子设备、外壳)总重**491克**。传统泡沫外壳本身就会重约200克。气球越轻,超轻载荷就越具吸引力。我们使用的是Kaymont公司生产的350克气球 (https://www.kaymont.com/product-page/hab-350)。通常而言,气球越大,所需氦气越多,成本会快速累积! Sam用Fusion360在数周内设计了我们的外壳,制造出完美适配载荷的结构:预设了固定支架、标准化安装硬件,并为相机、温度传感器和其他电子设备预留了空间。 飞行过程中载荷受影响的热力模拟图 为测量不同打印材料对温度传感器的隔热效果,我们在外壳盖板上安装了小型密封舱。传感器内部用热熔胶密封,以隔离外界空气对各舱体间一致性的影响。 外壳采用Sunlu的LW-PLA (https://www.sunlu.com/products/lightweight-pla-filament)材料打印。这种材料与普通材料不同,含有微小气泡,在打印过程中会发泡膨胀。虽然比PLA轻30-50%,但打印难度极高。我创建了特殊打印配置使其勉强可用: - 打印速度需降低约7倍 - 必须禁用/限制冷却(影响发泡膨胀) - 提高热床温度(附着力较差) - 必须禁用加速度控制(否则填充和壁厚强度会不均) 即使采用这些调整,若未充分干燥仍可能非常脆且难以打印。若想尝试此材料,可下载我为Orca Slicer设计的打印配置 (https://radi8.dev/static/files/uplink/Sunlu_LW-PLA.json)。欢迎提供建议! ### 测试结果 关于发泡PLA材料的假设是:其微小气泡应比普通PLA提供更显著的隔热性能差异。 但数据揭示了不同情况: 载荷热力分析 如图所示,发泡PLA与普通PLA的隔热性能差异并无明确结论。有时发泡材料表现更好,但反之亦然。 我的推测是:微小气泡对实际隔热毫无作用,对于规范的载荷外壳设计,填充密度和壁层数远比材料成分更重要。另一个可尝试的方向是多线填充 (https://www.orcaslicer.com/wiki/print_settings/strength/strength_settings_infill#fill-multiline):隔热原理依赖气泡减缓热传导,或许更厚的内壁能提供帮助? 尽管隔热性能缺乏显著证据,但定制外壳的优势显而易见:隔热传感器比环境温度高出约7°C。改进密封性可能会大幅提升效果,同时我们也通过模拟发现,将外壳涂成黑色而非白色时,太阳辐射会使载荷升温数度。 这是Sam进行的验证模拟,用于确认3D打印外壳能将电子设备与寒冷环境隔离: 外壳温度模拟图 用丙烯酸涂料将外壳涂黑将发泡PLA外壳涂成黑色 发泡PLA材料在重量与强度比方面仍占优势,因此我有信心将其用于未来的发射。 ## 图像传输 大多数业余气球载荷都配有相机。30公里高空的景象令人震撼,而这些图像来自定制设计的载荷更显特别。 去年我传输的图像仅有18x10像素,无法辨识任何细节: 某物图片 发送如此小尺寸图像的原因是无线电链路的限制:传输速度慢且受协议限制(最大255字节)。为解决这个挑战,我设计了一个过度复杂且冗余的图像压缩算法 (https://github.com/radeeyate/StratoSpore/blob/main/software/compress/main.go),最终导致传输图像无法使用。 去年准备业余无线电考试时,我了解到SSTV (https://en.wikipedia.org/wiki/Slow-scan_television)(慢扫描电视),这是一种通过模拟视频链路传输图像的方法。SSTV需要高功率(至少5-20瓦),且生成的图像质量未达到我的标准。 进一步研究后我发现SSDV (https://ukhas.org.uk/doku.php?id=guides:ssdv)(慢扫描数字视频),这是SSTV的数字化分组版本。即使地面站丢失数据包,仍可重构图像。 我修改了Philip Heron的SSDV C语言实现 (https://github.com/fsphil/ssdv):减小数据包尺寸、移除呼号传输、禁用里德-所罗门纠错(因无线电链路已包含纠错)。所有修改已公开在GitHub (https://github.com/radeeyate/UpLink/tree/main/firmware/balloon)上。 相机拍摄图像后,将全分辨率版本保存至SD卡,并编码为320x240版本后传输,每张图像约15个数据包。 飞行过程中不同高度拍摄的10张图像胶片 地面站在整个飞行过程中接收到328张图像,可在图库 (https://uplink.gallery.radi8.dev/)中查看。 地面站接收的328张图像缩略图 以下是关于不同高度图像采集的图像科学分析,以及光线如何以不同方式散射导致天空变黑。 图像科学图示 下降过程中载荷剧烈摆动。这是它拍摄的太阳照片: 太阳图《太阳是致命激光器》 此图表显示随高度增加图像的变化趋势,后期图像能观测到太空的黑色。 飞行条形码(每列代表每张图像各行的平均颜色) 这是整个飞行过程拍摄图像的地图。 照片地图 我对今年的图像效果非常满意! ## 电子设备 定制电路板顶部渲染图 在所有后续作品中,去年的载荷电路板是我设计过的最复杂作品。此后我学习了KiCad (https://kicad.org/)——这款免费开源的EDA软件。随着工具更新,我的技能显著提升。 定制电子设备包含四个主要部分: - 电源电子设备(电压调节器、负载开关) - 微控制器(ESP32-S3、摄像头、SD卡) - GPS与追踪(模块、天线、冗余设计) - 无线电链路(SX1262) - 传感器集成(外部SPI ADC、温度传感器) 照例,我选择OSH Park (https://oshpark.com/)制造电路板,效果完美。此外,我获得了电路板的开源认证 (https://certification.oshwa.org/us002826.html)。 来自OSH Park的精美紫金色电路板 ### 电源电子设备 电源电子设备PCB设计 预期重量预算较低,我的功率预算比想象中更低。上次发射时使用了4节劲量终极锂性AA电池,因重量充足而表现良好。但此次必须做出权衡,改用同系列的3节AAA电池。先前使用高功率方案时,我运行了树莓派Zero 2 W、RP2040及各种传感器。低功耗的挑战在于找到既能良好工作、又高效且符合预期的解决方案。 该载荷采用升降压转换器供电:无论电池实际电压是否高于3.3V,都能为电子设备提供稳定的3.3V电源。这是重大升级——此前我使用的低效率低压差稳压器仅能降压。 #### 犯过的错误 我最初计划使用负载开关控制载荷开关,但后续发现其实现方式并不理想,即使未预期供电时仍会通电。事后看来,更好的方案是将机械开关作为电压调节器的使能信号。 项目后期,我在处理电池盒和电源时意外造成电路板短路。此后无法使用带正常供电的电路板,只能依赖微控制器内置的降压稳压器。 飞行期间电池电压未能正确报告,可能是损坏了用于监测电池状态的分压电路。 ### 微控制器 XIAO ESP32-S3 Sense微控制器模块 我选择使用ESP32-S3微控制器进行数据采集和传输。Seeed Studio (https://seeedstudio.com/)提供多种微型微控制器板,包括带摄像头、SD卡、麦克风和WiFi的型号。通过使用他们的XIAO ESP32-S3 Sense,我将去年树莓派的功能整合到更小、更节能的模块中。 MCP3204 SPI ADC特写图 XIAO开发板GPIO引脚较少,大部分被摄像头和SD卡占用。为读取模拟传感器,我添加了外部SPI ADC(MCP3204),模拟温度传感器(MCP9700A)和电池分压电路都通过它连接。正是这个分压电路在项目中期停止工作。 固件使用Arduino编写(而非去年的CircuitPython)。长期以来我一直想编写底层代码,此次发射对我来说是巨大突破。采用此方案需要考虑更多因素:高效的内存管理、晦涩的编译器错误、原生文件系统缺失等。最终,Arduino是固件的完美选择,尽管初期有学习曲线,但使迭代变得简单。 固件与所有传感器和模块交互:ADC、无线电、GPS、SD卡和摄像头。完成所有硬件设置后,程序进入简单循环:捕获图像并分包、收集遥测数据、无线电在SSDV传输和遥测传输间交替工作。 #### 犯过的错误 正如所有人都会经历的那样,我混淆了SPI线路的MISO和MOSI!通过一些快速但略显粗糙的飞线修复了问题。 大量飞线和聚酰亚胺胶带固定着电路板 ### GPS与追踪 StratoSpore使用的NEO-6M GNSS模块不可靠且难以使用。我以更高成本选用SAM-M10Q模块,其集成了贴片天线,并将电路板地平面作为设置的一部分。数据手册注明50x50mm地平面最为理想,但在使用的30x60mm尺寸下工作良好。室内灵敏度较高,有时效果出色有时不稳定,但发现辅助GNSS (https://en.wikipedia.org/wiki/Assisted_GNSS)有帮助。飞行期间模块达到最大性能,追踪32颗卫星。 实时坐标和高度通过无线电链路传输,然后输入Sam定制的仪表板和SondeHub (https://amateur.sondehub.org/)进行实时追踪和预测。 显示实时数据和图像的定制仪表板 为实现使用备用追踪器的目标,我编程了QRP Labs U4B (https://qrp-labs.com/u4b/)气球追踪器,在10米波段(持照)按特定间隔发射WSPR和JT9信号。这些是弱信号协议,速度极慢(WSPR消息持续110.6秒,JT9为50秒)。虽然对追踪太阳能微型气球很有用,但用于追踪高空气球下降过程既不便也不可行。 最终U4B未能实现目的,不适合追踪气球。未来可能尝试使用Tiny4FSK (https://www.habtronics.com/products/tiny4fsk)或制作运行70cm LoRa的独立追踪器。 ### 无线电链路 Wio-SX1262无线电模块 我使用Seeed Studio的Wio-SX1262将LoRa (https://en.wikipedia.org/wiki/LoRa)(远距离)无线电传输与电子设备集成。LoRa适用于能远距离传输的低功耗通信。它在915 MHz(33厘米波段)免许可使用,易于入门。 LoRa有不同的配置设置,影响远距离接收效率。扩频因子控制数据传输速度(SF7-SF12)。我选择SF9作为平衡点(去年使用SF7)。SF9提供-129 dBm接收灵敏度,同时避免数据包过长。 空口时间对LoRa尤为重要:消息越长,干扰和符号丢失风险越高。遥测消息空口时间为**247毫秒**,SSDV数据包为**677毫秒**。测试中发现,更高扩频因子的长消息更难用我的SDR接收。编码率(纠错比)也是接收的影响因素,但发现以SF9、4/5编码率(4数据位+1校验位,最低检测级无纠错)和125 kHz带宽传输效果良好。较短的消息也降低了失败代价:丢失小数据包比丢失大包影响更小。 包含信号质量的无线电链路图表 33厘米波段的遥测效果出奇地好,整个飞行过程中都接收到了数据包。追逐过程中偶尔出现信号丢失,因穿越深谷和城镇时受到干扰。 所有遥测数据都打包

相似文章

玩笑域名购买演变为地缘政治冲突

Hacker News Top

一次用于追踪气象气球的玩笑域名购买,演变成了一个无意中绘制军事设施地图的服务,导致与政府机构的地缘政治冲突。