ผู้เขียน หัวข้อ: มาลองใช้ Raspberry Pi อ่านบัตรประชาชนดูกันเถอะ  (อ่าน 14702 ครั้ง)

0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

ออฟไลน์ manoi

  • Moderator
  • Hero Member
  • *****
  • กระทู้: 8,669
    • ดูรายละเอียด
    • HOSxP Community Center
มาลองใช้ Raspberry Pi อ่านบัตรประชาชนดูกันเถอะ
« เมื่อ: พฤศจิกายน 01, 2018, 09:34:29 AM »
นี่เป็นกระทู้แรกที่เกียวกับ IoT ในบอร์ด HOSxP นะครับ

Raspberry Pi เป็น Single-Board Computer ที่ถูกพัฒนาให้ทำงานได้เหมือนเครื่อง Computer ที่อาจจะไม่เร็วมากนักแต่ก็พอใช้งานได้ดีครับ หัวข้อนี้จะเป็นการใช้ Raspberry Pi ในการอ่านข้อมูลจากบัตรประชาชนและส่งข้อมูลให้ Node-Red นำไปใช้ใน Flow ที่เขียนนะครับ


อย่างแรกที่ต้องมีก็คือ Raspberry Pi ครับ ถ้าเป็นไปได้ก็ใช้ Model 3 นะครับ

ถัดมาก็เป็นการติดตั้ง Software ใน Raspberry Pi (ต่อไปผมจะเรียก rpi นะครับ มันสั้นดี)

OS ที่สามารถติดตั้งใน rpi ได้นั้นมีหลายตัวครับ ทั้ง Raspbian ที่มีพื้นฐานมาจาก Debian หรือ Android (ที่ยังไม่มี official release แต่ก็มีคนทำเป็น image ไว้ให้ทดลองใช้ได้ครับ) ในหัวข้อนี้จะใช้ Raspbian ในการติดตั้ง software นะครับ

Software ชุดแรกที่ต้องใช้คือ pcsc และ library ที่เกี่ยวข้องครับใช้คำสั่งนี้ติดตั้ง

โค๊ด: [Select]
sudo apt-get -y install libtool libusb-1.0-0-dev libpcsclite1 libpcsclite-dev pcscd pcsc-tools
ชุดถัดมาก็จะเป็น Node-Red ครับ
ใช้คำสั่งตามลำดับดังนี้ครับ

โค๊ด: [Select]
sudo apt-get -y update
sudo apt-get -y upgrade
sudo apt-get -y install build-essential yarn firefox-esr
curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
bash <(curl -sL https://raw.githubusercontent.com/node-red/raspbian-deb-package/master/resources/update-nodejs-and-nodered)

ชุดถัดมาจะเป็น Console Application ที่ผมเขียนขึ้นมาสำหรับอ่านบัตรประชาชน ตอนแรกคิดว่าจะลองเขียนใน flow ของ Node-Red แต่ผมไม่ค่อยถนัด java script สักเท่าไหร่ ก็เลยต้องใช้ Lazarus เขียนเป็น console app ให้ส่งข้อมูลผ่าน tcp ไปให้ Node-Red ที่สามารถเขียน Flow ให้รับค่าจาก tcp request ได้อยู่แล้วครับ แต่เนื่องจาก ตัว console app ที่เขียนมันต้อง link กับ gtk library ทำให้หากมาเรียกใช้ใน rpi ที่ทำงานแบบ headless แล้วมันจะ error จึงต้องเรียกใช้งานผ่าน xvfb ครับ จึงต้องติดตั้ง xvfb ก่อน

โค๊ด: [Select]
sudo apt-get install xvfb
แล้วก็จะเป็น App ที่ใช้อ่านบัตรประชาชนครับ

[ Guests cannot view attachments ]

extract แล้วอย่าลืม chmod +x เพื่อให้ทำงานได้ด้วยนะครับ ส่วนวิธีเรียกใช้โปรแกรมให้เรียกแบบนี้ครับ

โค๊ด: [Select]
xvfb-run ./smartcardconsole

หมายเหตุ หากต้องการเพิ่ม mirror ให้ apt-get สามารถทำงานได้เสร็จเร็วขึ้นให้เพิ่ม mirror ด้วยคำสั่งนี้ครับ

โค๊ด: [Select]
sudo su
echo "deb [trusted=yes] http://mirror1.ku.ac.th/raspbian/raspbian/ $(dpkg --status tzdata|grep Provides|cut -f2 -d'-') main contrib non-free rpi" > /etc/apt/sources.list
exit
« แก้ไขครั้งสุดท้าย: พฤศจิกายน 01, 2018, 11:25:09 AM โดย manoi »
HOSxP Project Manager / Cheif Developer / BMS MD

ออฟไลน์ manoi

  • Moderator
  • Hero Member
  • *****
  • กระทู้: 8,669
    • ดูรายละเอียด
    • HOSxP Community Center
Re: มาลองใช้ Raspberry Pi อ่านบัตรประชาชนดูกันเถอะ
« ตอบกลับ #1 เมื่อ: พฤศจิกายน 01, 2018, 09:59:50 AM »
ถัดไปก็จะเป็นการทำงานกับ Node-Red ครับ เรียกใช้งานผ่าน เมนู Programming ได้เลยครับ

[ Guests cannot view attachments ]


โปรแกรมจะทำงานที่ port 1880 สามารถใช้ firefox browse ไปที่ http://127.0.0.1:1880 เพื่อเขียน flow ได้เลยครับ

[ Guests cannot view attachments ]

Flow สามารถนำเข้าได้จากเมนูตามรูปครับ

[ Guests cannot view attachments ]

[ Guests cannot view attachments ]
« แก้ไขครั้งสุดท้าย: พฤศจิกายน 01, 2018, 10:33:46 AM โดย manoi »
HOSxP Project Manager / Cheif Developer / BMS MD

ออฟไลน์ aei_ou

  • Newbie
  • *
  • กระทู้: 39
    • ดูรายละเอียด
Re: มาลองใช้ Raspberry Pi อ่านบัตรประชาชนดูกันเถอะ
« ตอบกลับ #2 เมื่อ: พฤศจิกายน 14, 2018, 09:41:08 AM »
อาจารย์ครับ ตัวโปรแกรม BMS-HOSxP Screening Gateway เกี่ยวข้องกับการเชื่อมต่อของ iot รึเปล่าครับ ผมจะทำอุปกรณ์วัด vital sign ผู้ป่วยใน ใช้ NodeMCU และ Rpi ข้อมูลที่วัดได้ ต้องผ่าน BMS-HOSxP Screening Gateway ใช่ไหมครับ หรือยัดเข้าฐาน hos ตรงๆได้เลย ขอบคุณครับ
.