• Home
  • FAQ
  • tips
  • พัฒนาโปรแกรมใช้งานเครื่องสแกนลายนิ้วมือเอง ได้ หรือ ไม่ ?

พัฒนาโปรแกรมใช้งานเครื่องสแกนลายนิ้วมือเอง ได้ หรือ ไม่ ?

โปรแกรมเมอร์สามารถพัฒนาโปรแกรม เครื่องสแกนลายนิ้วมือ เพื่อใช้เองได้หรือไม่ ?

โดยกปกติ เครื่องสแกนลายนิ้วมือ (finger scan) ที่มีจำหน่ายอยู่ในท้องตลาดในปัจจุบัน มักจะมาพร้อมกับโปรแกรมสำเร็จรูปที่แถมฟรีมากับตัวเครื่องให้ใช้งานอยู่แล้ว เพียงแต่ตัวโปรแกรมสำเร็จรูปฟรีที่ว่าจะเน้นไปทางด้านงานบันทึกเวลาการทำงานของพนักงาน (Time Attendance) และ งานควบคุมการเข้าออก (Access Control) และมีฟังก์ชั่นการใช้งานสำเร็จตามที่โปรแกรมให้มาไม่สามารถเปลี่ยนแปลงแก้ไขอะไรได้ ทีนี้คำถามคือว่า หากโปรแกรมเมอร์ต้องการฟังก์ชั่นนอกหนือจากที่มีอยู่ในโปรแกรมสำเร็จรูป หรือต้องการพัฒนาโปรแกรมที่ใช้ควบคู่กับ Fingerscan โดยใช้งานเฉพาะขององค์กร หรือ พัฒนาเป็น Appication ใช้งานเฉพาะทาง หรือ พัฒนาเป็น Application ในเชิงการค้า จะทำอย่างไรได้บ้าง

ความเป็นไปได้ที่จะแก้ไขปัญหาดังกล่าวมี 3 วิีธีคือ

1.พัฒนาโปรแกรมที่สามารถนำเข้าข้อมูลที่ส่งออกจากโปรแกรมเดิมได้

วิธีนี้เป็น Concept ที่โปรแกรม Payroll ซึ่งเป็นโปรแกรมที่มีการใช้งานร่วมกับ เครื่องสแกนลายนิ้วมือ มากที่สุดในปัจจุบันใช้อยู่ บนพื้นฐานในทางปฎิบัติที่ว่า ลูกค้าที่ซื้อเครื่อง fingerscan มาแล้วจะสามารถใช้งานกับโปรกรม Payroll ยี่ห้อใดก็ได้ การเชื่อมต่อระหว่าง 2 โปรแกรม คือ โปรแกรมของเครื่อง และ โปรแกรม Payroll จะใช้วิธีการส่องออก และ นำเข้าข้อมูลผู้ใช้ และ ข้อมูลบันทึกเวลาการทำงานผ่านการส่งออกมาในรูปแบบ ไฟล์ต่างๆเช่น .txt ,.CSV,.XLs เป็นต้น ซึ่งหากเป็นข้อมูลการใช้งานก็มักจะประกอบไปด้วย Field ข้อมูล เช่น รหัส วัน เดือน ปี เวลา สถานะการเข้า-ออก เป็นต้น แต่หากเป็นข้อมูลผู้ใช้ก็จะเป็น Field ข้อมูลที่ประกอบไปด้วย รหัส ชื่อ นามสกุบ วันเดือนปีเกิด ที่อยู่ เบอร์โทรศัพท์ วุฒิการศึกษา ตำแหน่ง ฯลฯ เป็นต้น

ตัวอย่าง Text.file ที่ส่งออกมาจากโปรแกรมสำเร็จรูป

fingerscan-text-file

การส่งออก และ นำเข้าข้อมูลจากโปรแกรมหนึ่งไปสู่อีกโปรแกรมหนึ่งนั้น สามารถทำได้ทั้งส่วนของข้อมูลผู้ใช้ และ ข้อมูลการใช้งาน แต่ต้องปรับรุปแบบ Field ของข้อมูลของโปรแกรมที่ตอ้งการส่งออก และ โปแกรมที่นำเข้าให้มีชุดของตารางข้อมูลที่ตรงกันเสียก่อน ซึ่งโปรแกรมของ finger scan ที่ใช้กันอยู่ในปัจจุบันหลายยี่ห้อส่วนใหญ่ เพิ่มเติมฟังก์ชั่นให้สามารถปรับรูปแบบของข้อมูลที่จะส่งออกได้ตามต้องการ ขณะเดียวกันโปรแกรมฝ่ายที่ต้องนำเข้าข้อมูลอย่างโปรแกรม Payroll ก็สามารถปรับรูปแบบที่ตอ้งการนำเข้าได้เช่นเดียวกัน  ดังนั้นสามารถปรับรูปแบบที่ทางด้านใดด้านหนึ่ง หรือ ทั้งสองด้านเพื่อให้สามารถส่งออกและนำเข้าข้อมูลกันได้

ดังนั้น หากโปรแกรมเมอร์ต้องการพัฒนาโปรแกรมโดยทำงานร่วมกับโปรแกรมเดิม แต่ไม่อยากเชื่อมต่อ หรือ ยุ่งเกี่ยวกัน ก็สามารถเลือกใช้วิธีนี้ ในการทำงานร่วมกันระหว่าง 2 โปรแกรมได้

ข้อดี

วิธีนี้มีข้อดีคือเป็นวิธีการที่ทำได้ง่ายที่สุด ฐานข้อมูลมี 2 ระบบที่ไม่ต้อยุ่งเกี่ยวกันทำให้ง่ายต่อการแบ่งงานกันทำและบริหารจัดการหากมีกำลังคนเพียงพอ และ ยังสามารถใช้งานร่วมกับโปรแกรมที่ 3 ที่ 4 ได้อีกใน Concept เดียวกัน รวมทั้งไม่ต้องยุ่งยากในการหาวิธีเขียนโปรแกรมเพื่อติดต่อกับโปรแกรมเดิมที่มากับเครื่อง ทำให้สามารถใช้งานต่อได้แม้ผู้ผลิตจะไม่เปิดเผยฐานข้อมูลของโปรแกรมสำเร็จที่มากับเครื่อง

ข้อเสีย

ผู้ดูแลต้องบริหารจัดการ 2 ระบบ คือโปรแกรมสำเร็จ และ โปรแกรมที่มาเชื่อมต่อด้วย ทำให้ยุ่งยากทั้งการจัดการผู้ใช้ และ การส่งออกนำเข้าข้อมูลที่บางครั้งอาจต้องใช้ ระบบ Manual ร่วมด้วย ถึงแม้จะสามารถตั้งเวลาส่งออก และ นำเข้าอัตโนมัติ แต่ก็ต้องคอยดูแล เช่นกัน รวมทั้งต้องคอยตรวจสอบให้ฐานข้อมูลของทั้งสองโปรแกรม Update ข้อมูลตรงกันอยู่เสมอ

2. พัฒนาโปรแกรมโดยเชื่อมต่อข้อมูลกับฐานข้อมูลโปรแกรมเดิม

วิธีนี้จะใช้ได้กับโปรแกรมที่ผู้จัดจำหน่วยเปิดให้เข้าถึงฐานข้อมูล (Database) ของระบบได้โดยมีรายละเอียดข้อมูลโครงสร้างให้เท่านัน หากเป็นโปรแกรมที่ผู้จัดจำหน่ายปิดกันการเข้าถึงข้อมูล หรือไม่เปิดเผยข้อมูลโครงสร้าง Database จะไม่สามารถทำได้ต้องใช้วิธีในข้อ 1 แทน โดยการทำงานปกติของระบบจะใช้พื้นฐานการทำงานของโปรแกรมเดิมที่มากับตัวเครื่องทั้งหมด เช่น การเพิ่ม แก้ไข ทำประวัติลายนิ้วมือพนักงาน การดึงข้อมูล ออกรายงาน แต่จะมีโปรแกรมที่พัฒนาขึ้นเพื่อดึงเอาข้อมูลต่างๆเหล่านี้ไปใช้ โดยดึงจากฐานข้อมูลโดยตรง โดยฐานข้อมูลดังกล่าวอาจเป็น Microsoft Access, My SQL, หรือ SQL Server เป็นต้น

ตัวอย่าง Database ที่เปิดโครงสร้างให้ผู้พัฒนาเชื่อมต่อข้อมูลเพื่อนำไปใช้ได้

fingerscan-database

การดึงข้อมูลไปใช้จากฐานข้อมูลของโปรแกรมสำเร็จรูปโดยตรง โปรแกรมเมอร์ต้องเขียนโปรแกรมเชื่อมต่อโปแกรมที่พัฒนาขึ้นใหม่เข้ากับฐานข้อมูลของโปรแกรมสำเร็จรูปที่มากับตัวเครื่อง โดยทั้งสองโปรแกรมจะใช้งานฐานข้อมูลร่วมกัน ทั้งหมด หรือ บางส่วน ก็ได้ ขึ้นอยู่กับว่าต้องการข้อมูลที่จะนำไปใช้มากน้อยแค่ไหน และ เนื่องจาก 2 โปรแกรม Run บนฐานข้อมูลเดียวกัน ข้อมูลจะ Update ตรงกันแบบ Realtime ทันทีที่มีการเปลี่ยนแปลงไม่ว่ากระทำจากโปรแกรมใดก็ตาม ภายใต้เงื่อนไขการใช้งานที่ต้องติดตั้ง 2 โปรแกรมบนเครื่องคอมพิวเตอร์เพื่อใช้งานร่วมกัน โดยการใช้งานขั้นพื้นฐานหลักๆจะสั่งการจากโปรแกรมที่มากับตัวเครื่อง ส่วนการใช้งานที่พัฒนาขึ้นมาเพิ่มเติมภายหลังเพื่อให้ตรงกับความต้องการ หรือ เป็น Application เฉพาะขององค์กร จะใช้ผ่านโปรแกรมที่พัฒนาขึ้นมาเอง

ข้อดี

การพัฒนาโปรแกรมไม่ต้องเริ่มต้นใหม่ทั้งหมดตั้งแร่เริ่มต้นออกแบบโครงสร้างฐานข้อมูล เพราะใช้ฐานข้อมูลเดียวกันกับโปรแกรมสำเร็จรูปที่มาพร้อมกับตัวเครื่องอยู่แล้ว เขียนเฉพาะโปรแกรมที่จะมาดึงค่าจากฐานข้อมูลไปใช้งาน ทำให้สามารถพัฒนา Application ได้อย่างรวดเร็ว และ ไม่จำเป็นต้องเริ่มเขียนใหม่หมดตั้งแต่แรก อีกทั้งข้อมูลของทั้งสองโปรแกรมจะ Update ตรงกันอัตโนมัติแบบ Realtime โดยไม่ต้องมีระบบ Manual ร่วมด้วย

ข้อเสีย

ทำยากกว่าวิธีแรกและต้องใช้งาน 2 โปรแกรมร่วมกันโดย Run บนฐานข้อมูลเดียวกัน และ โปรแกรมที่พัฒนาขึ้นมาเป็นเสมือนโปรแกรมเสริมของโปรแกรมหลักเท่านั้น ไม่สามารถทำเป็นชุด Program Package เดียวกันได้ และ ผู้ใช้ต้องเรียนรู้การใช้งานทั้ง 2 โปแกรม และ ที่สำคัญ วิธีนี้จะใช้ได้กับเฉพาะ โปรแกรมเครื่องสแกนลายนิ้วมือที่ผู้ผลิตเปิดเผย ฐานข้อมูลเพื่อให้พัฒนาต่อได้เท่านั้น หากเป็นยี่ห้อที่ผู้ผลิตไม่เปิดเผยก็ไม่สามารถใช้วิธีนี้ได้

3. พัฒนาโปรแกรมจาก Fingerscan SDK

 เครื่องสแกนลายนิ้วมือ (finger scan) โดยเฉพาะแบบที่เป็น USB จะมาพร้อมชุดพัฒนา (SDK) ที่สามารถนำไปพัฒนาโปรแกรมเชื่อมต่อกับฐานข้อมูลต่างๆรวมทั้ง Microsoft Access,My Sql,SQL Server ได้ ทั้ง Application โปรแกรมปกติ และ Webased โปรแกรม แต่ต้องลงทุนซื้อชุด SDK ซึ่งราคาปกติในท้องตลาดเฉพาะหัวอ่านลายนิ้วมือยู่ที่ 6,000-8,000 บาท ต่อหนึ่งหัวอ่าน แต่ตัวชุดพัฒนา จะมีค่า License ประมาณชุดละ 10,000 บาท ขึ้นอยู่กับยี่ห้อของ เครื่องสแกนลายนิ้วมือที่ใช้ โดยปกติระบบนี้จะถูกนำมาพัฒนา Application ใช้สำหรับตรวจพิสูจน์บุคคลในระบบ สมาชิก (Member) เช่น ร้านเช่าหนังสือ ร้านวีดีโอ ห้องสมุดเพือยืมคืนหนังสือ เป็นต้น หรือ ใช้เป็นระบบบันทึกเวลาการทำงานแบบ เชื่อมต่อกับคอมพิวเตอร์ ซึ่งนิยมใช้กับธุรกิจที่มีหลายๆสาขาและมีคอมพิวเตอร์อยู่ภายในร้าน เช่น ร้านหนังสือ สถาบันสุขภาพ ร้านค้าปลีกรายย่อย โดยดึงข้อมูลจากสาขาเข้าสู่ส่วนกลางได้ทันที หรือ ใช้ในองค์กรที่ต้องการกระจายจุดติดตั้งเครื่องสแกนลายนิ้วมือให้ทั่วถึง ทุกแผนก เพื่อที่พนักงานจะได้ไม่ต้องไปเข้าคิดวตรงจุดติดตั้งเครื่อง fingerscan ที่หน้าอาคาร หรือ แผนกอื่นๆที่อยู่ไกลต้องเดินทางมาเพื่อบันทึกเวลาการทำงานทำให้ไม่สะดวก และ เสียเวลา เช่น โรงพยาบาล สถาบันศึกษา

ตัวอย่างชุดพัฒนา Finger scan U.R.U.4000SDK

fingerscan-sdk

เมื่อเชื่อมต่อเครื่องสแกนลายนิ้วมือ กับ โปรแกรมได้แล้ว สามารถพัฒนาโปรแกรมให้แสดงรูปภาพผู้ใช้ ชื่อ นามสกุล วัน เดือน ปี เวลา ที่สแกนลายนิ้วมือ แสดงผ่านหน้าจอคอมพิวเตอร์ และ อาจเพิ่มเติมฟังกชั่น Touch screen เพื่อให้ผู้ใช้ สามารถใช้ปุ่มคำสั่งตรวจสอบข้อมูลการบันทึกเวลาของตนด้วยก็ได้ เช่น กรณีนำไปพัฒนาเป้นตู้ Kiosk สำหรับบันทึกเวลาการทำงาน เป็นต้น

แต่ข้อจำกัดของเครื่องประเภทนี้ก็มี นั่นคือ กินไฟและ ใช้ CPU Memory ของเครื่องคอมพิวเตอร์ในการทำงาน หากเครื่องคอมพิวเตอร์ปิด หรือ ดับ ไปจะไม่สามารถทำงานได้ ทำให้ไม่ค่อยนิยิมใช้อย่างแพร่หลายเหมือน Finger scan ชนิด standalone ที่มี CPU และ Memory ในตัว สามารถทำงานได้ด้วยตัวเองโดยไม่ต้องเชื่อมต่อกับคอมพิวเตอร์ตลอดเวลา และ เครื่องรุ่นใหม่ๆก็มี Communication Protocol ที่สามารถเชื่อมต่อเครื่องสแกนนิ้ว เป็นเครือข่าย ผ่านระบบ TCP/IP ได้ และ บางรุ่นก็อาจมี Web Server Buil-in ในตัว ที่สามารถทำงานร่วมกับโปรแกรม Mannagerment ที่เป็น Web Application โปรแกรม ได้อีกด้วย ทำให้ผู้ดูแลระบบสามารถเรียกดูข้อมูลการบันทึกเวลาจากที่ใดก็ได้ผ่านทาง Internet  ด้วยสาเหตุต่างๆเหล่านี้ทำให้ เครื่องชนิด USB ที่นำเอาชุด SDK มาพัฒนาต่อยอดเป็นระบบ เครื่องสแกนลายนิ้วมื มีความนิยมน้อยลง

อย่างไรก็ตาม เครื่องประเภทนี้ก็ยังมีข้อดูที่เครื่องชนิด Standalone ไม่มี นั่นคือ ไม่มีข้อจำกัดเรื่องความเร็วในการประมวลผล และ ข้อจำกัดเรื่องพื้นที่หน่วยความจำ เพราะใช้ CPU และ HARDDISK ของเครื่องคอมพิวเตอร์ในการประมวลผลและเก็บข้อมูล ทำให้ใช้งานได้ดีกว่าในการตรวจสอบลายนิ้วมือแบบ 1:N ที่ฐานข้อมูลหลักหมื่น หรือ หลักแสน คน ซึ่งเป็นอะไรที่เครื่องชนิด Standalone ยังทำไม่ได้

ข้อดี

สามารถพัฒนาเป็น Application เชิงพานิชย์ หรือ โปรแกรมสำเร็จรุปโดยจัดเป็นรูปแบบ Package ได้ เพราะเป็นการเขียนโปรแกรม และ ออกแบบฐานข้อมูลขึ้นมาเองใหม่ทั้งหมด จึงสามารถกำหนด และ ออกแบบฟังก์ชั่นที่ต้องการทำงานทังหมดได้ตามต้องการรวมถึงการออกแบบรูปร่างหน้าตาของโปรแกรม และ เลือก เครื่องมือ ภาษา โครงสร้างฐานข้อมูลที่จะใช้พัฒนาโปรแกรมได้ตามความต้องการ

ข้อเสีย

โปรแกรมเมอร์ต้องใช้เวลาในการพัฒนาเนิ่นนาน เพราะต้องเริ่มตั้งแต่การเขียนโปรแกรมจับคู่ลายนิ้วมือ การเก็บค่า ออกแบบโครงสร้างฐานข้อมูล และ ออกแบบฟังก์ชั่นการใช้งานของโปรแกรมใหม่ทั้งหมด รวมทั้งการติดต่อสื่อสารของโปรแกรมและการออกรายงาน อีกทั้งยังมีค่าใช้จ่ายเกี่ยวเนื่องกับ License ของชุดพัฒนาอีกด้วย

Tags: finger scan, เครื่องสแกนลายนิ้วมือ, fingerscan

 Print  Email