فهرست مطالب:

UCL - IIoT - بازار کشاورزان: 7 مرحله
UCL - IIoT - بازار کشاورزان: 7 مرحله

تصویری: UCL - IIoT - بازار کشاورزان: 7 مرحله

تصویری: UCL - IIoT - بازار کشاورزان: 7 مرحله
تصویری: Ben Goldacre: Battling Bad Science 2024, جولای
Anonim
UCL - IIoT - بازار کشاورزان
UCL - IIoT - بازار کشاورزان

کیف پول Farmersmarket را می توان در نمایشگاه ها ، بازارهای کشاورزان یا مجامع دیگری که کالا در آن به فروش می رسد استفاده کرد.

کیف پول Farmersmarket یک دستگاه شمارش سکه است که به منظور مشاهده سریع کل محتویات جعبه ای که سکه دارد امکان پذیر است. کیف پول farmmarket همچنین کل آن را در سروری برنامه ریزی شده از طریق Node-red بارگذاری می کند.

این برنامه توسط سه دانشجوی کالج دانشگاهی Lillebælt دانمارک ساخته شده است. از زمان پروژه قبلی ما ، The sorter coin ، ما چیزهای جدیدی را آموختیم که باید در ساخت آنها گنجانده شود. ما تصمیم گرفته ایم که مرتب سازی سکه ها را کنار بگذاریم و در عوض دستگاه را مجبور به شمارش کنیم و آنها را در یک جعبه سکه عمومی ذخیره کنیم.

این کیف پول از پنج اسلاید یا اسلات تشکیل شده است که یکی برای هر نوع سکه وجود دارد. هنگامی که یک سکه در شکاف مناسب قرار می گیرد ، از کنار یک بازتابنده به پایین می افتد ، که یک سیگنال HIGH به آردوینو ارسال می کند. ما از سیگنال برای افزودن مقدار سکه به کل شمارش شده ، نمایش آن در صفحه خارجی و ارسال کل جدید به سرور استفاده خواهیم کرد. هنگامی که سرور کل را دریافت می کند ، UI موجود در اینترنت را نشان می دهد که مجموع جدید را نشان می دهد.

جعبه ای با پنج اسلات سکه منتهی به پنج اسلاید داخلی ، یک عدد برای هر نوع سکه: 1kr ، 2kr ، 5kr ، 10kr ، 20kr

یک صفحه نمایش LCD که کل پول نقد را در بالای جعبه نشان می دهد.

قسمت بالای جعبه با دریچه محکم شده است. با بالا آوردن قسمت بالا ، محفظه آردوینو به همراه قسمت بالایی شامل LCD ، شکاف سکه ، بازتابنده ها و غیره خارج می شود و تنها جعبه ای باقی می ماند که سکه در آن ذخیره شده است.

اجزا و مواد - ابزار و تجهیزات ساخت جعبه (می تواند مقوا یا چوب باشد)

- آردوینو مگا 2560

- 30 جامپر وایر

- 5 x LDR "سنسور نور"

- مقاومت 5 x 220 اهم

- مقاومت 5 x 10k اهم

- 5 عدد LED سفید

- ماژول LCD 16x02

- سکه

کد در آردوینو

همانطور که قبلاً ذکر شد ، این پروژه از پروژه قبلی ماست که تقریباً هشت ماه پیش (https://www.instructables.com/id/Coin-Sorting-Machine/) ساخته شده است. به همین دلیل ما می توانیم بخش بزرگی از کد را در arduino مجدداً استفاده کنیم ، اگرچه تغییرات کوچکتری در آن وجود دارد. همانطور که مشاهده می کنید کد نسبتاً ساده ای است که هر فردی که تجربه کمی در زمینه آردوینو دارد باید بتواند آن را درک کند.

Node-RED Node-RED ابزاری است که ما برای به دست آوردن داده ها از آردوینو و رایانه شما و در صورت تمایل به نفع اینترنت از آن استفاده می کنیم. یکی دیگر از دلایل مهم استفاده از Node-RED ، توانایی ارائه داده ها از Arduino به گونه ای است که به راحتی قابل درک باشد ، برای افرادی که هیچ تجربه برنامه نویسی/کد نویسی با Arduino و Node-RED ندارند.

پایگاه داده با استفاده از Wampserver می توانیم مقادیر خود را از Arduino در پایگاه داده ذخیره کنیم. با استفاده از Wampserver امکان ایجاد و جایگزینی پایگاه داده خود به دلخواه شما با استفاده از phpMyAdmin برای مدیریت MySQL وجود دارد. در مورد ما ، ما شش مقدار داریم که باید ذخیره کنیم (یکی برای هر نوع سکه و دیگری برای نتیجه) ، و بنابراین ما شش ستون ایجاد کرده ایم که می توان هر مقدار را در آنها ذخیره کرد.

مرحله 1: چگونه کار می کند؟

چگونه کار می کند؟
چگونه کار می کند؟

در مانور دقیق تر ، اکنون نحوه عملکرد سیستم ما را توضیح می دهیم.

همانطور که در نمودار جریان می بینید ، اولین چیزی که فرآیند را تنظیم می کند ، زمانی است که یک سکه در شکاف درست آن قرار می گیرد.

هنگامی که سکه از کنار سنسور عبور می کند ، سنسور نور LDR متوجه کاهش نور می شود ، که باعث می شود برنامه آردوینو متغیر "Antal" (تعداد) را با یک افزایش دهد ، زیرا اکنون یک سکه در دستگاه وجود دارد. در همان زمان ارزش سکه به متغیر "نتیجه" اضافه می شود. "result" با مقدار جدید آن روی LCD نمایش داده می شود.

مقادیر جدید "Antal" و "result" به Node-RED ارسال می شود ، که در آن داشبورد با این مقادیر خود را به روز می کند. در نهایت Node-RED مقادیر را به پایگاه داده ما ارسال می کند.

و تکرار کنید.

مرحله 2: ساخت جعبه

این بار ما از Illustrator برای طراحی جعبه خود استفاده کرده ایم. با یک برش لیزری ما باید دقیقاً این جعبه و ویژگی های مورد نیاز برای پروژه خود را بسازیم. در نهایت این به شما بستگی دارد که تصمیم بگیرید چگونه جعبه ای مناسب برای پروژه خود بسازید.

مرحله 3: اضافه کردن آردوینو

افزودن آردوینو
افزودن آردوینو

زمان آن رسیده است که Arduino را در جعبه پیاده سازی کنید. این بسیار دشوار است ، زیرا سنسور می تواند رفتار غیرقابل پیش بینی داشته باشد. (جدید) در این مرحله ما سنسور مورد استفاده خود را تغییر داده ایم ، به دلیل عدم اطمینان این سنسورها (tcrt 5000). در عوض ما یک سنسور LDR ساده تر (مقاومت وابسته به نور) را انتخاب کرده ایم. خروجی این سنسور یک مقدار آنالوگ است که بسته به میزان نوری که به سنسور می رسد تغییر می کند.

مرحله 4: کد آردوینو

در این مرحله ما تمرکز خود را بر روی نرم افزار قرار می دهیم. کد آردوینو به این شکل است:

const int sensorPin1 = 3؛ // سنسور TCRT-5000 که به پین شماره متصل است. 2 int sensorState1 = 0؛ // حاوی مقدار سنسور (بالا/پایین)

int Antal10 = 0؛ // متغیری که مقدار سکه هایی را که در دستگاه int قرار داده اند ذخیره می کند

Resultat = 0 ؛ // متغیری که ارزش ترکیبی همه سکه های وارد شده در دستگاه را ذخیره می کند

void setup () {Serial.begin (9600)؛ }

حلقه خالی () {int sensorState1 = analogRead (sensorPin1) ؛ // وضعیت سنسور را می خواند

if (540 <sensorState1 <620) {// وقتی مقدار خروجی سنسورها بین 540 و 620 باشد

Antal10 += 10 ؛ // - یک سکه از سنسور عبور می کند که مقداری نور را مسدود می کند

resultat += 10؛ // - و سنسور سطح کمتری از نور را می خواند}

Serial.print (Resultat) ؛

Serial.print ("،") ؛ // متغیرها را با کاما جدا می کند ، که هنگام خواندن مقادیر متغیرها در Node-RED ضروری است

Serial.println (Antal10)؛ // - و همچنین زمانی لازم است که این مقادیر در پایگاه داده ذخیره شوند

تأخیر (100) ؛ }

این کد فقط برای یک سنسور نوشته شده است تا خواندن آن آسان تر شود.

کد کامل:

مرحله 5: Node-RED

Node-RED
Node-RED
Node-RED
Node-RED

وقتی کد آردوینو آنطور که باید اجرا می شود ، می توانید برنامه نویسی Node-RED را شروع کنید ، که قرار است به عنوان رابط میانی بین آردوینو و پایگاه داده و به عنوان نمایش بصری نحوه عملکرد دستگاه عمل کند. برنامه نویسی Node-RED شامل استفاده از گره هایی با عملکردهای مختلف و قرار دادن پارامترهای مناسب برای عملکرد صحیح این گره ها است.

وقتی داده های ما به Node-RED می رسد ، به دو تابع تقسیم مختلف ارسال می شود. یکی از این عملکردها داده های تقسیم شده را به پایگاه داده ارسال می کند. یکی دیگر ، داده های مختلف را روی هر یک از گره های داشبورد خود ارسال می کند ، که اکنون باید در داشبورد قابل مشاهده باشد.

همانطور که گفته شد ما شش ارزش داریم که باید مورد توجه قرار گیرد. با قابلیت های داشبورد Node-Red ، ما می توانیم این مقادیر را نمایش دهیم ، همانطور که در تصویر در سمت راست بالای مرحله 3 مشاهده می کنید.

کد Node-RED:

مرحله 6: پایگاه داده

پایگاه داده
پایگاه داده

اکنون ما از پایگاه داده برای ذخیره مقادیر استفاده می کنیم. با استفاده از Wampserver امکان استفاده از phpMyAdmin برای مدیریت MySQL و ایجاد پایگاه داده خود ، با استفاده از سرور محلی برای نیازهای خاص شما وجود دارد.

ابتدا هنگام ایجاد یک پایگاه داده (farm_market) از ابتدا باید یک جدول (mont_tabel) بسازید ، که در آن ارزش های خود را ذخیره می کنید. بسته به میزان داده ای که دارید و نحوه سفارش آن ، می توانید به تعداد مورد نیاز جداول بسازید. زیرا ما باید شش مقدار مختلف ذخیره کنیم و بنابراین به شش ستون ، یک عدد برای هر مقدار ، در جدول خود نیاز داریم. در تصویر بالا می توانید پایگاه داده ما را مشاهده کنید.

هنگامی که داده های ما به Node-RED می رسد ، توسط یک تابع تقسیم تقسیم می شود و داده های اکنون به پایگاه داده ارسال می شود.

مرحله 7: ارزیابی

ابتدا می خواهیم اشاره کنیم که ساخت جعبه از چوب به جای مقوا ، کل ساختار فیزیکی را بسیار مطمئن تر می کند ، بنابراین توصیه می کنیم این کار را انجام دهید.

تغییر سنسورها از TCRT-5000 و سنسور نور LDR ساده ، ثبات بیشتری در مورد توانایی سنسورها برای خواندن سریع سکه در کنار آن دارد. هنگام کار با TCRT-5000 عوامل زیادی وجود دارد که باید در نظر گرفته شوند تا سنسور آنطور که می خواهید کار کند.

به نظر می رسد که سیستم را به یک پایگاه داده متصل کرده و بتوانید داده های خود را به گونه ای ارائه دهید ، که هر شخصی بدون هیچ گونه اطلاعات قبلی از این پروژه قادر به درک آنچه در حال انجام است ، به پروژه ارزش بیشتری می بخشد.

توصیه شده: