“輕軌(Light Rail)是一款極簡風格的互動式PCB游戲,其模擬列車沿軌道行駛并從站臺裝卸貨物的過程。”








主要硬件組件包括
-
ATMega32u4 8 位微控制器
-
IS31FL3731 矩陣 LED 驅(qū)動器(charliplexing)
-
AS1115 七段 LED 顯示驅(qū)動器
-
KCSC02-105 七段 LED 顯示器
-
MIC5219 3.3V LDS 穩(wěn)壓器
-
黃色 “軌道 ”和紅色 “平臺 ”LED,共 144 個
IS31FL3731 + LEDs:最終我選擇這個方案的原因很直白。之前用Adafruit的LED背包模塊時體驗良好,發(fā)現(xiàn)它通過獨立PWM控制每顆LED就能輕松實現(xiàn)流暢動畫效果。雖然考慮過IS31FL3741這類能控制更多LED的芯片,但覺得144顆LED的規(guī)模恰到好處。紅黃雙色作為高對比度的基礎暖色調(diào)是自然之選。
Kingbright七段數(shù)碼管 + AS1115:選擇Kingbright數(shù)碼管因其微型尺寸完美契合"元件即建筑"的板面美學。AS1115驅(qū)動芯片沒有特別設計考量,只是剛好找到這款支持I2C通信、封裝尺寸適配的七段管驅(qū)動IC。
ATMega32u4:選擇主控芯片主要基于兩點——這是其他設計中常見的AVR芯片,且自帶USB功能。雖然我本人從未用過該型號,但有其他AVR芯片開發(fā)經(jīng)驗,其USB調(diào)試功能對開發(fā)及未來擴展頗具吸引力。更現(xiàn)實的好處是方便親友燒錄程序,直接給個腳本就能搞定,無需額外USB轉(zhuǎn)串口芯片。不過$5/片的售價實在高昂,若非出于學習目的斷不會選擇。
電源電路:這部分設計主要參考其他開發(fā)板方案。通過粗略估算板載最大電流需求,最終選型的LDO穩(wěn)壓器留有充足余量。
壓電蜂鳴器:直接沿用ACK1編碼套件中的同款蜂鳴器。選擇關鍵點在于其尺寸既能填補PCB空白區(qū)域,又符合"芯片即建筑"的設計隱喻。盡管體型較常規(guī)壓電片偏大,但直連MCU引腳即可驅(qū)動的簡潔性頗具優(yōu)勢。
Layout布局設計無疑耗費了最多時間。我首先粗略排布LED燈珠構成軌道外環(huán),隨后勾勒出PCB輪廓。KiCad的光線追蹤渲染功能在此階段極為實用,幫助我直觀調(diào)整LED間距與整體比例。為獲得更真實的觀感,我甚至找來與PCB尺寸相仿的平面物體舉在顯示器前比對。外環(huán)確定后,以手稿草圖為基礎繪制內(nèi)部軌道與道岔。當基礎軌道布局初現(xiàn)雛形時,欣喜地發(fā)現(xiàn)仍有充足LED可用于站臺設計,遂在各軌道區(qū)段添加集群式燈珠。

隨后,我將設計樂高軌道時積累的經(jīng)驗遷移至此,重點調(diào)整三個參數(shù):
-
道岔/交叉口間的軌道區(qū)段長度
-
道岔在軌道中的延伸方向
-
各軌道區(qū)段內(nèi)站臺分布與區(qū)段長度的比例關系
軌道布局敲定后,開始排布其他元件。將ATMega32u4置于底部靠近電源電路與USB接口;IS31FL3731居中放置以縮短LED走線;頂部的Kingbright數(shù)碼管與AS1115驅(qū)動構成游戲狀態(tài)/計分屏;道岔旁設置切換按鈕,底部布置四個控制鍵。
走線前已預判需要四層板應對LED矩陣的復雜布線。遂將中間兩層定義為電源層與地層,此舉實質(zhì)將整板轉(zhuǎn)化為平行板電容器——理論上可協(xié)同板載陶瓷電容提升電壓穩(wěn)定性。
IS31FL3731以兩個獨立9×8矩陣驅(qū)動144顆LED,布局時嚴格遵循分組原則。但完成頂層布線后,發(fā)現(xiàn)走線失衡問題。盡管PWM工作在kHz頻段,仍不愿冒險承受走線電容差異帶來的潛在干擾。于是重構布局,將之視為邏輯謎題:通過調(diào)整LED位置優(yōu)化共陽極/陰極分組,實現(xiàn)總走線長度/數(shù)量最小化。
中途嘗試自動布線并通宵運行。關于自動布線器,我就說這么多。
KiCad在此過程中也暴露出些許設計痛點。例如試圖通過單焊盤接地簡化按鈕走線(因其他焊盤已內(nèi)部連通),卻始終無法通過設計規(guī)則檢查。似乎無法優(yōu)雅定義封裝內(nèi)隱式連接,除非采用比直接修改封裝更取巧的變通方案。
布局完成后,沉迷于繪制絲印道路與微型停車位。盡管尺寸微小,我承認自己有點過分糾結于線條寬度和間距的一致性。所幸最終效果超預期(以我的美術功底而言),故僅有輕微悔意。當向家人展示效果圖時,立即收獲"元件宛如城市建筑"的評價,這正是設計理念的最佳印證。
原理圖 & PCB






倉庫 & 下載
可以在Github中獲取開源倉庫:
https://github.com/nonik0/Light-Rail

-
pcb
+關注
關注
4365文章
23477瀏覽量
409127 -
KiCAD
+關注
關注
5文章
256瀏覽量
9487
發(fā)布評論請先 登錄
Made with KiCad(132):PCB 應變片(Strain Gauge)

開源工具 Made with KiCad(131):BomberCat 安全測試工具

開源 Made with KiCad(129):CatSniffer IoT 多協(xié)議工具

Made with KiCad(128):CANBoard V2 開源一款支持CAN的簡單IO板

Made with KiCad(105):iCEBreaker FPGA 開發(fā)板(適于教學使用)

Made with KiCad(100):RM2024 超級電容控制器

Made with KiCad(九十八):USB-C 的 Raspberry PiCo 2

Made with KiCad(122):ANAVI Miracle Emitter

Made with KiCad(121):OpenRPNCalc 開源科學 RPN 計算器

Made with KiCad(118):Inkplate 4 TEMPERA 墨水屏終端

Made with KiCad(116):GreatFET One 硬件黑客最佳搭檔

Made with KiCad(113):低功耗藍牙智能骰子

Made with KiCad(111):Vimdrones AM32 ESC 開發(fā)板

Made with KiCad(108):基于 LattePanda-Mu 的 nvme 載板

Made with KiCad(107):LattePanda-Mu 載板(Lite Carrier)

評論