工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

ArduinoでAndroid / iOS / Win10デバイスのセーフゾーンを作成する

コンポーネントと消耗品

HC-05Bluetoothシリアルワイヤレスモジュール
× 1
Arduino Nano R3
× 1
R301T半導体指紋モジュール
× 1
5mmRGBトリコロール4ピンLED
× 1

アプリとオンラインサービス

>
Arduino IDE

このプロジェクトについて

この記事では、デバイスのロックを解除するためのセーフゾーンを作成できるクールなガジェットを作成します。このプロジェクトの終わりにあなたは:

  • 指紋センサーの使用方法を学習します。
  • デバイスをセーフゾーンガジェットとペアリングする方法を学習します。
  • セーフゾーンと呼ばれるクールなガジェットを作成します。

<図>

デバイスのロックとロック解除

最近では、スマートデバイスの使用が改善され、チャットコンテンツ、連絡先、画像、メモなど、さまざまなデータがデバイスに保存されています。しかし、それらのいくつかは私たちにとってプライベートである必要があり、それは非常に重要であり、おそらくそれが私たちのデバイスをロックする主な理由です。すべてのスマートデバイスには、ロックモードまたはロック解除モードでの設定方法が異なりますが、デバイスを使用するためにセキュリティセクションを通過する必要がある場合、制限があり、気分が悪くなることがあります。たとえば、個室で作業していて、近くに体がない場合、セキュリティセクションは必要ありません。デバイスの電源を切る計画を立てるのは、少し複雑です。

そこで、すべてのスマートデバイスと接続できる小さなガジェットを作るというアイデアがあり、セキュリティなしで簡単に作業したい場合は、指IDでアクティブにするだけです。ガジェットがアクティブになると、Bluetoothでデバイスとペアリングされ、ガジェットがデバイスの近くに来るまでデバイスのロックが解除されます。

R301T指紋モジュール

<図>

このプロジェクトでは、Arduinoなどのコントローラーとシリアル通信を行うR301Tセンサーモジュールを使用してデータを交換します。最初に、ユーザーとしてR301Tの指紋を設定し、ArduinoTxおよびRxピンに接続します。 HC-05と呼ばれるBluetoothモジュールを使用し、デバイスと1回ペアリングしました。次に、Arduinoのコードを記述し、ユーザーがガジェットをアクティブにしてBluetoothをオンにしたときにそれを言います。やってみましょう!

回路

<図>

コード

指紋センサーのライブラリを追加してから、コードをアップロードする必要があります。 Arduinoボードを初めて使用する場合でも、心配する必要はありません。次の手順に従ってください。

  • www.arduino.cc/en/Main/Softwareにアクセスし、OSと互換性のあるArduinoソフトウェアをダウンロードします。指示に従ってIDEソフトウェアをインストールします。
  • Arduino IDEを実行してテキストエディタをクリアし、テキストエディタで次のコードをコピーします。
  • ツールとボードでボードを選択し、Arduinoボードを選択します。
  • ArduinoをPCに接続し、ツールとポートでCOMポートを設定します。
  • アップロード(矢印記号)ボタンを押します。
  • これで準備は完了です。
  #include "Adafruit_Fingerprint.h" #include "SoftwareSerial.h" SoftwareSerial mySerial(2、3); Adafruit_Fingerprint finger =Adafruit_Fingerprint(&mySerial); int cc =0; void setup(){Serial.begin( 9600); while(!Serial); // Yun / Leo / Micro / Zero / ...の場合delay(100); Serial.println( "\ n \ nAdafruit指検出テスト"); //センサーのシリアルポートのデータレートを設定しますfinger.begin(57600); if(finger.verifyPassword()){Serial.println( "指紋センサーが見つかりました!"); } else {Serial.println( "指紋センサーが見つかりませんでした:("); while(1){pinMode(13、OUTPUT); digitalWrite(13、LOW); pinMode(9、OUTPUT); digitalWrite(9、HIGH);}} finger.getTemplateCount(); Serial.print( "Sensor contains"); Serial.print(finger.templateCount); Serial.println( "templates"); Serial.println( "有効な指を待っています..." );} void loop()//何度も実行{getFingerprintIDez(); delay(50); //これをフルスピードで実行する必要はありません。} uint8_tgetFingerprintID(){uint8_t p =finger.getImage( ); switch(p){case FINGERPRINT_OK:Serial.println( "Image Taken"); break; case FINGERPRINT_NOFINGER:Serial.println( "No fingerdetected"); return p; case FINGERPRINT_PACKETRECIEVEERR:Serial.println( "Communication error" ); return p; case FINGERPRINT_IMAGEFAIL:Serial.println( "Imaging error"); return p; default:Serial.println( "Unknown error"); return p;} // OK成功!p =fi nger.image2Tz();スイッチ(p){ケースFINGERPRINT_OK:Serial.println( "画像変換");壊す; case FINGERPRINT_IMAGEMESS:Serial.println( "Image too messy"); pを返します。ケースFINGERPRINT_PACKETRECIEVEERR:Serial.println( "通信エラー"); pを返します。ケースFINGERPRINT_FEATUREFAIL:Serial.println( "指紋機能が見つかりませんでした"); pを返します。 case FINGERPRINT_INVALIDIMAGE:Serial.println( "指紋機能が見つかりませんでした"); pを返します。デフォルト:Serial.println( "不明なエラー"); pを返します。 } // OK変換されました! p =finger.fingerFastSearch(); if(p ==FINGERPRINT_OK){Serial.println( "印刷一致が見つかりました!"); } else if(p ==FINGERPRINT_PACKETRECIEVEERR){Serial.println( "通信エラー"); pを返します。 } else if(p ==FINGERPRINT_NOTFOUND){Serial.println( "一致するものが見つかりませんでした"); pを返します。 } else {Serial.println( "不明なエラー"); pを返します。 } //一致するものが見つかりました! Serial.print( "Found ID#"); Serial.print(finger.fingerID); Serial.print( "自信を持って"); Serial.println(finger.confidence); for(int i =255; i> 1; i-){analogWrite(9、i); delay(10);} if(cc%2 ==0)digitalWrite(13、HIGH); else digitalWrite(13、LOW); cc ++; return finger.fingerID;} //失敗した場合は-1を返し、それ以外の場合はIDを返します#int getFingerprintIDez(){uint8_t p =finger.getImage(); if(p!=FINGERPRINT_OK)return -1; p =finger.image2Tz(); if(p!=FINGERPRINT_OK)return -1; p =finger.fingerFastSearch(); if(p!=FINGERPRINT_OK)return -1; //一致するものが見つかりました! Serial.print( "Found ID#"); Serial.print(finger.fingerID); Serial.print( "自信を持って"); Serial.println(finger.confidence); finger.fingerIDを返します。 }  

組み立て

<図>

まず、Bluetoothモジュールをデバイスとペアリングする必要があります。 Win10とペアリングするには、設定に移動してサインインオプションを検索し、動的ロックを有効にして、そこからBTモジュールをペアリングします。 Androidスマートフォンの場合は、[設定]> [表示]セクション> [画面のロック]に移動し、そこからSmart Lockを有効にして、BTとペアリングします。 IOSの場合は、[設定]に移動し、Touch IDとパスコードを入力して、そこから作成します。

デバイスが自動的にペアリングされない場合は、このトリックを使用できます。初めてペアリングするときは、キャラクターをデバイスに送信してください。

次は何ですか?

このプロジェクトは必要に応じて改善できます。ここにいくつかの提案があります:

  • ガジェットを特定の場所に敏感にするようにしてください。
  • 他のユーザーにも同じ制限付きアクセスを許可してください。

コード

  • 指紋ライブラリ
指紋ライブラリ C / C ++
プレビューなし(ダウンロードのみ)。

製造プロセス

  1. フライトシミュレータ用のArduinoを備えたLCDパネル
  2. Arduinoを使用してモニターをAmbilightにする
  3. 学校向けのSMART温度監視
  4. Arduino用の8ビットIOポートライブラリ
  5. iOSおよびAndroidのArduinoでLEDが点滅する
  6. Arduino用の64キープロトタイピングキーボードマトリックス
  7. Arduinoで音楽を作る方法
  8. ArduinoNano用TFTシールド-開始
  9. Arduino用の絶縁アナログ入力
  10. 超クールな屋内ナビゲーション用ロボット
  11. 送水にメリットをもたらす直接送水ポンプ