跳至主要内容

1 產品介紹

ASR-D501 是一款以 Qualcomm® Dragonwing™ QCS6490 平台為核心的 ARM 架構單板電腦。
此產品設計作為無人機的隨行運算主機,結合低功耗邊緣 AI 運算能力與堅固耐用的內建記憶體及儲存空間。
本文件說明如何在 Ubuntu 系統下使用 ASR-D501 的 I/O。

型號名稱ASR-D501-N1A1U
處理器Qualcomm® QCS6490
AI 運算能力12 TOPS (NPU)
記憶體內建 8 GB LPDDR5
作業系統儲存空間內建 128 GB UFS
作業系統Ubuntu 24.04-x07

1-1 產品特色​

  • Qualcomm QCS6490,搭載 8 核心 Kryo 670 CPU、Adreno 643 GPU,NPU 最高可達 12 TOPS
  • 內建 8 GB LPDDR5 記憶體及 128 GB UFS 儲存空間
  • 擴展工作溫度範圍 -20°C 至 70°C
  • Mini DisplayPort、1x 2.5 GbE、2x CAN FD、2x USB Type-C、2x I2C、3x UART,以及 5 x MIPI CSI
  • 1x M.2 Key-E 及 1x M.2 Key-B 擴充插槽
  • 緊湊的 100 x 60 mm 外型尺寸,不含散熱片淨重 50g
  • 支援 Ubuntu,並相容 ROS2 與 MAVLink、MAVROS、MAVSDK 工作流程
  • 內建 Qualcomm® Trusted Execution Environment (TEE) v5.3 安全機制

1-2 官方網站​


2 機構與環境規格

2-1 外觀與尺寸​

ASR-D501 單板。


ASR-D501 含散熱片。



2-2 散熱方案​

包裝內附有一片被動式散熱片,可用四顆螺絲固定於主機板上。
ASR-D501 的工作溫度為 -20°C ~ 70°C(於 0.7 m/s 氣流下量測)。
安裝散熱片前,請先撕下導熱墊上的離型紙,接著依下圖鎖上四顆螺絲。


ASR-D501 另提供選配風扇散熱片,其電源由 FAN1 連接器供應。


3 硬體介面介紹

3-1 開關與跳線​

請參考下圖以確認開關位置。


SW2ONOFF
Pin1EDL 模式(用於燒錄映像檔)正常開機
Pin2自動開機由電源按鈕開機

3-2 連接器介紹​

請參考下圖以確認 I/O 連接器位置,腳位定義請見 ASR-D501 使用手冊。


名稱說明
DCIN1DC 電源輸入連接器
DP1Mini DisplayPort
USB0MicroUSB 連接器,僅供燒錄映像檔使用
TYPEC1 / TYPEC2USB Type-C 連接器
GPIO1GPIO 連接器
LAN_CN1LAN 連接器
CAM1-CAM5MIPI CSI 相機連接器
COM1-COM3UART 連接器
FP1前面板連接器
FAN1風扇連接器
M2B_CN1M.2 Key B 連接器
I2C1 / I2C2I2C 連接器
DEBUG1除錯連接器
CAN1 / CAN2CAN bus 連接器
BAT1RTC 電池連接器
SD_CARD1SD 卡插槽
M2E_CN1M.2 Key E 連接器
SIM1SIM 卡插槽

4 作業系統

4-1 映像檔下載​

請參考 BSP Launcher 使用指南 下載並安裝 BSP Launcher,以取得 ASR-D501 的 Ubuntu 映像檔。



4-2 燒錄映像檔​

將 ASR-D501 關機,把 SW2 Pin1 切至 ON,開機以進入 EDL 模式,再以支援傳輸資料的 USB 傳輸線,將 ASR-D501 的 Micro USB(USB0)連接至主機電腦。
請依照 BSP Launcher 使用指南 的步驟,將預建映像檔或由 BSP 建置出的映像檔燒錄至 ASR-D501。
燒錄完成後,切斷電源並將 SW2 Pin1 切回 OFF,再次開機,ASR-D501 應於 2 分鐘內進入 Ubuntu 桌面。


4-3 BSP 下載​

映像檔版本發布日期映像檔下載BSP 下載備註
Ubuntu 24.04-x07 v1.0.02026-07-08下載下載kernel 6.8.0-1057

5 操作方式

5-1 帳號與密碼​

ASR-D501 的預設帳號與密碼為 ubuntu / ubuntu。
使用者可執行以下指令變更預設的 root 與 ubuntu 的密碼。

$ sudo passwd root
$ sudo passwd ubuntu

5-2 USB Type-C 連接器​

依 ASR-D501 硬體設計,若 Micro USB(USB0)已連接至主機,兩個 USB Type-C 將會被停用。
請拔除 Micro USB(USB0),以啟用 USB Type-C(TYPEC1 及 TYPEC2)。


5-3 通用型輸入/輸出(GPIO)​

ASR-D501 提供 8 個腳位的 3.3V 應用 GPIO 訊號,GPIO 腳位定義如下圖所示。


以下對應表適用於選配的 GPIO 轉接線,可將內建 10 pin 的 GPIO1 接頭轉換為 DB9 連接器。
內建的 GPIO1 連接器亦提供一個 3.3V 供電腳位,但下方的 DB9 對應表並未包含該供電腳位。

DB9 腳位Single PinSYSFS PinChip, Line in GPIOD
1GND--
2GPIO_816163, 81
3GPIO_105453, 10
4GPIO_185533, 18
5GPIO_265613, 26
6GPIO_275623, 27
7GPIO_355703, 35
8GPIO_385733, 38
9GPIO_395743, 39

以下步驟說明如何操作 GPIOD。
第一個範例為讀取 GPIO_81 的準位,gpioget 會將該 GPIO 腳位設為輸入模式。

$ sudo gpioget 3 81

下一個範例為將 GPIO_81 設定為高準位或低準位,=1 代表高準位,=0 代表低準位。

$ sudo gpioset 3 81=1
$ sudo gpioset 3 81=0

5-4 乙太網路 Intel I226-V​

ASR-D501 提供一個 2.5 GbE 介面,其名稱為 enP1p1s0。請用以下指令確認連線狀態。
若 enP1p1s0 不存在,請以 ip link 指令確認實際名稱。

$ ip link show enP1p1s0

網路線上 LED 的行為如下表所示。

LED狀態說明
Link LED綠色已建立 2.5 GbE 連線
Link LED橘色已建立 1 GbE 連線
Activity LED閃爍有網路流量傳輸中

5-5 MIPI 相機​

ASR-D501 支援 5 個 MIPI CSI 相機連接器。相機模組、排線方向、device-tree 支援及相機索引皆須與所選用的 BSP 版本相符。相機連接器對應如下表所示。

相機連接器參考感光元件
CAM1IMX577
CAM2IMX577
CAM3OV9282
CAM4OV9282 (IFE_LITE)
CAM5OV9282 (IFE_LITE)

5-5-1 相機前置設定​

啟動相機串流前,請先完成以下每個準備步驟。
這些設定在裝置重新開機後不會保留,重新開機後請針對相機再次執行這些指令。

1. 進入 root shell​

$ sudo -s

2. 將 ASR-D501 設為 performance 模式​

# echo performance > /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor

3. 設定 CPU 叢集頻率上限​

# for cpu in $(seq 0 7) ; do \
      cd /sys/devices/system/cpu/cpu${cpu}/cpufreq ; \
      cp scaling_max_freq scaling_min_freq ; \
  done
# for cpu in 0 4 7; do \
      cd /sys/devices/system/cpu/cpufreq/policy${cpu} ; \
      cp scaling_max_freq scaling_min_freq ; \
  done

4. 停用 CamX 系統紀錄​

# echo "systemLogEnable=FALSE" > /var/cache/camera/camxoverridesettings.txt

5. 重新啟動相機服務​

# systemctl restart cam-server

5-5-2 相機串流指令​

開啟新的終端機,執行以下指令以檢視相機的影像串流。
相機索引是依據目前作用中的連線動態配置,而非依實體連接埠位置決定。
舉例來說,若 CAM1 接有一顆 IMX577,其索引為 0;若 CAM2 未使用,則不會佔用索引,因此 CAM3 上的 OV9282 將被指定為索引 1。也就是說,若未接上任何 IMX577,索引 0 將分配給 CAM3 到 CAM5 中第一個連接的 OV9282 相機。

$ gst-launch-1.0 -e qtiqmmfsrc name=camsrc camera=0 ife-direct-stream=0 ! video/x-raw,format=NV12,width=1280,height=720,framerate=30/1 ! waylandsink

請將 camera=0 修改為目標相機索引,其他參數則可依應用需求調整。

參數說明
gst-launch-1.0從命令列啟動 GStreamer 管線。
-e在管線停止時送出 end-of-stream 事件,讓資源能正常釋放。
qtiqmmfsrc由 ASR-D501 BSP 提供的 Qualcomm 相機來源元件。
name=camsrc將相機來源元件命名為 camsrc。
camera=0 到 4依已連接相機數量(CAM1 至 CAM5)選擇對應的 BSP 相機索引。
ife-direct-stream=0 或 1停用/啟用 CAM3 至 CAM5 參考組態所需的 Image Front End 直接串流。
!連接前後兩個 GStreamer 元件或能力過濾器。
video/x-raw要求未壓縮的原始影像輸出。
format=NV12選擇 NV12 YUV 4:2:0 像素格式。
width=1280,height=720要求輸出解析度為 1280 x 720。
framerate=30/1要求每秒 30 幀。
waylandsink於 Ubuntu Wayland 桌面環境中顯示影像。

5-6 通用非同步收發器(UART)​

ASR-D501 提供 3 組 UART 介面,請執行以下指令確認目前安裝的 BSP 所提供的裝置節點。

$ ls -l /dev/ttyHS*
連接埠UART 裝置
COM1/dev/ttyHS1
COM2/dev/ttyHS2
COM3/dev/ttyHS3

內建的 COM 連接器提供 0-3.3V TTL UART 訊號。
它們並非傳統的 RS-232 COM 埠,不可直接連接使用 RS-232 電壓準位(可達正負 15V)的設備。若要連接 RS-232、RS-422 或 RS-485 設備,請使用合適的外部收發器轉換。
請依以下步驟將 COM1 設定為 115200 baud。

$ sudo -s
# stty -F /dev/ttyHS1 115200 raw -echo -onlcr
# echo "COM1 send data" > /dev/ttyHS1
# cat /dev/ttyHS1

echo "data" > 則是透過目標連接埠傳送資料。
cat 用於在終端機上顯示接收到的資料,按下 Ctrl+C 即可停止。
若要設定 COM2,請將 /dev/ttyHS1 換成 /dev/ttyHS2;COM3 則使用 /dev/ttyHS3。


5-7 前面板(FP)​

Pin 1 的 PHONE_ON# 訊號為低準位動作,將其短接至地即可觸發開機事件。
Pin 3 提供 3.3V 電源,可用來點亮外接 LED,指示主機板的電源狀態。



5-8 無線通訊模組​

5-8-1 5G 模組​

ASR-D501 支援 AIW-356(M.2 Key-B)5G 模組,請於開機前先插入 Nano-SIM 卡。
待數據機列舉完成後,可使用 Ubuntu 設定或 NetworkManager 設定電信業者連線。



5-8-2 Wi-Fi 與藍牙模組​

ASR-D501 支援 AIW-170(M.2 Key-E)Wi-Fi 與藍牙模組,其驅動程式已整合於 Ubuntu 映像檔中。
若已接上 AIW-170,可使用以下指令確認 Wi-Fi 介面與藍牙控制器。

$ nmcli device wifi list
$ bluetoothctl show

5-9 內部整合電路(I2C)​

ASR-D501 提供 2 個外部 I2C 連接器,並有 2 組內部 I2C 匯流排,連接器對應的匯流排編號如下所示。

匯流排功能
/dev/i2c-1內部 I2C
/dev/i2c-3內部 I2C
/dev/i2c-9I2C 連接器 1
/dev/i2c-2I2C 連接器 2

可透過以下指令並指定匯流排編號來掃描已連接的 I2C 裝置,例如 9 代表 I2C 連接器 1。

$ sudo i2cdetect -y -r 9

匯流排編號可能因 BSP 版本而異,使用外部 I2C 裝置前請先以 sudo i2cdetect -l 確認。


5-10 除錯 UART​

除錯用 UART 為 0-3.3V TTL UART,不可直接連接使用 RS-232 電壓準位的設備。
請使用 UART 轉 RS-232 轉換器搭配 DEBUG1,並依下表設定連線至維護主控台。接法為:連接器 TX 接主機 RX,連接器 RX 接主機 TX,GND 接 GND。

設定項目數值
鮑率(Baud Rate)115200
資料位元(Data Bits)8
停止位元(Stop Bits)1
同位檢查(Parity)None
流量控制(Flow Control)None

5-11 CANBUS​

ASR-D501 提供 2 個 CAN 介面,分別為 can0 與 can1。兩個 CAN 裝置之間的接線方式為:CANH 接 CANH、CANL 接 CANL、GND 接 GND。


安裝 CAN 工具程式,並執行以下指令,將仲裁位元率與資料位元率設定至 CAN 匯流排。

$ sudo apt install -y can-utils
$ sudo ip link set can0 up type can bitrate 1000000 dbitrate 8000000 fd on
$ sudo ip link set can1 up type can bitrate 1000000 dbitrate 8000000 fd on

使用 candump 指令接收 CAN 匯流排的資料。

$ candump can1

使用 cansend 指令將資料傳送至 CAN 匯流排,以下兩個範例分別為標準 CAN 訊息格式與 CAN-FD 訊息格式。

$ cansend can0 111FFFFF#aa.00.cc.aa.33.61.aa.ab
$ cansend can0 123##1AABBCCDDEEFF00112233445566778899

另一種方式是使用 cangen 產生隨機的標準 CAN 訊息,加上 -f 參數則可產生隨機的 CAN-FD 訊息。

$ cangen can0
$ cangen -f can0

5-12 Micro SD 卡​

將 microSD 卡插入 SD_CARD1,Ubuntu 會自動掛載至 /media/ubuntu/,可用 lsblk 指令確認。

$ lsblk

拔除 MicroSD 卡前,請記得先將其卸載。

$ sudo umount /media/ubuntu/*