|
cjjdemon 發表于 2020-7-31 18:15 你是搞BMS那塊的吧 |
| 這個電路可以用啊 |
QWE4562012 發表于 2020-7-31 09:26 通過負載接入檢測功能就行,具體方式就是利用MCU的IO在放電MOS和充電MOS的共漏極進行高低電平監控,就知道有沒有負載接入啦,一旦檢測到負載,而且能夠正常通信的話,就把PDSG拉高就開始預放了 |
1692483014 發表于 2020-7-31 10:26 辛苦了 受益匪淺 謝謝 |
|
昨天樓主私下里找我看了看這個電路,我整體看了一下,沒有結合軟件去理解,故只針對硬件說一下我的理解,從我理解的各個網絡的含義,以及相應的控制原理: 1. 對外供電網絡含義: P+ : 對外放電正極,用于對其它儀器供電; PACK- : 對外放電負極,P+輸出以此為參考地; 2. 對內充電網絡含義: CHG_IN:對內充電電源輸入口: TDA : 通過內部的網絡推斷,這可能是一個input/output雙向口,主要針對充電禁能的管理;(具體要根據軟件一起分析,甚至要結合外接的充電設備一起分析才行。) CHG_CHK : 通過內部網絡推斷,這是一個input檢測口,主要針對充電是否進行進行檢測;(具體要根據軟件一起分析,甚至要結合外接的充電設備一起分析才行。) 一、關于CHG_CHK、CHG_IN_CHK、CTL_CHG_C1、CTL_CHG_C2組成的模塊的理解: 1. MCU通過CHG_IN_CHK檢測CHG_CHK的電平,來獲取充電狀態; 2. CTL_CHG_C1和CTL_CHG_C2則可以調整CHG_CHK的下拉電阻的值: CTL_CHG_C1=0且CTL_CHG_C2=0時,CHG_CHK的下拉電阻為10.76K; CTL_CHG_C1=1且CTL_CHG_C2=0/1時,CHG_CHK的下拉電阻為0.54K; CTL_CHG_C1=0且CTL_CHG_C2=1時,CHG_CHK的下拉電阻為5.5K; 說明CHG_CHK是一個可以通過調整其下拉電阻而改變其輸出狀態,進而通過CHG_IN_CHK檢測這種狀態,來判斷外部充電器處于何種狀態,以方便內部mcu做出調整,具體結合mcu軟件與外部充電設備的電路綜合分析。 二、關于TDA、DISCHG_IN_CHK、CTL_DISCHG_COM組成的模塊的理解: 1. DISCHG_IN_CHK應該可以檢測TDA的電平; 2. CTL_DISCHG_COM可控制TDA的電平,可將其強拉為低電平; 3. 所以,猜測TDA是一個雙向口,可以在輸出時檢測其電平狀態,比如外部的充電設備將TDA弄一個弱上拉,但是內部的MCU可通過CTL_DISCHG_COM=1來強制將TDA拉低,這樣外部充電設備檢測到TDA是低電平,它就關閉自身的充電電路,不對電池包進行充電了。 4. 猜測mcu主動將CTL_DISCHG_COM拉低來停止充電是因為自身可能發生了某種故障。 三、關于WAKE、B+、P+、KEY1組成的模塊的理解: 1. B+為電池包的正極; 2. P+為對外輸出正極; 3. 控制B+到P+的連通/斷開,則是控制內部電池包對外部用電設備放電/不放電; 4. 對于B+到P+供電模塊,我認為是這樣控制的:首先按下KEY1按鍵,B+和P+連通,那么則對外部設備供電了。因為按鍵是短暫的,我認為這個短暫的供電可以讓外接設備的單片機工作起來,但是電流并不大,因為有R56的存在,之后外部設備可能會通過TDA給到電池包MCU反饋,MCU通過WAKE來進一步供電,即使KEY1松開也沒事兒了。待MCU檢測(檢測方法猜測是通過TDA或者DISCHG_IN_CHK)到外部設備已準備就緒后,則準備開始供電了,此時MCU通過SMBC和SMBD發送指令給BQ40ZB0,控制其DSG和PACK兩個引腳,使得Q11、Q12、Q14等導通給P+進行大功率供電,然后MCU將wake拉低釋放即可。上述是猜測,必須核對MCU程序才能確定是否準確。 四、關于充電模塊的理解: 1. 控制CHG_IN到B+的連通/斷開,則是控制外部充電器對電池包的充電/不充電; 2. 包括預充電和正式充電兩個階段; 3. 充電器插入后,通過TDA或者CHG_CHK來檢測充電器的狀態; 4. 檢測到充電器接入后,首先啟動預充電,通過IN_CHG_PRE拉低來啟動預充電(低電平應該是MCU的未上電狀態的默認電平),之后MCU啟動,通過SMBC和SMBD發送指令給BQ40ZB0,控制其CHG引腳控制Q18導通,開啟大電流充電,然后再將IN_CHG_PRE拉高就可以了,充電會持續進行。上述是猜測,必須核對MCU程序才能確定是否準確。 |
cjjdemon 發表于 2020-7-30 18:26 當接入負載時,PDSG會先拉高,-----------這個為什么 |
cjjdemon 發表于 2020-7-30 18:26 你對BMS很了解 就是這個行業的吧 |
QWE4562012 發表于 2020-7-30 18:50 描述是正確的,充電時,電流是從P+流至B+,通過電芯,再從B-流至P-,所以V(SRP)-V(SRN)為正值時,是充電,為負值則是放電。 |
| 當檢測到VSR=V(SRP)-V(SRN)為正值時,系統處于充電狀態-------------這是不是搞錯了啊 V(SRP)電壓更高是充電狀態? |
|
圖1就是BQ芯片的電流采樣回路 圖2,如果PACK反接,PACK+接成了PACK-,那么GND就會接PACK+,這時候Q9的G極會被拉高,Q9導通,導致PACK短路,電池PACK一般是有短路保護的,這樣就會停止輸出了。 圖3,預充預放電路是為了避免主回路導通瞬間,由于負載的容性過大,導致瞬間大電流而設計。以預放回路為例,一般這種電路,初始DSG/PDSG都是低電位,無法放電。當接入負載時,PDSG會先拉高,Q8導通,電流通過R1/Q8通過,R1為限流電阻,當達到預放截止條件時,PDSG拉低,DSG拉高,Q8截止,Q3導通,電流從Q3經過。預充同理 圖4,俗稱一線通,用單總線進行通信,遵守相應協議即可,通信速度一般比較慢,傳輸少量數據可以。低成本電動自行車會用。 |