نحوه نصب و راه اندازی اولیه برنامه ها در دستگاه حضور و غیاب

در این پروژه نحوه ساخت دستگاه حضور و غیاب رو به وسیله ی رسپبری پای و ماژول RC522 RFID یاد می گیرین. نمایشگر رو هم می توانید از سایز ۵ و ۷ اینچ تاچ استفاده کنید برای اینکه راحتر این پروژه رو هم انجام بدید بهتره ایمیج آماده رو از اینجا دانلود کنید و بعد فایل های پروژه حضور و غیاب رو هم از اینجا دانلود کنید. چون بیشتر مراحل از قبل انجام شده بنابراین فقط لازم است مراحل زیر رو دنبال کنید. قبل از هر کاری دستورات زیر رو در ترمینال وارد کنید

sudo apt-get install python2.7-dev

sudo apt-get install git

git clone https://github.com/lthiery/SPI-Py.git
cd SPI-Py

sudo python setup.py install

بعد دستور زیر را وارد کنید و spi رو فعال کنید

sudo raspi-config

 

RC522 RFID

ماژول MIFARE RC522 RFID رو بعد به صورت زیر به پایه های رسپبری وصل کنید

SDA –> 24

SCK –> 23

MOSI –> 19

MISO –> 21

GND –> 20

RST –> 22

۳٫۳V –> 1

آماده سازی دیتابیس دستگاه حضور و غیاب

فایل دیتابیس رو هم به نام project.sql از اینجا دانلود کنید و در دیتابیس بارگذاری کنید. برای این کار هم به روش زیر عمل کنید .نرم افزار Navicat Premium 12 اجرا کنید و طبق این آموزش به دیتابیس وصل بشید بعد همانند شکل زیر بر روی project دبل کلیک کنید وقتی سبز شد روش راست کلیک کنید و گزینه Execute SQL File رو انتخاب کنید.

دیتابیس حضور و غیاب

پنجره ایی همانند شکل زیر باز می شود، سپس بر روی دکمه که با کادر قرمز در تصویر زیر مشخص شده است کلیک کنید و فایل project.sql رو که دانلود کرده اید انتخاب و دکمه Start رو بزنید تا جداول به دیتابیس اضافه شوند.

دیتابیس حضور و غیاب

تعریف کارت برای کاربر جدید در دیتابیس

حالا پروژه را در لازاروس باز کنید و کامپایل سپس اجرا کنید ، قبل از اجرا در همین پوشه فایل Read.py رو هم اجرا کنید. وظیفه این فایل دریافت شناسه کارت RFID و ارسال شناسه از طریق UDP در localhost به نرم افزار می باشد. برای ثبت شناسه کارت در دیتابیس ، کارت رو نزدیک ماژول کنید و شناسه ایی را که در ترمینال توسط فایل read.py مشاهده می کنید رو بدون کاما و پشت سر هم در فلید serial در جدول users قرار دهید و یک نام برای این شناسه تعیین کنید.

حضور و غیاب

بروز رسانی در تاریخ ۲۸-۰۳-۱۳۹۷

تغییراتی در کد ها ایجاد کردم که سرعت خواندن اطلاعات از کارت و ذخیره را تا حد خیلی زیادی افزایش داده ، به طوری که رویدادی تعریف شده که با نزدیک شدن کارت به ماژول یکبار اطلاعات رو خونده و با ساختار JSON به نرم افزار ارسال می کند و با دور شدن کارت از ماژول منتظر نزدیک شدن کارت بعدی می شود. سرعت خواندن اطلاعات از کارت تقریبا هر ۱ ثانیه می باشد. کدهای جدید رو از اینجا دانلود کنید.