فهرست مطالب:
- مرحله 1: راه اندازی Arduino و RFID RC-522 (اتصال فیزیکی)
- مرحله 2: کد آردوینو ،
- مرحله 3: راه اندازی MySQL
- مرحله 4: تنظیم پردازش IDE
- مرحله 5: اجرای برنامه
- مرحله 6: نتیجه گیری
![برنامه سوپر مارکت ساده با استفاده از RFID RC-522 و Arduino Mega: 6 مرحله برنامه سوپر مارکت ساده با استفاده از RFID RC-522 و Arduino Mega: 6 مرحله](https://i.howwhatproduce.com/images/003/image-8505-21-j.webp)
تصویری: برنامه سوپر مارکت ساده با استفاده از RFID RC-522 و Arduino Mega: 6 مرحله
![تصویری: برنامه سوپر مارکت ساده با استفاده از RFID RC-522 و Arduino Mega: 6 مرحله تصویری: برنامه سوپر مارکت ساده با استفاده از RFID RC-522 و Arduino Mega: 6 مرحله](https://i.ytimg.com/vi/W1D6aWLo2qo/hqdefault.jpg)
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:55
![برنامه سوپر مارکت ساده با استفاده از RFID RC-522 و Arduino Mega برنامه سوپر مارکت ساده با استفاده از RFID RC-522 و Arduino Mega](https://i.howwhatproduce.com/images/003/image-8505-22-j.webp)
خوشحالم که شما را در اینجا در آموزش دیگر من می بینم ، در اینجا من به شما کمک می کنم تا یک برنامه ساده سوپر مارکت با استفاده از RFID RC-522 و Arduino با پردازش ایجاد کنید تا GUI ساده ایجاد کنید.
توجه: هنگام اجرای کد پردازش ، مانیتور سریال Arduino را اجرا نکنید زیرا درگیری پورت رخ می دهد زیرا هر دو باید از یک پورت استفاده کنند
تو نیاز داری:
- Arduino Mega یا Arduino Uno (من از مگا استفاده کردم)
- RFID-RC522
- 7 سیم بلوز نر به ماده
- برخی از کارت های شناسایی (اختیاری)
- کتابخانه RFID (باید ، لینک زیر)
- سرور Wamp
- پردازش IDE 2.2.1 (بیشتر از آن استفاده نکنید)
- کتابخانه BezierSQLib-0.2.0 برای پردازش (لینک دانلود در زیر)
سپس کتابخانه RFID زیر را بارگیری کرده و با کلیک روی Sketch-> Include Library-> Add. Zip Library در منوی فایل ، آن را به Arduino IDE خود اضافه کنید.
مرحله 1: راه اندازی Arduino و RFID RC-522 (اتصال فیزیکی)
![راه اندازی Arduino و RFID RC-522 (اتصال فیزیکی) راه اندازی Arduino و RFID RC-522 (اتصال فیزیکی)](https://i.howwhatproduce.com/images/003/image-8505-23-j.webp)
همانطور که در تصویر بالا نشان داده شده است ، به سادگی آردوینو را با RFID-RC522 وصل کنید.
برای Uno/Nano و Mega پین کنید
RC522 MODULE Uno/Nano MEGASDA D10 D9 SCK D13 D52 MOSI D11 D51 MISO D12 D50 IRQ N/A N/A GND GND GND RST D9 D8 3.3V 3.3V 3.3V
مرحله 2: کد آردوینو ،
کد زیر را کپی کرده و سپس آن را در Arduino خود بارگذاری کنید
/*PINOUT: RC522 MODULE Uno/Nano MEGA SDA D10 D9 SCK D13 D52 MOSI D11 D51 MISO D12 D50 IRQ N/AN/A GND GND GND RST D9 D8 3.3V 3.3V 3.3V*//*شامل کتابخانه استاندارد Arduino SPI */ #include/ *شامل کتابخانه RFID */ #include
/* DIO مورد استفاده برای پین های SDA (SS) و RST (بازنشانی) را تعریف کنید. */
#تعریف SDA_DIO 9 #تعریف RESET_DIO 8
/ * ایجاد نمونه ای از کتابخانه RFID */
RFID RC522 (SDA_DIO ، RESET_DIO) ؛ int reader = 0؛
void setup ()
{Serial.begin (9600) ؛ / * رابط SPI را فعال کنید */ SPI.begin ()؛ / * مقداردهی اولیه RFID reader */ RC522.init ()؛ }
حلقه خالی ()
{ / * شمارنده حلقه موقت * / byte i؛
/* آیا کارت شناسایی شده است؟ */
if (RC522.isCard ()) { / * در این صورت شماره سریال آن را دریافت کنید * / RC522.readCardSerial () ؛
/ * خروج شماره سریال به UART */ برای (i = 0 ؛ i <= 2؛ i ++) {Serial.print (RC522.serNum ، DEC)؛ //Serial.print(RC522.serNum ، HEX) ؛ } Serial.print ("،") ؛ Serial.print (خواننده ++) ؛ Serial.println ()؛ } تاخیر (1000) ؛ }
مرحله 3: راه اندازی MySQL
![راه اندازی MySQL راه اندازی MySQL](https://i.howwhatproduce.com/images/003/image-8505-24-j.webp)
- سرور Wamp را برای MySQL نصب کرده و برای ذخیره داده ها پیکربندی کنید (
- کنسول wamp serveropen MySQL را اجرا کنید
- پایگاه داده را انتخاب کنید
- سپس جدول داده های خود را ایجاد کنید
ایجاد جدول rfid (ID int (8) ، token int (1) ، نام varchar (20) ، مقدار int (4)) ؛
اکنون این پیوند را مشاهده کنید تا یاد بگیرید چگونه مقدار برچسب RFID خود را بدست آورید و سپس از کد زیر برای درج داده استفاده کنید. فراموش نکنید که مقدار ID را با برچسب RFID خود جایگزین کنید
وارد کردن در مقادیر rfid (3756178 ، 1 ، "مداد" ، 20) ؛
از مقدار توکن به عنوان 1 استفاده کنید تا پس از خواندن مقدار برچسب برای اولین بار به طور خودکار به 2 تغییر کند ، هنگام خواندن کارت که در DB وارد نشده است از 0 برای مقدار توکن استفاده نکنید ، 0 را اختصاص می دهد و سپس آن را به عنوان کارت ناشناس نشان می دهد. به
مرحله 4: تنظیم پردازش IDE
![راه اندازی پردازش IDE راه اندازی پردازش IDE](https://i.howwhatproduce.com/images/003/image-8505-25-j.webp)
- پردازنده IDE 2.2.1 را بارگیری و نصب کنید
- ZIP بالا را به MyDocuments/Processing/Libraries استخراج کنید
- اکنون IDE پردازش را باز کرده و بررسی کنید که کتابخانه به درستی نصب شده است یا نه مانند تصویر بالا
- سپس کد زیر را برای پردازش کپی کرده و نام خود را بگذارید
import de.bezier.data.sql.*؛ import processing.serial.*؛ // java.math. BigInteger؛
// ایجاد شده توسط 2005-05-10 توسط fjenett
// fjenett به روز شده 20080605
اتصال MySQL dbconnection ؛
رشته s = ""؛ int وزن = 700 ؛ int عرض = 1200 ؛ شناسه طولانی ؛ توکن int ؛ int مبلغ؛ int مجموع = 0؛
رشته a = {"NULL"، "NULL"}؛
انتهای انتهایی = 10 ؛ // شماره 10 ASCII برای linefeed (انتهای serial.println) است ، بعداً به دنبال این خواهیم بود تا پیامهای فردی را جدا کنیم سریال رشته ؛ // اعلام یک رشته جدید به نام 'سریال'. یک رشته دنباله ای از کاراکترها (نوع داده معروف به "char") پورت سریال است. رشته رشته ، قبلی ، نام ؛ PFont f؛
void setup ()
{// اندازه (عرض ، وزن) ؛ اندازه (700 ، 500) ؛ f = createFont ("Arial" ، 24 ، درست) ؛ // این مثال فرض می کند که شما // mysql server را به صورت محلی (در "localhost") اجرا می کنید. // // --username-- ، --password-- را با mysql-account خود جایگزین کنید. // کاربر رشته = "root"؛ String pass = ""؛ // نام پایگاه داده برای استفاده // پایگاه داده رشته = "IOT_Database"؛ // نام جدولی که ایجاد خواهد شد String table = ""؛ // اتصال به پایگاه داده سرور "localhost" dbconnection = MySQL جدید (این ، "localhost" ، پایگاه داده ، کاربر ، گذر)؛ port = جدید سریال (این ، Serial.list () [0] ، 9600) ؛ // مقداردهی اولیه شی با اختصاص پورت و نرخ baud (باید با پورت Arduino مطابقت داشته باشد) port.clear ()؛ // تابع از کتابخانه سریال که اولین خواندن را بیرون می اندازد ، در صورتی که خواندن را در وسط یک رشته از Arduino serial = port.readStringUntil (پایان) شروع کرده باشیم. // تابع که رشته را از پورت سریال تا println می خواند و سپس رشته را به متغیر رشته ما اختصاص می دهد (به نام 'سریال') serial = null؛ } void draw () {background (255)؛ textFont (f، 24)؛ پر کردن (0) ؛ متن ("مجموع مبلغ Rs:" ، 400 ، 400) ؛ متن (مجموع ، 585 ، 400) ؛ داده ها()؛ while (port.available ()> 0) {// تا زمانی که داده هایی از پورت سریال وجود دارد ، آن را بخوانید و آن را سریال = port.readStringUntil (پایان) ذخیره کنید ؛ } if (serial! = null) {prev = curr؛ curr = a [1]؛ a = تقسیم (سریال ، '،') ؛ // یک آرایه جدید (به نام 'a') که مقادیر را در سلولهای جداگانه ذخیره می کند (با کاما مشخص شده در برنامه Arduino شما جدا شده است) اگر ((curr). برابر است (قبلی)) {//} else {// println ("curr "، curr)؛ // println ("قبلی" ، قبلی) ؛ عملکرد()؛ }}}
تابع خالی ()
{if (dbconnection.connect ()) {// اکنون آن را دوباره بخوانید // dbconnection.query ("SELECT * from rfid where ID ="+a [0]+"")؛ while (dbconnection.next ()) {ID = dbconnection.getInt ("ID")؛ token = dbconnection.getInt ("token")؛ مقدار = dbconnection.getInt ("مبلغ") ؛ } if (token == 0) {println ("Ok")؛ textFont (f، 54)؛ پر کنید (255 ، 0 ، 0 ، 160) ؛ متن ("مورد ناشناخته شناسایی شد" ، 50 ، 300) ؛ تاخیر (2000) ؛ } else if (توکن == 1) {مجموع = مجموع+مبلغ ؛ dbconnection.query ("update rfid set token = 2 where ID ="+a [0]+"")؛ println ("خوب") ؛ textFont (f، 24)؛ پر کنید (255 ، 0 ، 0 ، 160) ؛ // متن ("مورد اضافه شد" ، 10 ، 30) ؛ تاخیر (1000) ؛ } else if (token == 2) {Total = Total-Amount؛ dbconnection.query ("update rfid set token = 1 where ID ="+a [0]+"")؛ println ("خوب") ؛ textFont (f، 24)؛ پر کنید (255 ، 0 ، 0 ، 160) ؛ // متن ("مورد حذف شد" ، 10 ، 30) ؛ تاخیر (1000) ؛ } else {} dbconnection.close ()؛ } else {// اتصال انجام نشد! }}
اطلاعات خالی ()
{int position = 100؛ if (dbconnection.connect ()) {dbconnection.query ("SELECT * from rfid where token = 2")؛ while (dbconnection.next ()) {Name = dbconnection.getString ("نام")؛ مقدار = dbconnection.getInt ("مبلغ") ؛ textFont (f، 24)؛ پر (0 ، 0 ، 255 ، 160) ؛ متن (نام ، 10 ، موقعیت) ؛ پر (0 ، 0 ، 0 ، 160) ؛ متن (مقدار ، 215 ، موقعیت) ؛ موقعیت = موقعیت+30 ؛ }} dbconnection.close ()؛ }
مرحله 5: اجرای برنامه
![اجرای برنامه اجرای برنامه](https://i.howwhatproduce.com/images/003/image-8505-26-j.webp)
![اجرای برنامه اجرای برنامه](https://i.howwhatproduce.com/images/003/image-8505-27-j.webp)
![اجرای برنامه اجرای برنامه](https://i.howwhatproduce.com/images/003/image-8505-28-j.webp)
![اجرای برنامه اجرای برنامه](https://i.howwhatproduce.com/images/003/image-8505-29-j.webp)
برنامه را با کلیک روی دکمه اجرا ببندید پنجره بازشو بسته نشود بسته شدن عملکرد را متوقف می کند و در زیر پرس و جو برای مشاهده داده های ذخیره شده در MySQL…
مرحله 6: نتیجه گیری
من می خواهم از شما برای خواندن آموزش من تشکر کنم. اگر مفید باشید و لایک (مورد علاقه) خود را بگذارید یا چیزی از من بخواهید ممنون می شوم زیرا انگیزه من را برای انجام این دستورالعمل ها بیشتر می کند. با خیال راحت هر سوالی را که باید بدانید بپرسید…
برنامه نویسی مبارک آردوینو…
توصیه شده:
برنامه افزودنی ساده در زبان برنامه نویسی شکسپیر: 18 مرحله
![برنامه افزودنی ساده در زبان برنامه نویسی شکسپیر: 18 مرحله برنامه افزودنی ساده در زبان برنامه نویسی شکسپیر: 18 مرحله](https://i.howwhatproduce.com/images/011/image-31570-j.webp)
برنامه افزودنی ساده در زبان برنامه نویسی شکسپیر: زبان برنامه نویسی شکسپیر (SPL) نمونه ای از زبان برنامه نویسی باطنی است ، که شاید یادگیری آن جالب و استفاده از آن جالب باشد ، اما در برنامه های کاربردی واقعی بسیار مفید نیست. SPL زبانی است که در آن کد منبع r
نحوه برنامه ریزی PIC MCU با برنامه نویس PICkit با استفاده از Breadboard: 3 مرحله
![نحوه برنامه ریزی PIC MCU با برنامه نویس PICkit با استفاده از Breadboard: 3 مرحله نحوه برنامه ریزی PIC MCU با برنامه نویس PICkit با استفاده از Breadboard: 3 مرحله](https://i.howwhatproduce.com/images/002/image-4853-37-j.webp)
نحوه برنامه ریزی PIC MCU با برنامه نویس PICkit با استفاده از Breadboard: برای بازی با میکروکنترلرهای PIC (یا هر دستگاه دیگر) نیازی به ابزارهای گران قیمت و پیچیده ندارید. تنها چیزی که نیاز دارید یک تخته نان است که در آن مدار و برنامه نویسی خود را آزمایش کنید. البته نوعی برنامه نویس و IDE ضروری است. در این دستورالعمل
مدار ساده LED ساده (نحوه استفاده از LED ها): 4 مرحله
![مدار ساده LED ساده (نحوه استفاده از LED ها): 4 مرحله مدار ساده LED ساده (نحوه استفاده از LED ها): 4 مرحله](https://i.howwhatproduce.com/images/001/image-2344-50-j.webp)
مدار ساده LED ساده (نحوه استفاده از LED ها): این دستورالعمل نحوه استفاده از LED ها و نحوه ساخت مدارهای ساده ساده LED را نشان می دهد ، که از مقاومت محدودکننده فعلی برای LED های 3V ، 6V ، 9V و amp استفاده می کند. 12 ولت LED یک جزء مهم در لوازم الکترونیکی است ، از آن برای چندین مورد استفاده می شود
سیستم مدیریت موتور برای افزایش برنامه با استفاده از Arduino Mega 2560 و IoT: 8 مرحله (همراه با تصاویر)
![سیستم مدیریت موتور برای افزایش برنامه با استفاده از Arduino Mega 2560 و IoT: 8 مرحله (همراه با تصاویر) سیستم مدیریت موتور برای افزایش برنامه با استفاده از Arduino Mega 2560 و IoT: 8 مرحله (همراه با تصاویر)](https://i.howwhatproduce.com/images/002/image-3387-34-j.webp)
سیستم مدیریت موتور برای افزایش برنامه با استفاده از Arduino Mega 2560 و IoT: امروزه میکروکنترلرهای مبتنی بر اینترنت اشیا به طور گسترده ای در برنامه های صنعتی مورد استفاده قرار می گیرند. از نظر اقتصادی از آنها به جای رایانه استفاده می شود. هدف پروژه ما کنترل کامل دیجیتالی ، ثبت اطلاعات و نظارت بر موتور القایی 3 فاز با
نحوه ایجاد یک برنامه چت ساده در ویژوال بیسیک با استفاده از Microsoft Winsock Control: 7 مرحله
![نحوه ایجاد یک برنامه چت ساده در ویژوال بیسیک با استفاده از Microsoft Winsock Control: 7 مرحله نحوه ایجاد یک برنامه چت ساده در ویژوال بیسیک با استفاده از Microsoft Winsock Control: 7 مرحله](https://i.howwhatproduce.com/images/004/image-11844-27-j.webp)
نحوه ایجاد یک برنامه چت ساده در ویژوال بیسیک با استفاده از Microsoft Winsock Control: در این قسمت به شما آموزش می دهم که چگونه یک برنامه چت ساده را بصورت ویژوال بیسیک بسازید. من به بررسی آنچه که همه کد انجام می دهد می پردازم ، بنابراین در هنگام ساختن آن خواهید آموخت و در پایان نحوه استفاده از آن را به شما نشان خواهم داد