ワイヤレス磁気データ転送
コンポーネントと消耗品
> ![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
| × | 1 | ||||
| × | 1 | ||||
![]() |
| × | 1 |
アプリとオンラインサービス
> ![]() |
| |||
|
このプロジェクトについて
ワイヤレスでデータを送信したい場合は、選択肢がたくさんあります。 WiFiからBLE、LoRaラジオまで、あらゆる機会に1つあります。ただし、電波を使わないソリューションが必要な場合は、これがプロジェクトです!
ステップ1:Arduinoを配線する
この回路図に従ってArduinoを配線します。
<図>
リレーまたはリレーモジュールの入力ピンは、Arduinoのピン12に接続されます。
電磁石と電磁石電源は、リレーまたはリレーモジュールの通常開接点に接続します。
<図>
ステップ2:Arduinoをプログラムする
ArduinoIDEを開きます。お持ちでない場合は、こちらからダウンロードしてください。このコードをコピーしてIDEに貼り付けるか、ここからコードファイルをダウンロードします。 Arduinoをコンピューターに接続し、正しいボード/ポートが選択されていることを確認します。
ツール>ボード> Arduino / Genuino Uno
ツール>ポート
コードをコンパイルしてアップロードします。
intincomingByte =0; //着信シリアルデータの場合intdata =0; void setup(){Serial.begin(9600); //シリアルポートを開き、データレートを9600 bpsに設定しますpinMode(12、OUTPUT); Serial.println( "開始中..."); Serial.println( "2桁の数字の文字列を送信");} // main sectionvoid loop(){//データを受信した場合にのみデータを送信:if(Serial.available()> 0){//着信バイトを読み取る:incomingByte =Serial.read();データ=1; if(incomingByte ==48){// 0を受け取った場合digitalWrite(12、LOW); //マグネットをオフにしますSerial.print( "0"); delay(100); } else if(incomingByte ==49){// 1を受信した場合digitalWrite(12、HIGH); //マグネットをオンにしますSerial.print( "1"); delay(100); } else {Serial.print( "?"); } //クリーンアップ} else {if(data ==1){digitalWrite(12、LOW); Serial.println( "");データ=0; }}}
コードが正常にコンパイルおよびアップロードされたら、シリアルモニターを開きます。ここで、1と0の文字列を送信すると、リレーのカチッという音が聞こえるはずです。
ステップ3:GUIをインストールする
ここに2GO3D磁気センサーのGUIをインストールします。一番下までスクロールして、「無料ダウンロード」と表示されている場所を見つけます。次に、GUIzipファイルをダウンロードします。指示に従ってインストールを完了します。 GUIの他に、USBドライバーもインストールします。
このソフトウェアはWindowsでのみ動作するため、私のようにMacを使用している場合は、Windowsコンピューターを入手するか、Windows仮想マシンを実行してください。
ステップ4:セットアップをテストします!
2GOセンサーをコンピューターに接続します。 GUIを開きます。リンクして、「高速モード」を選択します。すぐにセンサーデータの表示を開始する必要があります。
<図>
<図>

Arduino側で、シリアルモニターを開きます。電磁石に電力を供給してから、シリアルモニターに1と0を送信します。リレーがクリックを開始し、センサーGUIに小さなパルスが表示されるはずです。
これで作業中のプロジェクトができましたが、何かを実行させましょう!
ステップ5:IDEを構成する
Arduino IDEで2GOをプログラムするには、最初にボードとして追加する必要があります。 IDEで、 [ファイル]> [設定]> [追加のボードマネージャーのURL] に移動します このリンクに貼り付けます:
https://github.com/Infineon/Assets/releases/download/current/package_infineon_index.json
次に、ツール>ボード>ボードマネージャーに移動します 「XMC」を検索します。それをクリックしてから、[インストール]をクリックします。
<図>
また、センサーにアクセスするにはライブラリを追加する必要があります。インフィニオンのGithubページに移動し、.zipファイルをダウンロードします。次に、スケッチ>ライブラリを含める> Add.ZIPライブラリ... に移動します。
以前にダウンロードした.zipファイルを選択し、[選択]をクリックします。
ここで、スケッチ>ライブラリを含めるに移動すると 下にスクロールすると、 TLE493D_W2B6 が表示されます。 ライブラリ。
ステップ6:2GOをプログラムする
コードをコピーしてIDEに貼り付けるか、3D_Sensorスケッチをここからダウンロードします。
近くに磁石があるかどうかに応じて、「sens」定数で感度を調整できます。感度を上げるには、「sens」定数を減らします。
// set stuff up#include Tle493d_w2b6 mag3DSensor =Tle493d_w2b6(); //感度を調整constint sens =1; void setup(){//その他の設定mag3DSensor.begin(); mag3DSensor.enableTemp(); pinMode(LED_BUILTIN、OUTPUT);} void loop(){//センサー情報を取得mag3DSensor.updateData(); //磁石があるかどうかを確認if(abs(mag3DSensor.getX())> sens || abs(mag3DSensor.getY())> sens || abs(mag3DSensor.getZ())> sens){//オンにするライトdigitalWrite(LED_BUILTIN、HIGH); } else {//ライトをオフにするdigitalWrite(LED_BUILTIN、LOW); } //スパムしないでください、kids delay(50);}
ステップ7:全体をテストする!
電磁石をセンサーの近くに置きます。 2GOを電源に接続し、Arduinoをコンピューターに接続します。シリアルモニターを開き、1と0を送信します。 2GOのLEDは、送信した内容に応じて点灯および点滅するはずです。点灯しない場合は、電磁石をセンサーに近づけてみてください。それでも問題が解決しない場合は、感度を調整してみてください。点灯しても消灯しない場合は、感度を調整してください。また、プラグを抜いてから再度差し込んでみてください。
おめでとうございます!これですべて完了です!
さらに進む
このプロジェクトはかなり単純で、他の機能を使用して構築できます。完全にヘッドレスのセットアップのためにArduinoにボタンを追加します。スピーカーなど、他のものを接続してみてください。マグネットで音楽をストリーミングするのはかっこいいと思いませんか?可能性は無限大です!
コード
コード
https://github.com/tctree333/Arduino-3D-Sensor 回路図

製造プロセス