UPS供電方式
【電源適配器對UPS供電】
UPS v3主板通過TPYE-C線對UPS主板進行供電。對外部電源適配器的需求是5V 2A - 5V 3A。UPS內部有電源路徑管理系統,會自動調節輸入電流的大小。例如:當外部無負載、或者負載較輕,且UPS板載的電池也已經充滿的情況下。輸入電流會約等於負載的消耗電流。TYPC-C 輸入的充電線,盡量採用短而粗的電源線,讓線損較小,從而到達UPS的主板的充電功率是充足的。
提示:如果電源頭標稱參數為5V 3A,UPS工作在邊充邊放狀態,電池電量還一直在減少的原因,可能是輸入TYPE-C的線損較大(或電源頭參數虛標),實際電源適配器到達TYPE-C接口的功率不足以同時給負載供電和同時給電池充電導致的。解決方案:更換大品牌質量可靠的電源頭和品牌充電線(較粗)。
【UPS對樹莓派主板供電】
UPS主板可以使用USB-A座對樹莓派主板進行供電,也可以通過GPIO 5V接口對樹莓派進行供電。兩種供電方案,選任意一種即可。
供電方式 | 說明 |
使用USB-A對樹莓派主板進行供電 | UPS插入TYPE-C電源線與Pi4進行供電。(Pi3及更老版本可以使用Micro-USB線進行連接)。優點:無需焊接,使用方便。缺點:USB座和USB線組成的接口整體內阻稍大,適合Pi4常規應用。USB線請選擇盡可能短而粗的線,減少線損壓降,防止Pi4出現閃電符號的情況。如還是出現閃電符號,可選用如下的GPIO直接供電的方案進行供電。 |
通過GPIO接口對樹莓派進行供電 | 在UPS上焊接5V排針,用22AWG短而粗的矽膠杜邦線對Pi4進行供電。用柔軟的矽膠杜邦線可承受5A的電流,並且內阻較小。請勿使用普通鋁包銅的信號杜邦線,這將會引入較大內阻,從而導致線損壓降大,Pi屏幕上出現低壓閃電符號。 |
供電方式(以下2選1) | 接線實例 |
使用USB-A對樹莓派主板進行供電 | |
通過GPIO接口對樹莓派進行供電 | |
【LED顯示】
UPS主板上板載6個LED燈:
- 綠色LED:D1、D2、D3、D4用於電池的電量顯示
- 紅色LED:Charge Status 為充電狀態指示燈。(以下簡稱CS燈)
- 當UPS關閉輸出,用戶只對UPS進行充電時:電池未充滿時,CS燈閃爍。當電池完全充滿時,CS燈常亮。
- 當UPS工作在邊衝邊放狀態下:CS燈一直為閃爍狀態。只有當負載較輕的情況下,如給Pi Zero或者類似較輕負載供電時,經過較長充電後,CS燈會顯示常亮。此燈由PMU管理芯片輸出控制,當電池未充滿時,都表現為閃爍狀態。
- 當UPS開關關閉,並且TYPE-C對UPS充電也關閉時:CS燈持續常亮20s後自動關閉。
- 綠色LED:Power LED為輸出電源指示燈。當UPS向樹莓派主板輸出5V電源時,此燈點亮。
LED電量顯示表:
D4 | D3 | D2 | D1 | 電池電壓 |
滅 | 滅 | 滅 | 閃爍 | 小於3.45v |
滅 | 滅 | 滅 | 常亮 | 3.55v |
滅 | 滅 | 常亮 | 常亮 | 3.72v |
滅 | 常亮 | 常亮 | 常亮 | 3.89v |
常亮 | 常亮 | 常亮 | 常亮 | 大於4v |
當D1-D4都常亮,並且CS燈也常亮,表示電池已完全充滿。
【電池接口】
UPS主板的電池接口:PH2.0座。產品出廠配套的電池組內部已集成鋰電池保護板。如用戶想自行接入DIY的電池包,請注意以下幾個注意事項:
- 電池輸出線的接口為PH 2.0公頭,注意接口的正極和負極!如電池線接反,UPS將會燒毀!
- 自主電池組為1S 3.7V鋰電池:額定電壓3.7V,充滿電壓4.2V的電池組。常規兼容型號:18650、21700、21650等電池組都兼容。不兼容磷酸鐵鋰電池。
- 容量無特別要求,但考慮到Pi4續航,最佳容量最好大於4000mAh
- 自己組裝的電池組盡量帶6A及以上大電流鋰電池保護板:市面上常規的鋰電池保護板參數為3A-4A,當外部需要大電流時,保護電流太小的保護板可能會導致輸出打嗝的狀況。
【通訊接口】
UPS V3. V3P與樹莓派通訊,採用2種方式:UART接口和STA單總線接口。STA單總線接口簡單靈活,只需要在pi上通過任意一個閒置的GPIO口(提供的Pi端python程序默認為:GPIO 18,玩家可自行更改)和UPS就能進行通訊。UART接口則可以讓PI讀取更為豐富的UPS目前工作信息。
2個接口的作用如下:
- UART接口:UPS和樹莓派的板載串口進行通訊。樹莓派可以得到的信息:通訊心跳包、外部是否停電、電池容量百分比、向外輸出電壓值。
- STA單總線接口:UPS主板在電池耗盡之前發送給樹莓派主板一個脈衝信息(Halt signal),讓樹莓派安全的進行軟件關機。當樹莓派安全關機後,再次切斷樹莓派的5V主供電電源。(USB-A座和2P排針座都受程序控制)。當外部電源恢復後,UPS主板會自動進入充電流程,當電池充電到達一定容量,會自動對樹莓派恢復供電。
【軟件驅動】
『安全關機』
1. 把產品配套的資料包,解壓縮到 /home/pi/UPSPACK_V3 目錄下。檢查shutdown_check.py的完整目錄是
shutdown_check.py完整目錄為如下:
/home/pi/UPSPACK_V3/shutdown_check.py
2. 更改/etc/rc.local,把自動關機的程序添加成開機自動啟動
sudo nano /etc/rc.local #在最下面的exit的上面一行添加如下內容sudo python3 /home/pi/UPSPACK_V3/shutdown_check.py &
1. 完成以上步驟,即可實現當電池耗盡前,樹莓派自動安全關機的功能。並且當外部恢復電源,UPS板子會自動進行充電。當電池充電到一定電量後,UPS會自動開啟樹莓派的電源。
【UART軟件】
UPS和樹莓派通過UART接口進行信息交互,可以得到更為豐富的信息:
- UPS運行時間
- 外部TPYE-C供電口是否供電正常?(GOOD 或者Not Good)
- 電池當前百分比電量
- UPS當前輸出電壓值
安裝過程:
1. 把UPS v3的UART口(TX、RX)和樹莓派的UART口進行連接,詳情見:通訊接口
2. 編輯/boot/config.txt
3. 增加2行內容,並且ctrl+x保存退出
# 針對2020-08-20-Raspberry Pi OS及更新版本enable_uart=1 dtoverlay=disable-bt
1. # 針對2020-05-27-Raspberry Pi OS 以及更老版本的系統enable_uart=1 dtoverlay=pi3-miniuart-bt
2. 再次用ls -al /dev,查看串口0和串口1的指向關係。主要是查看serial0 -> ttyAMA0
1. 重啟樹莓派
sudo reboot
2. 通過minicom串口軟件,驗證樹莓派的串口0和UPS進行正常通信。
sudo apt-get install minicom -y sudo minicom -D /dev/ttyAMA0 -b 9600
可以看到UPS發到樹莓派上的協議數據包。由於Linux上'n'只換行,不回到行首。所以minicom上看到的協議,會超出屏幕
這沒有關係,我們後面可以利用python來過濾這些信息。
提示1:退出minicom按鍵: Ctrl+A --> z --> x
提示2:如未看到通訊協議包,說明UART連接不正確,參考通訊接口。或者是serial0 -> ttyAMA0指向不正確。按照以上步驟仔細檢查。
3. 進入程序目錄/home/pi/UPSPACK_V3/UPS_GUI_py,雙擊 UPS_GUI_demo.py ,跳出一個對話框直接點擊確認,即可運行Python GUI程序。即可看到UPS目前的工作狀況。