新四季網

它就是今年無數硬體創客眼中的最炫裝備

2023-12-05 07:49:01 1

    本文作者謝榕,是一名Jetson以及CUDA資深用戶和業餘開發者,重點研究異構計算在數據分析中的應用。本文將從他的角度,介紹Jetson TX1的基本使用、環境搭建、軟硬體配置,以及他的使用感受,幫助Jetson開發者快速上手實戰!

    從一線「網紅」們說起

    智能無人機、自主機器人、智能攝像機、自動駕駛……今年最令硬體創客們著迷的詞彙,想必就是這些一線「網紅」了。而這些網紅的背後,幾乎都和計算機視覺與深度學習密切相關。

    深度學習是人工智慧領域一個最新的分支,可以幫助計算機理解圖像、聲音和文本,但需要強大的數據處理能力作為支撐。

    在今年的Embedded World、SX Create、FIRST Championship等大型活動中,你都可以看到很多小型團隊或者創業公司,所打造的應用了深度學習技術的機器人和無人機系統。一套套完美的解決方案,背後都有一個共同點——NVIDIA Jetson TX1!

    如果說Arduino或者樹梅派是很多創客們此前的最愛,那麼Jetson TX1就是今年他們眼中的最酷「玩具」!

    創客們對Jetson興趣十足,比如上面這個就是基於Jetson TX1,以GoPro為基礎,實現了運動拍攝中的目標自動跟蹤

    什麼是Jetson TX1

    Jetson TX1是NVIDIA第二代嵌入式平臺開發者套件,雖然只有信用卡大小,但Jetson TX1 GPU模塊的浮點運算能力卻達到1 Teraflops,相比Jetson TK1有巨幅提升。如此強大的性能,Jetson TX1顯然是智能無人機、機器人最理想的嵌入式解決方案。

▲Jetson TX1 核心模塊

    別看核心模塊只有信用卡大小,身體裡可暗藏玄機:內建256個CUDA核心的NVIDIA Maxwell GPU,64位ARM A57 CPU,4GB LPDDR4內存、16GB快閃記憶體、藍牙、802.11ac Wi-Fi模塊和千兆乙太網卡,運行Linux for Tegra作業系統。

▲Jetson TX1 開發者套件

    配上坐騎後的Jetson TX1是這個樣子的。主板提供了USB 3.0 Type A、USB 2.0、HDMI、M.2 Key E、PCI-E x4、千兆乙太網、SD、SATA數據和供電等接口,儼然是臺全功能的PC;既然是開發者套件,怎能少了針對硬體創客的擴展接口:GPIO、I2C、I2S、SPI、帶流控制的TTL UART、顯示器擴展頭和攝像頭擴展頭一個不少。

▲Jetson TX1 開發者套件內容詳情

    作為上一代Jetson TK1的用戶,自然不會放過性能如此強悍的Jetson TX1。經過了一段時間的使用和體驗,這裡向大家分享一下粗淺的使用體驗,同時以個人觀點聊聊Jetson TX1到底能為我們帶來哪些想像空間!

    開箱體驗與基本使用

    1開箱體驗

    Jetson TX1自帶了底座,十分貼心。雖然包裝盒內沒有附帶任何光碟等介質,但Jetson TX1線上資源十分豐富,囊括文檔及軟體工具,並且獲取十分方便。

▲Jetson TX1 開發者套件廬山真面目

    Jetson TX1模塊已預先安裝在主板上,Wi-Fi天線連接線也已接好,同時整個核心模塊由一個巨大的散熱片覆蓋,並配備了風扇,為了保證系統運行穩定和兼顧控制能耗,按照系統設定,該風扇僅在系統高負荷運行時才會啟動,平時系統主要依靠散熱片被動散熱,由此可見NVIDIA在保證系統穩定併兼顧控制能耗上的細緻,畢竟這樣一塊計算能力達到1Teraflops的Jetson TX1,功耗峰值才10W。

▲Jetson TX1與Jetson TK1

    由於配備了更多的擴展接口,所以Jetson TX1比Jetson TK1主板面積要大一些。較大的外形也暗示著TX1擁有的更強性能和帶給開發者的想像空間。

    2開發環境搭建

    在正式進入Jetson TX1開發的奇幻之旅前,先簡單介紹一下Jetson TX1開發環境的配置,在這裡我們需要預先準備下列項目:

    NVIDIA開發者帳號

    該帳號需要在NVIDIA官網的開發者頁面進行註冊,並同時加入「Embedded Development Program」。這樣就可以獲取Jetson TX1相關的全部文檔和軟體包資源,包括嵌入式系統鏡像、開發工具以及NVIDIA提供的各種工具和軟體庫。

▲註冊NVIDIA開發者帳號並加入「Embedded Development Program」

▲NVIDIA為開發者提供了涵蓋Jetson TX1方方面面的文檔資源和軟體資源

▲Jetson TX1相關的文檔和軟體工具都可以通過Embedded Download Center下載

    安裝妥當的Jetson TX1

    正確的電源、滑鼠、鍵盤,網絡和顯示器連接。Jetson TX1開發套件提供了2個USB接口,包括一個USB 2.0 Micro,雖然通過轉接器可以連接標準USB接口的設備,但是開發過程中經常需要將Jetson TX1通過USB連接至Host電腦,所以這裡我推薦大家可以使用USB 3.0 HUB來解決USB接口不足的問題。

▲安裝妥當的Jetson TX1

    JetPack開發工具套件

    可以登錄NVIDIA Embedded Download Center下載。

    一臺運行Ubuntu Linux 64位作業系統的Host電腦。

    作業系統推薦使用Ubuntu 14.04 LTS 64位版本,同時至少有10GB硬碟空閒空間。

    準備完畢後,在Host電腦為JetPack安裝包增加運行權限並執行,JetPack安裝程序將通過圖形界面引導開發者完成開發環境的配置,開發者只需依照自己的開發配置在安裝程序的引導下做出選擇即可,整個過程非常簡約,界面友好。

    值得注意的是JetPack安裝程序不僅可以在Host電腦和Jetson TX1上搭建開發環境,同時還可以對Jetson TX1進行刷機,用來恢復出場設置和升級最新的作業系統版本,使用JetPack刷機比用命令行工具更加簡便和不易出錯。

▲在Host電腦上為JetPack安裝包添加運行權限並執行

▲全程只需要依據安裝引導進行配置即可

▲在Jetson TX1上測試開發編譯環境是否安裝成功

    3小試牛刀——運行/開發環境初探

    運行環境方面,JetPack搭建好開發環境後,Jetson TX1將重啟並引導之圖形界面。目前Jetson TX1上最新的作業系統為Linux For Tegra R24.1,該作業系統在用於ARM架構的Ubuntu 14.04 LTS版本基礎上定製開發。Ubuntu在國內擁有龐大的用戶基礎和社區環境,基於Ubuntu定製開發的Linux For Tegra對於發者們來說,在界面,命令和操作習慣等方面非常熟悉,極易上手;與此同時,開發者使用過程中遇到的問題,除了官方論壇外,也可以在更廣泛的Ubuntu作業系統社區環境內向眾大神尋求幫助。

▲Jetson TX1作業系統 Linux for Tegra概覽

    一般來說,針對嵌入式平臺的開發有兩種編譯模式:原生編譯和交叉編譯。原生編譯就是直接在嵌入式平臺上編譯代碼並運行,而交叉編譯就是在個人電腦等平臺編譯代碼,然後加載到嵌入式平臺運行。我們在Jetson TX1開發上使用交叉編譯。這裡需要提醒一下各位小夥伴,交叉編譯需要在Jetson TX1和Host電腦間同步代碼,所以需要提前安裝和配置Git,否則在後續編譯執行的時候會報錯的呦,開發工具會深情地問你「Can you tell me who you are」。

▲NVDIA Nsight啟動界面

▲NVDIA Nsight操作界面

    Jetson TX1使用的開發工具NVDIA Nsight是基於eclipse定製開發,其界面和操作習慣於eclipse基本保持一致,消除了開發人員的熟悉工具的時間和精力消耗。

    接下來分享下在Jetson TX上創建,編輯,生成和運行一個項目的過程。

    新建項目

▲NVIDIA Nsight新建項目中目標系統設置

▲NVIDIA Nsight新建項目中目標系統設置

▲NVIDIA Nsight新建項目中目標系統設置

    由於使用交叉編譯模式,所以在新建項目時,需要指定目標系統,即實際編譯運行程序的系統——Jetson TX1。這裡按提示輸入Jetson TX1的網絡地址,用戶名,以及Jetson TX1上CUDA Toolkit的安裝路徑就可以了。

    如果不知道Jetson TX1上CUDA Toolkit的路徑也沒有關係,新建項目嚮導很貼心的設置了一個「自動檢測」的功能,只要輕輕一點,嚮導會自動搜尋CUDA Toolkit的路徑,非常方便。

    編輯代碼

▲NVIDIA Nsight代碼編輯視圖

    NVIDIA Nsight代碼編輯與eclipse完全一致,只是增加針對CUDA代碼的代碼補全,高亮提示以及語法檢查,用慣eclipse的開發者絕對能感覺到屠龍在手,天下我有。

    生成/運行項目

▲NVIDIA Nsight遠程運行項目對話框

▲NVIDIA Nsight遠程運行項目對話框

    同樣的,在按照工具的提示配置好Jetson TX1後,就可以完成程序的編譯,運行,然後坐等收穫結果!

    軟硬體配置概覽

    在簡單介紹了Jetson TX1以及它的開發環境後,現在從Jetson TX1的軟硬體配置入手,來探索Jetson TX1開發者套件帶給廣大開發者的無限可能。

    CUDA

    CUDA是整套平臺的核心,保證了Jetson TX1超高的計算性能。同時,Jetson TX1也支持各種基於CUDA跨架的軟體庫,從而可以用於多種高並行度計算和高數據密度的應用場景,如機器學習,深度學習,大數據實施分析以及物聯網邊緣計算等。

    GPIO、I2C、I2S、SPI、帶流控制的TTL UART等接口

    豐富的接口給了今後基於Jetson TX1進行擴展開發的無限可能,即可以通過TTL UART、GPIO等接口實現其它單片機、嵌入式系統的所有功能外,還能通過自身強大的性能,升任其它單片機、嵌入式系統,如樹梅派等無力支撐的高數據密度業務和高處理實時性業務,如智慧機器人,機器人,無人駕駛汽車等。

    攝像頭擴展頭

    通過將攝像頭(最高支持4K)與Jetson TX1連接,並藉助OpenCV和Visionworks進行視覺計算。

    PCIe x4接口

    這使得Jetson TX1與其它擴展板卡得以結合,並碰撞出創新的火花。如可以通過PCIe x4接口將可編程的FPGA接入系統,協助處理通信,加解密等業務,從而進一步提升Jetson TX1針對特殊應用場景的性能。

    USB 2.0 Client/Host接口

    USB2.0 Client/Host口也為很多應用提供便利。一方面通過USB Host可以將各種USB外設連接在Jetson TX1上,此外,也可以通過 USB Client 將Jetson TX1作為外設連接至電腦或其它設備,開發者完全可以隨意定義這個USB Client的具體行為和功能,即可以將Jetson TX1開發為具備任何希望功能的外設連接至電腦或其它設備。

    初步的使用感受

    在基礎開發環境配置過程中,最令人映像深刻的感受有以下兩點:

    NVIDIA提供的工具軟體包強大且易用

    首先,JetPack為用戶提供了從Jetson TX1系統鏡像燒錄,到Jetson TX1和Host電腦開發環境安裝配置的一站式解決方案,省去了用戶用在分別安裝、配置各個組件,解決版本匹配和組件間依賴關係上的時間和精力,使用戶可以方便快捷的完成環境的準備,並將精力集中在產品的研發上。相比之下,我之前在PC和其他嵌入式平臺上,往往總要在環境配置上耗費很多時間,需要想方設法地去解決組件版本不匹配和軟體依賴關係不滿足等問題。

    其次,JetPack在安裝配置過程中向用戶提供了非常詳盡的操作引導,使用戶,尤其是新手可以很順利的完成基礎環境的配置。例如在Jetson TX1作業系統映像燒錄過程開始時,安裝程序會彈出提示窗口,詳細的介紹了如何將Jetson TX1設置為recovery模式以及相應的注意事項,並要求用戶確認準備妥當後按鍵繼續,最大程度的避免了用戶操作不當造成的系統損壞;再例如在配置Jetson TX1軟體環境時,安裝程序會以圖示的形式讓用戶選擇Jetson TX1與Host電腦的連接方式,直觀易懂。

    Jetson TX1相關的輔助資源非常豐富

    NVIDIA圍繞Jetson TX1提供了從用戶手冊,產品設計文檔,到工具軟體和內核源碼等全套資料,便於不同水平的用戶查閱;同時還有專門針對Jetson嵌入式平臺的開發者論壇,方便用戶針對文檔中未涉及的問題和使用經驗進行提問和交流,NVIDIA的官方支持人員也會在論壇中回復大家提出的各種技術問題,為用戶的開發過程提供有力支持。在本次編譯環境的配置過程中,我就曾遇到交叉編譯報錯,eclipse提示在Jetson TX1上找不到對應路徑的問題,當時查閱了很多文檔但都沒有找到問題所在,最終在開發者論壇中通過查閱開發者的歷史提問找到的問題所在,是Jetson TX1端的Git沒有正確配置,最終配置好Git後,編譯錯誤也迎刃而解。

    Jetson TX1憑藉強悍的計算性能,相對超低的能耗,豐富的文檔和資源和多樣化的擴展接口,得以成為開發者和創客們的有力工具。後面,作者還將深入到不同的應用場景,深入探索Jetson TX1究竟如何幫助開發者實現無限可能,敬請期待!■

同类文章
DX9不老的神話!盈通7600GS不到500元

DX9不老的神話!盈通7600GS不到500元

    [泡泡網上海站訊]近日,小編從市場了解到來自國內知名板卡製造商盈通旗下的一款7600GS顯卡目前價格小降,只需499元就能購買到這款顯卡,性價比非常不錯,這款顯卡的詳細型號為G7600GS 256M GD3 龍翼,下面讓我們看下這款顯卡的詳細資料。( 參數 報價 評論)    這款顯卡採用G
499元很超值 迪蘭2600PRO黑鑽再到貨

499元很超值 迪蘭2600PRO黑鑽再到貨

    【】迪蘭恆進旗下一款採用256M/DDR3顯存的2600PRO黑鑽版顯卡,自打出499元的超值價位以來,便受到中端用戶的關注,一時成為中端首選的顯卡。499元的低價,相比同價位的通路品牌,性價比更高,這款顯卡日前再度批量到貨,喜歡的朋友趕緊行動了。迪蘭恆進 2600PRO黑鑽版    顯卡採
歲末促銷有新意 1199元8800GS送紅包

歲末促銷有新意 1199元8800GS送紅包

    【】臨近年末,DIY市場迎來08年的第一個高峰,此時,來自國內品牌盈通顯卡為用戶推出了賣顯卡送紅包的超值活動。凡在近期購買盈通G8800GS-384GD3標準版和G8800GS-768GD3標準版的用戶,都將會獲得由盈通提供的利是包。多買多得,送完為止,喜歡盈通8800GS的用戶千萬不要錯過
HTPC利器!藍寶靜音版1.0ns26XT僅699

HTPC利器!藍寶靜音版1.0ns26XT僅699

    [泡泡網上海站訊]HTPC這個概念在國內已經開始被越來越多的用戶所熟知,很多人都開始往家庭娛樂這個路線去發展,做為ATI核心合作夥伴的藍寶石最近推出了一款2600XT靜音版,這款顯卡採用被動式熱管散熱,給用戶提供了一個安靜的使用空間,並且搭配1.0nsDDR3顯存顆粒,在遊戲方面的表現也非常
性能堪比XT!銘瑄1.0ns26PRO僅599元

性能堪比XT!銘瑄1.0ns26PRO僅599元

    [泡泡網上海站訊]自從2600系列上市之後,便一直以其良好的性能和對高清播放完美的支持能力受到很多用戶的親睞,目前市面上的2600系列顯卡的價格也是層出不窮而在低端的基本都以縮水板或者是採用DDR2顯存規格的顯卡居多,近日,小編從市場上了解到銘瑄新到一款2600PRO顯卡,這款顯卡的具體型號
入門新選擇!三接口8400GS 299就拿下

入門新選擇!三接口8400GS 299就拿下

     [泡泡網上海站訊]近日,小編在市場了解到來自國內顯卡製造廠商的銘鑫旗下的一款8400GS顯卡到貨上海,這款顯卡的具體型號為銘鑫視界風魅影版,目前這款顯的市場報價為299元,性價比非常不錯,下面讓我們一起看下這款顯卡的詳細資料。  顯卡及包裝盒特寫    這款顯卡採用非公版設計,在顯示核心方
風扇就值499塊!暴強8800GT上市1999元

風扇就值499塊!暴強8800GT上市1999元

    【】8800GT作為中高端市場的王者產品,一直以來都是用戶關注的焦點。各大廠商也是不斷在為玩家推出更具個性化、高品質的產品,來自通路老大七彩虹旗下的這款8800GT冰封騎士近期剛剛到貨賣場。這款產品配備了優異的思民散熱器VF-1050,豪華四熱管設計;加上強悍的四相供電、優質全固態電容,以及
DX10遊戲必備 無極8800GT寒促超值賣

DX10遊戲必備 無極8800GT寒促超值賣

    【】隨著寒假促銷的到來,近期裝機的用戶也越來越多,在中高端市場,最受用戶關注的依然是8800GT。來自雙敏旗下的這款無極8800GT轉為中高端遊戲玩家打造,上市以來一直深受用戶的關注,今天,這款無極8800GT玩家限量版再度到貨賣場,售價為1999元。雙敏 無極8800GT玩家限量版   
後浪來襲!七彩虹發布ATI全線新顯卡

後浪來襲!七彩虹發布ATI全線新顯卡

   繼2007年底AMD-ATI發布著名的RV670後,在今年的1月底,AMD-ATI又再次發力,一氣推出了幾款新品,不但針對高端推出了最強大的R680,也在中低端方面推出了RV635和RV620,作為AMD-ATI的強有力合作夥伴,國內的顯卡巨頭-七彩虹更在第一時間推出了相應的產品。現在就讓我們
1.2ns/512M/GD3!最強規格86GT僅699

1.2ns/512M/GD3!最強規格86GT僅699

    【】太陽花顯卡不久前推出了一款售價僅有599元的86GT顯卡,在市場受到用戶的關注。今天,旗下一款採用512M顯存的8600GT顯卡打出了699元的超值價格,值得一提的是,這款產品採用了1.2ns/DDR3顯存,更顯超值,近期裝機的用戶很值得考慮。    太陽花這款型號為8600GT/512