Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Создание безопасной зоны для устройств Android / iOS / Win10 с помощью Arduino

Компоненты и расходные материалы

Последовательный беспроводной модуль Bluetooth HC-05
× 1
Arduino Nano R3
× 1
R301T Semiconductor Fingerprint Module
× 1
5-миллиметровый трехцветный 4-контактный светодиодный индикатор RGB
× 1

Приложения и онлайн-сервисы

IDE Arduino

Об этом проекте

В этой статье мы хотим сделать крутой гаджет, который может создать безопасную зону для разблокировки ваших устройств. В конце этого проекта вы:

  • Научитесь пользоваться датчиком отпечатков пальцев.
  • Узнает, как связать ваши устройства с гаджетом безопасной зоны.
  • Сделаем крутой гаджет под названием безопасная зона.

Блокировка и разблокировка устройств

В наши дни мы улучшаем использование интеллектуальных устройств, и у нас есть много разных данных на устройствах, таких как содержимое чата, контакты, изображения, заметки и так далее. Но некоторые из них должны быть конфиденциальными для нас, и это очень важно, и, возможно, это основная причина, по которой наши устройства заблокированы. У всех интеллектуальных устройств есть разные методы для установки в режим блокировки или разблокировки, но иногда они имеют ограничения и вызывают у нас плохие предчувствия, когда вам нужно пройти раздел безопасности, чтобы использовать устройства. Например, когда вы работаете в своей частной комнате и рядом нет людей, вам не нужно иметь секцию безопасности, и составить план для вашего устройства, чтобы выключить его, немного сложно.

Итак, у нас есть идея сделать небольшой гаджет, который мог бы подключаться ко всем нашим интеллектуальным устройствам, и когда мы хотим работать легко без безопасности, мы просто активируем его по нашему идентификатору пальца. Когда гаджет активируется, он соединяется с нашими устройствами по Bluetooth, и они будут разблокированы, пока гаджет не окажется рядом с ними.

Модуль отпечатков пальцев R301T

В этом проекте мы используем модуль датчика R301T, который обеспечивает последовательную связь с контроллером, таким как Arduino, для обмена данными. Сначала мы устанавливаем отпечаток пальца для R301T как пользователь и подключаем его к контактам Arduino Tx и Rx. Мы использовали модуль Bluetooth под названием HC-05 и один раз подключили его к нашим устройствам. Теперь напишем код для Arduino и произнесем его, когда пользователь активирует гаджет, включив bluetooth. Давай сделаем это!

Схема

Код

Вы должны добавить библиотеку датчика отпечатков пальцев, а затем загрузить код. Если вы впервые используете плату Arduino, не волнуйтесь, просто выполните следующие действия:

  • Перейдите на сайт www.arduino.cc/en/Main/Software и загрузите программное обеспечение Arduino, совместимое с вашей ОС. Установите программное обеспечение IDE в соответствии с инструкциями.
  • Запустите IDE Arduino, очистите текстовый редактор и скопируйте следующий код в текстовый редактор.
  • Выберите плату в инструментах и ​​досках, выберите плату Arduino.
  • Подключите Arduino к компьютеру и установите 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); в то время как (! серийный); // Для Юн / Лео / Микро / Ноль / ... delay (100); Serial.println ("\ n \ n Тест определения пальца Адафрута"); // устанавливаем скорость передачи данных для последовательного порта датчика 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 («Датчик содержит»); Serial.print (finger.templateCount); Serial.println («шаблоны»); Serial.println («Ожидание действительного пальца ...» );} void loop () // запускать снова и снова {getFingerprintIDez (); delay (50); // не нужно запускать это на полной скорости.} uint8_t getFingerprintID () {uint8_t p =finger.getImage ( ); switch (p) {case FINGERPRINT_OK:Serial.println ("Изображение снято"); break; case FINGERPRINT_NOFINGER:Serial.println ("Палец не обнаружен"); return p; case FINGERPRINT_PACKETRECIEVEERR:Serial.println ("Ошибка связи" ); return p; case FINGERPRINT_IMAGEFAIL:Serial.println ("Ошибка изображения"); return p; по умолчанию:Serial.println ("Неизвестная ошибка"); return p;} // ОК, успех! p =finger.image2Tz (); переключатель (p) {case FINGERPRINT_OK:Serial.println ("Изображение преобразовано"); break; case FINGERPRINT_IMAG EMESS:Serial.println («Изображение слишком грязное»); return p; case FINGERPRINT_PACKETRECIEVEERR:Serial.println («Ошибка связи»); return p; case FINGERPRINT_FEATUREFAIL:Serial.println («Не удалось найти функции отпечатка пальца»); return p; case FINGERPRINT_INVALIDIMAGE:Serial.println («Не удалось найти функции отпечатка пальца»); return p; по умолчанию:Serial.println («Неизвестная ошибка»); return p; } // ОК преобразовано! p =finger.fingerFastSearch (); if (p ==FINGERPRINT_OK) {Serial.println ("Найдено соответствие печати!"); } else if (p ==FINGERPRINT_PACKETRECIEVEERR) {Serial.println ("Ошибка связи"); return p; } else if (p ==FINGERPRINT_NOTFOUND) {Serial.println («Соответствие не найдено»); return p; } else {Serial.println ("Неизвестная ошибка"); return p; } // найдено совпадение! Serial.print («Найден ID #»); Серийный отпечаток (finger.fingerID); Serial.print («с уверенностью»); Serial.println (finger.confidence); для (int я =255; я> 1; я -) {analogWrite (9, я); delay (10);} если (cc% 2 ==0) digitalWrite (13, HIGH); иначе digitalWrite (13, LOW); cc ++; return finger.fingerID;} // возвращает -1 в случае неудачи, в противном случае возвращает ID #int getFingerprintIDez () {uint8_t p =finger.getImage (); если (p! =FINGERPRINT_OK) вернуть -1; p =finger.image2Tz (); если (p! =FINGERPRINT_OK) вернуть -1; p =finger.fingerFastSearch (); если (p! =FINGERPRINT_OK) вернуть -1; // найдено совпадение! Serial.print («Найден ID #»); Серийный отпечаток (finger.fingerID); Serial.print («с уверенностью»); Serial.println (finger.confidence); вернуть finger.fingerID; }  

Сборка

Во-первых, вы должны выполнить сопряжение модуля Bluetooth с вашим устройством. Чтобы выполнить сопряжение с Win10, перейдите в настройки и найдите параметры входа, включите динамическую блокировку и выполните сопряжение модуля BT оттуда. Для смартфонов Android перейдите в «Настройки»> «Дисплей»> «Экран блокировки», затем включите Smart Lock и выполните сопряжение с BT. Для iOS:перейдите в «Настройки», введите Touch ID и пароль и сделайте это оттуда.

Если ваши устройства не сопрягаются автоматически, вы можете воспользоваться этим трюком. Когда вы пытаетесь выполнить сопряжение в первый раз, отправьте символ на устройство.

Что дальше?

Вы можете улучшать этот проект по своему желанию. Вот несколько предложений:

  • Попробуйте настроить гаджет на определенное местоположение.
  • Попробуйте сделать такой же ограниченный доступ для других пользователей.

Код

  • Библиотека отпечатков пальцев
Библиотека отпечатков пальцев C / C ++
 Нет предварительного просмотра (только загрузка). 

Производственный процесс

  1. ЖК-панель с Arduino для симулятора полета
  2. Создание монитора Ambilight с помощью Arduino
  3. Мониторинг температуры SMART для школ
  4. 8-битная библиотека портов ввода-вывода для Arduino
  5. Мигающие светодиоды на Arduino из iOS и Android
  6. 64-клавишная матрица клавиатуры для прототипирования для Arduino
  7. Как создавать музыку с помощью Arduino
  8. Изолированный аналоговый вход для Arduino
  9. Робот для супер-крутой навигации внутри помещений
  10. Прямые водяные насосы делают преимущества для передачи воды