Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Manufacturing Technology >> Proses manufaktur

Kunci Pintu Pintar Tanpa Kunci – Sistem Password Arduino & Android Bluetooth

Komponen dan Perlengkapan

Alat dan Mesin yang Diperlukan

Aplikasi dan Layanan Online

Tentang Proyek Ini

Pendahuluan

Kunci pintu pintar ini aman, sederhana, dan mudah untuk mengelola kunci rumah Anda. Kunci ini tidak membutuhkan kunci dan kunci dipasang di dalam pintu dan Anda dapat mengontrolnya dari luar pintu menggunakan Bluetooth. Karena kunci ada di dalam pintu tidak ada cara untuk membobol pintu oleh pencuri. Aplikasi Android diperlukan untuk membuka dan menutup kunci dan saya akan menjelaskan detail bagaimana Anda dapat mengembangkan aplikasi Android di bagian selanjutnya tutorial ini. Sebuah password dikirim ke kunci menggunakan aplikasi Android dan jika password cocok dengan password kunci yang telah diatur sebelumnya maka kunci akan terbuka dan mengirim umpan balik ke ponsel Anda seperti kunci terbuka.

Desain 3D Kunci Pintu

Semua bagian kunci dicetak 3D. Saya ingin mengucapkan terima kasih kepada pengguna Thingiverse ridercz untuk desain bagusnya. Dia merancang dan menerbitkan kunci pintu berbasis servo ini di thingiverse.com. Semua file kecuali Rack_Holder.stl diambil dari desainnya. Anda dapat mengunduh file dari sini atau dari Thingiverse.com. Beberapa file memiliki versi LT. Versi ringan membutuhkan lebih sedikit PLA dibandingkan versi normal dan memiliki kekuatan yang lebih rendah. Saya mencetak versi LT dan berfungsi baik. Saya menggunakan Anet A8 untuk mencetak semua bagian. Foto bagian yang dicetak dilampirkan.

Merakit Bagian Cetak 3D

Rakit semua bagian cetak satu per satu seperti yang ditunjukkan dalam foto. Anda juga dapat mengikuti petunjuk video yang dilampirkan di langkah pertama. Setelah merakit gunakan empat sekrup untuk mengikat semua bagian dengan erat.

Program Arduino untuk Kunci Pintu Terlindungi Password dengan Kontrol Bluetooth

Kode untuk kunci pintu pintar kontrol bluetooth sangat sederhana. Saya merancang aplikasi Android sedemikian rupa sehingga mengirimkan perintah dengan password. Sebenarnya saya menetapkan dua perintah, satu adalah "OPEN=" dan yang lain adalah "CLOSE=" dan password dapat berisi angka, huruf, simbol, atau kombinasi dari semuanya sesuai keinginan Anda. Dalam aplikasi saya menggunakan dua tombol satu untuk membuka pintu dan yang lain untuk menutup pintu. Ketika password diberikan ke kotak password dan tombol buka diklik maka aplikasi menggabungkan perintah "OPEN=" dengan password dan mengirimkannya ke Arduino. Saya menambahkan tanda '=' dengan perintah sehingga saya akan memisahkan perintah dan password dengan menggunakan tanda '=' ini. Setelah menerima string dari ponsel program Arduino memisahkan perintah dan password dari string yang diterima dan menyimpannya ke dalam dua variabel terpisah. Lalu periksa password terlebih dahulu, jika password cocok dengan password yang disimpan maka buka pintu untuk perintah "OPEN", dan tutup pintu untuk perintah "CLOSE". "=" membantu memisahkan perintah dan password. Sketsa Arduino lengkap diberikan di bawah ini.

Skematik

Koneksi antara komponen sangat sederhana. Pertama, hubungkan modul Bluetooth HC-05 ke Arduino. Perhatikan skematik. Pin TX pada papan Arduino terhubung ke pin RX pada modul Bluetooth dan pin RX pada Arduino terhubung ke pin TX pada modul Bluetooth.

Memasang Kunci pada Pintu

Saya harap Anda telah memprogram papan Arduino Anda dengan sketsa yang dilampirkan di langkah sebelumnya dan Anda telah menguji semua koneksi sesuai skematik. Jika Anda menyelesaikan semua langkah maka saatnya untuk menempatkan kunci di tempat yang sesuai pada pintu. Pertama, pasang kunci dengan empat sekrup. Lalu, pasang modul Bluetooth di tempat yang tepat pada kunci dan tambahkan sedikit lem panas untuk mengatur modul dengan erat dengan kunci. Setelah itu, tempatkan papan Arduino di sisi bawah kunci dan hubungkan semua kabel sesuai skematik. Setelah menempatkan kunci dan membuat koneksi Anda harus menyala-kan kunci. Saya menggunakan adapter dinding 5V, 1A untuk menyediakan daya pada rangkaian.

Pengembangan Aplikasi Android untuk Kunci Pintu Terlindungi Password

Saya akan menunjukkan kepada Anda bagaimana mengembangkan aplikasi Android Bluetooth menggunakan MIT App Inventor. Saya menggunakan App Inventor karena tidak memerlukan coding dan tidak perlu instalasi perangkat lunak. Anda hanya perlu akun Google. Kunjungi https://ai2.appinventor.mit.edu/, Anda akan diminta untuk masuk menggunakan akun Google.

Masuk ke App Inventor menggunakan gmail dan ikuti langkah-langkah di bawah ini:

Anda sekarang berada di Designer, tempat Anda menyusun "antarmuka pengguna" aplikasi Anda (gambar 6). Jendela Designer adalah tempat Anda menyusun tampilan dan nuansa aplikasi Anda, dan menentukan fungsionalitas apa yang harus dimilikinya. Anda memilih hal-hal untuk antarmuka pengguna seperti Tombol, Gambar, Label, Kotak Teks, dan fungsionalitas seperti Text-to-Speech, Bluetooth, Sensor, dan GPS.

Sekarang, ikuti gambar 7 dan tambahkan List Picker ke viewer. Ganti namanya menjadi "Connect to Bluetooth Device" (gambar 8). Tambahkan satu Label, satu Kotak Teks Password, dan dua tombol yang ditunjukkan dalam gambar 10. Ubah properti teks komponen menjadi "Enter Password", "Open Door", dan "Close Door" masing-masing. Antarmuka Pengguna Akhir harus terlihat seperti gambar 11. Sekarang tambahkan Bluetooth Client ke viewer. Ini adalah komponen tidak terlihat dan tidak memiliki UI. Lihat Gambar 12.

Beralih ke Editor Blok

Saatnya memberitahu aplikasi Anda apa yang harus dilakukan! Klik "Blocks" untuk pindah ke Editor Blok (gambar 13). Pikirkan tombol Designer dan Blok seperti tab- Anda menggunakannya untuk bergerak maju mundur antara dua area App Inventor. Editor Blok adalah tempat Anda memprogram perilaku aplikasi Anda. Ada blok bawaan yang menangani hal-hal seperti matematika, logika, dan teks. Di bawahnya adalah blok yang menyertai setiap komponen dalam aplikasi Anda. Untuk mendapatkan blok untuk komponen tertentu untuk muncul di Editor Blok, Anda pertama-tama harus menambahkan komponen itu ke aplikasi Anda melalui Designer.

Mari kita, desain blok untuk List Picker. List Picker adalah elemen UI ketika diklik akan menampilkan daftar elemen yang sesuai di sini adalah perangkat Bluetooth yang dipasangkan. Kita harus menambahkan dua blok ListPicker.BeforePicking dan ListPicker.AfterPicking (gambar 14). Blok lengkap ditunjukkan dalam gambar 18 & 19.

Buat file apk

Desain kami selesai, sekarang kita perlu membangun file apk untuk ponsel Android kita. Klik menu build dan pilih "App(save .apk to my computer)". Tunggu sebentar. File apk akan diunduh ke folder unduhan default Anda. Instal dan gunakan.

Aplikasi Android Lebih Kaya Fitur

Dalam langkah sebelumnya saya telah menunjukkan kepada Anda bagaimana mengembangkan aplikasi bluetooth dasar di App Inventor. Tapi aplikasi itu tidak begitu ramah pengguna. Ini tidak akan menunjukkan pesan apa pun apakah pintu Anda terbuka atau tertutup atau bluetooth tidak dapat terhubung karena kesalahan. Saya melampirkan di sini aplikasi yang lebih canggih untuk proyek kami.

Ketika Anda menjalankan aplikasi Anda aplikasi ini memeriksa apakah radio bluetooth Anda diaktifkan atau tidak, jika tidak diaktifkan dialog pengaktifan bluetooth akan muncul. Klik yes untuk menyala-kan radio bluetooth Anda. Lalu pasangkan perangkat menggunakan tombol pair device. Lalu klik tombol connect, jika berhasil terhubung ke perangkat mana pun aplikasi akan menunjukkan alamat MAC dan nama perangkat yang terhubung. Masukkan password ke kotak password lalu klik tombol buka pintu, jika Anda memasukkan password yang benar pintu akan terbuka dan aplikasi akan menunjukkan pesan bahwa pintu Anda sekarang terbuka. Lalu masukkan password lagi jika Anda ingin menutup pintu. Jika Anda memberikan password yang salah, maka aplikasi akan menunjukkan pesan password salah.

File sumber App Inventor lengkap (BTcontrol.aia) dilampirkan bersama ini. Jika Anda tidak suka membuat aplikasi Anda sendiri atau memodifikasinya, cukup unduh BTcontrol.apk dan instal di ponsel Android Anda.

Anda juga dapat mengunduhnya dari Google Play Store menggunakan tautan: https://play.google.com/store/apps/details?id=appinventor.ai_khairul_uapstu.BTcontrol&hl=en

Untuk memodifikasi sumber klik menu "Projects" dan pilih "Import project (.aia) from my computer" yang ditunjukkan dalam gambar 24 dan telusuri file BTcontrol.aia dari komputer Anda. Setelah diimpor Anda dapat memodifikasinya dengan mudah.

Jika Anda ingin mengetahui lebih banyak tentang pengembangan aplikasi Android menggunakan App Inventor telusuri: https://appinventor.mit.edu/explore/ai2/tutorials.html. Anda juga dapat mencoba https://meta-guide.com/videography/100-best-appinventor-videos/

Kode

Sketsa Arduino

#include <Servo.h> Servo myservo; // create servo object to control a servo String inputString = ""; String command = ""; String value = ""; String password = "arduPi"; // this is the password for opening and closing your door // you can set any pasword you like using digit and symbols boolean stringComplete = false; void setup(){ //start serial connection Serial.begin(9600); // baud rate is 9600 must match with bluetooth //The String reserve() function allows you to allocate a buffer in memory for manipulating strings. inputString.reserve(50); // reserve 50 bytes in memory to save for string manipulation command.reserve(50); value.reserve(50); boolean stringOK = false; myservo.attach(9); // attaches the servo on pin 9 to the servo object } void loop(){ // if arduino receive a string termination character like \n stringComplete will set to true if (stringComplete) { delay(100); int pos = inputString.indexOf('='); if (pos > -1) { command = inputString.substring(0, pos); value = inputString.substring(pos+1, inputString.length()-1); if(!password.compareTo(value) && (command == "OPEN")){ openDoor(); Serial.println(" OPEN"); delay(100); } else if(!password.compareTo(value) && (command == "CLOSE")){ closeDoor(); Serial.println(" CLOSE"); delay(100); } else if(password.compareTo(value)){ Serial.println(" WRONG"); delay(100); } } inputString = ""; stringComplete = false; } } void serialEvent() { while (Serial.available()) { char inChar = (char)Serial.read(); inputString += inChar; if (inChar == '\n' || inChar == '\r') { stringComplete = true; } } } void openDoor(){ myservo.write(0); delay(100); } void closeDoor(){ myservo.write(65); delay(100); } 

Bagian Kustom dan Penutup

Thingiverse

https://www.thingiverse.com/thing:2350856 CAD file on thingiverse.com

Skematik

Gambar skematik tersedia dalam dokumen proyek.

Proses manufaktur

  1. Di Dalam Bank Vault: Sejarah, Desain, dan Masa Depan Keamanan
  2. Kanal dan Kunci Air: Teknik, Sejarah, dan Masa Transportasi Air AS
  3. Buat Kunci RFID Arduino yang Aman – Panduan Langkah demi Langkah
  4. Membuat Remote Android Universal dengan Arduino, 1Sheeld & Kontrol IR
  5. Buat Animasi LCD dan Game Menarik dengan Arduino UNO
  6. Kendalikan Roomba Create 2 Anda dengan Arduino dan Android: Panduan Langkah-demi-Langkah
  7. Kunci Pintu Aman Berbasis Password dengan Arduino, Keypad & Aktuator Linier
  8. Python 3 ke Arduino UNO: Kontrol Perintah Mudah dan Demo LED
  9. Bangun Automata Seluler Real-Time di Arduino dengan Layar OLED 128x64
  10. Kunci Pintu Pintas WiFi dengan Arduino & ESP8266 – Buka dengan Telepon