Electromagnet JP: 두 판 사이의 차이
(새 문서: {{#seo:|title=アドウィキ:電子磁石ガイド|title_mode=append|keywords=Arduino, 情報科学, メーカーレーニング, 実施評価, 電子磁石, Arduinoプロジェクト, キャップストーンプロジェクト, Arduino例コード|description=このガイドでは、Arduinoを使用して電子磁石を制御する方法(基本情報、回路、例コード)を紹介します。情報科学とメーカーレッスンに役立ちます。}}파일:전자...) |
잔글 (→活用例) |
||
| 18번째 줄: | 18번째 줄: | ||
== '''活用例''' == | == '''活用例''' == | ||
この例では、[[ | この例では、[[Relay Module JP|リレーモジュール]]を使用して、電子磁石の磁力を3秒ごとにオン・オフするように制御します。 | ||
=== 回路構成 === | === 回路構成 === | ||
| 40번째 줄: | 40번째 줄: | ||
* '''直接接続''' : 直接接続する場合、Arduinoの使用電圧よりもはるかに大きな高電圧装置を直接制御する必要があるため、Arduinoのピンから発生する電流が装置の要求する電流を満たさなければなりません。 | * '''直接接続''' : 直接接続する場合、Arduinoの使用電圧よりもはるかに大きな高電圧装置を直接制御する必要があるため、Arduinoのピンから発生する電流が装置の要求する電流を満たさなければなりません。 | ||
リレーの詳細については[[アドウィノ リレー モジュール]]の文書を参照してください。 | リレーの詳細については[[Relay Module JP|アドウィノ リレー モジュール]]の文書を参照してください。 | ||
=== 例コード === | === 例コード === | ||
2025년 3월 27일 (목) 21:07 기준 최신판

概要
電子磁石(Electromagnet)は、電流が流れるときにのみ磁力を発生させる磁石です。電子磁石は、サイズと強さに応じてさまざまな用途に活用でき、Arduinoなどのマイクロコントローラーを使用することで簡単に制御できます。
動作原理
電子磁石の動作原理は、電気と磁気の相互作用に基づいています。電線に電流が流れると、電磁誘導現象により周囲に磁場が形成されます。この磁場は電線の形状と向きによって異なり、電線が鉄心を巻くと、鉄心内部に強い磁場が形成されます。この原理を利用して、電子磁石は電流の強さと方向によって磁力を調整することができます。
仕様
| 電圧 | 5V、12V、24Vなど |
| 磁力 | 磁力はさまざまで、本書では12V 15kgモデルを使用しています。 |
活用例
この例では、リレーモジュールを使用して、電子磁石の磁力を3秒ごとにオン・オフするように制御します。
回路構成
電子磁石のピンは特に決まっていませんので、GNDやリレーに任意で接続できます。
回路図では2個のバッテリーを示していますが、実際にはAAバッテリー4個を使用しました。

リレーを使用する理由
電子磁石はArduinoに直接接続せず、リレーを介して接続しています。その理由は以下の通りです。
1. 電気的分離
- リレー使用 : リレーは電気的分離を提供します。つまり、Arduinoのような低電圧回路が高電圧装置(例:電子磁石、モーターなど)を制御できるようにします。リレーのコイル部分に電流が流れるとスイッチが作動し、高電圧回路が接続されます。
- 直接接続 : 直接接続の場合、Arduinoのピンから高電圧装置に直接接続することになり、回路設計に問題がある場合、Arduinoボードが損傷するリスクがあります。低電圧回路と高電圧回路が同じ経路で接続されるためです。これにより回路の安全性と安定性が確保されます。
2. 制御方法
- リレー使用 : リレーを使用すると、Arduinoは低電圧信号でリレーを作動させることで、高電流や高電圧を制御できます。これにより、電子磁石や高出力装置を安全に制御できます。
- 直接接続 : 直接接続する場合、Arduinoの使用電圧よりもはるかに大きな高電圧装置を直接制御する必要があるため、Arduinoのピンから発生する電流が装置の要求する電流を満たさなければなりません。
リレーの詳細についてはアドウィノ リレー モジュールの文書を参照してください。
例コード
const int relay = 4;
void setup() {
pinMode(relay, OUTPUT);
}
void loop() {
digitalWrite(relay, LOW);
delay(3000);
digitalWrite(relay, HIGH);
delay(3000);
}
実行結果