Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Учебник по датчику света на Raspberry Pi: подключение фоторезистора и чтение уровня освещенности на Python

В этом подробном уроке по датчику света на Raspberry Pi я проведу вас через подключение фоторезистора к GPIO-выводам и чтение данных лаконичным Python-скриптом. Цель — дать практическое понимание схемы, кода и практических применений, таких как световой будильник.

Проект идеален для новичков, желающих исследовать интеграцию датчиков, но также служит фундаментом для более сложных проектов.

Ниже детально описаны компоненты, пошаговая сборка и логика Python, превращающая цифровые выводы Pi в условно-аналоговое измерение.

Оборудование

Все необходимое перечислено ниже. Макетная плата не строго обязательна, но сильно упрощает сборку, особенно если планируете дальнейшие эксперименты.

Рекомендуемое

Raspberry Pi

SD-карта 8 ГБ или Micro SD для Pi 2/B+

Ethernet-кабель или Wi-Fi-адаптер

Датчик света (LDR)

Конденсатор 1 мкФ

Опционально

Корпус Raspberry Pi

USB-клавиатура

USB-мышь

Набор для GPIO breakout

Макетная плата

Перемычки для макетной платы

Видео

Для визуального обучения сопровождающее видео демонстрирует полную сборку и показывает выход датчика в реальном времени. Та же информация приведена в тексте ниже.

Сборка схемы датчика света

Схема намеренно проста: LDR, конденсатор 1 мкФ и один GPIO-вывод. Сопротивление LDR падает до нескольких сотен ом при ярком свете и поднимается до нескольких мегаом в темноте. Измеряя RC-постоянную конденсатора, Pi может судить об уровне освещенности даже без аналоговых входов.

  1. Соедините вывод #1 (3,3 В) с + шиной макетной платы.
  2. Соедините вывод #6 (GND) с – шиной макетной платы.
  3. Установите LDR на макетной плате и проведите провод от одного конца к + шине.
  4. Проведите провод от другого конца LDR к выводу #7 на Pi.
  5. Вставьте конденсатор 1 мкФ между проводом от вывода #7 и – шиной, обеспечивая минусовой вывод к – шине.

Обратитесь к диаграмме ниже для наглядной схемы. После сборки железа Python-код преобразует цифровой вывод в грубое аналоговое измерение.

Python-код

Скрипт ниже измеряет, за какое время конденсатор заряжается до 75% напряжения питания. Это RC-время пропорционально сопротивлению LDR, давая грубую оценку освещенности.

#!/usr/local/bin/python
import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BOARD)
# Вывод, подключенный к RC-цепи
pin_to_circuit = 7

def rc_time(pin):
    count = 0
    GPIO.setup(pin, GPIO.OUT)
    GPIO.output(pin, GPIO.LOW)
    time.sleep(0.1)
    GPIO.setup(pin, GPIO.IN)
    while GPIO.input(pin) == GPIO.LOW:
        count += 1
    return count

try:
    while True:
        print(rc_time(pin_to_circuit))
except KeyboardInterrupt:
    pass
finally:
    GPIO.cleanup()

Развертывание и запуск

На Raspberry Pi с Raspbian необходимые библиотеки предустановлены. Если нужно установить вручную:

sudo apt-get update
sudo apt-get install python3-rpi.gpio

Клонируйте репозиторий и запустите скрипт:

git clone https://github.com/pimylifeup/Light_Sensor/
cd Light_Sensor
sudo python3 light_sensor.py

Альтернативно, вставьте код в новый файл, сохраните как light_sensor.py и выполните ту же команду.

Повышение точности и возможные применения

Хотя LDR дает быстрое, дешевое решение, его ограниченный динамический диапазон и температурная чувствительность могут быть недостаточны для точной работы. Для приложений, требующих высшей точности, рассмотрите датчики вроде цифрового датчика света с высоким динамическим диапазоном от Adafruit.

Экспериментируйте, настраивайте RC-цепь или интегрируйте датчик в более крупные проекты. При проблемах или предложениях оставляйте комментарий ниже.

Источник: Raspberry Pi Light Sensor – A Simple LDR Tutorial

Производственный процесс

  1. Сборка логгера температуры на Raspberry Pi с $5 I2C датчиком
  2. Создание удалённого датчика температуры на Raspberry Pi и Python — пошаговое руководство
  3. Создание метеостанции на Raspberry Pi с ежедневными email-отчётами о погоде
  4. Как подключить однопроводный датчик температуры DS1820 к Raspberry Pi через GPIO
  5. Подключение ультразвукового датчика HC‑SR04 к Raspberry Pi 3 — полное руководство
  6. Надёжный домашний мониторинг с Home Assistant на Raspberry Pi: движение, алермы и видеозахват
  7. Управление светодиодом с PIR-датчиком движения на Raspberry Pi
  8. Построение низкобюджетного датчика влажности почвы на Raspberry Pi для умного полива
  9. Чтение линейного Холловского датчика с Raspberry Pi: руководство по Java и особенности ADC0832
  10. Создание многодатчиковой системы мониторинга температуры и света с Raspberry Pi и DS18B20