“Eli Hughes 是 Wavenumber LLC 公司的負責人,該公司致力于在嵌入式系統、軟件、物聯網、音頻、聲學、工業設計及內容創作等領域提供優質解決方案。Eli 精通 OrCad、Expedition、Altium 等各種 EDA 工具,本次演講講述了 Eli 如何在公司的流程中應用 EDA 工具及選擇 KiCad 的原因。”
Eli 講述了他從一個被技術 (尤其是視頻游戲和硬件) 迷住的年輕人,到電子設計行業經驗豐富的專業人士的變革之旅。 他年輕時開始在賓夕法尼亞州農村地區的 Apple II 電腦上進行編程探索,從玩像塞爾達這樣的視頻游戲到深入研究硬件的復雜性,如 6502 微處理器,后來進入聲音和音樂領域。 他在各種 PCB 設計軟件方面擁有豐富的經驗,包括 Protel、Altium、OrCAD和 Eagle。 他對當前的EDA工具表示不滿,批評它們的局限性和成本,并倡導更多的開源解決方案和工具集成靈活性。 Eli 強調了旨在加強設計工作流程的個人倡議,并強調了全棧方法在電子設計中的重要性,集成了硬件和軟件開發。 他也強調了所有權、問責制和交付高質量產品的重要性,同時承認不斷發展的技術環境帶來的挑戰。 它們還涉及利用腳本和自動化來優化設計過程。
將 KiCad 集成到我們專業工作流的決定,是由以下幾個因素共同驅動的:
專業許可證“維護”成本與實際獲得的支持價值之間存在脫節。
“永久”許可證中原有功能被移除。
對封閉的二進制文件格式感到沮喪,這導致了嚴重的工作流問題(現場將分享真實案例)。
與 MCAD 格式的互操作性被刻意限制(現場將分享真實案例)。 我們曾多次遇到這樣的情況:為了滿足客戶的特定需求,不得不將 PCB 導入 KiCad,利用其 3D 導出功能。
將工具適配到公司特定的 CI/CD 工作流門檻過高。
認識到大量 PCB 設計師正在退休。 新進入的硬件開發者普遍具備 git、持續集成、Python 和軟件開發工作流的經驗。EDA 工具行業需要適應這種人員結構的變化。
對項目長期性的擔憂(Wavenumber 的某些項目周期長達 20 年以上;我們最近還需要打開 2005 年項目的文件)。
LLM(大語言模型)技術的出現,使得各類工程師能夠通過腳本和小型實用工具快速適應和定制流程,而無需成為軟件專家。
對于像我們這樣的設計組織,真正的競爭優勢不僅在于元件庫,更在于跨設計積累的關于部件如何配置、連接和實現的知識。這種組織知識資產,即真正的“制勝法寶”,其價值會隨時間推移而日益增長,但有效維護和共享卻充滿挑戰。我們認為,每家公司都需要圍繞其自身的組織知識資產制定策略,并且這些知識絕不能被封閉在不使用互操作格式的第三方服務之后。
我們啟動 KiCad 項目的一個主要動機是其新的 HTTP 元件庫功能。我們將其視為一個更宏大愿景和企業級功能的開端。我們曾廣泛使用數據庫元件庫,但 Altium 的解決方案已停滯不前,偏向于其專有的云接口。盡管 KiCad 的 HTTP 庫功能仍在開發中,但它為我們提供了一種機制,將大約 10,000 個部件及其相關元數據遷移到 KiCad 9。通過利用kicad-cli工具,Wavenumber 成功構建了一個并行工作流的原型:在 Altium 中創建的所有部件也能在 KiCad 中使用。
目前,我們的元件庫遷移工作已基本完成。有兩個將在 2025 年發布的商用產品設計中使用的電路板正在開發中。我們還將 KiCad 集成到了我們的 PDM(產品數據管理)系統中,這種方式既能支持快速原型設計,又能提供重要的設計可追溯性。長期目標是建立一個全面的工作流,以追蹤公司內所有電路板、裝配體及其使用場景,并能進行高效的基于 LLM 的知識查詢。
以下為演講要點的文字版本:
對電子設計軟件的最初體驗是什么?
Eli 最初使用電子設計軟件的經驗是使用 Protel,這是他在大學里使用的首批基于窗口的程序之一。 這個經歷涉及學習使用蝕刻板和電子產品的其他硬件方面,這引發了對硬件設計的更深層次的興趣。
在軟件開發的背景下,所說的 “全棧” 是什么意思?
在軟件開發的背景下,對 “全棧” 的含義涵蓋了從半導體到在 web 后端上編寫 Python 的全面參與,這比行業中的典型用法更廣泛。 “全面” 發展方法強調完全的所有權和問責心態。
如何看待他們的責任和公司的協調問題?
將自己的責任視為提供價值,并對公司的成果負責,特別是在小企業的背景下。 Eli 強調了開發工具以保持人們的生產力與電子設計公司利潤驅動工具之間的一致性問題,這表明了顯著的差異。
評估和支付工具和服務的方法是什么?
評估和支付工具和服務的方法是務實的。 他承認需要付費購買有價值的工具,但也要考慮對他們的職業成功至關重要的其他因素。 他們在工作需要時投資了像 Altium 這樣昂貴的軟件,并愿意為他們認為有價值的服務付費。
Altium 的哪些特定功能對企業級開發至關重要?
能夠在 Altium 中查看和處理開放文件格式的企業級功能對于開發至關重要。 這種能力,像 Altium 這樣的其他工具可能缺乏,通過允許開發人員理解和與數據交互,在 web 后端開發中提供了一個顯著的優勢。
支付設計工具的維護費用的重要性是什么?使用 Altium 的經驗如何強調這一點?
為設計工具的維護付費對于獲得最新進展和支持非常重要。 使用Altium的經驗表明,盡管為這些工具付費,但可能無法提供實際有用的支持,這可以從漫長的等待援助和最終自行解決問題得到證明。
對 Altium 永久許可政策的變化有什么反應,這對公司的做法意味著什么?
Eli 對 Altium 永久許可證政策的變化產生了憤怒的反應,該政策突然要求他們為他們已經在永久許可證下使用的功能支付更多費用。 這一變化表明公司實踐發生了轉變,可能從價值交付轉向關注利潤提取。
Altium 有哪些優點?這與最近的負面經歷有何對比?
Altium 在某些功能具有優勢,例如第一個使用 Direct X 三維可視化、多通道的支持、draftsman 文檔處理工具等。 這與公司被瑞薩收購后在支持、許可和潛在變化方面的負面經歷形成了對比。
對 PCB 設計的 Corner Case 有什么建議?
大多數電路板設計應遵循標準工作流程,不需要高級功能或高度專業化的工具。 重點應該放在批量工作流程上,而不是在電路板設計中的邊緣情況。
如何讓 Altium 和 KiCad 兩個工具使用同一個共享庫?
Eli 建立了一個系統,在這個系統中,同一個庫和元數據可以同時在兩個工具中使用,確保在Altium中所做的任何更改都能立即在 KiCad 中使用。
為什么自動化和數據庫集成在管理大型元器件庫時很重要?
自動化和數據庫集成非常重要,因為它們可以通過使用單個符號和少量組件來管理非常大的庫,例如包含數千個電阻和電容的庫。 這種集成允許任務自動化和數據標準化,從而推動替代并使過程高效。
在 KiCad 中實現了什么新功能來管理庫,為什么它很重要?
KiCad 8 中實現了基于 ODBC 的 Database Library(類似 AD 中 DBLib),KiCad 9 有支持了 Httplib。 這個變化意義重大,因為它抽象了數據存儲,允許更好的可擴展性和更容易的后端替換,而不影響接口。
視頻中提到的 Python 腳本 “lib cruncher” 的作用是什么?
使用Python腳本 “lib cruncher” 來管理庫。 它通過將數據本地存儲在 CSV 文件中進行操作,這些文件易于合并、升級和與后端同步。 它還可以自動使用 KiCad 轉換符號,并為新開發人員提供一致的配置。
“Lib cruncher” 如何促進新開發人員快速提高生產力?
“Lib cruncher” 通過自動生成全局符號表并提供一致的庫配置,促進新開發人員快速提高生產力,這意味著新成員幾乎可以立即開始使用庫。
將本地Http服務器與 “lib cruncher” 一起使用的優勢是什么?
使用帶有 “lib cruncher” 的本地 Http 服務器可以提供可以在本地訪問和管理的庫,這可以作為處理大量器件的高效設置。
“Lib cruncher” 如何簡化庫的管理,它的基礎技術是什么?
“Lib cruncher” 通過使用 CSV 文件進行數據存儲,簡化了庫管理,這使得升級和與后端同步變得容易。 它還自動生成 Httplib 文件并處理全局符號表,所有這些都使用 PyQt 作為底層技術構建在 CSV 文件之上。
為什么推動一個項目完成很重要?
Eli 強調了由于獲得報酬的經濟動機而推動項目完成的重要性。 他用導師的建議來比喻,沒有什么能像知道自己的工作會得到報酬那樣激勵一個人。 Eli 還分享了完成真實項目設計的個人經驗,強調了盡管有任何不完美之處,完成的動力。
為什么在成本和開發人員控制方面更喜歡 KiCad 而不是 Altium?
使用 KiCad,可以根據自己的特定需求構建和定制工作流程工具,這比依賴像 Altium 這樣昂貴的軟件工具更具成本效益。 他們重視控制開發環境的能力,避免局限于 Altium 提供的靈活性較低的腳本引擎。
對電路板設計行業的演變有什么看法?
電路板設計行業正在經歷一場代際轉變,許多經驗豐富的設計師將退休,年輕的專業人士將以不同的技能和觀點進入該領域,包括熟悉持續集成和 DevOps 實踐。 他們指出,這些工具比以往任何時候都要好,允許一個人完成很多事情,這使得該行業對演講者來說非常令人興奮。
機械工程師在扮演什么角色?如何看待他們在電子工程任務中的能力?
機械工程師非常適合電子工程任務,如電路板設計 (PCB),因為他們能夠處理原理圖和物理等多個方面,這些方面是該過程不可或缺的。
目前正在進行什么設計項目,涉及哪些工具?
正在嘗試用 KiCad 設計一個 10層板的光譜儀,其中包含 ddr4 內存、大型 FPGA,還有一些并行的項目仍使用Altium進行設計。
完整的 PPT(含時間戳) 00:00 從視頻游戲到PCB設計: 硬件工程之旅
06:41 從偶然觀察過渡到認真投資 PCB 設計軟件
09:06 軟件維護和工程工具支持的挑戰和不滿
15:07 革命性的電路板設計: 將 Altium 庫與 KiCad APIs 集成以增強工作流程
19:47 用于簡化電子設計的 Lib Cruncher 的開發和應用
25:09 使用 Altium 進行 PCB 設計的經驗和效率
26:00 創新聲傳感器設計和開發流程
29:38 轉型電路板設計: 整合新技術和多學科技能
34:33 KiCad 需要繼續改進的點
37:40 在硬件開發中過渡到開源工具和設計
結束語
Eli 的故事完美地闡釋如何根據公司/個人的情況選擇合適的 PCB 設計工具。沒有最好的,只有最合適的!
-
altium
+關注
關注
47文章
970瀏覽量
119632 -
EDA工具
+關注
關注
4文章
272瀏覽量
32591 -
PCB設計
+關注
關注
396文章
4781瀏覽量
89222 -
KiCAD
+關注
關注
5文章
233瀏覽量
9336
發布評論請先 登錄
KiCad 與 Altium Designer 圖紙互轉詳解

KiCad 教程:集成電路測試 LoadBoard 設計指南

在 Windows 上編譯 KiCad

KiCad直播活動(三):在 Windows上編譯KiCad 手把手教您編譯/構建 KiCad 源碼

KiCad 直播系列活動預告(二):KiCad 華秋發行版專題介紹
KiCad 直播系列活動預告(一):KiCad 9 新功能揭秘

KiCad插件大全
KiCad EDA版本說明

KiCad發現之旅(一)原理圖編輯

在KiCad中使用AD的封裝庫(Pcblib)

KiCad中如何分割電源平面

評論