فهرست مطالب:

چگونه با Raspberry Pi و Ubidots شمارنده مردم بسازیم: 6 مرحله
چگونه با Raspberry Pi و Ubidots شمارنده مردم بسازیم: 6 مرحله

تصویری: چگونه با Raspberry Pi و Ubidots شمارنده مردم بسازیم: 6 مرحله

تصویری: چگونه با Raspberry Pi و Ubidots شمارنده مردم بسازیم: 6 مرحله
تصویری: ساخت ایستگاه آب و هوایی با رزبری پای و ESP32 2024, نوامبر
Anonim
چگونه با Raspberry Pi و Ubidots شمارنده مردم بسازیم
چگونه با Raspberry Pi و Ubidots شمارنده مردم بسازیم
چگونه با Raspberry Pi و Ubidots شمارنده مردم بسازیم
چگونه با Raspberry Pi و Ubidots شمارنده مردم بسازیم

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

پیشخوان مردم معمولاً دستگاههای گران قیمتی هستند که در صنعت خرده فروشی برای درک نحوه رفتار خریداران استفاده می شوند. به لطف Raspberry Pi و Ubidots ، ما می توانیم در چند ساعت و با چند دلار یک پیشخوان افراد کاربردی بسازیم!

هنگامی که افراد شمارش اطلاعات را به Ubidots ارسال می کنیم ، می توانیم نمودارهای خوبی برای تجزیه و تحلیل و همچنین هشدارهای پیامکی/ایمیل ایجاد کنیم.

مرحله 1: تهیه مواد مناسب

به دست آوردن مواد مناسب
به دست آوردن مواد مناسب
به دست آوردن مواد مناسب
به دست آوردن مواد مناسب
به دست آوردن مواد مناسب
به دست آوردن مواد مناسب
به دست آوردن مواد مناسب
به دست آوردن مواد مناسب

برای تکمیل این پروژه به موارد زیر نیاز دارید:

  1. رزبری پای مدل B
  2. سنسور PIR توسط Parallax
  3. دانگل USB WiFi سازگار با Raspberry Pi
  4. یک باتری USB برای تغذیه رزبری پای (این مورد در صورت تمایل Pi به طور کامل بی سیم است)
  5. سه سیم جامپر زن و زن
  6. حساب Ubidots - یا - مجوز STEM

مرحله 2: سیم کشی کارها

سیم کشی امور
سیم کشی امور
سیم کشی امور
سیم کشی امور

استفاده از سنسور حرکت PIR بسیار ساده است زیرا فقط سه پین دارد:

  • V+
  • GND
  • یک پین سیگنال که هنگام حرکت "1" و در مواقع عدم خروجی "0" را نشان می دهد.

برای تشخیص این سیگنال نیازی به لحیم کاری نیست ، یا نوشتن توابع پیچیده I2C یا سریال ؛ فقط کابل ها را مستقیماً به پین های GPIO رزبری پای خود وصل کنید تا کار کند!

مرحله 3: روکش

روکش
روکش
روکش
روکش

از آنجا که سنسور PIR نسبت به حرکت بسیار حساس است ، من از کلید جامپر پشت آن برای تنظیم کمترین حساسیت احتمالی استفاده کردم. همچنین ، من یک قاب قدیمی را از یک عینک آفتابی برداشتم و در آن سوراخ ایجاد کردم ، سپس RPi و سنسور PIR را داخل آن قرار دادم. به این ترتیب ، سنسور حرکت به جای اینکه همه جانبه باشد ، در یک نقطه بسیار متمرکز شده است.

مرحله 4: کدگذاری RPi شما

در این مرحله ، فرض می کنیم که شما تنظیمات اولیه Raspberry Pi خود را انجام داده اید و به خط فرمان لینوکس آن نگاه می کنید. اگر نه ، توصیه می کنیم ابتدا از این راهنما استفاده کنید. همچنین می توانید این پست را در مورد استفاده از Wicd برای راه اندازی WiFi Raspberry Pi خود بررسی کنید.

بیایید با اطمینان از داشتن همه کتابخانه های مورد نیاز شروع کنیم:

$ sudo apt-get update $ sudo apt-get upgrade $ sudo apt-get نصب python-setuptools $ sudo easy_install pip $ pip نصب ubidots

یک فایل جدید با نام "peoplecounter.py" ایجاد کنید:

$ sudo nano peoplecounter.py

و کد زیر را در آن بنویسید. مطمئن شوید که مقادیر کلید API و شناسه متغیر را با مقادیر موجود در حساب شخصی Ubidots خود جایگزین کنید. (توجه: کد خیلی زیبا نیست ، اما من توسعه دهنده پایتون نیستم ، فقط یک سخت افزار هستم:)

اسکریپت شامل یک حلقه است که وضعیت پین شماره 7 (سنسور حرکت) را بررسی می کند. اگر "1" را بخواند ، به این معنی که حرکت وجود داشت ، متغیر "شمارش افراد" را افزایش می دهد و 1.5 ثانیه منتظر می ماند تا سنسور حرکت به حالت عادی برگردد. این کار 10 بار انجام می شود ، مطمئن شوید بین هر چرخه حداقل 1 ثانیه فاصله داشته باشد ، سپس مجموع "حرکات" را به Ubidots ارسال می کند. اگر نیاز به کالیبره کردن شمارنده افراد دارید ، باید با خطوط "time.sleep" با مقادیر دیگر بازی کنید.

از ubidots ApiClient را وارد کنید

RPi. GPIO را به عنوان GPIO وارد کنید

زمان واردات

GPIO.setmode (GPIO. BCM)

GPIO.setup (7 ، GPIO. IN)

تلاش كردن:

api = ApiClient ("a21ebaf64e14d195c0044fcc3b9f6dab9d653af3")

مردم = api.get_variable ("5238cec3f91b282c7357a140")

به جز: print "اتصال به API انجام نشد ، اتصال اینترنت خود را بررسی کنید"

شمارنده = 0

peoplev = 0

در حالی که (1):

حضور = GPIO.input (7)

اگر (حضور):

peoplecount += 1

حضور = 0

زمان خواب (1.5)

زمان خواب (1)

شمارنده += 1

اگر (شمارنده == 10):

چاپ تعداد افراد

people.save_value ({'value': peoplecount})

شمارنده = 0

peoplev = 0

مرحله 5: داده های خود را نمایش دهید

داده های خود را نمایش دهید
داده های خود را نمایش دهید
داده های خود را نمایش دهید
داده های خود را نمایش دهید
داده های خود را نمایش دهید
داده های خود را نمایش دهید
داده های خود را نمایش دهید
داده های خود را نمایش دهید

در نهایت ، به داشبورد Ubidots خود بروید و ویجتی از نوع "Statement" را اضافه کنید. با این کار تعداد کل افراد شناسایی شده در بازه زمانی مشخص شده توسط شما نمایش داده می شود

مرحله 6: جمع بندی

بسته شدن
بسته شدن

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

داده های جمع آوری شده را می توان به راحتی به Ubidots Cloud ارسال کرد ، جایی که می توان با ایجاد هشدار ، داشبورد زنده یا حتی به اشتراک گذاشتن این داده ها در رسانه های اجتماعی ، به عنوان کد جاسازی یا فقط در یک پیوند عمومی تفسیر کرد. همچنین می توانید این داده ها را از برنامه دیگری با استفاده از Ubidots API بخوانید.

توصیه شده: