با استفاده از DS18B20 و رسپبری پای، دما را بخوانید.

در پایان این آموزش قادر خواهید بود تا با استفاده از DS18B20 و رسپبری پای، دمای محیط زندگی خود را بخوانید. با ما همراه باشید.

گام اول : ابزار و قطعات مورد نیاز

 

 برد رسپبری پای 2 مدل B × 1
سنسور DS18B20 × 1
سیم جامپر نری به مادگی × 1
مقاومت 4.7 کیلواهمی × 1

 

Read temperature with DS18B20 Raspberry Pi 2Read temperature with DS18B20 Raspberry Pi 3

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

گام دوم : سیم کشی

 

Read temperature with DS18B20 Raspberry Pi 4Read temperature with DS18B20 Raspberry Pi 5Read temperature with DS18B20 Raspberry Pi 6

 

نحوه ی سیم کشی پروژه در تصویر بالا نشان داده شده است.
- 3.3V سنسور (قرمز) را به ریل 3.3V روی رسپبری پای متصل کنید.

- GND سنسور (مشکی) را به ریل GND روی رسپبری پای متصل کنید.

- داده (زرد) را به یک پین روی رسپبری پای متصل کنید.

- همانگونه که در تصویر نشان داده شده است، مقاومت را به 3.3V و Data وصل کنید.

هشدار!!!

حتما باید روی پین 7 - GPIO04 باشد.

ابتدای مقاومت باید روی 3.3V قرار بگیرد (رنگ زرد جلوی مقاومت می باشد.)

گام سوم : برنامه نویسی

 

Read temperature with DS18B20 Raspberry Pi 7

رسپبری پای را روشن کنید و مراحل زیر را طی کنید.

مرحله اول

در ابتدا باید یک فایل را پیکربندی کنید.
این کار را با استفاده از تایپ sudo nano /boot/config.txt انجام دهید.
این فایل این امکان را به شما می دهد تا بوت را پیکربندی کنید.
Dtoverlay را جستجو کنید.
بعد از یافتن آن، تنها لازم است که آن را به dtoverlay=w1-gpio اصلاح کنید.
عبارت sudo reboot را تایپ کنید تا دستگاه ریبوت شود.

مرحله دوم

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


sudo modprobe w1-gpio && sudo modprobe w1_therm
ls -l /sys/bus/w1/devices/
cat /sys/bus/w1/devices/28-000006dfa76c/w1_slave

توجه !!!

سنسور استفاده شده در اینجا 28-000006dfa76c است و ممکن است با سنسور مورد استفاده شما متفاوت باشد. اگر از سنسور دیگری استفاده می کنید نام آن را در متن بالا جایگزین کنید.

مرحله سوم

توجه کنید که نام سنسور در کد زیر با nano temp.py جایگزین شده است.


import time
try:
        while True:
                tempfile = open("/sys/bus/w1/devices/28-000006dfa76c/w1_slave")
                thetext = tempfile.read()
                tempfile.close()
                tempdata = thetext.split("\n")[1].split(" ")[9]
                temperature = float(tempdata[2:])
                temperature = temperature / 1000
                print temperature
                time.sleep(1)
except KeyboardInterrupt:
        pass

 گام چهارم: راه اندازی

Read temperature with DS18B20 Raspberry Pi 8
همانگونه که در تصویر بالا قابل مشاهده است، برای اجرای برنامه تنها کافیست عبارت sudo python temp.py را تایپ کنید و از اطلاعات دمایی اتاق خود آگاه شوید.
منبع : instructables

افزودن نظر
  • سلام
    داخل قسمت Devices از کد /sys/bus/w1/devices/28-000006dfa76c/ هیچ چیزی برای نمایش وجود نداره حتی توی سایت های انگلیسی هم سرچ کردم نوشته بود دستور ls رو بزنید لیست دیوایس ها رو نشون میده، که بازم من زدم دیوایسی رو نشناخت
    ضمنا من از سنسور DS18B20 استفاده میکنم ، مدارش رو هم دقیقا عین چیزی که توی سایت های دیگه هم هست بستم.

    0 لینک کوتاه: پاسخ

دسته بندی ها

Icon Arduino
آردوینو
Icon Raspberry Pi
رسپبری پای
Icon Launchpad
لانچ پد
Icon St
برد های دیسکاوری
Icon Sensors
سنسورها
Icon Other
سایر پروژه ها

جدیدترین آموزش ها


محبوبترین آموزش ها


شماره تماس: ۵۹ ۸۳ ۰۲ ۸۸ ۰۲۱

info@caferobot.ir

ایران | تهران

ما را در شبکه های اجتماعی دنبال کنید

ورود

ثبت


x

مطلب مفیدی بود؟

برای دریافت جدیدترین آموزش ها و خبرها در ایمیل خود، در خبرنامه کافه ربات عضو شوید