فهرست مطالب:

Fanair: یک ایستگاه هواشناسی برای اتاق شما: 6 مرحله (همراه با تصاویر)
Fanair: یک ایستگاه هواشناسی برای اتاق شما: 6 مرحله (همراه با تصاویر)

تصویری: Fanair: یک ایستگاه هواشناسی برای اتاق شما: 6 مرحله (همراه با تصاویر)

تصویری: Fanair: یک ایستگاه هواشناسی برای اتاق شما: 6 مرحله (همراه با تصاویر)
تصویری: Pain Management in Dysautonomia 2024, جولای
Anonim
Fanair: یک ایستگاه هواشناسی برای اتاق شما
Fanair: یک ایستگاه هواشناسی برای اتاق شما

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

فنیر برای حس کردن از حسگرهای متعددی استفاده می کند:

  • درجه حرارت
  • رطوبت
  • سبک
  • گازهای خاص
  • فشار هوا

بسیار جمع و جور است و از Raspberry Pi 3 B برای بدست آوردن مقادیر ، ذخیره آنها در پایگاه داده MySQL و سپس در دسترس قرار دادن آنها در وب سایت استفاده می کند. در کد و وب سایت امکان دریافت اطلاعات واقعی آب و هوا برای مکان شما وجود دارد تا از وب سایت برای بررسی آب و هوای خارج نیز استفاده شود.

مرحله 1: همه موارد مورد نیاز را تهیه کنید

همه موارد مورد نیاز را دریافت کنید
همه موارد مورد نیاز را دریافت کنید

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

برای موارد خاص تر ، این بیل مواد را تهیه کردم.

  • تمشک پای 3 بی
  • MPC3008-ADC 8 بیتی 10 کانال
  • سنسور دما و رطوبت دماسنج AM2301
  • WR Rademacher WR-tyoe 930-1 PCB
  • قاب ABS برای نمونه سازی (مشکی)
  • LDR
  • سنسور گاز MQ135
  • 2x BC517 ترانزیستور دارلینگتون
  • LED RGB
  • بسته مقاومت
  • وزوز
  • سیم ها
  • فشارسنج BMP280
  • فن USB آرام (5 ولت)

همه اینها باید 110 یورو هزینه داشته باشد. در نظر داشته باشید که قیمت کل تقریبی است. همچنین ، پروژه من دارای یک صفحه LCD در عکس است اما متصل نیست زیرا فضای کافی در مورد من وجود نداشت ، بنابراین در دستورالعمل گنجانده نشده است.

مرحله 2: تمشک پای خود را آماده کنید

Raspian Jessie خود را با سیستم عامل Pixel از سایت رسمی Raspberry Pi دریافت کنید و پس از بارگیری آن ، آن را از حالت فشرده خارج کنید. یک فایل تصویری دریافت خواهید کرد. برای دریافت آن روی Pi ، باید آن را با استفاده از Win32 Disk Imager به کارت SD بنویسید. پس از نصب فایل تصویری و درایوی که در آن SD-Card قرار دارد را انتخاب کنید. سپس نوشتن را فشار دهید و منتظر بمانید تا کار تمام شود.

پس از اتمام کار ، روی SD-Card خود در File Explorer کلیک کنید و پرونده ای با نام "cmdline.txt" را باز کنید و درست قبل از rootwait به انتهای فایل متنی بروید و "ip = 254.169.10.2" را با فاصله در اطراف بنویسید. پس از ذخیره آن باید در جایی در داخل پنجره راست کلیک کرده و یک فایل جدید به نام 'ssh' ایجاد کنید. توجه داشته باشید که این فایل دارای پسوند فایل نیست. برای اطمینان از اینکه برنامه افزودنی ندارد روی "view" در فایل اکسپلورر کلیک کنید و "فایل های مخفی" را بررسی کنید. اگر نام آن را تغییر داد و پسوند را حذف کرد ، فقط "ssh" را می خواند.

پس از انجام این کار ، در نهایت می توانید SD-Card خود را در رزبری پای قرار دهید. یک سرویس گیرنده ssh را بارگیری کنید (من MobaXterm را توصیه می کنم). و با استفاده از ssh با IP ای که قبلاً "254.169.10.2" تنظیم کرده اید وصل شوید. نام کاربری "pi" ، رمز "تمشک" است. در صورت تمایل می توانید با تایپ کردن دستور 'sudo passwd' در ترمینال و پیروی از دستورالعمل ها ، رمز عبور را تغییر دهید. از آنجا که ما قصد داریم از یک قسمت خوب از SD-Card برای Fanair استفاده کنیم ، باید با تایپ کردن "sudo rapi-config" و "Advanced Options" و سپس "Expand File System" فضای ذخیره سازی موجود را افزایش دهید. در صورت درخواست راه اندازی مجدد

ما از رابط 1 سیم ، SPI و I2C استفاده خواهیم کرد. برای استفاده از آنها ابتدا باید آنها را تنظیم کنید!

مرحله 3: همه چیز را به هم متصل کنید

همه چیز را به هم متصل کنید
همه چیز را به هم متصل کنید
همه چیز را به هم متصل کنید
همه چیز را به هم متصل کنید

زمان ساخت مدار است! اولین بار احتمالاً باید آن را روی یک تخته نان امتحان کنید ، اما اگر وقت ندارید می توانید آن را با هم لحیم کنید.

مداری که به آن احتیاج دارید شبیه شکل بالا است ، برای راحتی نسخه نان برد نیز در آن گنجانده شده است.

مرحله 4: پایگاه داده خود را ایجاد کنید

برای ذخیره کارآمد همه داده هایی که دریافت می کنید ، از پایگاه داده TSQL MySQL استفاده می کنیم. قبل از نصب MySQL با تایپ چند دستور در ترمینال مطمئن شوید که همه چیز به روز است:

  • 'sudo apt-get update'
  • 'sudo apt-get upgrade'
  • 'sudo apt-get dist-upgrade'

با تایپ کردن "y" هرگونه درخواست را بپذیرید و وارد کنید.

برای نصب نوع MySQL:

  • 'sudo apt-get mysql-server install'
  • 'sudo apt-get install mysql-client'

هنگامی که از شما خواسته شد یک رمز عبور اصلی به دلخواه خود ایجاد کنید.

پس از اتمام نصب ورود با استفاده از:

'mysql -uroot -p'

و رمز عبور خود را تایپ کنید.

کد Fanair را از My Github دریافت کنید! روی "Clone or download" و سپس "Download ZIP" کلیک کنید. کد را در پوشه دلخواه خود از حالت فشرده خارج کنید. پرس و جو برای ایجاد پایگاه داده کاملاً عملیاتی در پوشه پایگاه داده است. فایل را باز کرده و کد را کپی کرده و با باز کردن MySQL در ترمینال بچسبانید. سپس روی enter کلیک کنید تا پایگاه داده تمام شود!

مرحله 5: زمان کد فرا رسیده است

برای استفاده از همه سنسورها ، بدیهی است که باید یک برنامه را اجرا کنید. خوشبختانه کد قبلاً انجام شده است (در بیشتر موارد) ، و ما قبلاً هنگام دریافت پرس و جو SQL پایگاه داده ، آن را بارگیری کردیم.

همانطور که گفتم چند مورد وجود دارد که هنوز باید تغییر داده شوند تا برنامه به درستی کار کند. اول از همه این برنامه از API Darksky برای بدست آوردن اطلاعات آب و هوا بر اساس طول و عرض جغرافیایی استفاده می کند. برای استفاده از آن باید ثبت نام کنید. 1000 تماس اول رایگان است و پس از آن هزینه هر تماس 0.0001 دلار است. من شنیده ام که اگر پرداخت نکنید حساب شما مسدود می شود. برای انصاف 0.0001 دلار در هر تماس بسیار ارزان است. Fanair هر ساعت با آخرین اطلاعات تماس می گیرد ، به این معنی که در یک سال اگر به صورت تمام وقت اجرا شود ، 0.876 دلار برای شما هزینه دارد. همچنین اگر Fanair تمام وقت کار کند 41 روز رایگان دریافت می کنید.

پس از ثبت نام ، کلید API خود را جستجو کنید. طول و عرض جغرافیایی موقعیت مکانی خود را در نقشه های گوگل جستجو کنید یا سعی کنید آن را در گوگل جستجو کنید. یک فایل متنی جدید ایجاد کنید فهرست اصلی Fanair (با کلاسها ، main.py…). نام فایل را "key_location.txt" بگذارید. فایل متنی را باز کرده و در خط اول کلید API Darksky خود را بچسبانید. در خط دوم طول جغرافیایی خود را و در خط سوم عرض جغرافیایی خود را (هر دو به صورت اعشاری) بچسبانید. وقتی کارتان تمام شد فایل را ذخیره کنید.

در همان فهرست یک فایل متنی دیگر به نام 'database_dsn.txt' ایجاد کنید. خط اول باید بگوید "localhost". خط دوم "ریشه" است. در خط سوم باید رمز عبور خود را که قبلاً برای پایگاه داده ایجاد کرده اید تایپ کنید ، و در خط چهارم و آخر باید "fanair" را تایپ کنید.

روی فایل main.py راست کلیک کرده و ویرایش را انتخاب کنید. 'fanair = Fanair (5 ، 26 ، 17 ، 27 ، 22 ، 4 ، "AM2301" ، 1 ، 0 ، 0 ، 0 ، "key_location.txt" ، "database_dsn.txt") "باید تغییر کند. اگر تصویر را دنبال کردید ، 5 مقدار اول باید از '5 ، 26 ، 17 ، 27 ، 22 ، 4' به '20 ، 21 ، 26 ، 19 ، 13 'تغییر کند. '/home/muhsin/Applications/Fanair' نیز باید به مسیر ریشه Fanair شما (جایی که main.py است) تغییر کند. اطمینان حاصل کنید که یک علامت بریده در جلوی "خانه" قرار دهید اما نه بعد از "Fanair".

اکنون این همه عالی است ، اما کد باید در Pi وارد شود. خوشبختانه برای ما پروتکل sftp وجود دارد. برای قرار دادن فایل ها در Pi از یک سرویس گیرنده sftp مانند FileZilla استفاده کنید یا اگر تصمیم به استفاده از MobaXterm دارید می توانید فایل ها را به راحتی در رابط sftp سمت چپ ترمینال بارگذاری کنید.

طبق تجربه من ، همیشه تاریخ و زمان مناسب را در رزبری پای دریافت نمی کنم. برای اطمینان از اینکه زمان دقیق دریافت خواهید کرد ، پیشنهاد می کنم این راهنما را دنبال کنید: تاریخ و زمان Raspberry Pi را همگام سازی کنید.

و در آخر چند کتابخانه نیاز به نصب دارد و چند رابط باید فعال شوند:

'sudo apt-get install build-essential python-dev'

Adafruit DHT:

'pip3 install adafruit_python_dht'

1-سیم:

  1. 'sudo raspi-config'
  2. "گزینه های رابط"
  3. "1 سیم"
  4. فعال کنید
  5. 'sudo nano /boot/config.txt'
  6. این خط را در فایل اضافه کنید: 'dtoverlay = w1-gpio'
  7. 'sudo reboot'

SPI:

  1. 'sudo raspi-config'
  2. "گزینه های رابط"
  3. 'SPI'
  4. فعال کنید
  5. 'sudo reboot'
  6. 'sudo nano /boot/config.txt'
  7. عبارت 'dtparam = spi = on' را جستجو کرده و با حذف هشتگ آن را کامنت نکنید.
  8. 'sudo apt-get python3-dev را نصب کنید

Smbus:

  1. 'sudo raspi-config'"
  2. "گزینه های رابط"
  3. 'I2C'
  4. فعال کنید
  5. 'sudo reboot'
  6. 'sudo apt-get install -y python-smbus'
  7. 'sudo apt-get install -y i2c-tools'
  8. 'sudo nano /boot/config.txt'
  9. عبارت dtparam = i2c_arm = on را جستجو کنید و با حذف هشتگ آن را کامنت نکنید.

فلاسک

pip3 Flask را نصب کنید

کانکتور mysql

'pip3 install -Iv mysql -connector == 2.1.4'

spidev

pip3 install py-spidev

دارکسکی

pip3 install darkskylib

مرحله 6: آن را امتحان کنید

اگر تا کنون موفق شده اید به پشت ضربه بزنید. اکنون همه کارها انجام شده است تا فنیر به درستی کار کند. بنابراین برای آزمایش آن ، "cd" "" را تایپ کنید. مکان فایل "/home/pi" است ، به عنوان مثال اگر فقط در فهرست اصلی خود چسبانده اید. سپس "python3 main.py" را تایپ کرده و اجازه دهید 15 دقیقه استراحت کند تا پس از اتمام کار ، اطلاعاتی در پایگاه داده داشته باشد. بعد از آن ctrl + c را فشار دهید و برنامه را متوقف کرده و عبارت python3 Flask.py را تایپ کنید. برای بررسی اینکه آیا وب سایت شما کار می کند یا خیر ، باید به آدرس IP Pi خود که بعد از آن با ': 5000' (مانند این: 169.254.10.1:5000 ') مراجعه کنید.

برای اجرای خودکار پس از بوت:

'sudo nano /etc/rc.local'

در انتهای فایل اما قبل از خروج 0:

'sudo python3 "/main.py" &'

'sudo python3 "/Flask.py" &'

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

توصیه شده: