エレクトロニクス、electronics.SE.comは非常に新しいので、これが私の最初のプロジェクトなので、質問で重要な情報を見逃した場合はご容赦ください(そのような場合は、コメントを残してください。ビット)。
106個の異なるチャネルで約500個のLEDを制御するデバイスを構築しました。実質的な設計は次のとおりです。
- 1つのスイッチ24V 3A電源
- 5Vを出力する1つの電圧レギュレータ
- AVR ATmega168を実行する1つの制御ボード(電圧レギュレーターに接続)
- 106個のLEDストリング(24V電源レールに接続)
- 7 TLC5940(各16チャネル)は、LEDストリングのドライバーをシンクします(これらはLEDから24Vの残りをシンクしますが、そのロジックは5Vレギュレーターから給電されます)。
すべてはうまくいきますが、デバイスの予期しないリセットを引き起こすことがあるノイズの重大な問題が発生しています。
DSOを持っている友人のおかげで、私は問題を調査することができました、そして、これらは私の発見です...
ノイズは5Vの電源レールにあり、非常に大きく、全体の振幅は2.55Vです。SPIチャネルはすべて比較的影響を受けません。
ノイズは、データを送信するSPIではなく、LEDによって生成されるようです(SPIチャネルとノイズの間に明らかな相関関係はありません)。このビデオ(申し訳ありませんが、ここに埋め込む方法が見つかりませんでした)点灯しているLEDの数がノイズの振幅に影響し、その強度(PWMで制御)がノイズの長さに影響することがわかります。バースト」[youtubeの動画の説明の詳細]。
ノイズの周波数は〜8MHzです。これは、コントローラーボードが16MHzで、SPIが250KHzで動作する場合、使用しない周波数です(少なくとも明示的には)。
実験を行っていると、プローブの接地端子だけが接続されていても、DSOがノイズを拾っていることに気付きました。これは、ノイズが5V給電の不安定性によるものではなく、グランドレベルの振動電位によるものであるという兆候として解釈します。私は正しいですか?
エレクトロニクスがまったく新しく、この分野の正式な知識が不足しているため、「インターネットから」多くのソリューションを試しましたが、私のシナリオでは完全に理にかなっていました。とりわけ私が試した:
- 1Kohmの抵抗と100nFのコンデンサを使用してローパスフィルターを構築し、5Vの電源レールに配置しましたが、ノイズの振幅はあまり変化しませんでした。
- いくつかのタンタルコンデンサを含むさまざまなコンデンサで5Vレールをデカップリングする[さまざまな定格](目に見える影響はありません)
- 接地線を切り離します(DSOをバナナにします)
- LED、TLCボード、DSOを可能な限り「後方」を含む私の回路の異なる部分に接地します(つまり、24V PSUの接地ポートに個別のワイヤで接続して接地ループを回避します)...また、この場合、私は運がありませんでした。
私は間違った方法で上記のことをしたかもしれません(つまり、解決策は上記の1つですが、私はそれを間違って実装したので)それは、「正しく」実装する方法についてのいくつかの方向性を与えてくれるかもしれません。
最後の注意:プロジェクトの物理的なサイズのため、リグから慎重に取り外したTLCボードの1つだけを使用してすべてのテストを実行し、5V電源を使用した個別のテストLEDを使用しました。ただし、完全なリグでのテストの精度が低いと、「本物」の動作がテストの読み取り値と一致することが示されます。
あなたの時間とサポートに感謝します!