WindowsのコマンドラインからUSB経由でAC電球を制御する
このチュートリアルでは、Windowsのコマンドラインを使ってUSSリレーモジュール経由でAC電球を制御する方法を学びます。このプロジェクトでは、コンピューターからUSB接続を介してライトのオン/オフコマンドを送信できるようになります。コンピューターに接続されたリレーモジュールと通信するために、PowerShellスクリプトを使用してこの機能を実装します。

始めるには、ハードウェアのコンポーネントを設定し、必要なスクリプトを作成する必要があります。結果として、コンピュータを通じてAC電球をリモートで制御するための簡単な方法が得られます。コードや配線についてさらに詳しく知りたい場合は、ビデオ(02:15)を参照してください。
ハードウェア解説
このプロジェクトはリレーモジュールとコンピュータへのUSB接続を含みます。リレーモジュールはスイッチとして機能し、交流電球のような高電圧機器を制御できます。コンピュータからの信号を受け取り、回路を開閉して照明をオン・オフします。
リレーモジュールには通常、制御ピンがあり、マイコンやコンピュータのデジタル出力ピンに接続されます。制御ピンがハイ信号を受けるとリレーが作動し、電球に電流が流れるようになります。これにより、直接電気的接触を伴わずに交流機器を安全に制御できます。

データシートの詳細
| 製造業者 | ソングル |
|---|---|
| 部品番号 | SRD-05VDC-SL-C |
| コイル電圧 | 直流5V |
| 連絡先の評価 | 10 A / 250 VAC |
| スイッチング電圧 | 交流 250 V / 直流 30 V |
| スイッチング電流 | 最大10 A |
| 動作温度 | -10〜60°C |
| パッケージ | プリント基板取り付け |
- 大電流を扱う際は適切な放熱を確保してください。
- 過負荷に対する追加の安全対策として、ヒューズを使用してください。
- リレーの仕様を確認し、AC電球の定格電力に合うものを選んでください。
- 損傷を防ぐため、通電する前にリレーの配線を確認してください。
- 交流電圧を扱う際は、常に注意してください。
配線手順
リレーモジュールを配線するには、まずリレーのVCCピンをArduinoまたはマイクロコントローラの5Vピンに接続します。リレーのGNDピンをArduinoのグランド(GND)ピンに接続します。
次に、リレーのINピンをArduinoのデジタルピン、例えばピン7に接続します。このピンはリレーを制御するために使用されます。最後に、AC電球をリレーの常開(NO)端子と共通(COM)端子に接続し、AC電源がリレーに正しく接続されていることを確認してください。安全のため、必ず接続を再確認してください。
ONまたはOFFにするコード
詳細と実演については、動画をご覧ください。
ONにするには送信してくださいA0 01 01 A2
OFFにするには、送信してくださいA0 01 00 A1
コード例と解説
以下のPowerShellスクリプトは、リレーを使用してライトを消す方法を示します。変数$powerOffライトを消すためにリレーに送られるコマンドが含まれている。

[Byte[]] $powerOff = 0xA0, 0x01, 0x00, 0xA1
$robojax = new-Object System.IO.Ports.SerialPort COM8,9600,None,8,one
$robojax.Open()
$robojax.Write($powerOff, 0, $powerOff.Count)
$robojax.Close()ここで、スクリプトは新しいシリアルポート接続を初期化しますCOM8ボーレート9600で接続します。次にライトを消すコマンドを送信して接続を閉じます。
同様に、ライトを点灯するには、次のスクリプトを使用できます。変数$powerOnリレーを作動させるコマンドが含まれている。
[Byte[]] $powerOn = 0xA0, 0x01, 0x01, 0xA2
$robojax.Open()
$robojax.Write($powerOn, 0, $powerOn.Count)
$robojax.Close()このスクリプトは前のものと同じように動作しますが、ライトを点灯させるために異なるコマンドを送信します。コマンドのシーケンスにより、コンピュータを介してAC電球を効果的に制御できます。
デモンストレーション/当日のご案内
スクリプトを実行すると、AC電球がそれに応じて点灯または消灯するはずです。リレーが正しく配線されており、スクリプト内でCOMポートが正しく指定されていることを確認してください。問題がある場合は、電源やリレーおよび電球への接続を確認してください。
よくある落とし穴としては、COMポートの設定ミスや配線不良が挙げられます。危険を避けるため、リレーが使用する電球の電圧および電流に対応する定格を有していることを必ず確認してください。
[Byte[]] $powerOn = 0xA0, 0x01, 0x01, 0xA2
[Byte[]] $powerOff = 0xA0, 0x01, 0x00, 0xA1
$robojax = new-Object System.IO.Ports.SerialPort COM8,9600,None,8,one
$robojax.Open()
$robojax.Write($powerOff, 0, $powerOff.Count)
$robojax.Close()
[Byte[]] $powerOn = 0xA0, 0x01, 0x01, 0xA2
[Byte[]] $powerOff = 0xA0, 0x01, 0x00, 0xA1
$robojax = new-Object System.IO.Ports.SerialPort COM8,9600,None,8,one
$robojax.Open()
$robojax.Write($powerOn, 0, $powerOn.Count)
$robojax.Close()
必要かもしれないもの
-
アマゾンAmazonからUSBリレーモジュールを購入する。amzn.to
リソースと参考文献
-
外部CH340 USBチップのデータシート (PDF)cdn.sparkfun.com
ファイル📁
その他のファイル
-
USBリレーPowerShellファイル
robojax_USB_relay.zip
ウィンドウズドライバー
-
Sscom V3.2E USBコマンドツール
robojax_USB_relay_sscom32E.robojax.com.zip0.34 MB
他のファイル
-
Arduino Pro Micro: BlinkプログラムのためにピンにLEDを接続する
https://robojax.com/products/files/arduino_robojax_ch341ser.zip