Sayt bo'limlari
Muharrir tanlovi:
- Internet tezligini tekshirish: usullarning umumiy ko'rinishi. Provayderingizdan haqiqiy Internet tezligini qanday aniqlash mumkin
- Windows ro'yxatga olish kitobi muharririni ochishning uchta usuli Qidiruv yordamida ro'yxatga olish kitobini ochish
- Qattiq diskni qanday qismlarga bo'lish kerak
- Biz qattiq diskni bo'limlarga ajratamiz
- Kompyuter yoqilganda signal beradi
- Windows-da fayl kengaytmalarini to'g'ri o'zgartirish Arxiv kengaytmasini qanday o'zgartirish mumkin
- YouTube YouTube-da reklamalarni reklamasiz bloklash
- TeamViewer - kompyuterni masofadan boshqarish Boshqa kompyuter bilan bog'lanish uchun dasturni yuklab oling
- Windows-da kompyuteringizning xususiyatlarini qanday aniqlash mumkin: tizim usullari va maxsus dasturlar
- Biz turli xil qurilmalarda brauzerlarni yangilaymiz: kompyuter, planshet, smartfon Yangilangan brauzerni qayerda va qanday qilib o'rnating
Reklama
Biometrik blokirovka - skanerni sozlash va mikrokontrollerni dasturlash. Garaj eshigi uchun uy qurilishi biometrik barmoq izi qulfi Turli Arduino shablonlari uchun barmoq izi skaneri |
Mening mashinam yo'qligi sababli, kalitlarimni hamma joyda o'zim bilan olib yurishim shart emas. Shu sababli, men bir necha bor uydan tashqarida kalitsiz qolganman va qarindoshlardan birining uyga kelishini kutishimga to'g'ri keldi va bir nuqtada men bu haqda biror narsa qilishim kerak deb qaror qildim. va uy qurilishi garaj qulfini ishlab chiqdi. Ushbu loyihada men old eshik uchun barmoq izi qulfini qanday qilishni ko'rsataman.
1-qadam: MateriallarBu erda kerakli materiallar va asboblar ro'yxati. Elektronika:
Qulaylik uchun men Sparkfun veb-saytiga tayyor istaklar ro'yxatini biriktiraman. Asbob:
2-qadam: Qurilma diagrammasiSparkfun-dan sotib olingan LCD to'plami displeyni boshqaradigan ATmega328 bilan birga keldi. ATmega328 juda kuchli va nafaqat displeyni boshqarish uchun, balki boshqa vazifalar uchun ham ishlatilishi mumkin. Buni hisobga olgan holda, biz Arduino o'rniga barmoq izi skaneri bilan bog'lanish va ATtiny85 ga buyruqlar yuborish, displey va signalni boshqarish uchun foydalanishimiz mumkin. Biometrik eshik qulfining har doim ishlashiga yo'l qo'ymaslik uchun men unga korpus yopilgan paytda ishlaydigan kalitni o'rnatdim. Agar korpus yopiq bo'lsa, qurilmaga quvvat berilmaydi va biz batareya resurslarini tejaymiz. Muhim eslatma: Barmoq izi skaneri 3,3V da ishlaydi, shuning uchun ATmega dan signallarni 3,2V ga aylantiradigan kuchlanish bo'luvchidan foydalanishni tavsiya etaman. Kuchlanishni ajratuvchi D10/soniya skaner pinlari orasidagi 560 ohm rezistor va GND/ikkinchi skaner pimi orasidagi 1K rezistordan iborat. LCD pinout:
ATtiny85 pinout:
3-qadam: LCD to'plamidan komponentlarni yig'ishBosqichning nomi o'z-o'zidan gapiradi: qulay va qulay tezkor ishga tushirish/yig'ish bo'yicha qo'llanma 4-qadam: Sxemani prototiplash taxtasida yig'ishKomponentlarni taxtaga joylashtirish sizga bog'liq, faqat simlarni bir xil yo'nalishga qaratib, buzilmasligi uchun lehimlashga harakat qiling. Yig'ilgandan so'ng, men taxtaning yuqori va pastki qismini issiq elim bilan qopladim - bu sxema elementlarini mustahkamladi va izolyatsiya qildi. Issiq elim chipga zarar etkazmaydi. Asosiy taxtada bo'lgani kabi, hamma narsani ATtiny taxtasiga lehimlang va komponentlarni mahkamlash va izolyatsiya qilish uchun issiq elim qo'llang. Voltaj regulyatori juda qizib ketishi mumkin, shuning uchun unga yoki uning yaqinidagi har qanday sirtga issiq elim surmaslik yaxshiroqdir. Bundan tashqari, ATtiny taxtasini issiq elim bilan qoplamaslik yaxshiroqdir, chunki uni olib tashlash va qayta dasturlashni xohlashingiz mumkin. 5-qadam: ATmega328-ni dasturlash2-bosqichda aytib o'tilganidek, ATmega328 etarlicha kuchli protsessorga va etarli pinlarga ega LCD boshqaruv, shu bilan birga u boshqa qo'shimcha komponentlarni boshqaradi. Bunga erishish uchun siz chipni dasturlashingiz kerak. agar sizda bo'lsa Arduino Uno yoki Duemilanove, siz shunchaki ulardan chipni olib tashlashingiz va uni to'plamda kelganiga almashtirishingiz mumkin. Yoki uning yon tomonida FTDI Basic Breakout board (5V) va lehim qo'shimchalarini topishingiz mumkin (3-bosqichdagi rasmlarga qarang). Shuningdek, kodni "Duemilanve w/ ATmega328" rejimida yuklashingiz kerak bo'ladi. Quyidagi kod - ish dasturi qurilmaning ishlashini tekshirish uchun. #include "LiquidCrystal.h" LiquidCrystal lcd(2,3,4,5,6,7,8); void setup() ( pinMode(9, OUTPUT); // orqa yorug'lik pinMode(13, OUTPUT); // beeper lcd.begin(16, 2); // 16 belgi kengligi, 2 yuqori raqamli yozish(9, HIGH) ; / /orqa yorug'likni yoqing lcd.print("Salom dunyo!"); //bo'sh joydan foydalanib matnni markazga qo'ying delay(2000); ) void loop() ( //o'q signali yoqiladi va o'chadi, uning holati displeyda ko'rsatiladi. lcd.clear( ); lcd.print(" Buzzer yoqilgan "); ton(13, 262, 1000); kechikish(1000); lcd.clear(); lcd.print(" Buzzer o‘chirilgan "); kechikish( 1000); ) Fayllar 6-qadam: Barmoq izi skanerini sozlashMen ushbu kutubxonadan skaner bilan muloqot qilish uchun foydalanganman. To'g'ridan-to'g'ri yuklab olish uchun havola. Kodingiz ishlayotganligini tekshirish uchun ushbu miltillovchi testerni yuklab oling. Barmoq izi skaneri ma'lumotlarni saqlash uchun o'zining o'rnatilgan xotirasiga ega. Shunday qilib, skaner ishlayotganiga ishonchingiz komil bo'lgandan so'ng, 0 id ostidagi ma'lumotlar bazasiga barmoq izini qo'shish uchun ushbu dasturni yuklab oling. Seriya konsolingizni oching va shunchaki ko'rsatmalarga amal qiling. Skanerni sinab ko'rish uchun LED miltillovchi dastur/* Ushbu oddiy kod LEDni yoqadi va o'chiradi. U aloqa ishlayotganligini tushunish uchun ishlatiladi. */ #include "FPS_GT511C3.h" #include "SoftwareSerial.h" //Uskunani sozlash - barmoq skaneri ulangan: //raqamli pin 10(arduino rx, fps tx) //raqamli pin 11(arduino tx - 560ohm fps rezistori) tx - 1000ohm rezistor - GND) //bu 5v tx ni taxminan 3,2v ga tushiradi va biz FPS_GT511C3 fps (10, 11) skanerimizni yoqib yubormaymiz; void setup())( Serial.begin(9600); fps.UseSerialDebug = true; // siz ketma-ket disk raskadrovka ekranida xabarlarni ko'rishingiz mumkin fps.Open(); ) void loop())( // LEDning miltillashi testi fps skaneri.SetLED(true); // skanerning kechikishi (1000) ichidagi LEDni yoqadi; fps.SetLED(false); // skaner kechikishidagi LEDni o'chiradi(1000); )Skanerga ma'lumotlarni yozib olish uchun dastur#include "FPS_GT511C3.h" #include "SoftwareSerial.h" //Uskunani sozlash - barmoq skaneri ulangan: //raqamli pin 10(arduino rx, fps tx) //raqamli pin 11(arduino tx - 560ohm qarshilik fps tx - 1000ohm rezistor - GND) //bu 5v tx ni taxminan 3,2v ga tushiradi va biz FPS_GT511C3 fps (10, 11) skanerimizni yoqib yubormaymiz; void setup())( Serial.begin(9600); delay(100); fps.Open(); fps.SetLED(true); Enroll(); ) void Enroll())( // Ro‘yxatdan o‘tish testi // qidiruv open id int enrollid = 0; fps.EnrollStart(enrollid); // ro'yxatdan o'tish Serial.print("Ro'yxatdan o'tish uchun # barmoqni bosing"); Serial.println(ro'yxatdan o'tish); while(fps.IsPressFinger() == false) kechikish( 100); bool bret = fps.CaptureFinger(true); int iret = 0; if (bret != false) ( Serial.println("Barmoqni olib tashlash"); fps.Enroll1(); while(fps.IsPressFinger() = = rost) kechikish(100); Serial.println("Oʻsha barmoqni yana bosing"); while(fps.IsPressFinger() == false) kechikish(100); bret = fps.CaptureFinger(true); if (bret != noto'g'ri) ( Serial.println("Barmoqni olib tashlash"); fps.Enroll2(); while(fps.IsPressFinger() == true) kechikish(100); Serial.println("O'sha barmoqni yana bosing"); while( fps.IsPressFinger () == false) kechikish (100); bret = fps.CaptureFinger(true); if (bret != false) ( Serial.println("Barmoqni olib tashlash"); iret = fps.Enroll3(); agar (iret = = 0) ( Serial.println("Ro'yxatdan o'tish muvaffaqiyatli"); ) else ( Serial.print("Ro'yxatdan o'tish xato kodi bilan amalga oshmadi:"); Serial.println(iret); ) ) else Serial.println("Uchinchi barmoqni ushlab bo'lmadi"); ) else Serial.println("Ikkinchi barmoqni ushlab bo'lmadi"); ) else Serial.println("Birinchi barmoqni yozib bo'lmadi"); ) void loop())( delay(100000); ) Fayllar7-qadam: ATtiny85 ni dasturlashATtiny85 - bu bitta chipga yig'ilgan arzon Arduinoga o'xshash narsa. ATtiny85 boshqa Arduinolar tomonidan dasturlashtirilishi mumkin, shu jumladan LCD to'plamimizda joylashgan ATmega328. Loyihada u juda oddiy buyruqlarni bajarish uchun ishlatiladi: ATmega signalini tekshiring va agar signal to'g'ri bo'lsa, eshikni oching. Uni dasturlash uchun hamma narsani biriktirilgan fotosuratlarga ko'ra ulang. Keyin kerakli fayllarni yuklab oling va ushbu ko'rsatmalarga amal qiling. Kodni yuklab olgandan so'ng, Arduino-da (o'rnatilgan LED) 13-pin yonishi kerak, bu kod yuklab olinganligini ko'rsatadi. Yakuniy kod: //O‘rni bekor o‘rnatishni yopish uchun asosiy moduldan qisqa signal oladi())( pinMode(2,OUTPUT); //10K rezistor pinMode(4,OUTPUT) orqali LED ko‘rsatkichi; //Garajni ochuvchi tranzistor pin. pinMode(0,INPUT ); //kiritish kechikishi(500); //qurilmaga digitalWrite(2, HIGH) ni ishga tushirish uchun vaqt bering; //LED belgisi ) void loop())( if(digitalRead(0))( / /tranzistor kechikishini almashtirish uchun oddiy naqsh (125); if(digitalRead(0)==false)( kechikish(55); //kuting, chunki ATtiny taymer ideal emas if(digitalRead(0))( kechikish(55) ); if(digitalRead(0)= =notoʻgʻri)( kechikish(55); if(digitalRead(0))( kechikish(55); if(digitalRead(0)==false)( digitalWrite(4, HIGH); / / tranzistor tugmani “bosadi” kechikish(1000); digitalWrite(4,LOW); digitalWrite(2,LOW); kechikish(1000); digitalWrite(2, HIGH); ) ) ) ) ) ) ) Fayllar 8-qadam: Yakuniy kodQuyida men skaner va displey kutubxonalari yordamida yozgan Arduino dasturi. Dasturning har bir qismida nima sodir bo'lishini tushunish uchun men hamma narsani eng yaxshi tarzda sharhlashga harakat qildim. Ushbu kodni yuklab olgandan so'ng, hamma narsa ishlashi kerak va bajarilishi kerak bo'lgan narsa tizimni eshikka integratsiya qilishdir. Ogohlantirish: agar skaner kutubxonasi ishlamasa, undan foydalanib koʻring eski versiya Arduino IDE. ATmega238 uchun kod: #include "LiquidCrystal.h" //displey kutubxonasi #include "FPS_GT511C3.h" //fps (barmoq izi skaneri) kutubxonasi #include "SoftwareSerial.h" //skaner kutubxonasi tomonidan ishlatiladi //Displey va skaner pinlarini sozlang LiquidCrystal lcd( 2, 3, 4, 5, 6, 7, 8); // pinout FPS_GT511C3 fps (10, 11); //RX, TX boolean isFinger = noto'g'ri; //agar fps kutubxonasi skanerda barmoqni aniqlasa, rost //chiqish pinlari const int buzzerPin = 13; const int backlightPin = 9; const int attinyPin = 12; const String idNames = ("o'zini","Aka", "Rayan", "Onam", "Dada", "Xola", "Buvim", "Zeyda", "Shaxs", "odam", "Bosh barmoq"); void setup())( //chiqishlarni sozlash pinMode(buzzerPin, OUTPUT); pinMode(backlightPin, OUTPUT); pinMode(attinyPin, OUTPUT); //disklarni tuzatish uchun //Serial.begin(9600); fps.UseSerialDebug = noto'g'ri; // fps orqali nosozliklarni tuzatish uchun haqiqiy bo'ladi ketma-ket port//kutubxonalarni ishga tushirish lcd.begin(16,2); digitalWrite (backlightPin, HIGH); //LCD orqa nuri fps.Open(); fps.SetLED(to'g'ri); //fps uchun LED // ovoz yuklanmoqda (int i=0; i<30; i++){ tone(buzzerPin, 50+10*i, 30); delay(30); } tone(buzzerPin, 350); //вывод стартового сообщения lcd.print("Put your finger "); //команда вывода на экран lcd.setCursor(0, 1); //устанавливаем курсор на нулевую колонку первой строки lcd.print(" on the scanner "); delay(150); noTone(buzzerPin); //останавливаем стартовый звук } void loop(){ //сканируем и распознаём отпечаток, когда приложен палец waitForFinger(); lcd.clear(); //очищаем экран и устанавливаем курсов в положение 0,0 fps.CaptureFinger(false); //захватываем отпечаток для идентификации int id = fps.Identify1_N(); //идентифицируем отпечаток и сохраняем id if(id <= 10){ lcd.print(" Access granted "); //сообщение об успехе lcd.setCursor(0,1); //выводим на экран имя когда дверь открывается String message = " Hey " + idNames + "!"; lcd.print(message); tone(buzzerPin, 262, 1000); delay(1500); //отправляем сигнал для открытия двери digitalWrite(attinyPin, HIGH); //первый импульс синхронизирует задержку (10ms) delay(5); digitalWrite(attinyPin, LOW); delay(3); digitalWrite(attinyPin, HIGH); //следующие два - открывают дверь delay(15); digitalWrite(attinyPin, LOW); delay(5); digitalWrite(attinyPin, HIGH); delay(10); digitalWrite(attinyPin, LOW); delay(1000); lcd.clear(); lcd.print("Don"t forget to "); lcd.setCursor(0,1); lcd.print(" shut me off! "); delay(2000); waitForFinger(); //нажмите чтобы продолжить запись while(true){ //сохраняет новый отпечаток //выводит сообщение на экран lcd.clear(); lcd.print(centerText("So you want to")); lcd.setCursor(0,1); lcd.print(centerText("scan a new one?")); delay(2000); //Скопировано и слегка модифицировано из примера регистрации данных: int enrollid = 11; //выбираете какой id переписать\создать //отпустите палец, когда хотите записать id/имя, напечатанное на экране waitForFinger(); //ждёт, когда будет нажат fps while(enrollid==11){ for (int i = 1; i1){ lcd.print(i); enrollid = i-1; break; } } } //предупреждение, если в данном слоте уже есть данные if(fps.CheckEnrolled(enrollid)){ lcd.clear(); lcd.print(" Warning! ID #"); lcd.print(enrollid); lcd.setCursor(0,1); lcd.print(" has data. OK? "); delay(2500); waitForFinger(); //ждёт, когда будет нажат fps fps.DeleteID(enrollid); //удаляет данные delay(100); } //Enroll fps.EnrollStart(enrollid); lcd.clear(); lcd.print("Place finger to "); lcd.setCursor(0,1); lcd.print("enroll #"); lcd.print(enrollid); //выводит id, который был добавлен waitForFinger(); //ждёт, когда будет нажат fps //захватывает отпечаток и сохраняет его в память трижды для точности данных bool bret = fps.CaptureFinger(true); //картинка высокого качества для записи int iret = 0; //в случае ошибки if (bret != false){ //первая регистрация lcd.clear(); lcd.print(" Remove finger "); fps.Enroll1(); while(fps.IsPressFinger() == true) delay(100); //ждёт пока уберут палец lcd.clear(); lcd.print(" Press again "); waitForFinger(); //ждёт, когда будет нажат fps bret = fps.CaptureFinger(true); if (bret != false){ //вторая регистрация lcd.clear(); lcd.print(" Remove finger "); fps.Enroll2(); while(fps.IsPressFinger() == true) delay(100); lcd.clear(); lcd.print("Press yet again "); waitForFinger(); bret = fps.CaptureFinger(true); if (bret != false){ //третья регистрация iret = fps.Enroll3(); if (iret == 0){ //проверяет, были ли какие-нибудь ошибки lcd.clear(); lcd.print(" Success! "); delay(2000); beep(); //выключает Ардуино } else{ //запускает этот код в случае любой ошибки lcd.clear(); lcd.print("Fail. Try again "); delay(1000); } } lcd.clear(); lcd.print(" Failed 3rd "); //ошибка на третьей записи delay(1000); } lcd.clear(); lcd.print(" Failed 2nd "); //ошибка на второй записи delay(1000); } lcd.clear(); lcd.print(" Failed 1st "); //ошибка на первой записи delay(1000); } } else{ lcd.print("Fingerprint is"); //если отпечаток не распознан lcd.setCursor(0,1); lcd.print(" unverified "); delay(2000); lcd.clear(); lcd.print("Please try again"); lcd.setCursor(0,1); lcd.print("Use your pointer"); //pointer - указательный палец (можете использовать любой и заменить это слово) delay(500); } delay(250); } void beep(){ //издаёт звуки, чтобы кто-нибудь закрыл кейс lcd.clear(); lcd.print("Please close the"); lcd.setCursor(0,1); lcd.print(" case! "); for(int i=0;i=80 && !fps.IsPressFinger()){ beep(); } } timer = 0; //обнуляет таймер как только функция завершится } String centerText(String s) { //центрует текст на дисплее, чтобы он лучше смотрелся while(16-s.length()>1)( //agar matnni markazlashtirish kerak bo'lsa s = " " + s + " "; // har ikki tomonga teng bo'shliqlar qo'shadi ) return s; ) Fayllar Avtomobilingizni ruxsatsiz kirishdan himoya qilish uchun oddiy biometrik xavfsizlik tizimini yaratish uchun bizga barmoq izi sensori va Arduino mikrokontrolleri kerak bo'ladi. Ushbu loyihada Adafruit o'quv materialidan foydalaniladi. Takrorlashni osonlashtirish uchun ushbu materialdan kichik o'zgarishlar bilan to'liq dastur kodi ishlatiladi. Birinchidan, biz avtomobilning ishga tushirish tizimini o'zgartiramiz. Asosiy ulanish kontaktni o'zgartirish tugmasidan IG o'tkazgichidir, u kuchlanish regulyatoriga, so'ngra uni yoqish va o'chirish uchun Arduino mikrokontrolleriga quvvat beradi va 10 soniya davomida sensorda barmoqni skanerlaydi. Agar barmoq izi mos keladigan bo'lsa, tizim starter o'rni boshqaruvchi o'rni qutisini faollashtiradi. Endi siz dvigatelni ishga tushirishingiz mumkin. 10 soniyadan so'ng barmoq izi sensori o'chadi. Ateşleme aylanishini takrorlash orqali uni qayta yoqishingiz mumkin. Agar 10 soniya ichida sensor barmoq izini aniqlamasa yoki barmoq izi mos yozuvlarga mos kelmasa, ishga tushirish tizimi o'chiriladi va dvigatel ishga tushmaydi. Har bir avtomobilda turli ishga tushirish konfiguratsiya tizimi mavjud bo'lganligi sababli, ishga tushirish tizimini o'zgartirishdan oldin avtomobilning elektr tizimi haqida elektrchiga murojaat qilishingiz yoki ulanish sxemasini ko'rib chiqishingiz kerak bo'ladi. Barmoq izi sensori dvigatelni ishga tushirmasligini unutmang. Dvigatelni ishga tushirishni taqiqlovchi yoki ruxsat beruvchi starter rölesini oddiygina faollashtiradi va o'chiradi. Ushbu loyihada 2 eshikli Mitsubishi Lancer 2000 kupesiga o'g'irlikka qarshi qurilma o'rnatilgan. 1-qadam: Ishlatilgan komponentlar4-qadam: Asosiy dasturni yuklashBarmoq izi sensorini diagrammada ko'rsatilganidek ulang va asosiy dasturni yuklang. To'g'ri ishlashni kuzatish uchun LED va rezistorni 12-pinga ulang. Dastur Adafruit Fingerprint o'quv materiali printsipi asosida ishlaydi. Biroq, men kodni biroz o'zgartirdim va sensorning miltillovchi LEDidan chalg'itmaslik uchun sensorni 10 soniyadan keyin o'chirish uchun taymer qo'shdim. 5-qadam: 1-qismni yig'ishBoshqaruv paneli ostidagi vintlarni echib oling. Kaputni bo'shatish dastagini bo'shating. Boshqaruv panelining pastki qismini olib tashlang. Sensorni bo'sh joyga qo'ying. 6-qadam: Yig'ish, 2-qismSensorni ishonchli o'rnatish uchun kerakli masofani o'lchab, kichik maydonni kesib oling. 7-qadam: Yig'ish, 3-qismBarmoq izi sensori orqasida Arduino Uno platasini o'rnatish yaxshidir. Arduino Uno taxtasi to'g'ri holatda bo'lishi uchun men o'rindiqni biroz keskinlashtirdim. Nima kerak
Eslatmalar: fotosuratda simlarning ranglari har xil - o'rnatish jarayonida bir nechta simlar uzilgan, chunki... Ular butunlay Huawei edi va men boshqa mavjud ranglarni olishim kerak edi. Xabar tizimi muhim daqiqalarda ataylab takrorlanadi. Shuningdek, siz planshetning veb-kamerasi orqali kiruvchi xodimni suratga olish tizimini kiritishingiz, elektron eshiklarni o'rni qo'shishingiz va boshqarishingiz mumkin, ishga tushirish parametrlari orqali uzatiladigan tashqi ishlov berish orqali ZUP bilan to'liq integratsiya va maxfiy ahamiyatga ega bo'lgan o'ta xavfli shlyuzlar uchun karnavalni yo'q qilish) . Foydali tanqid qabul qilinadi. Prolog Mavjud kirish tizimlari va vaqtni kuzatish tizimlari narxlarini ko'rib, yashil mohiyat meni asta-sekin bo'g'a boshladi. Arduino va uning modullari atrofida uzoq vaqt yurganimdan so'ng, men FPM10A barmoq izi moduliga duch keldim. Ushbu modul, versiyaga qarab, ko'p sonli barmoq izlarini saqlashi mumkin - flesh-xotirada 50 dan cheksizgacha va biometrik boshqaruv ishlab chiqaruvchilarining aksariyat modullarida qo'llaniladi. Biroq, mening loyihamda, kutubxona tufayli, u 254 bilan cheklangan. Men sizni darhol ogohlantiramanki, men Arduino uchun to'liq topilgan kutubxonamni joylashtiraman, chunki ... Men uzoq vaqt davomida qidirish bilan kurashdim va ushbu modul uchun kutubxonani qidirish va tuzatish uchun 3 kunni behuda sarfladim. Modullarning tavsifi Loyihada foydalanilgan kutubxona 256 (bayt)gacha barmoq izlaridan foydalanish imkonini beradi. Bu miqdor men uchun haddan tashqari ko'p edi, ekstremal holatlarda siz har 256 xodim uchun 1 moduldan foydalanishingiz mumkin. Ish algoritmi Uskuna:
A) asosiy fayl orqali: boshlash - ishga tushirish: qobiq: ishga tushirish u yerda hz.bat nomi va mazmuni bilan Notepad yordamida fayl yarating (ishonchim komilki, siz fayl bazasi parametrlarini o'zingiz boshqarishingiz mumkin - menda sql bor): “C:\Program Files\1cv8\ ... \bin\1cv8 .exe” ENTERPRISE / SServerName:Port\DBName” /NUser /PPassword B) biz VB skripti yordamida qobiqni almashtirish orqali yanada rivojlanganini qilamiz (qobiqni ishga tushirmasdan standart foydalanuvchiga qo'shimcha ravishda boshqa foydalanuvchini yaratganingizga ishonch hosil qiling): C:\hz\hz.vbs nomi va mazmuni bilan Notepad yordamida fayl yarating set oShell=createobject("wscript.shell") ishga tushirish - bajarish: regedit, filialga amal qiling: Joriy foydalanuvchi\Software\Microsoft\Windows NT\CurrentVersion\Winlogon "Shell" (REG_SZ) qator parametrini qo'shing uni tahrirlang: "wscript C:\hz\hz.vbs" (parametrda tirnoqsiz) qayta ishga tushiring va sinab ko'ring. 1c Explorersiz boshlanishi kerak
Dasturiy jihatdan:
1c bilan bog'lanish uchun quyidagi qatorlardan foydalaniladi (men o'zimning konfyum va vaqt jadvalim uchun ishlov berdim, u misol uchun loyihada, lekin manba kodiga kiritilgan): com portiga ulanish Protsedura StartSystem() ComPort = Yangi COMObject("MsCommLib.MsComm"); ComPort.CommPort = 3 ni sinab ko'ring; ComPort.Settings = "9600,N,8,1"; ComPort.Handshaking = 0; ComPort.InBufferCount = 0; ComPort.InBufferSize = 70; ComPort.InputLen = 0; ComPort.InputMode = 1; ComPort.NullDiscard = 0; ComPort.PortOpen = rost; Istisno Ogohlantirish("Portni ochish mumkin emas!"); ThisForm.Close(); EndAttempt; hSeconds = 0; ConnectWaitHandler("OutputSportData", 1, False); // Portni kuzatish uchun ishlov beruvchini ulang com portidan uzilish Protsedura EndSystem() DisableWaitHandler("OutputSportData"); ComPort.PortOpen = False; ComPort = ""; Jarayonning oxiri com portidan ma'lumotlarni o'qish Protsedura OutputSportData() ExportSportData = ""; Agar ComPort.PortOpen keyin //ComPort.Output = "1"; SportsData = ComPort.Input; ProcessEncryptedString(SportData); Agar qisqartirilgan bo'lsa (oldingi xodim)<>"" Keyin hSeconds = hSeconds + 1; endIf; Agar hSeconds > 60 bo'lsa, PreEmployee = 0; hSeconds = 0; endIf; Aks holda Ogohlantirish("Port ochilmaydi"); ThisForm.Close(); endIf; Jarayonning oxiri Protsedura jarayoni shifrlangan satr (Sport ma'lumotlari) massiv = Sport ma'lumotlari. Unload(); IndexMin = SportsData.GetLowerBound(0); IndexMax = SportsData.GetUpperBound(0); StringInfo = ""; Index uchun = IndexMin By IndexMax - 1 Cycle SymbolReceived = AbbrLP(Array.Get(Index)); Agar CharacterReceived = "13" Agar to'xtatib qo'yilmasa, RowInfo = RowInfo (RowInfo); //Bu yerda xabarni qayta ishlash EndIf; Else LineInfo = LineInfo + Symbol(Raqam(Qabul qilingan belgi)); endIf; EndCycle; Jarayonning oxiri com portiga ma'lumot yuborish Protsedura SendToPort(Send) Agar ComPort.PortOpen Keyin ComPort.Output = AbbrLP(Yuborish); Else Notify("Port ochilmaydi", MessageStatus.VeryImportant); endIf; Jarayonning oxiri Arduino Mega uchun loyiha kodi #o'z ichiga oladi Epilog Planshetning narxi taxminan 10 000 rublni tashkil qiladi. (aslida, 7000 dan yangisini 1 Gb operativ xotira bilan sotib olish mumkin, lekin 4 Gb 1c bilan ko'chirish yoqimliroq bo'ladi, men aslida 1 Gb bilan mukammal holatda 6000 ga ishlatilganini sotib oldim, lekin optimallashtirish bilan shug'ullanganman). O'tish joyi mebel ishlab chiqarish uchun qilingan, shuning uchun men u erda tanani yasadim. O'ylaymanki, siz do'konda 1000 rubl uchun "talaş va karton aralashmasi" ni kesishingiz mumkin. va uni o'z-o'zidan tejamkor vintlar bilan burang / superglue bilan yopishtiring. Oxirgi chora sifatida siz tayyor qutini (masalan, elektr shkafi) olishingiz va u erda derazani kesib olishingiz mumkin. Arduino modullari va boshqalar: taxminan 2000 rubl. Aqliy hujum va yaratishning zavqi bebahodir! Agar siz nisbatan eski qurilmadan foydalansangiz, oldindan xafa bo'lmaslik kerak. Eski noutbukni o'rnatilgan biometrik sensorga ega zamonaviyroq noutbukga almashtirish o'rniga, unga USB ulashingiz mumkin. PQI Mini USB barmoq izlarini o'qish qurilmasi eski uskunaga ikkinchi hayot baxsh etmoqchi bo'lganlar uchun ajoyib tanlovdir. Skaner maxsus Windows 10 o'rnatilgan qurilmalarda mavjud bo'lgan yangi Hello funksiyasi bilan ishlash uchun yaratilgan. Biroq, qurilma Windows 7 va 8 operatsion tizimlarining versiyalarini ham qo'llab-quvvatlaydi. Sensorning asosiy afzalliklaridan biri shundaki, u 360 daraja skanerlash imkoniyatiga ega. Shunday qilib, qurilmangizni shaxsiy kompyuteringizga ulashning eng yaxshi usuli haqida tashvishlanishingiz shart emas. Eng yaqin USB portidan foydalaning va ishni boshlang. Skanerga barmoq izi kerak bo'lganda, u avtomatik ravishda kerakli joyga aylanadi va olingan ma'lumotlarni saqlangan nusxa bilan solishtiradi. PQI Mini USB barmoq izini o'qish qurilmasi 10 tagacha turli profillarni saqlashi mumkin. Bu qurilmani almashish uchun ajoyib qiladi yoki qo'shimcha barmoqni skanerlash kerak bo'lganda (agar "asosiy" harom yoki shikastlangan bo'lsa). PQI Mini USB barmoq izini o'qish moslamasi juda mos narxda mavjud bo'lib, u boshlang'ich modelni qidirayotganlar uchun ajoyib tanlovdir. Bundan tashqari, skaner juda ko'p qiyinchiliksiz olib yurish uchun etarlicha portativdir. Verifi P2000 barmoq izini o'qish qurilmasiAgar siz USB portlariga kirish unchalik oson bo'lmagan ish stoli kompyuteridan foydalansangiz, Verifi P2000 Fingerprint Reader-ga e'tibor bering. U shaxsiy kompyuterga osongina ulanadi, eng muhimi, qulayroq foydalanish uchun uni kompyuterga yaqin joylashtirish mumkin. Skaner zarbaga chidamli metalldan tayyorlangan va ko'p yillar xizmat qiladi. O'zining mustahkam dizayniga qaramay, u barmoq izini yaxshi tanish tezligiga ega. Shunday qilib, barmog'ingizning o'rnini doimiy ravishda o'zgartirishingiz shart emas, shunchaki mukammal mos kelish uchun. Ko'pgina hollarda, sensorni bir marta surish kifoya qiladi. P2000 ni yaratishda Verifit qurilmani skanerlash jarayoniga va tanib olish natijalarining aniqligiga hech qanday ta'sir qilmasligi uchun uni mustahkam va bardoshli qilishni rejalashtirgan. Verifi P2000 Fingerprint Reader - bu juda ko'chma qurilma bo'lib, uni siz bilan osongina olib yurishingiz mumkin. Bundan tashqari, u boshqa shunga o'xshash modellarga qaraganda ancha ko'p sonli kompyuterlar bilan mos keladi. Kensington VeriMarkAjablanarli darajada kichik barmoq izlari skaneri uchun Kensington VeriMark qulay tajriba uchun zarur bo'lgan deyarli hamma narsaga ega. Model 360 daraja skanerlashni qo'llab-quvvatlaydi va kichik o'lchamlarga ega. Ammo Kensington VeriMark-ni juda qimmatli qiladigan asosiy narsa qo'shimcha funksionallikdir. Qurilma barcha qabul qilingan ma'lumotlarni shifrlangan shaklda saqlaydi. Sensor barmoq izini skanerlaganda, uni darhol shifrlaydi. Ushbu jarayonni to'xtatib bo'lmaydi, shuning uchun dasturiy ta'minot yoki apparatni buzish va biometrik ma'lumotlarni olish mumkin bo'lmaydi. Bundan tashqari, qurilma qabul qilingan skanerlarni shifrlash uchun maxsus shablondan foydalanadi, bu faqat ishlab chiqaruvchida mavjud. Bu uni xakerlik hujumlaridan va boshqa ruxsatsiz kirish urinishlaridan xavfsizroq qiladi. Skaner chiqarilgan versiyasidan qat'i nazar, nisbatan eski portlar bilan ishlashni qo'llab-quvvatlaydi. Agar siz USB-C dan USB-A adapteriga ega modeldan foydalansangiz, qurilmani nisbatan eski noutbuk yoki zamonaviy USB portlarini qo'llab-quvvatlamaydigan kompyuterga ulashingiz mumkin. Benss barmoq izini o'qish tahlilchisiBenss Fingerprint Reader Analyzer - bu hayotingizni osonlashtiradigan va sizni ko'plab muammolardan qutqaradigan yana bir skaner. Qoida tariqasida, oddiyroq modellar birinchi navbatda bitta nazorat fotosuratini oladi, shundan so'ng barcha keyingi nashrlar dastlabki natija bilan taqqoslanadi. Bu shuni anglatadiki, agar asl tasvirga biror narsa yuz bersa (u bilan boshqa barcha skanerlar solishtiriladi), yakuniy natijalarga mos kelish ehtimoli sezilarli darajada kamayadi. Benss Fingerprint Reader Analyzer har bir teginish bilan profilingizni avtomatik ravishda yaratadigan va yangilaydigan o'z-o'zini o'rganish algoritmi bilan ishlaydi. Qurilmadan qanchalik uzoq foydalansangiz, natijalar shunchalik aniq bo'ladi. Bu skanerni soxta barmoq izlari bilan aldashni qiyinlashtiradi. Sensor doimiy ravishda barmog'ingizni skanerdan o'tkazib, ma'lumotlar bazasini yangilaganligi sababli, u ruxsatsiz kirishga urinishlarni darhol aniqlaydi. Bu xakerlik hujumlariga qarshi kurashish uchun eng samarali qurilmalardan biridir. Uning noto'g'ri qabul qilish darajasi 0,002% dan kam, ya'ni siz haqiqatan ham qurilmani buzishga harakat qilishingiz kerak. Shu bilan birga, bu ishni unchalik qiyinlashtirmaydi, uning FRR koeffitsienti (yolg'on rad etish darajasi - tizimda ro'yxatdan o'tgan shaxsga kirishni rad etish) atigi 3% ni tashkil qiladi. IDEM BioScan CompactAgar siz sozlanishi mumkin bo'lgan skaner izlayotgan bo'lsangiz, sizga IDEM BioScan Compact yoqadi. Uning asosiy imkoniyatlarini kengaytirish va qo'shimcha funktsiyalarni olish uchun ishlab chiqaruvchining rasmiy veb-saytidan maxsus dasturlarni yuklab olish kifoya. Shundan so'ng, siz kompyuteringizdagi alohida fayl va papkalarni shifrlashingiz, shuningdek, veb-saytlarga kirish uchun login va parol ma'lumotlarini maxsus dasturda saqlashingiz mumkin. Shunday qilib, barmog'ingiz bilan sensorga tegish orqali istalgan internet portaliga kirishingiz mumkin. Agar siz qo'shimcha funktsiyalarni hisobga olmasangiz ham, BioScan Compact munosib model hisoblanadi. Qurilma 10 tagacha turli barmoq izlarini saqlashga qodir, kichik o'lchamlarga ega va soxta biometrik ma'lumotlarni tanib olish uchun o'rnatilgan xavfsizlik bilan ajralib turadi. Blucoil SecuGen Hamster Pro 20Blucoil SecuGen Hamster Pro 20 professional ehtiyojlar uchun ideal barmoq izi skaneridir. Model kengaytirilgan xavfsizlik sozlamalarini taklif qilganligi sababli, uning narxi bizning ro'yxatimizdagi boshqa qurilmalardan deyarli ikki baravar yuqori. Bundan tashqari, u rasmiy Linux qo'llab-quvvatlanadigan bir nechta skanerlardan biridir. Shunday qilib, qaysi operatsion tizimdan foydalanmasligingizdan qat'i nazar, sensor har qanday vazifaga mos keladi. SecuGen Hamster Pro 20 tirnalish, suv va changdan himoyalangan zarbaga chidamli qurilma. Skaner avvalgi skanerlashda qolgan izlarni kuzatishi va noaniq natijalarni rad etishi mumkin. Bundan tashqari, Blucoil SecuGen Hamster Pro 20 energiya tejovchi qurilmadir, shuning uchun uni uzoq vaqt davomida hech kim ishlatmasa, u avtomatik ravishda o‘chadi. Qo'shimcha xavfsizlikSo'nggi yillarda o'rnatilgan barmoq izlari skanerlari bo'lgan juda ko'p sonli mobil va ish stoli qurilmalari chiqarildi va ularning soni har yili o'sib bormoqda. Agar kompyuteringizda biometrik ma'lumotlarni tanib olish uchun o'rnatilgan sensor bo'lmasa, tashvishlanmang. Deyarli barcha mashhur modellarga mos keladigan shaxsiy kompyuterlar va noutbuklar uchun juda ko'p USB skanerlari mavjud. Barmoq izi sensori bilan aloqa o'rnatish uchun Josh Hawley ko'rsatmalaridan foydalanilgan (ko'rsatmalarni to'g'ridan-to'g'ri yuklab olish). Barmoq izi skaneri ishini harfli displey bilan disk raskadrovka qilish uchun sinxronizatsiya zarur. Barmoq izi sensori skanerlangan tasvirlarni saqlash uchun o'z xotirasiga ega. Sensor ishlay boshlagandan so'ng, uni 0-manzildagi barmoq izlari bazasiga qo'shish orqali yuklab oling. Kompyuteringizda boshqaruv konsolini oching va qalqib chiquvchi ko'rsatmalarga amal qiling. Kodlar - miltillovchi misol: /* GT-511C3 barmoq izlari skanerini (FPS) boshqarish uchun kutubxona misoli */ #include "FPS_GT511C3.h" #include "SoftwareSerial.h" //Uskunani sozlash - FPS ulangan: //raqamli pin 10(arduino rx, fps tx) //raqamli pin 11(arduino tx - 560ohm qarshilik fps tx - 1000ohm rezistor - tuproq) //bu 5v tx chizig'ini taxminan 3,2v ga tushiradi, shuning uchun biz fps FPS_GT511C3 fps(10, 11) ni qovurmaymiz; void setup())( Serial.begin(9600); fps.UseSerialDebug = true; // shuning uchun siz ketma-ket disk raskadrovka ekranida xabarlarni ko'rishingiz mumkin fps.Open(); ) void loop())( // FPS Blink LED Fpsni sinab ko'ring .SetLED(true); // fps kechikishi (1000); fps.SetLED(noto'g'ri); // fps kechikishi (1000); ichidagi LEDni o'chiring. Kodlar - Ro'yxatdan o'tish misoli: /* FPS_Enroll.ino - GT-511C3 barmoq izlari skanerini (FPS) boshqarish uchun kutubxona namunasi */ #include "FPS_GT511C3.h" #include "SoftwareSerial.h" //Uskunani sozlash - FPS ulangan: //raqamli pin 10 (arduino rx, fps tx) //raqamli pin 11(arduino tx - 560ohm rezistor fps tx - 1000ohm rezistor - yer) //bu 5v tx chizig'ini taxminan 3,2v ga tushiradi, shuning uchun biz fps FPS_GT5110, fpsni qovurmaymiz. o'n bir); void setup())( Serial.begin(9600); delay(100); fps.Open(); fps.SetLED(true); Enroll(); ) void Enroll())( // Ro‘yxatdan o‘tish testi // ochiq toping enroll id int enrollid = 0; fps.EnrollStart(enrollid); // enroll Serial.print("Ro'yxatdan o'tish uchun # barmoqni bosing"); Serial.println(ro'yxatdan o'tish); while(fps.IsPressFinger() == false) kechikish( 100) ; bool bret = fps.CaptureFinger(true); int iret = 0; if (bret != false) ( Serial.println("Barmoqni olib tashlash"); fps.Enroll1(); while(fps.IsPressFinger() = = true ) delay(100); Serial.println("O'sha barmoqni yana bosing"); while(fps.IsPressFinger() == false) kechikish(100); bret = fps.CaptureFinger(true); if (bret != noto'g'ri) ( Serial.println("Barmoqni olib tashlash"); fps.Enroll2(); while(fps.IsPressFinger() == true) kechikish(100); Serial.println("O'sha barmoqni yana bosing"); while( fps. IsPressFinger() == false) kechikish (100); bret = fps.CaptureFinger(true); if (bret != false) ( Serial.println("Barmoqni olib tashlash"); iret = fps.Enroll3(); agar (iret == 0) ( Serial.println("Ro'yxatdan o'tish muvaffaqiyatli"); ) else ( Serial.print("Ro'yxatdan o'tish xato kodi bilan amalga oshmadi:"); Serial.println(iret); ) ) else Serial.println("Uchinchi barmoqni ushlab bo'lmadi"); ) else Serial.println("Ikkinchi barmoqni ushlab bo'lmadi"); ) else Serial.println("Birinchi barmoqni yozib bo'lmadi"); ) void loop())( kechikish(100000); ) Faylni sinxronlash: Sketch ro'yxatga olish fayli: 7-bosqich: ATtiny85 protsessorini dasturlashATtiny85 mikrochipi arzon va Arduino platasiga toʻliq mos keladi, ehtimol u yaratilgan eng yaxshi elektr qismidir! LCD displeyning ishlashini boshqaradigan ATmega328 chipini qayta tiklash uchun Arduino dasturchisi ham kerak. Yig'ilgan qurilmada ATtiny protsessori juda oddiy buyruqlarni bajaradi: ATmega signalini tekshiring va signal tasdiqlanganda garaj eshigini oching. Protsessorni dasturlash uchun u quyidagi rasmda ko'rsatilganidek, 10 uF kondansatör bilan birga dasturchiga non paneli yordamida ulanishi kerak. Va keyin yuklab oling yakuniy kod va tavsiyalarga amal qiling High-Low Tech-dan ko'rsatmalar. Shundan so'ng, LED ga ulangan Arduino platasidagi 13 chiqishi yorug'lik ko'rsatkichi yordamida ishni kuzatish uchun YUKORI holatga o'tkazilishi kerak. Yakuniy kod ATtiny : //fpsAttiny by Nodcah //O‘rni bekor o‘rnatishni yopish uchun asosiy moduldan qisqa signal oladi())( pinMode(2,OUTPUT); //indikator pinMode(4,OUTPUT) 10K rezistor orqali boshqariladi); //trasistor pin bu garajni ochadi pinMode(0,INPUT); //kiritish kechikishi(500); //dijital yozishni ishga tushirish uchun vaqt bering(2, HIGH); //indikator LED ) void loop())( if(digitalRead(0) )) ( //tranzistorning kechikishini ishga tushirish uchun oddiy naqsh(125); if(digitalRead(0)==false)( kechikish(55); //vaqt oʻchirilgan, chunki ATtiny taymeri mukammal emas if( digitalRead(0))( kechikish(55); if(digitalRead(0)==false)( kechikish(55); if(digitalRead(0))( kechikish(55); if(digitalRead(0)==false) ( digitalWrite (4, HIGH); //tranzistor tugmani kechiktirishni "bosadi" (1000); digitalWrite (4, LOW); digitalWrite (2, LOW); kechikish (1000); digitalWrite (2, HIGH); ) ) ) ))) Biometrik qulf - yakuniy kod, qopqoqni kesish, garajni tayyorlash Arduino-da GPS soati Biometrik qulf - LCD displey diagrammasi va yig'ilishi |
Mashhur:
Yangi
- Windows ro'yxatga olish kitobi muharririni ochishning uchta usuli Qidiruv yordamida ro'yxatga olish kitobini ochish
- Qattiq diskni qanday qismlarga bo'lish kerak
- Biz qattiq diskni bo'limlarga ajratamiz
- Kompyuter yoqilganda signal beradi
- Windows-da fayl kengaytmalarini to'g'ri o'zgartirish Arxiv kengaytmasini qanday o'zgartirish mumkin
- YouTube YouTube-da reklamalarni reklamasiz bloklash
- TeamViewer - kompyuterni masofadan boshqarish Boshqa kompyuter bilan bog'lanish uchun dasturni yuklab oling
- Windows-da kompyuteringizning xususiyatlarini qanday aniqlash mumkin: tizim usullari va maxsus dasturlar
- Biz turli xil qurilmalarda brauzerlarni yangilaymiz: kompyuter, planshet, smartfon Yangilangan brauzerni qayerda va qanday qilib o'rnating
- Protsessor, video karta, quvvat manbai va kompyuter sovutgichini qanday moylash kerak