فهرست مطالب:

خواندن و رسم داده های سنسور نور و دما با رزبری پای: 5 مرحله
خواندن و رسم داده های سنسور نور و دما با رزبری پای: 5 مرحله

تصویری: خواندن و رسم داده های سنسور نور و دما با رزبری پای: 5 مرحله

تصویری: خواندن و رسم داده های سنسور نور و دما با رزبری پای: 5 مرحله
تصویری: باور نخواهید کرد چرا پنبه در ناف جمع می شود و علت این پدیده چیست؟ 2024, جولای
Anonim
خواندن و رسم نمودارهای سنسور نور و دما با رزبری پای
خواندن و رسم نمودارهای سنسور نور و دما با رزبری پای

در این دستورالعمل نحوه خواندن سنسور نور و دما با تمشک pi و مبدل آنالوگ به دیجیتال ADS1115 و نمودار آن با استفاده از matplotlib را خواهید آموخت. بیایید با مواد مورد نیاز شروع کنیم.

تدارکات

  1. Raspberry pi (هر کسی انجام می دهد ، اگرچه من از 4 استفاده می کنم)
  2. کارت MicroSD با Raspbian نصب شده (آموزش خوب:
  3. مانیتور HDMI و منبع تغذیه
  4. کابل میکرو USB
  5. مبدل آنالوگ به دیجیتال Adafruit ADS 1115:
  6. سیم های بلوز
  7. سنسور نور (LDR)
  8. حسگر دما
  9. پتانسیومتر x2 (مقدار وسط محدوده مقاومت سنسورهای دما و نور شما خواهد بود ، که بعداً آن را اندازه گیری می کنیم)
  10. تخته نان

مرحله 1: رزبری پای خود را تنظیم کنید

1. این آموزش را برای تنظیم رزبری پای دنبال کنید: https://www.raspberrypi.org/help/noobs-setup/2/2. فعال کردن I2C: روی نماد تمشک pi در بالا سمت چپ کلیک کنید. به تنظیمات> پیکربندی raspberry pi> interfaces> بروید و کادر "فعال کردن" را در I2C علامت بزنید. سپس روی OK.3 کلیک کنید. حالا پنجره ترمینال را باز کنید. در خط فرمان تایپ کنید:

sudo apt-get upgrade

sudo pip3 adafruit-circuitpython-ads1x15 را نصب کنید

sudo apt-get python-matplotlib را نصب کنید

مرحله 2: سنسورهای نور و دما را اندازه گیری کنید

اکنون ما باید مقاومت سنسورهای نور و دما را اندازه گیری کنیم. یک متر ولت را در تنظیمات اندازه گیری مقاومت در نظر بگیرید و خطوط سنسور نور خود را در روشنایی و تاریکی اندازه بگیرید. مقادیر را ثبت کنید. حالا ولت متر خود را روی خطوط سنسور دما در سرد و گرم قرار دهید (من از آب استفاده کردم). مقادیر را ثبت کنید. ما بعداً در مدار خود از آنها استفاده خواهیم کرد.

مرحله 3: مدار خود را سیم کشی کنید

مدار خود را سیم بندی کنید
مدار خود را سیم بندی کنید

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

(بالا-پایین) / 2

2. نمودار مدار بالا را دنبال کنید:

  1. SDA را روی مبدل آنالوگ به دیجیتال به SDA در pi متصل کنید
  2. SCL را روی مبدل آنالوگ به دیجیتال به SCL در pi متصل کنید
  3. VDD را روی مبدل آنالوگ به دیجیتال به pi 3.3v وصل کنید
  4. GND را روی مبدل آنالوگ به دیجیتال به pi وصل کنید
  5. بقیه اجزا را مطابق نمودار مدار وصل کنید.

مرحله 4: کد

1. در ترمینال تایپ کنید:

nano digital.py

2. کدی را که در زیر یا در Github دارم در ویرایشگر متنی که باید ظاهر شود بچسبانید.

matplotlib.pyplot را به عنوان plt وارد کنید

import numpy as np board board import busio import import import adafruit_ads1x15.ads1115 as ADS from adafruit_ads1x15.analog_in import AnalogIn i2c = busio. I2C (board. SCL، board. SDA) ads = ADS. ADS1115 (i2c) x = 0 light = AnalogIn (تبلیغات ، ADS. P0) temp = AnalogIn (تبلیغات ، ADS. P1) X1 = X2 = Y1 = Y2 = plt.ylim (-50 ، 1000) plt.plot (X1 ، Y1 ، label = "light"، color = '#0069af') plt.plot (X2، Y2، label = "Temp"، color = '#ff8000') plt.xlabel ('زمان (دقیقه)') plt.ylabel (' Level ') plt.title (' نور و دما در طول زمان ') plt.legend () در حالی که True: x += 5 Y1.append (light.value/30) X1.append (x) Y2.append (temp.value /3) X2.append (x) plt.plot (X1، Y1، label = "light"، color = '#0069af') plt.plot (X2، Y2، label = "Temp"، color = '#ff8000' plt.pause (300)

3. حالا CTRL+X را برای خروج فشار دهید ، y را برای ذخیره فشار دهید ، سپس Enter را فشار دهید.

برنامه خود را با تایپ کردن در ترمینال اجرا کنید:

sudo python3 digital.py

4. پتانسیومترها را طوری تنظیم کنید که نمودار طیف وسیعی از مقادیر را نشان دهد. سعی کنید نوری به سنسور بتابانید و چراغ های اتاق را خاموش کنید تا مطمئن شوید که نمودار طیف وسیعی از مقادیر را نشان می دهد.

اگر هر یک از مقادیر زیر پایین رفت ، تقسیم کننده مربوطه را پایین بیاورید (خط 29 و 31).

اگر هر یک از مقادیر بالاتر از بالا رفت ، تقسیم کننده مربوطه را افزایش دهید (خط 29 و 31).

مرحله 5: عیب یابی

1. همه اتصالات را با نمودار مدار بررسی کنید

2. تشخیص I2C - همه دستگاه های متصل از طریق i2c را به شما نشان می دهد:

در ترمینال تایپ کنید:

sudo apt-get i2c-tools را نصب کنید

sudo i2cdetect - y 1

توصیه شده: