超音波技術普及化:使用 pic0rick 的開源硬體
超音波技術普及化:使用 pic0rick 的開源硬體
超音波技術通常是昂貴、專有的醫療設備或專業工業非破壞性檢測 (NDT) 工具的領域。對於研究人員和愛好者來說,進入門檻長期以來一直受限於對高速、確定性定時的要求——這通常需要現場可程式化邏輯閘陣列 (FPGA) 以及學習 Verilog 或 VHDL 等硬體描述語言 (HDL) 的陡峭學習曲線。
pic0rick 的出現,作為 un0rick 開源硬體家族中的一個專案,代表了這一領域的重大轉變。透過利用 Raspberry Pi RP2040 (以及 RP2350) 微控制器的獨特架構,pic0rick 提供了一種低成本、開源的超音波擷取替代方案,在維持專業級性能的同時,無需面對 FPGA 工具鏈的複雜性。
從 FPGA 轉向微控制器
多年來,un0rick 系列板卡(例如原始的 un0rick 和 lit3rick)一直依賴 Lattice iCE40 FPGA 來管理脈衝回聲序列。FPGA 對於確保發射脈衝和隨後的 ADC 採樣發生在次微秒級的精度下至關重要。
Pic0rick 透過利用 RP2040 的 Programmable Input/Output (PIO) 狀態機打破了這一模式。PIO 允許開發者建立自定義的硬體介面,使其能以系統時鐘速率進行確定性運行。在超音波的背景下,這意味著 PIO 可以處理脈衝觸發和 ADC 採樣序列的精確定時,讓雙核 Cortex-M0+ 核心能夠自由處理應用邏輯和數據處理。
社群觀察到,這種方法有效地將 RP2040 轉變為在極其實惠的硬體上運行的「足夠好」的 FPGA,允許用戶透過 C/C++ 在類似 Arduino 的環境中修改擷取參數,而不是合成 HDL 代碼。
系統架構與信號鏈
Pic0rick 被設計為一個模組化的三板卡系統,以平衡功率需求和信號完整性:
- Main Board: 中央樞紐,包含 RP2040、一個 60 Msps 10-bit ADC,以及一個 AD8331 時間增益補償 (TGC) 放大器。TGC 在超音波中對於補償信號在向介質深處傳播時的衰減至關重要。
- Pulser Board: 單個 PMOD 擴充板,使用 MD1210 和 TC6320 組件產生發射脈衝。
- HV Board: 專用的高壓產生板,為 pulser 提供驅動換能器所需的 ±25V 電壓軌。
信號路徑:
RP2040 → PIO 觸發脈衝 → Pulser board → Transducer → 回聲返回 → HV clipping (保護) → AD8331 TGC → 60 Msps ADC → RP2040 → USB → 電腦
可擴展性與使用案例
pic0rick 的一大亮點是其使用了 PMOD 連接器,這使得系統可以根據應用進行擴展:
- VGA Output: 使用第二個 PIO 單元進行超音波擷取的實時視覺化。
- MUX Board: 允許使用多個換能器,為陣列成像和合成孔徑技術開啟了大門。
- PSRAM: 為較長的擷取緩衝區提供額外內存,這對於成像深層目標至關重要。
這些功能使該平台適用於廣泛的應用,從簡單的脈衝回聲距離測量到複雜的非破壞性檢測 (NDT) 和斷層掃描。
技術比較:pic0rick 與舊版板卡
| 特徵 | pic0rick | 舊版 (un0rick/lit3rick) |
|---|---|---|
| 控制器 | RP2040 / RP2350 | Lattice iCE40 FPGA |
| 程式編寫 | C/C++ (類似 Arduino) | Verilog + Python |
| ADC 速度 | 60 Msps | 高達 64 Msps |
| 成本 | 最低 | 中到高 |
| 可訪問性 | 高 (無需 HDL) | 低 (需要 FPGA 專家知識) |
社群觀點與反論點
雖然 PIO 的使用被強調為主要創新,但一些技術觀察者認為,在許多現代 MCU 上,無需專門的 PIO 模組也可以實現確定性定時。透過仔細配置時鐘分頻器、PLL 和 DMA (Direct Memory Access) 觸發,開發者理論上可以同步脈衝觸發與 ADC 採樣開始。
然而,pic0rick 的價值不僅在於這種設置的理論可能性,,而是其集成與可訪問性。透過提供經過 OSHWA 認證的開源硬體設計、完整的 BOM,以及韌體框架,該專案消除了從零開始構建超音波系統所需的工程開銷。
結論
Pic0rick 代表了專業硬體的普及化。透過將複雜性從 FPGA 合成工具鏈轉移到靈活、文件齊全的微控制器環境,它降低了任何人嘗試聲學成像與感測的門檻。無論是為了教育目的還是工業原型製作,它證明了高性能儀器並不總是需要最昂貴或最複雜的矽晶片。