помогите , с созданием умного света на фоторезисторах
- Войдите на сайт для отправки комментариев
Чт, 12/01/2017 - 19:24
Есть проект создания умного света на фоторезюках , попробовал сделать код на ифах , работает только в случае с одним из датчиков:
int sensor =0;
int sensor1 =1;
int y;
int x;
int summ;
int Led = 11;
int brightness =0;
void setup(void){
pinMode(Led,OUTPUT);
}
void loop( )
{
y = analogRead(sensor1);
x = analogRead(sensor);
summ = x+y;
if (summ == 0 )
{
brightness = 235;
analogWrite(Led,brightness);
}
if (summ == 1 )
{
brightness = 220;
analogWrite(Led,brightness);
}
if (summ == 2 )
{
brightness = 205;
analogWrite(Led,brightness);
}
if (summ == 3 )
{
brightness = 190;
analogWrite(Led,brightness);
}
if (summ == 4 )
{
brightness = 175;
analogWrite(Led,brightness);
}
if (summ == 5 )
{
brightness = 160;
analogWrite(Led,brightness);
}
if (summ == 6 )
{
brightness = 145;
analogWrite(Led,brightness);
}
if (summ == 7 )
{
brightness = 130;
analogWrite(Led,brightness);
}
if (summ == 8 )
{
brightness = 115;
analogWrite(Led,brightness);
}
if (summ == 9 )
{
brightness = 100;
analogWrite(Led,brightness);
}
if (summ == 10 )
{
brightness = 85;
analogWrite(Led,brightness);
}
if (summ == 11 )
{
brightness = 70;
analogWrite(Led,brightness);
}
if (summ == 12 )
{
brightness = 55;
analogWrite(Led,brightness);
}
if (summ == 13 )
{
brightness = 40;
analogWrite(Led,brightness);
}
if (summ == 14 )
{
brightness = 25;
analogWrite(Led,brightness);
}
if (summ == 15 )
{
brightness = 10;
analogWrite(Led,brightness);
}
}
в коде пытался подключить второй фоторезюк но понял что судя по всему выхоядт нечетные числа , с запятыми и т.д.Пробовал делить без остатка тоже ничего, как сделать через кейсы , понятия не приложу, а ведь все хотел организовать на 4-х фоторезюках , хелп , пипл...
Вы хотите посчитать среднюю интенсивность освещения на 4 фоторезисторах и в зависимость от этого регулировать яркость LED ?
почти,идея была в том ,что бы считывать с двух датчиков значения для одного источника , но вся система работает на 4-х датчиках и двух источниках света
Датчики и источники разнесены ?
Не боитесь нарваться на мигающий свет ?
Считали датчики, свето мало,добавили света,
считали датчики, свето много, убавили свет
и так по кругу.
1. Вы уверены, что полученные значения - целые числа, при том на столько малые?
Попробуйте выводить в сериал значения сенсоров, что бы понять от чего отталкиваться.
Вот пример кода:
Источник: http://arduino-diy.com/arduino-fotorezistor
2. Попробуйте составить некое математическое выражение, которым можно описать зависимость яркости диода от сенсоров. В этом случае регулировка будет плавная, да и код будет проще и красивее.
4. Вот пример подобный Вашему.
Источник: http://arduino-diy.com/arduino-vyrazheniye-switch
И кратко о switch/case https://www.arduino.cc/en/Reference/SwitchCase
кому интересно доделал скетч под проект
также прикреплю схему подключения
Ulwgard, если позволите, так красивее и короче :
не имел дела с массивами , оттого и не знал как короче )