異なるGNDレベル間でI2C その6

異なるGNDレベル間でI2C その5では、pcm1723さんに教えていただいた汎用フォトカプラを高速化する方法を利用した絶縁双方向インターフェースの設計とシミュレーションをしました。

今回は、この回路をブレッドボード上に試作し、動作の確認をしました。その結果10kHzの矩形波に対して、実用に足ると考えられるという結論に至りました。
001_20081229225043.jpg 002_20081229225105.png 003_20081229225116.png

カレントミラー版の実装


これまで、異なるGNDレベル間でI2C その1その2その3その4とフォトカプラを用いた絶縁双方向インターフェースについての設計・試作を行ってきました。そして、その4の高速フォトカプラを用いた回路で、I2C高速モードに相当する400kHzの矩形波に対して十分に高速な応答を得られたため、一応の完成形を見たということにしました。

一方で、このときに使った高速フォトカプラTLP552は、電源電圧に5Vを要求することや汎用フォトカプラに比べて高価であることなどの問題点も持っています。
そこで、10kHz程度の周波数で動作する汎用フォトカプラを利用した絶縁双方向インターフェースの設計を行うことにしました。この回路にはpcm1723さんに教えていただいた汎用フォトカプラを高速化する方法を用いました。そのシミュレーション結果が、異なるGNDレベル間でI2C その5です。
このエントリでは、ブレッドボード上に試作した回路の特性を測定します。

実験条件


回路の外観と回路図を以下に示します。


001_20081229225043.jpg
fig.1: カレントミラー版回路の外観

002_20081229225105.png
fig.2: 回路図


波形・周波数測定にはPDS5022Sを用いました。
電源は送信側・受信側を共通にし、電源電圧は5Vとしました。電源装置は安物のスイッチング電源です。

10kHzでの結果



003_20081229225116.png

004_20081229225126.png
fig.3,4: 10us/div 1V/div


fig.3,4が10kHz時の結果です。赤のライン(CH1)が送信側で橙のライン(CH2)が受信側です。

100kHzでの結果



005_20081229225132.png

006_20081229225136.png
fig.5,6: 2.5us/div 1V/div


fig.5,6が100kHz時の結果です。赤のライン(CH1)が送信側で橙のライン(CH2)が受信側です。
大分うねうねしています。


007_20081229225141.png

008_20081229225148.png
fig.6,7: 1us/div 1V/div


時間軸方向に拡大してみました。

結論


10kHzでも多少の遅延・波形なまりが起こっていますが、その3の回路の測定波形と比べると、はるかに改善されています。

一方100kHzのほうはやはり実用には耐えそうにありません。

参考文献/使用機器



tag: インターフェース I2C 絶縁 フォトカプラ PC817C カレントミラー ISO-I2C ブレッドボード 

異なるGNDレベル間でI2C その5

異なるGNDレベル間でI2C その1その2その3その4とフォトカプラを用いた絶縁双方向インターフェースについての設計・試作を行ってきました。
そんな中、pcm1723さんが異なるGNDレベル間でI2C その3コメント欄汎用フォトカプラを高速化する方法を教えてくださいました。
この方法を用いれば、数10kHz程度までは綺麗な波形を保てそうです。

今回は、pcm1723さんに教えていただいた、出力段にカレントミラーを使う方式で高速化した汎用フォトカプラを用いた絶縁双方向インターフェースの検討をします。
002_20081220183829.png 003_20081220183836.png

○汎用フォトカプラ(PC817C等)の利点
異なるGNDレベル間でI2C その2その4では、デジタル出力型の高速フォトカプラTLP552を使って高速化することを考えました。
しかし、TLP552のような、汎用とはいえない部品は少しばかり高価で、販売している店も限られます。千石電商では220円です。
一方で、汎用フォトカプラであるPC817Cは、秋月で8個入り100円で、代替品としては、TLP621-1が秋月で5個入り100円TLP521-1が千石で1個40円と選択肢がたくさんあります。

また、TLP552は電源電圧範囲が4.5V~5.5Vと5V系でしか使えないという欠点もあります。

○汎用フォトカプラの高速化
異なるGNDレベル間でI2C その3コメント欄にて、pcm1723さんに汎用フォトカプラを高速化する方法を教えていただきました。この方法はそのまま、異なるGNDレベル間でI2C その1の回路に適用することができます。

○絶縁双方向インターフェースへの応用

001_20081220183805.png
fig.1: カレントミラー出力型絶縁双方向インターフェース回路


以前までSBDを使っていた部分は、せっかくのカレントミラーだったので出力系統を増やすことで代えてみました。この変更のおかげで、SBDのVf分の電圧がGNDから浮く問題も同時に解決されました。

○10kHzでのLTspiceシミュレーション
カレントミラー出力型のLTspiceシミュレーションの結果を以下に示します。入力クロックは10kHzとしました。


002_20081220183829.png
fig.2: 10kHzのスケマティック

003_20081220183836.png
fig.3: 10kHzのグラフ


○100kHzでのLTspiceシミュレーション
同様に100kHzでのシミュレーションの結果です。


004_20081220183842.png
fig.4: 100kHzのスケマティック

005_20081220183847.png
fig.5: 100kHzのグラフ


○付録
このエントリで使用したLTspiceのシミュレーション用ファイルを添付します。ファイル名末尾の".txt"を削除して、"_"を"."に変更すれば使えるはずです。


tag: LTspice インターフェース I2C 絶縁 フォトカプラ PC817C TLP621 カレントミラー ISO-I2C 

異なるGNDレベル間でI2C その4

絶縁双方向インターフェースの高速化として、I2C高速モードである400kHzでの通信を目標として、異なるGNDレベル間でI2C その1その2その3と続けて、設計・試作を行ってきました。
今回は、その2で設計したTLP552を用いた高速版回路の試作を行い、400kHzまでの動作を確認しました。

002_20081207205817.jpg 003_20081207205822.png 006_20081207205840.png




低速版の問題点


異なるGNDレベル間でI2C その3では、その1で設計した汎用フォトカプラを用いた低速版双方向絶縁インターフェース回路をブレッドボード上に試作し、その特性を測定しました。
その結果、シミュレーションから得られたものよりも性能で劣るため、実用は難しいだろうということが分かりました。
この低速版回路の問題点は以下の二つです。


  • 立ち上がりの遅さ

  • フォトトランジスタのドライブの力不足



信号の立ち上がりの遅さは、その1のシミュレーションから明らかでした。そして、この問題に対する解答が高速フォトカプラTLP552を用いるというものでした。詳しくは、その2を参照してください。

一方TLP552のドライブ能力は、出力電流Io=50mAと十分です。以下の絶対最大定格の表はTLP552のデータシートからの引用です。


001_20081207205808.png
fig.1: TLP552の絶対最大定格


測定


試作した回路の外観をfig.2に示します。fig.3が回路図です。


002_20081207205817.jpg
fig.2: 高速版絶縁双方向インターフェース試験回路

003_20081207205822.png
fig.3: 回路図


クロック周波数は、約100kHzと約400kHzを試しました。
電源は、両側で共通とし電源電圧は5Vです。電源装置には、安物のスイッチング電源を使いました。
測定にはPDS5022Sを用いました。

100kHz


以下に約100kHzの時の波形を示します。赤のラインが送信側の波形で、橙のラインが受信側です。
100kHzはI2C低速モードのクロックに相当します。


004_20081207205828.png
fig.4

005_20081207205834.png
fig.5


立ち上がりに多少のなまりが見られるのと、受信側の"L"レベル出力の電圧が1SS108のVf分高くなっていますが、かなり綺麗な波形です。

400kHz


次に約400kHzの時の波形を示します。同様に赤のラインが送信側、橙が受信側です。
400kHzはI2C高速モードのクロックに相当します。


006_20081207205840.png
fig.6

007_20081207205846.png
fig.7


なまりと送受信間の遅延が見られますが、実用レベルだと思います。

参考文献/使用機器



tag: I2C 絶縁 フォトカプラ TLP552 インターフェース ISO-I2C ブレッドボード 

異なるGNDレベル間でI2C その3

異なるGNDレベル間でI2C その1で考えた低速版の回路をブレッドボード上で試作し、性能を測定しました。その結果、10kHzでもシミュレータから得られた結果よりも性能が劣り、実用は難しそうだということが分かりました。
実用を考えると、異なるGNDレベル間でI2C その2の高速版のほうがよいと思います。

今回は、低速版の実測結果について書きます。

001_20081206032741.png 002_20081206032748.png

異なるGNDレベル間でI2C その1では、I2Cなどの双方向シリアル通信を、絶縁された回路間で行うためのアイソレータを汎用フォトカプラを使って実現する方法を考えました。LTspiceによるシミュレーション結果によると、送信クロックが10kHz程度までなら、波形がなまるながらも動作するという結果が得られました。
今回は汎用フォトカプラPC817Cを用いた低速版の回路に関して、ブレッドボード上で試作したものの特性を測定しました。

回路



001_20081206032741.png
fig.1: 低速版試験回路


試験回路は、異なるGNDレベル間でI2C その1でシミュレーションした回路を基本に一部パラメータを変更しました。
送信クロック源は、LMC555を用いた50%デューティー・サイクル・オシレータとしました。発振周波数は約10kHzです。

測定条件


波形・周波数測定にはPDS5022Sを用いました。
電源は送信側・受信側を共通にし、電源電圧は5Vとしました。電源装置は安物のスイッチング電源です。

結果



002_20081206032748.png
fig.2: 赤が送信側,橙が受信側の波形

003_20081206032819.png
fig.3: 11.1kHz,4.9Vpp


fig.2,3がオシロスコープで測定した波形です。赤のラインが送信側、橙のラインが受信側です。

考察・その他



001_20081115162753.png
fig.4: シミュレーションした回路

002_20081115162815.png
fig.5: シミュレーション結果の波形


異なるGNDレベル間でI2C その1でのシミュレーション結果をfig.4,5に示します。今回実測した波形は、シミュレーションよりはるかになまっています。このシミュレーション時の回路と実測した回路の抵抗R2,R3の値が異なっているのは、実測する際に波形が一番まともに見えるようにパラメータを調節した結果です。

R2,R3の値を大きくするほど、受信波形の立ち上がりが早くなるという点で有利です。その一方で、受信側の"L"レベルの電圧が上がります。これはフォトトランジスタのドライブ能力に起因するものだと考えられます。

今回実際に製作したほうのパラメータでもシミュレーションをしました。

004_20081206032825.png
fig.6: 実測した回路

005_20081206032830.png
fig.7: シミュレーション結果


PC817Cの代わりに、手元にあったTLP521でも実測してみましたが、傾向はほぼ同じでした。
抵抗のパラメータを変更することや、フォトカプラを選別することでより高周波で動作させることができないかとも思いましたが、望みは薄そうです。やはり、TLP552を用いた高速版の方が現実的なようです。

参考文献/使用機器



tag: I2C 絶縁 フォトカプラ PC817C TLP521 インターフェース  ISO-I2C ブレッドボード 

異なるGNDレベル間でI2C その2

異なるGNDレベル間でI2C その1にて、絶縁された2つの回路でI2C通信をするための回路を紹介しました。
しかしながら、シミュレーション結果によると、I2Cの標準モードである100kbit/sでも波形のなまりがはっきり見える比較的低速なものでした。送信クロックは10kHzなので、標準モードの10分の1以下の速度と非常に低速な条件でも波形がなまるというものでした。そこで今回は、この回路の高速化を考えます。と、言っても汎用フォトカプラを高速フォトカプラに変更するだけですが。


○低速版の問題点
もう一度、前回紹介した回路のシミュレーションを見てみます。


002_20081106233829.png

003_20081106233835.png



受光側の立ち上がり特性と立ち下がり特性を比較すると、立ち上がり特性のほうが悪いことが分かります。
これは、どうやら汎用フォトカプラの特性のようです。
以下に、TLP621のデータシートからの引用を示します。


001_20081107004354.png


○対策
そこで、ボトルネックとなっている立ち上がり時間(とついでにたち下がり時間も)が短い高速フォトカプラに変更すれば、高速化ができるのではないかと考えます。
以下に、高速フォトカプラの例としてTLP552のデータシートの引用を示します。


002_20081107004418.png


○TLP552使用高速版I2C絶縁回路

003_20081107004443.png


好都合なことに、オープンコレクタ出力なので直結できます。

○高速版の問題点
問題点の1つとして、シミュレーションモデルが無いので本当に高速化しているのかシミュレーションできてい無いと言うことがあげられます。もちろん実機を作って確認するのが一番なのですが・・・もちろんやってません。

また、この回路には決定的な問題点があります。すなわち、「わざわざ高速フォトカプラを調達するなら、素直にI2C絶縁専用ICを買ったほうがいい」と言うことです。

○付録
このエントリで使用した、BSch3V用TLP552の部品を添付します。枠の中のテキストをコピーしてBSch3V上で貼り付けすれば使えるはずです。

+BSCH3_DATA_V.1.0
+COMPONENT
+BSCH3_LIB_V.1.0
+PTN,N:TLP552,X:81,Y:81
+L,W:1,S:0,X:53,Y:60,X:45,Y:60,-L
+L,W:1,S:0,X:45,Y:60,X:45,Y:40,-L
+L,W:1,S:0,X:45,Y:40,X:53,Y:40,-L
+C,W:1,S:0,F:-1,X:68,Y:47,X:62,Y:53,-C
+L,W:1,S:0,X:68,Y:50,X:70,Y:50,-L
+AR,W:1,S:0,X:52,Y:50,R:10,B:4320,E:1516,-AR
+L,W:1,S:0,X:45,Y:50,X:40,Y:50,-L
+L,W:1,S:0,X:40,Y:30,X:40,Y:50,-L
+L,W:1,S:0,X:80,Y:30,X:40,Y:30,-L
+L,W:1,S:0,X:80,Y:50,X:70,Y:50,-L
+L,W:1,S:0,X:0,Y:30,X:20,Y:30,-L
+L,W:1,S:0,X:20,Y:30,X:20,Y:34,-L
+L,W:1,S:0,X:20,Y:44,X:20,Y:50,-L
+L,W:1,S:0,X:20,Y:50,X:0,Y:50,-L
+L,W:1,S:0,X:20,Y:47,X:20,Y:45,-L
+L,W:1,S:0,X:20,Y:37,X:20,Y:34,-L
+L,W:1,S:0,X:30,Y:42,X:34,Y:46,-L
+L,W:1,S:0,X:34,Y:46,X:31,Y:48,-L
+L,W:1,S:0,X:31,Y:48,X:34,Y:51,-L
+PG,W:1,S:0,F:1,N:3,X:35,Y:52,X:34,Y:49,X:32,Y:51,-PG
+L,W:1,S:0,X:20,Y:36,X:20,Y:37,-L
+PG,W:1,S:0,F:1,N:3,X:20,Y:43,X:14,Y:37,X:26,Y:37,-PG
+PG,W:1,S:0,F:1,N:4,X:14,Y:43,X:14,Y:44,X:26,Y:44,X:26,Y:43,-PG
+PG,W:1,S:0,F:-1,N:4,X:0,Y:0,X:80,Y:0,X:80,Y:80,X:0,Y:80,-PG
-PTN
+COMP,N:TLP552
X:8,Y:8,B:1
R:U
P:TLP552
+PIN,N:,L:R5,T:,M:6,-PIN
+PIN,N:,L:R3,T:,M:7,-PIN
+PIN,N:,L:L5,T:,M:3,-PIN
+PIN,N:,L:L3,T:,M:2,-PIN
+PIN,N:N.C,L:L1,T:,M:1,-PIN
+PIN,N:N.C,L:L7,T:,M:4,-PIN
+PIN,N:GND,L:R7,T:,M:5,-PIN
+PIN,N:VCC,L:R1,T:,M:8,-PIN
NOTE:,-COMP
-BSCH3_LIB_V.1.0
L:0,X:90,Y:80,LIB:TLP552,DIR:0,BLK:0,N:TLP552,ND:1,NX:2,NY:20,R:U,RD:1,RX:2,RY:10,NOTE:,-COMPONENT
-BSCH3_DATA_V.1.0

tag: I2C 絶縁 フォトカプラ TLP552 インターフェース ISO-I2C 

FC2カウンター
カテゴリ
ユーザータグ

LTspiceAkaiKKRmachikaneyamaScilabKKRPSoCCPAOPアンプPIC強磁性常微分方程式モンテカルロ解析トランジスタode状態密度DOSインターフェースecaljスイッチング回路定電流PDS5022半導体シェルスクリプト乱数レベルシフトHP6632A温度解析可変抵抗I2Cブレッドボード分散関係トランジスタ技術R6452A数値積分反強磁性バンドギャップ確率論セミナー絶縁偏微分方程式非線形方程式ソルババンド構造熱設計カオスA/DコンバータISO-I2Cフォトカプラ三端子レギュレータシュミットトリガLEDGW近似LM358アナログスイッチ数値微分TL43174HC4053マフィンティン半径発振回路サーボ直流動作点解析カレントミラーPC817CUSB単振り子bzqlty開発環境BSch2ちゃんねる電子負荷イジング模型LDAチョッパアンプ量子力学補間アセンブラFFTブラべ格子標準ロジックパラメトリック解析基本並進ベクトルewidthキュリー温度QSGWGGA失敗談MaximaSMPTLP621スイッチト・キャパシタ熱伝導コバルト相対論スピン軌道相互作用六方最密充填構造繰り返しFETランダムウォークcygwingfortran不規則合金状態方程式ラプラス方程式抵抗スレーターポーリング曲線位相図格子比熱マントルデータロガー自動計測ダイヤモンドガイガー管QNAPUPS固有値問題条件分岐井戸型ポテンシャルシュレディンガー方程式詰め回路MCU第一原理計算起電力熱力学スーパーセルVCALM555仮想結晶近似awkTLP521NE555ubuntufsolveブラウン運動OpenMPVESTA最大値テスタ差し込みグラフFXA-7020ZRWriter509三角波TLP552平均場近似最適化最小値過渡解析LMC662トランスPIC16F785CapSenseMBEナイキスト線図CK1026フィルタP-10負帰還安定性EAGLEAACircuit2SC1815OPA2277PGAノコギリ波縮退非線型方程式ソルバL10構造fcc面心立方構造結晶磁気異方性TeX全エネルギー固定スピンモーメントFSMウィグナーザイツ胞interp1ヒストグラム確率論マテリアルデザインspecx.fジバニャン方程式等高線初期値フェルミ面正規分布c/agnuplotBaO岩塩構造ルチル構造ウルツ鉱構造ZnO重積分SIC二相共存スワップ領域リジッドバンド模型半金属合金multiplotハーフメタルデバイ模型edeltquantumESPRESSOフォノンifortUbuntuマンデルブロ集合キーボードRealforce関数フィッティングフラクタルクーロン散乱CIF化学反応三次元最小二乗法日本語直流解析PCトラックボールExcelTS-110パラメータ・モデル等価回路モデルTS-112疎行列文字列HiLAPW両対数グラフ片対数グラフ熱拡散方程式陰解法境界条件連立一次方程式Crank-Nicolson法グラフの分割軸ラベルヒストグラム不規則局所モーメント入出力円周率Gimp凡例線種シンボルMAS830L

最新コメント
リンク

にほんブログ村 その他趣味ブログ 電子工作へ