デバイスの仕様は次のとおりです(リンクしたSainsmart.com Webサイトによる)。
入力制御信号電圧:
0V - 0.5V Low stage (SSR is OFF),
0.5V – 2.5V (unknown state).
2.5V - 20V High state (SSR is ON).
Raspberry Piは、GPIOピンで3V3信号を使用します。仕様に従ってリレーで高状態をトリガーするのに十分高い電圧レベル。Arduino(同じボードが使用されている)は、GPIOピンで5V信号を使用し、このボードでも同様に正常に動作します。ボード上の他の回路は、5Vの電源で駆動する必要があります。そのため、ボードをGPIOヘッダーの5V電源ピンに正しく配線します。
ただし、引用する仕様は完全に正しいわけではありません。GPIOヘッダーは、電源ピン(1x 3V3および2x5V)、複数のグランドピン、およびGPIOピンで構成されています。GPIOピン(言及したGPIO17など)は、供給できる電流が大幅に制限されています(rPiモデルに応じて少なくとも0.5Aを供給できる5Vピンとは異なります)。各ピンは最大16mA(言及したように50mAではありません)を出力でき、すべてのピンの合計最大合計電流は50mAです。これはいくつかのLEDを駆動するには十分ですが、それ以上ではありません。ピンは通常、他のデバイスに信号を送信するために使用され、リレーは完璧な例です。
先ほど述べたように、あなたが描いた回路は問題なく動作します(リレー端子に別の電源を供給した場合、Sainsmartのページには、サポートするリレーの電圧と電流についての説明があります:
SSR出力(各チャネル):
Load voltage range: 75 to 264V AC (50/60Hz).
Load current: 0.1 to 2 AMP.
)。GPIOピンを介してrPiを短絡させるのを避けるために、GPIO17とリレーの間のラインに少なくとも抵抗を配置するのが一般的な方法です(1 kOhmで十分です)。また、非常に安全にしたい場合は、ダイオードに配線することで、誤って誤配線が出力GPIO17に電流を送るのを防ぐことができます(ダイオードの極性が正しいことを確認してください!)。
最後に、これは初めてなので、GPIOピン、特に5Vピンをタップする方法に非常に注意してください。適切なメスジャンパーワイヤを使用すれば問題はありませんが、GPIO側のむき出しのワイヤを使用することにした場合、5Vピンを誤ってGPIOピンに接続してしまい、災害につながる可能性があります-「揚げパイ」)。次に、GPIOピンを(使用している言語/ライブラリにかかわらず)「出力」に設定し、ビルトインプルダウンレジスタを有効にします(信号が「フロート」したときに、0Vにプルダウンされていないことを確認します) tリレーを誤ってトリガーする)。
幸運を!
PS:Sainsmartページのビデオはあまり役に立たず、観察する唯一の有用なことは、デモではrPiの5V GPIOピンを使用する代わりに、別個の5V電源からリレーに電力が供給されることです。仕様によると、ボードは160mAのみを使用しますが、これはrPiが供給できる量を大きく下回っています。だからあなたはどちらにしてもいい。SainsmartページにもリンクされたRaspberry Piの「ドキュメント」がありますが、そのページ(https://github.com/fixedd/RPi_Relay_Interface#readme)には、Sainsmartモジュールにはその指示が不要であるという引用文があります(引用):
注意/警告
これは以前SainSmartリレーモジュール用であると述べられていましたが、これらのボードには既にこのロジックが組み込まれていることが後で指摘されました。