فهرست مطالب:

مدارهای GPIO Raspberry Pi: استفاده از سنسور آنالوگ LDR بدون ADC (مبدل آنالوگ به دیجیتال): 4 مرحله
مدارهای GPIO Raspberry Pi: استفاده از سنسور آنالوگ LDR بدون ADC (مبدل آنالوگ به دیجیتال): 4 مرحله

تصویری: مدارهای GPIO Raspberry Pi: استفاده از سنسور آنالوگ LDR بدون ADC (مبدل آنالوگ به دیجیتال): 4 مرحله

تصویری: مدارهای GPIO Raspberry Pi: استفاده از سنسور آنالوگ LDR بدون ADC (مبدل آنالوگ به دیجیتال): 4 مرحله
تصویری: راه اندازی پروتکل I2C در برد رزبری پای و دریافت آنالوگ اطلاعات (Raspberry pi) 2024, جولای
Anonim
مدارهای GPIO Raspberry Pi: استفاده از سنسور آنالوگ LDR بدون ADC (مبدل آنالوگ به دیجیتال)
مدارهای GPIO Raspberry Pi: استفاده از سنسور آنالوگ LDR بدون ADC (مبدل آنالوگ به دیجیتال)

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

اگر می خواهیم از سنسورهای آنالوگ با رزبری پای استفاده کنیم ، باید بتوانیم مقاومت سنسور را اندازه گیری کنیم. برخلاف آردوینو ، پین های GPIO رزبری پای قادر به اندازه گیری مقاومت نیستند و تنها در صورتی می توانند حس کنند که ولتاژ تامین شده به آنها بیش از یک ولتاژ مشخص (تقریباً 2 ولت) باشد. برای غلبه بر این مشکل ، می توانید از مبدل آنالوگ به دیجیتال (ADC) استفاده کنید ، یا می توانید به جای آن از یک خازن نسبتاً ارزان استفاده کنید.

این دستورالعمل نحوه انجام این کار را به شما نشان می دهد.

مرحله 1: آنچه شما نیاز دارید

آنچه شما نیاز خواهید داشت
آنچه شما نیاز خواهید داشت
آنچه شما نیاز خواهید داشت
آنچه شما نیاز خواهید داشت
آنچه شما نیاز خواهید داشت
آنچه شما نیاز خواهید داشت
آنچه شما نیاز خواهید داشت
آنچه شما نیاز خواهید داشت

- RaspberryPi با Raspbian قبلاً نصب شده است. همچنین باید بتوانید با استفاده از مانیتور ، ماوس و صفحه کلید یا از طریق Remote Desktop به Pi دسترسی داشته باشید. می توانید از هر مدلی از رزبری پای استفاده کنید. اگر یکی از مدل های Pi Zero را دارید ، ممکن است بخواهید چند پین هدر را به پورت GPIO بچسبانید.

- یک مقاومت وابسته به نور (همچنین به عنوان LDR یا Photoresistor شناخته می شود)

- یک خازن سرامیکی 1 uF

- یک تخته نان نمونه اولیه بدون سرب

- برخی از سیم های جهنده نر به ماده

مرحله 2: مدار خود را بسازید

مدار خود را بسازید
مدار خود را بسازید
مدار خود را بسازید
مدار خود را بسازید

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

پس از بررسی مدار خود ، با پیروی از نمودار بالا ، کابل های بلوز را به پین های GPIO رزبری پای خود وصل کنید.

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

برای خواندن مقاومت وابسته به نور ، یک اسکریپت پایتون ایجاد کنید
برای خواندن مقاومت وابسته به نور ، یک اسکریپت پایتون ایجاد کنید

ما اکنون یک اسکریپت کوتاه می نویسیم که مقاومت LDR را با استفاده از پایتون خوانده و نمایش می دهد.

در رزبری پای خود ، IDLE (منو> برنامه نویسی> پایتون 2 (IDLE)) را باز کنید. یک پروژه جدید را باز کنید به مسیر File> New File بروید. سپس کد زیر را تایپ کنید (یا کپی و جایگذاری کنید):

import RPi. GPIO as GPIOimport timempin = 17 tpin = 27 GPIO.setmode (GPIO. BCM) cap = 0.000001 adj = 2.130620985i = 0 t = 0 while True: GPIO.setup (mpin، GPIO. OUT) GPIO.setup (tpin ، GPIO. OUT) GPIO.output (mpin، False) GPIO.output (tpin، False) time.sleep (0.2) GPIO.setup (mpin، GPIO. IN) time.sleep (0.2) GPIO.output (tpin، True)) starttime = time.time () endtime = time.time () در حالی که (GPIO.input (mpin) == GPIO. LOW): endtime = time.time () اندازه گیری مقاومت = endtime-starttime res = (اندازه گیری مقاومت/سقف)* adj i = i+1 t = t+res اگر i == 10: t = t/i چاپ (t) i = 0 t = 0

پروژه خود را به عنوان lightsensor.py (فایل> ذخیره به عنوان) در پوشه Documents خود ذخیره کنید.

حالا ترمینال (منو> لوازم جانبی> ترمینال) را باز کنید و دستور زیر را تایپ کنید:

python lightsensor.py

رزبری پای بارها مقاومت مقاومت در برابر عکس را نشان می دهد. اگر انگشت خود را روی مقاومت نوری بگذارید ، مقاومت افزایش می یابد. در صورت تابش نور قوی به مقاومت نوری ، مقاومت کاهش می یابد. با فشردن CTRL+Z می توانید این برنامه را متوقف کنید.

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

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

اگر مقاومت سنسور افزایش یابد ، خازن کندتر شارژ می شود و مدار به زمان بیشتری نیاز دارد تا به 2 ولت برسد.

اسکریپت فوق اساساً چند بار طول می کشد تا پین 13 به بالا بچرخد و سپس از این اندازه گیری برای محاسبه مقاومت Photoresistor استفاده می کند.

توصیه شده: