Подключение ИК фоторезистора

Хочу подключить к ардуино эту вещь:
robocraft.ru/store/catalog/13

Посмотрел спецификации. Не могу определиться как его подключать. Насколько понял через сопротивление. В спецификации с сопротивлением связаны 2 пункта:
VCE = 5V
IC=1mA
RL=1000Ω

и это:
Absolute Maximum Ratings at TA=25°C
Parameter — Max.Ratings
Collector-to-Emitter Voltage — 30V
Emitter-to-Collector Voltage — 5V
Power Dissipation at (or below) 25°C Free Air Temperature — 100mW


В первом сопротивление 1кОм.
Во втором 100mW=5V*I (P=U*I) => I=20mA. При таком токе нужен резистр 250 Ом (R=U/I).

Что выбрать?
  • 0
  • 1 апреля 2011, 18:12
  • oleamm

Комментарии (13)

RSS свернуть / развернуть
+
0
В зависимости от последовательно включенного сопративления ты регулируешь чувствительность, можно последовательно с ним вогнать реостатом подстроечник с 0 до 10К, и позже отрегулировать.
avatar

mogalkov

  • 1 апреля 2011, 23:40
+
0
так все же, с чего стоит начать? как я понимаю с нулевым сопротивлением нельзя, чтобы не спалить порты?
avatar

oleamm

  • 2 апреля 2011, 01:25
+
0
По фоторезистору: robocraft.ru/blog/arduino/68.html
То что показываешь ты не резистор а фототранзистор, подключается к любой ноге digital in, нога подтягивается к земле резистором 10К
avatar

mogalkov

  • 3 апреля 2011, 16:18
+
0
т.е. схема такая? www.robocraft.ru/uploads/images/2/6/d/1/1/18a90bb1d6.png
почему резистор нужен именно на 10К? хочется научиться это понимать, чтобы не спрашивать каждый раз.
avatar

oleamm

  • 3 апреля 2011, 17:09
+
0
Да, схема такая. Резистор необходим чтобы небыло замыкания между + и — когда фототранзистор открыт. Если вход МК никчему не подсоединен то неизвестно что на нем, 1 или 0. Резистор можно и больше 10К. В принципе и 1К не смертельно, но чем меньше сопративление между + и -, тем больше проходящий через резистор ток. I = U/R
avatar

mogalkov

  • 3 апреля 2011, 20:15
+
0
Спасибо, схему собрал.
Столкнулся с проблемой малого расстояния действия луча. Купил большой 5мм ИК светодиод. Эффект лучше. Поигрался с сопротивлениями (получилось в районе 200 кОм). Добился того, что светодиод можно удалить на расстояние ~40 см от приемника и засекать при этом его сигнал. Более 40 см. свет светодиода практически смешивается с шумом, создаваемым окружающим светом.

Мне необходимо получить охранную систему, которая будет работать при пересечении невидимого луча в дверных проемах, шириной до 4-5 метров.
1. Начал смотреть в сторону лазеров, но там длина волны 650 нм (т.е. видимый красный свет), да и по цене дороговато.
2. Еще есть готовые датчики (фотоинтерраптор): www.chipdip.ru/product/ktir0521ds.aspx (не понятна его дальность)

Возможно кто-то сталкивался с подобными задачами?
avatar

oleamm

  • 15 апреля 2011, 14:15
+
0
чтобы отличать сигнал от шума его нужно модулировать ;)
фотоинтерраптор контролирует узкую полоску между выступами (в которых и спрятан излучатель с фото-датчиком): обычное применение — в каких-нибудь принтерах для контроля прохождения бумаги ;)
avatar

noonv

  • 15 апреля 2011, 16:46
+
0
Как я понимаю, ШИМ использовать нельзя?
Логика рассуждений: светодиод все-таки не лазер, время его загорания и потухания приличное. То есть он будет плавно загораться-затухать, но не работать на нужной нам частоте?
Или светодиод подойдет, но логика работы другая?

Про фотоинтерраптор понял, спасибо.
avatar

oleamm

  • 15 апреля 2011, 20:17
+
0
посмотрите в сторону TSOP — это ИК-приёмники модулированного сигнала (именно они принимают сигнал с пульта ДУ телевизора)
avatar

admin

  • 15 апреля 2011, 22:47
+
0
TSOP приобрел, подключил по этой схеме:

(правда без конденсаторов пока и резистр был только на 150).

Написал программу
void setup() {
  pinMode(9, INPUT); // TSOP
  Serial.begin(9600);
}

void loop() {
  z = digitalRead(9);// считывание кода
  Serial.println(z);
}
ИК светодиод подключил на — и + без ардуино (постоянно горит).

В итоге, z почти постоянно = 1, не важно, светит на него светоиод или нет. Чувствую что-то не так. Может надо определенным образом генерировать сигнал светодиода?
avatar

oleamm

  • 18 апреля 2011, 11:49
+
+1
Путем долгих экспериментов и чтения различных англоязычных форумов, удалось понять, что TSOP работает на определенной частоте, и если ее не видит, то выдает 1.

В моем случае частота TSOPa 36кГц.
Далее код для генерирования ИК сигнала частотой 36 кГц:
int irPin =  10;    // ИК LED на pin 10
void setup() {
  pinMode(irPin, OUTPUT);    
}

void loop() {
  digitalWrite(irPin, HIGH);
  delayMicroseconds(28); // про 28 микросек ниже
  digitalWrite(irPin, LOW);
  delay(1);
}

С помощью такого сигнала удалось менять значение TSOPa на 0 при направлении на него ИК светодиода, проверял с расстояния 2 метров.

Теперь про задание сигнала частотой 36кГц.
1000 милисек = 36 000 Гц => 1 000 микросек = 36 Гц => на 1 Гц приходится 27,77… или ~28 микросек.
Почему далее пауза 1 милисек не знаю, установил экспериментально. Пробовал 0.5 милисек, работает хуже (или не работает вообще, а может плохо пробовал).
avatar

oleamm

  • 18 апреля 2011, 22:59
+
0
возможно, в библиотеке IR remote есть:
A Multi-Protocol Infrared Remote Library for the Arduino
avatar

noonv

  • 19 апреля 2011, 11:27

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.