Проблемы с фоторезистором KY-018
- Войдите на сайт для отправки комментариев
Пнд, 19/03/2018 - 09:59
Всем привет! я ещё сильно новичок в ардуино, поэтому придерживаюсь всевозможных туториалов в интернете по вопросам подсоединения различных модулей, но с фоторезистором почему-то совсем проблемно всё. Я подключаю его как положено, выход с Signal в аналоговый вход A5, плюс на +5В, минус в GND, однако монитор порта при любых обстоятельствах выдаёт значение 0 при считывании показаний с аналогового входа. Я перепроверил каждую строчку и каждый проводок, всё как и должно быть, но увы работать фоторезистор отказывается. Кто знает в чём может быть проблема? Я уже всю голову сломал. Заранее спасибо.
Вот код:
int sensorPin = A5; int sensorValue = 0; void setup() { Serial.begin(9600); } void loop() { sensorValue = analogRead(sensorPin); Serial.println(sensorValue); delay(300); }
Забыл сказать, что я перепробовал ещё 4 таких фоторезистора и ни один не показал значений кроме 0 :(
Возьмите мультиметр да померяйте сопротивление между GND и Signal в освещенном и неосвещенном состоянии. Может это просто банальный брак.
ты просто pinMode(A5, INPUT_PULLUP); забыл вставить
Да на модуле уже стоит 10к к питанию. Теоретически.
Ну а чо б он тогда 0 мерял?
Откуда ж я знаю... Может модуль воткнут в другие пины.
ты просто pinMode(A5, INPUT_PULLUP); забыл вставить
Для ADC? А смысл?
ты просто pinMode(A5, INPUT_PULLUP); забыл вставить
Для ADC? А смысл?
Ну я подумал, что 0 можно намерить только если фоторезистор с А5 на землю подключен, без резистора верхнего плеча.
samthet,
предоставьте пожалуйста в студию.
1. сопротивления между парами выводов "S - GND" и "S - Vcc" модуля в освещённом (под лампой) и тёмном (заклейте фоторезистор синей изолентой) состояниях. Разумеется, при измерении, модуль не должен быть никуда подключён.
2. фото Вашей конструкции во время работы. Лучше несколько, с разных ракурсов и покрупнее, чтобы всё можно было разглядеть.
И, это, ...
Завязывайте, голова ещё пригодится! В этом мире есть только две вещи, способные снести крышу нормальному парню, и фоторезистор среди этих двух вещей не значится - его там не стояло.
Секс,секс и ещё много раз секс. В каком виде-решайте сами. Не пытайтесь убедить всех дающих вам советы,что вы всё перепробовали.
Тестером-то намеряли хоть что -нибудь? Пользоваться им умеете? . 5 вольт НА МОДУЛЕ,а не на проводах к нему... проверяем и проверяем.
С вас схема, фото конструкции(обязательно вашей, а не с соседней парты). А потом - как дедушка Ленин. Секс,секс и ещё раз секс.
всем спасибо, кто откликнулся, оказалось, что фоторезисторы и правда бракованные (а может я их и спалил просто хех), мультиметр показывал ноль что на s-gnd, что на vcc-gnd. пойду покупать новые значит.
На ногах самого резистора померяйте. Только лампочкой ему в лицо светите. Черт его знает, что там припаяно китайцами и с каким сопротивлением.
мультиметр показывал ноль что на s-gnd, что на vcc-gnd.
Что 0? Сопростивление? Так у Вас при включении должно было быть короткое замыкание! Вы чего там меряли?
сопротивление 0, да. что сказали мерить, то и мерил
Да, нет, говорил-то я измерять между "S - GND" и "S - Vcc", а Вы пишете, что измеряли между s-gnd и vcc-gnd. Ну, да Бог с ним.
Если у Вас 0 между Vcc и Gnd, То при подключении к питанию из стабилизатора должен был пойти дым, т.к. это короткое замыкание. Если дым не пошёл, значит там не 0 - что-то не так. Или Вы питание не ардуине подключали? А у того БП, куда подключали есть защита от КЗ?
я всяко по-разному щупы мультиметра подключал к датчику, везде ноль был. подключал к ардуине
Тестер включить в режим измерения кОм. Померить сопротивление фоторезистора при разном освещении. Посмотреть какое сопротивление при нормальном освещении. Примерно такой резистор должен быть в делителе.
хорошо, попробую
у вас в начале
int
sensorPin = A5;
попробуйте
#define sensorPin A5
поскольку "A5" - это не тип данных int (целое число), а не пойми что (переменная, например, которая равна null )
в результате
sensorValue = analogRead(sensorPin);
читает не из пина А5, а читает из null или не пойми откуда
у вас в начале
int
sensorPin = A5;
попробуйте
#define sensorPin A5
поскольку "A5" - это не тип данных int (целое число), а не пойми что (переменная, например, которая равна null )
в результате
sensorValue = analogRead(sensorPin);
читает не из пина А5, а читает из null или не пойми откуда
бред какой
Kindling, вот когда сами для себя разберетесь, что такое А5 - тогда и приходите советовать
А пока вашу ахинею и комментировать лень
ты просто pinMode(A5, INPUT_PULLUP); забыл вставить
Для ADC? А смысл?
Наверное чтобы не ставить внешний резистор в делитель.
Эти китайские фоторезисторы - редкостное гавно. Резистор снимал освещенность с участка жк монитора. Протух за пару месяцев. У нового параметры скисли за два дня на 15%.
Только отечественное, только хардкор!
стабильность меня устраивает.
LDR 5800B в парнике несколько лет работает, жалоб на него не имею
у вас в начале
int
sensorPin = A5;
попробуйте
#define sensorPin A5
поскольку "A5" - это не тип данных int (целое число), а не пойми что (переменная, например, которая равна null )
в результате
sensorValue = analogRead(sensorPin);
читает не из пина А5, а читает из null или не пойми откуда
Ни хрена мы с Вами не понимаем в экзистенциальном дискурсе, которым пронизан этот пост!
Экзистенциальный дискурс, он ведь направлен от сущностей к существованию, а не наоборот, как в низменных «точных науках». В экзистенциальном дискурсе важен вопрос к сущности явления и ответ от существа в терминах существования. Текст же ... а что тест? Текст является вызовом, обладает высокой интенцией и силой императива. Только так может родиться смысл, который со временем может быть (а может и не быть) объективирован.
Вот подумайте сами, «"A5" – это не тип данных int (целое число), а не пойми что (переменная, например, которая равна null)» - Вы видите! Автор вскрывает экзистенциальную сущность константы A5, которая выходит далеко за рамки примитивного определения через #define! Мы не должны забывать, что наше восприятие всегда искажает действительность, а в действительности, как известно, всё на так, как на самом деле. Именно это автор и пытается до нас донести, но не прямо, а через сущностные смыслы в экзистенциальной традиции!
А Вы «бред»! Нет, правы Вовка с Филатовым – «в этом что-то есть»!
Начнем с того, что kindling, вы некрофил, раскопавий тему двухлетней давности, это во первых.
А во вторых :
#define sensorPin A5
Это конечно тоже работает, но в ядре уже:
#define A5 19
Т.е. :
int sensorPin=A5;
Ничем не хуже.(расход памяти не будем учитывать)
В общем зря вы все это ...
Это чё, всё я написал?
Да, вечер вчера явно удался :-)