關于這個問題, 我看不能簡單說有沒有問題來判斷,我對這個問題做了還算比較深入的試驗。并將其應用于 38.4Kbps 的串行通信中,事實上,由于普通光耦的特性,往往開關的延遲時間是不同的。
普通應用中(典型電路), 開通時間 2~3uS, 關斷時間為 30uS 以上, 這樣, 按30uS 差距計算, 不超過半個 bit 時間,??應該是16.6Kbps。如果, 通信兩節點間的波特率有誤差, 那么這個值還要降低! 但是, 經過合理選擇驅動電路, 可以將這兩個時間差距縮小, 便可以提高波特率了。我已經將這個時間縮到 2uS 以內。這樣, 理論上可以達到200Kbps以上了。
“事實上, 由于普通光耦的特性, 往往開關的延遲時間是不同的。普通應用中(典型電路), 開通時間 2~3uS, 關斷時間為 30uS 以上, 這樣, 按30uS 差距計算, 不超過半個 bit 時間,??應該是16.6Kbps。”
實際上,還不能“不超過半個 bit 時間”,很多單片機等芯片是在3/8、1/2和5/8個bit時檢測,如果考慮到抗干擾的要求,只能不超過3/8個bit時間,這樣可用的波特率就更低一些。
要想工作在較高波特率也很簡單,逐個調整前向電流即可,57600沒有問題。但大量生產時絕對不允許這樣做。如果采用固定的一次限流電阻和二次上拉電阻,考慮到521的參數分散性(注意:電流傳輸比從50%到600%),要在全部允許溫度范圍內可靠工作,波特率不應該大于9600,否則就可能出現這一批芯片工作正常,下一批芯片不正常的現象。?
?
光耦能夠用到多高波特率,取決于三個時間:
1、開通時間。 2、存儲時間。 3、關斷時間。
影響最大的是存儲時間,它使脈沖變形,從而造成傳輸錯誤。
存儲時間是由于三極管進入飽和而產生的。飽和程度越大,存儲時間越長。如果能夠剛好不進入飽和(線性區邊緣)則存儲時間幾乎為零。但這很難辦到,除非一個一個地調整驅動電流,使三極管剛好不進入飽和。即使調整好了,溫度變化也可能改變電流傳輸比,使三極管進入飽和,或是離開線性區邊緣(三極管輸出幅度減小),電路工作不正常。
能否改進驅動電路,使得芯片工作在更高的波特率?當然可以。驅動電路使開通延遲而關斷不延遲即可。如果延遲時間剛好等于存儲時間,那么從波形上看,無非是脈沖延遲了,但沒有變形(暫不考慮上升和下降時間),所以不會產生傳輸錯誤。但這里又產生了新的問題:成本上是否合算?高速光耦如6N135比TLP521并貴不了太多,如果改驅動電路而增加的成本大于6N135與TLP521價格之差,那是不上算的。在設計工作中,這個成本因素必須時刻考慮到。
改進驅動電路并不能減少開通時間和關斷時間,調整驅動電流也不能減少開通時間和關斷時間。因此存儲時間即使為零,最終波特率也要受這兩個時間的限制。
?如果把TLP521當做數字器件,讓TLP521工作在非線性區的飽和、非飽和兩個極端(即:加個上拉就可以產生高、低電平),用它來做通訊隔離10Kbps就開始產生誤碼了。
如果,我們能充分認識到光藕的特性,在TLP521輸出之后加一級放大整形電路,利用TLP521的線性區電流傳輸比的增益特性,通過一個帶有+25db電壓增益的類施密特雙三極管放大器放大、整形,就可以讓所傳輸信號的上升、下降沿的實時延時降低到1uS,如果使用單管放大整形傳輸50Kbps是決無問題的,成本不過增加了幾分錢。
如果,高速光藕取消掉接收管內部放大整形電路,那么它的速度比TLP521也就高不了多少了。
?
9600沒有問題
9600是沒有問題的,我用的是PC817,9600bps 5V,1kom傳輸比較穩定。另外兩邊加開關管2N4401/3加速(整形)的話38.4kbps傳輸也很穩定。
脈沖的上升下降沿可以通過施密特電路整形,但上升下降沿再好,光耦關斷的延遲時間不解決,照樣傳輸錯誤。
“如果,高速光藕取消掉接收管內部放大整形電路,那么它的速度比TLP521也就高不了多少了。”
這句說得就更是沒邊沒沿了,設計高速光耦的工程師聽見要上吊。
?但是,如果把光藕定位為模擬器件情況就完全不同了,所以我表達的是:光藕工作在線性區,經過線性放大、數字整形混合設計的帶線性電壓增益的電路,(線性放大特性+施密特特性的雙管電路)。不是完全意義上的施密特電路,設計時適當的調整好工作點(包括發射電流),對元件要求不是很嚴格的,批量時也不存在一致性問題。再加一個管,驅動能力可以做得很強,可以用來直驅大功率的IGBT、VDMOS等。
此類電路是高速光藕貴的年代設計的,一直都用得很好,建議去做一下試驗。
關于高速光藕的問題,我是拿相近檔次的的諸如6N135和TLP521來比較,你也可以試一試,如果不用6N135里的三極管加速,6N135的表現比TLP521真的好不了多少,當然差距也是很明顯的。說這句的目的是想告訴大家,如何正確理解光藕的設計方法。
?