Arduino based school attendance logger with RTC and GSM module. The system keeps record of students' attendance and sends SMS to parents every time they enter and leave the class.
8,118
কিশোরবয়সী সন্তানদের নিয়ে মা-বাবাদের চিন্তার শেষ নেই। বয়সটা ঠিক সবসময় চোখে চোখে রাখার অনুকূলেও না, আবার চোখের আড়াল করলেও টেনশন। বড় পরিবারগুলোতে সব সন্তানকে স্কুলে আনা-নেওয়া করাও বাবা-মাদের পক্ষে সম্ভব হয় না। তাই অনেকে একটু বড় হলে একাই স্কুলে যায়। কিন্তু অভিভাবকরা কি নিশ্চিন্ত থাকতে পারেন? “পথে কোনো বিপদ হয়নি তো”? “স্কুল ফাঁকি দিয়ে অন্যকোথাও ঘুরে বেড়াচ্ছে না তো”? আরও কত চিন্তা! একটি স্মার্ট অ্যাটেনডেন্স সিস্টেমের মাধ্যমে যদি সন্তানের স্কুলে পৌছানোর এবং স্কুল ত্যাগ করার খবরটা মা-বাবার কাছে পৌছে যেত, তাহলে কিন্তু একটু হলেও তারা নিশ্চিন্ত থাকতে পারতেন।তবে ফাঁকিবাজ ছাত্রছাত্রীদের জন্য হত দুঃসংবাদ।স্কুল পালিয়ে বেড়াতে যাওয়া আর হত না, দুইটায় স্কুল থেকে বেরিয়ে অন্যকোথাও আড্ডা মেরে ছয়টায় বাসায় গিয়ে ‘প্র্যাকটিক্যাল ছিল’ বলেও আর পার পাওয়া যেত না। এই এক্সপেরিমেন্টে আমরা যে অ্যাটেনডেন্স সিস্টেমটি তৈরী করব তা একসাথে বেশকিছু কাজ করবে।
১)প্রথমে রোল নাম্বার অনুযায়ী ছাত্র-ছাত্রীদের আঙ্গুলের ছাপ ফিঙ্গারপ্রিন্ট সেন্সরে লিপিবদ্ধ করা হবে।
২)ফিঙ্গারপ্রিন্ট সেন্সরে পূর্বে লিপিবদ্ধ আঙ্গুল স্পর্শ করালে সেন্সরটি আঙ্গুল সনাক্ত করবে। আঙ্গুলটি কত রোল নম্বরের স্টুডেন্টের সেটাও একটি এলসিডিতে দেখাবে।
৩)ক্লাসে ঢোকার সময়, অর্থ্যাৎ প্রথমবার ফিঙ্গারপ্রিন্ট দেবার সাথে সাথে স্টুডেন্টের অভিভাবকের নাম্বারে একটি এসএমএসে তার পৌছানোর সংবাদ যাবে।
৪)ক্লাস থেকে বের হবার সময়, অর্থ্যাৎ দ্বিতীয়বার ফিঙ্গারপ্রিন্ট দেবার সাথে সাথে ঐ একই নাম্বারে স্টুডেন্টের ক্লাস ত্যাগ করার মেসেজ পৌছে যাবে।
৫)স্টুডেন্ট কখন ক্লাসে ঢুকেছে এবং কখন ক্লাস থেকে বের হয়েছে, সেই তথ্য একটি এসডি কার্ডে লিপিবদ্ধ হবে। কাজেই ক্লাসে আর নাম ডাকার প্রয়োজন নেই।
Sanguine TSB হচ্ছে Arduino UNO-R3 এর সমতূল্য একটি Arduino বোর্ড। Arduino UNO-R3 দিয়ে যা কিছু করা যায় তার সবই Sanguine TSB দিয়ে করা সম্ভব। বরং, Sanguine TSB এর বেশকিছু বাড়তি কিছু সুবিধা আছে।যেমনঃ Sanguine TSB’র ইউজার্ট পিন দুই জোড়া। TX0,RX0, TX1, RX1.
Arduino UNO R3 এর আউটপুট পিনগুলো ফিমেল। কিন্ত, Sanguine TSB ‘র প্রতিটি আউটপুট পিনের জন্যই একটি করে মেল এবং একটি করে ফিমেল হেডার দেওয়া আছে।তাই এতে যেকোনো ধরনের জাম্পার ওয়্যার কানেক্ট করা খুবই সহজ। বোর্ডটিতে পিনগুলোর নাম্বার তো বটেই, নামও (যেমন SCK, MISO,MOSI,TX0,RX0 ইত্যাদি) উল্লেখ করে দেওয়া আছে। কাজেই পিনআউটের ছবি দেখে দেখে সার্কিট কানেকশন দেবার ঝামেলা নেই।
আরডুইনো উনোর চেয়ে Sanguino TSB তে দুটি অ্যানালগ পিন এবং একটি ইন্টারাপ্ট পিন বেশি আছে। শুধু এতটুকুই নয়। Sanguino TSB’র SRAM, EEPROM, Flash memory সবই আরডুইনো উনোর দ্বিগুন।
এই এক্সপেরিমেন্টে ব্যবহৃত ফিঙ্গারপ্রিন্ট স্ক্যানার এবং জিএসএম মডিউল উভয়েই ইউজার্ট কমিউনিকেশন সাপোর্ট করে। কাজেই আরডুইনো উনো ব্যবহার করলে হার্ডওয়্যার সিরিয়ালের মাধ্যমে এই দুটি ডিভাইস একসাথে ব্যবহার করা সম্ভব হত না। একটিকে হার্ডওয়্যার সিরিয়াল অর্থ্যাৎ, TX, Rx পিনে কানেক্ট করে অপরটিকে সফটওয়্যার সিরিয়ালের মাধ্যমে কানেক্ট করা যেত। কিন্তু সফটওয়্যার সিরিয়ালের কিছু সীমাবদ্ধতা আছে। এক, সফটওয়্যার সিরিয়াল কমিউনিকেশনের baud rate সর্বোচ্চ 115200 পর্যন্ত তোলা যাবে। তাছাড়া সফটওয়্যার সিরিয়ালে বিট মিস হবার সম্ভাবনাও আছে যেটা হার্ডওয়্যার সিরিয়ালে নেই। সবকিছু বিবেচনা করে আমাদের এই এক্সপেরিমেন্টের জন্য Sanguino TSB-ই ব্যবহারই ছিল সবচেয়ে সুবিধাজনক।
সার্কিট কানেকশনঃ
ফিঙ্গারপ্রিন্ট স্ক্যানারের পিনআউট নিম্নরুপ। চারটি তারের সাথে চারটি মেল-মেল জাম্পার সল্ডার করতে হবে।
Sanguino TSB এবং ফিঙ্গারপ্রিন্ট স্ক্যানারের মধ্যে নিচের কানেকশনটি সম্পন্ন করুন।
Sanguino TSB
Fingerprint Recognition Module (ZFM60)
VCC
VCC
GND
GND
TX
RX1
RX
TX1
SIM900A kit এর পিনআউট নিম্নরূপঃ
SIM900A কে পাওয়ার আপ করার জন্য ব্যবহার করা হয়েছে ১২ ভোল্ট অ্যাডাপটার এবং power distribution board।
power distribution board, SIM900A এবং sanguino এর মধ্যে নিচের কানেকশনটি সম্পন্ন করি।
SIM900A
Power distribution board
Sanguino TSB
VCC
5V
GND
GND
GND
এবার ১২ ভোল্ট অ্যাডাপ্টার দিয়ে Power distribution board কে পাওয়ার দিন।
এবার 3-wire LCD কে Sanguino TSB এর সাথে কানেক্ট করুন।
Sanguino TSB
3-wire LCD
VCC
VCC
GND
GND
12
DATA
13
Clock
3
Latch
PCF 8563 RTC Board ব্যবহার করতে কোনো আলাদা ব্যাটারির প্রয়োজন হয় না। ব্যাটারি বোর্ডেই ইন-বিল্ট। এবার PCF 8563 RTC Board কে Sanguino TSB’র সাথে সংযুক্ত করুন।
Sanguino TSB
PCF 8563 RTC Board
VCC
VCC
GND
GND
SCL
SCL
SDA
SDA
SD card হোল্ডার ও sanguino TSB এর মধ্যে নিচের কানেকশনটি সম্পন্ন করুন।
Sanguino TSB
MicroSD card storage board
VCC
VCC
GND
GND
MISO
MISO
MOSI
MOSI
SCK
SCLK
SS
CS
Sanguino TSB তে ল্যাপটপ বা অ্যাডাপ্টারের মাধ্যমে পাওয়ার দেওয়া যাবে।
আমাদের পুরো সেটআপটি দেখতে ছিল এরকমঃ
কোডিংঃ এই এক্সপেরিমেন্টের জন্য কোডিং করতে হবে কয়েকটি ধাপে।
ক)লাইব্রেরি ইন্সটলেশনঃ কোডিং শুরুর আগে নিচের লাইব্রেরিগুলো ডাউনলোড করে ইন্সটল করে নিন।
খ)বোর্ড ইন্সটলেশনঃ যদি আপনি প্রথমবারের মতো Sanguino TSB ব্যবহার করবেন, তখন বোর্ডটিকে আরডুইনো আইডিইতে ইন্সটল করতে হবে। এই ম্যানুয়ালে প্রদর্শিত নিয়ম অনুযায়ী বোর্ড ইন্সটল এবং সিলেক্ট করে সকল কোড আপলোড করতে হবে।
গ)ফিঙ্গারপ্রিন্ট এনরোলমেন্টঃ ফিঙ্গারপ্রিন্ট লিপিবদ্ধ করার জন্য sanguine TSB তে নিচের কোডটি আপলোড করুন। তারপর সিরিয়াল মনিটরে প্রদর্শিত নির্দেশনা অনুযায়ী ফিঙ্গারপ্রিন্ট লিপিবদ্ধ করুন।
#include<Adafruit_Fingerprint.h>uint8_tid;unsignedcharstudentname[50];inti=0;Adafruit_Fingerprintfinger=Adafruit_Fingerprint(&Serial1);voidsetup(){Serial.begin(9600);Serial.println("fingertest");// set the data rate for the sensor serial portfinger.begin(57600);if(finger.verifyPassword()){Serial.println("Found fingerprint sensor!");}else{Serial.println("Did not find fingerprint sensor :(");while(1);}}uint8_treadnumber(void){uint8_tnum=0;while(num==0){while(!Serial.available());num=Serial.parseInt();}returnnum;}voidloop()// run over and over again{Serial.println("Type in the ID # you want to save this finger as...");// int id = 0;// while (true) {// while (! Serial.available());// char c = Serial.read();// if (! isdigit(c)) break;// id *= 10;// id += c - '0';//// if (id == 0) {// ID #0 not allowed, try again!// return;// }// }id=readnumber();if(id==0){// ID #0 not allowed, try again!return;}Serial.print("Enrolling ID #");Serial.println(id);while(!getFingerprintEnroll(id));}uint8_tgetFingerprintEnroll(intid){intp=-1;Serial.println("Waiting for valid finger to enroll");while(p!=FINGERPRINT_OK){p=finger.getImage();switch(p){caseFINGERPRINT_OK:Serial.println("Image taken");break;caseFINGERPRINT_NOFINGER:Serial.println(".");break;caseFINGERPRINT_PACKETRECIEVEERR:Serial.println("Communication error");break;caseFINGERPRINT_IMAGEFAIL:Serial.println("Imaging error");break;default:Serial.println("Unknown error");break;}}// OK success!p=finger.image2Tz(1);switch(p){caseFINGERPRINT_OK:Serial.println("Image converted");break;caseFINGERPRINT_IMAGEMESS:Serial.println("Image too messy");returnp;caseFINGERPRINT_PACKETRECIEVEERR:Serial.println("Communication error");returnp;caseFINGERPRINT_FEATUREFAIL:Serial.println("Could not find fingerprint features");returnp;caseFINGERPRINT_INVALIDIMAGE:Serial.println("Could not find fingerprint features");returnp;default:Serial.println("Unknown error");returnp;}Serial.println("Remove finger");delay(2000);p=0;while(p!=FINGERPRINT_NOFINGER){p=finger.getImage();}p=-1;Serial.println("Place same finger again");while(p!=FINGERPRINT_OK){p=finger.getImage();switch(p){caseFINGERPRINT_OK:Serial.println("Image taken");break;caseFINGERPRINT_NOFINGER:Serial.print(".");break;caseFINGERPRINT_PACKETRECIEVEERR:Serial.println("Communication error");break;caseFINGERPRINT_IMAGEFAIL:Serial.println("Imaging error");break;default:Serial.println("Unknown error");break;}}// OK success!p=finger.image2Tz(2);switch(p){caseFINGERPRINT_OK:Serial.println("Image converted");break;caseFINGERPRINT_IMAGEMESS:Serial.println("Image too messy");returnp;caseFINGERPRINT_PACKETRECIEVEERR:Serial.println("Communication error");returnp;caseFINGERPRINT_FEATUREFAIL:Serial.println("Could not find fingerprint features");returnp;caseFINGERPRINT_INVALIDIMAGE:Serial.println("Could not find fingerprint features");returnp;default:Serial.println("Unknown error");returnp;}// OK converted!p=finger.createModel();if(p==FINGERPRINT_OK){Serial.println("Prints matched!");}elseif(p==FINGERPRINT_PACKETRECIEVEERR){Serial.println("Communication error");returnp;}elseif(p==FINGERPRINT_ENROLLMISMATCH){Serial.println("Fingerprints did not match");returnp;}else{Serial.println("Unknown error");returnp;}Serial.print("ID ");Serial.println(id);p=finger.storeModel(id);if(p==FINGERPRINT_OK){Serial.println("Stored!");}elseif(p==FINGERPRINT_PACKETRECIEVEERR){Serial.println("Communication error");returnp;}elseif(p==FINGERPRINT_BADLOCATION){Serial.println("Could not store in that location");returnp;}elseif(p==FINGERPRINT_FLASHERR){Serial.println("Error writing to flash");returnp;}else{Serial.println("Unknown error");returnp;}}
ঘ)আরটিসি সেটিংঃ PCF 8563 RTC board ব্যবহার করার শুরুতে প্রথমে এর টাইম সেট করে নিতে হবে। নিচের কোডের প্যারামিটারগুলো আপনার এক্সপেরিমেন্টের তারিখ অনুযায়ী পরিবর্তন করে sanguine TSB তে আপলোড করুন।
#include<PCF8563.h>PCF8563pcf;voidsetup(){Serial.begin(9600);pcf.init();//initialize the clockpcf.stopClock();//stop the clock//set time to to 31/3/2018 17:33:0pcf.setYear(18);//set yearpcf.setMonth(10);//set monthpcf.setDay(28);//set datpcf.setHour(13);//set hourpcf.setMinut(13);//set minutpcf.setSecond(0);//set secondpcf.startClock();//start the clock}voidloop(){}
/*************************************************** This is an example sketch for our optical Fingerprint sensor Designed specifically to work with the Adafruit BMP085 Breakout ----> http://www.adafruit.com/products/751 ****************************************************/#include<SPI.h>#include<SD.h>#include<PCF8563.h>#include<LiquidCrystal_SR.h>#include<Adafruit_Fingerprint.h>LiquidCrystal_SRlcd(12,13,3);// DATA CLOCK LATCH//SH_CP->CLOCK->13//ST_CP->LATCH->3//DS->DATA->12Adafruit_Fingerprintfinger=Adafruit_Fingerprint(&Serial1);constintpinCS=4;intcount1=0,count2=0,count3=0;FilemyFile;PCF8563pcf;voidsetup(){lcd.begin(16,2);lcd.clear();// clear the screenSerial.begin(9600);pcf.init();//initialize the clockpinMode(pinCS,OUTPUT);if(SD.begin(4)){Serial.println("fingerprint sensor.");Serial.println("SD card is ready to use.");}else{Serial.println("SD card initialization failed");return;}while(!Serial);// For Yun/Leo/Micro/Zero/...delay(100);Serial.println("\n\nAdafruit finger detect test");// set the data rate for the sensor serial portfinger.begin(57600);if(finger.verifyPassword()){Serial.println("Found fingerprint sensor!");}else{Serial.println("Did not find fingerprint sensor :(");while(1){delay(1);}}finger.getTemplateCount();Serial.print("Sensor contains ");Serial.print(finger.templateCount);Serial.println(" templates");Serial.println("Waiting for valid finger...");lcd.setCursor(0,0);// put cursor at colon 0 and row 0lcd.print("Press finger");}voidloop()// run over and over again{getFingerprintIDez();delay(50);//don't ned to run this at full speed.}uint8_tgetFingerprintID(){uint8_tp=finger.getImage();switch(p){caseFINGERPRINT_OK:Serial.println("Image taken");break;caseFINGERPRINT_NOFINGER:Serial.println("No finger detected");returnp;caseFINGERPRINT_PACKETRECIEVEERR:Serial.println("Communication error");returnp;caseFINGERPRINT_IMAGEFAIL:Serial.println("Imaging error");returnp;default:Serial.println("Unknown error");returnp;}// OK success!p=finger.image2Tz();switch(p){caseFINGERPRINT_OK:Serial.println("Image converted");break;caseFINGERPRINT_IMAGEMESS:Serial.println("Image too messy");returnp;caseFINGERPRINT_PACKETRECIEVEERR:Serial.println("Communication error");returnp;caseFINGERPRINT_FEATUREFAIL:Serial.println("Could not find fingerprint features");returnp;caseFINGERPRINT_INVALIDIMAGE:Serial.println("Could not find fingerprint features");returnp;default:Serial.println("Unknown error");returnp;}// OK converted!p=finger.fingerFastSearch();if(p==FINGERPRINT_OK){Serial.println("Found a print match!");}elseif(p==FINGERPRINT_PACKETRECIEVEERR){Serial.println("Communication error");returnp;}elseif(p==FINGERPRINT_NOTFOUND){Serial.println("Did not find a match");returnp;}else{Serial.println("Unknown error");returnp;}// found a match!Serial.print("Found ID #");Serial.print(finger.fingerID);Serial.print(" with confidence of");Serial.println(finger.confidence);returnfinger.fingerID;}// returns -1 if failed, otherwise returns ID #intgetFingerprintIDez(){uint8_tp=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;// found a match!Serial.print("\r");delay(500);Serial.print("AT+CMGF=1\r");delay(500);if(finger.fingerID==1){count1++;Serial.print("AT+CMGS=\"+8801---------\"\r");//Number to which you want to send the smsdelay(250);if(count1%2==0){Serial.print("Roll#1 has left class\r");//The text of the message to be sentlcd.clear();lcd.setCursor(0,0);lcd.print("Goodbye Roll #");lcd.print(finger.fingerID);delay(2000);lcd.clear();// clear the screenlcd.print("Press finger");}else{Serial.print("Roll#1 has reached class \r");lcd.clear();lcd.setCursor(0,0);lcd.print("Welcome roll #");lcd.print(finger.fingerID);delay(2000);lcd.clear();// clear the screenlcd.print("Press finger");}delay(250);Serial.write(0x1A);myFile=SD.open("finger.txt",FILE_WRITE);if(count1%2==0){myFile.print("Roll#1 left class at\r");}else{myFile.print("Roll#1 entered at\r");}myFile.print(" ");TimenowTime=pcf.getTime();//get current timemyFile.print(nowTime.day);myFile.print("/");myFile.print(nowTime.month);myFile.print("/");myFile.print(nowTime.year);myFile.print(" ");myFile.print(nowTime.hour);myFile.print(":");myFile.print(nowTime.minute);myFile.print(":");myFile.println(nowTime.second);myFile.println();myFile.close();//myFile.println();}elseif(finger.fingerID==2){//similar to if(finger.fingerID==1), just change the mobile number and use the cariable count2}elseif(finger.fingerID==3){//similar to if(finger.fingerID==1), just change the mobile number and use the cariable count3. Similar loops can be written for total 152 fingerprints.}Serial.print("Found ID #");Serial.print(finger.fingerID);Serial.print(" with confidence of ");Serial.println(finger.confidence);returnfinger.fingerID;}
লক্ষ্য করুনঃকোড আপলোড করার সময় SIM900A কে সার্কিট থেকে বিচ্ছিন্ন করে নিতে হবে।
ক্লাসে ঢোকার সময় প্রদত্ত ফিঙ্গারপ্রিন্টের সাথে লিপিবদ্ধকৃত ফিঙ্গারপ্রিন্ট ম্যাচ করলে এলসিডিতে স্টুডেন্টের রোল নাম্বার উল্লেখপূর্বক একটি ওয়েলকাম মেসেজ দেখাবে এবং কোডে সেই রোল নম্বরের জন্য লিখিত মোবাইল নাম্বারে একটি এসএমএস যাবে। একইভাবে, ছুটির পর স্টুডেন্ট বের হবার সময় এলসিডিতে স্টুডেন্টের রোল নাম্বার উল্লেখপূর্বক একটি গুডবাই মেসেজ দেখাবে এবং একই মোবাইল নাম্বারেই স্টুডেন্টের ক্লাস ত্যাগ করার একটি মেসেজ যাবে।
প্রজেক্টে সংযুক্ত এসডি কার্ডে finger.txt নামক একটি ফাইল খুলবে। যাতে স্টুডেন্টদের ঢোকার এবং বের হবার সময় লিপিবদ্ধ থাকবে। এখান থেকেই স্কুল কর্তৃপক্ষ প্রতিটি ছাত্র-ছাত্রীর উপস্থিতির রেকর্ড দেখতে পারবেন।
5/5 - (1 vote)
Share with your friends
A. R
Articles: 116
12 Comments
আমার স্কুল মেনেজমেন্ট সফ্টও্য়্যারের জন্য একটি ফিঙ্গার প্রিন্ট ডিভাইস দরকার যেটি ইউএসবি পোর্টে লাগানো যাবে এবং একটি নাম্বার জেনারেট করবে। এবং উপরে উল্লেখিত ডিভাইসের মত এসএমএস করতে পারবে। যদি ডিভাইসটি তৈরি করা যায় তবে এর প্রাইজ কত পরবে জানাবেন প্লিজ।
দুঃখিত স্যার, আমাদের এখানে কোন প্রকার কাস্টম ডিভাইস অথবা ফিনিশড প্রডাক্ট তৈরি করা হয় না। তবে আপনি আমাদের পাইল্যাবস কন্সারন এর সাথে যোগাযোগ করতে পারেন। যোগাযোগের ঠিকানা https://www.pilabsbd.com/
এই প্রজেক্টের জন্য কোন কেসিং পাওয়া যাবে?
আমাদের কাছে কোনো কেসিং তৈরী করা নেই।
এই প্রজেক্ট কি এখন পর্যন্ত তৈরি করা হয়েছে ?
প্রজেক্ট তৈরী করার পরেই তো সেটা আপলোড করা হয়েছে আপনাদের জন্য। বাই দ্য ওয়ে, আমরা প্রজেক্ট বিক্রী করি না। টিউটোরিয়ালের জন্য যত প্রজেক্ট করা হয় সবই শুধুমাত্র সবাইকে বাসায় বসে শেখার সুযোগ দেবার জন্য।
আমি দেখলাম এ প্রজেক্ট এর সকল ডিভাইস গুলো আপনাদের ওয়েব সাইটে অ্যাভেলেবল আছে একটা বাদে। ( Power Distribution বোর্ড) এটা কি পাওয়া যাবে ?
এটা আগামীকাল পাওয়া যাবে। ইনশা আল্লাহ
ভাইয়া,
আপনারা কি আমাকে একটা এই প্রজেক্টের (এসএমএস ফিডব্যাকসহ ফিঙ্গারপ্রিন্ট ভিত্তিক অ্যাটেন্ডেন্স সিস্টেম) তৈরি করে দিতে পারবেন .
আর এটি তৈরি করতে কত সময় বা দিন লাগতে পারে আপনাদের .
আমরা চেক করে দেখলাম সবগুলো লিঙ্ক কাজ করছে শুধু 3-wire LCD arduino Library ছাড়া, এখানে ক্লিক করুন ডাউনলোড করতে।
–
আরও অন্য কোন লিঙ্ক কাজ না করলে আমাদের জানাবেন প্লিজ।
আমার স্কুল মেনেজমেন্ট সফ্টও্য়্যারের জন্য একটি ফিঙ্গার প্রিন্ট ডিভাইস দরকার যেটি ইউএসবি পোর্টে লাগানো যাবে এবং একটি নাম্বার জেনারেট করবে। এবং উপরে উল্লেখিত ডিভাইসের মত এসএমএস করতে পারবে। যদি ডিভাইসটি তৈরি করা যায় তবে এর প্রাইজ কত পরবে জানাবেন প্লিজ।
দুঃখিত স্যার, আমাদের এখানে কোন প্রকার কাস্টম ডিভাইস অথবা ফিনিশড প্রডাক্ট তৈরি করা হয় না। তবে আপনি আমাদের পাইল্যাবস কন্সারন এর সাথে যোগাযোগ করতে পারেন। যোগাযোগের ঠিকানা https://www.pilabsbd.com/
এই প্রজেক্টের জন্য কোন কেসিং পাওয়া যাবে?
আমাদের কাছে কোনো কেসিং তৈরী করা নেই।
এই প্রজেক্ট কি এখন পর্যন্ত তৈরি করা হয়েছে ?
প্রজেক্ট তৈরী করার পরেই তো সেটা আপলোড করা হয়েছে আপনাদের জন্য। বাই দ্য ওয়ে, আমরা প্রজেক্ট বিক্রী করি না। টিউটোরিয়ালের জন্য যত প্রজেক্ট করা হয় সবই শুধুমাত্র সবাইকে বাসায় বসে শেখার সুযোগ দেবার জন্য।
আমি দেখলাম এ প্রজেক্ট এর সকল ডিভাইস গুলো আপনাদের ওয়েব সাইটে অ্যাভেলেবল আছে একটা বাদে। ( Power Distribution বোর্ড) এটা কি পাওয়া যাবে ?
এটা আগামীকাল পাওয়া যাবে। ইনশা আল্লাহ
ভাইয়া,
আপনারা কি আমাকে একটা এই প্রজেক্টের (এসএমএস ফিডব্যাকসহ ফিঙ্গারপ্রিন্ট ভিত্তিক অ্যাটেন্ডেন্স সিস্টেম) তৈরি করে দিতে পারবেন .
আর এটি তৈরি করতে কত সময় বা দিন লাগতে পারে আপনাদের .
আমরা কাউকে কোনো প্রজেক্ট তৈরী করে দিই না। বিষয়টি আমাদের ওয়েবসাইটে উল্লেখ করা আছে। https://www.techshopbd.com/about-us/technical-asistance
link guli kaj kore na
আমরা চেক করে দেখলাম সবগুলো লিঙ্ক কাজ করছে শুধু 3-wire LCD arduino Library ছাড়া, এখানে ক্লিক করুন ডাউনলোড করতে।
–
আরও অন্য কোন লিঙ্ক কাজ না করলে আমাদের জানাবেন প্লিজ।