--- tags: Jetson Nano, Basic, NVIDIA, 基礎, 教學, 環境安裝, 設定, Mac, 勇哥, Yungger --- # Jetson Nano - 硬體安裝 (B01版) ![](https://i.imgur.com/KUfEnj6.jpg) [TOC] --- [微雪外殼套組](https://www.waveshare.com/wiki/Jetson_Nano_Case_%28C%29) --- ![](https://i.imgur.com/BLGa9LZ.png) 基本外殼組, 不含調速風扇, WiFi 網卡與天線, 及攝影鏡頭 WiFi網卡 --- ![](https://i.imgur.com/ytalLPh.gif) ![](https://i.imgur.com/rugJ3te.gif) ![](https://i.imgur.com/zou63Xe.png) 電源開關與 SD 卡轉接頭 --- ![](https://i.imgur.com/O0f5BZl.png) ![](https://i.imgur.com/NyrkaVl.png) [冷卻風扇](https://www.waveshare.com/wiki/Fan-4020-PWM-5V)(須注意上下的方向) --- ![](https://i.imgur.com/IXWqVp6.jpg) :::info 設定風扇的轉速 (0~255, 0:停止, 255:全速, 值越大越快) $ sudo sh -c 'echo 180 > /sys/devices/pwm-fan/target_pwm' 設定一開機即自動啟動冷卻風扇 $ sudo nano /etc/rc.local 在文檔最後加上以下設定, 且假設我們需要的風速是 150 ``` #!/bin/bash sleep 10 sudo /usr/bin/jetson_clocks sudo sh -c 'echo 180 > /sys/devices/pwm-fan/target_pwm' ``` 存檔後離開, 再修改檔案權限, 重啟 $ sudo chmod u+x /etc/rc.local $ sudo reboot ::: GPIO 轉接頭 (40 pins) --- ![](https://i.imgur.com/O044ktN.png) 鏡頭 --- ![](https://i.imgur.com/UBkuLZx.png) ![](https://i.imgur.com/JotbZUT.png) :::info $ ls -ltrh /dev/video* 基本上會列出 /dev/video0,代表編號 0 為第一支攝影鏡頭 ::: 組裝完成 --- ![](https://i.imgur.com/Nfs5vs8.png) 測試鏡頭 --- - 確認系統是否能偵測到鏡頭 ? $ ls -l /dev/video* ![](https://i.imgur.com/dNT9SAG.jpg) - 測試鏡頭顯示是否能正常 ? $ gst-launch-1.0 nvarguscamerasrc sensor_mode=0 ! 'video/x-raw(memory:NVMM),width=3820, height=2464, framerate=21/1, format=NV12' ! nvvidconv flip-method=0 ! 'video/x-raw,width=960, height=616' ! nvvidconv ! nvegltransform ! nveglglessink -e :::danger 若在 Jetson Nano 的 Python 程式碼使用 cap = cv2.VideoCapture(0) 一直無法獲得鏡頭的畫面, 出現錯誤 [ WARN:0] ... ap_gstreamer.cpp (480) isPipelinePlaying OpenCV | GStreamer warning: GStreamer: pipeline have not been created ::: - 在 Python 程式中程式碼中, 將 cv2.VideoCapture(0) 改為 cv2.VideoCapture(gst_pipeline, cv2.CAP_GSTREAMER) 如下 ``` gst_pipeline = ("nvarguscamerasrc ! " "video/x-raw(memory:NVMM), " "width=3820, height=2464, " "format=(string)NV12, framerate=21/1 ! " "nvvidconv flip-method=0 ! " "video/x-raw, width=1024, height=768, format=(string)BGRx ! " "videoconvert ! " "video/x-raw, format=(string)BGR ! appsink" ) cap = cv2.VideoCapture(gst_pipeline, cv2.CAP_GSTREAMER) ```