roboforum.ruТехнический форум по робототехнике. |
|
|
dimamichev писал(а):Не рассмотреть от чего питают.
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
// Arduino UNO
//
////////////////////////
//
//программа - проба для кулера в роли датчика ветрового напора //
unsigned int x=0;
void setup()
{
pinMode(A0, INPUT);
Serial.begin(9600);
}
void loop()
{
x=analogRead(A0);
Serial.println(x);
delay(250);
}
//
// Конец /
//
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
// Arduino UNO
//
////////////////////////
//
//программа для управления кулером без выключателя //
unsigned int x=0;
void setup()
{
pinMode(A0, INPUT);
pinMode(7, OUTPUT);
digitalWrite(7,LOW);
}
void loop()
{
x=analogRead(A0);
if(x>=100){digitalWrite(7,HIGH);delay(3000);digitalWrite(7,LOW);}
delay(150);
}
//
// Конец /
//
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
// Arduino UNO
//
////////////////////////
//
//программа для управления кулером без выключателя №3 //
unsigned int x=0;
unsigned int k=0;
long y1=0;
long y2=0;
void setup()
{
pinMode(A0, INPUT);//вход, отслеживающий движение крыльчатки
pinMode(7, OUTPUT);//выход, управляющий подачей питания на кулер
digitalWrite(7,HIGH);delay(1000);//исходная временнАя задержка
}
void loop()
{
y2=millis();if(y2-y1>=3000){digitalWrite(7,HIGH);delay(25);k=0;} //отключение на 25 миллисекунд каждые 3 секунды
if(k==0) {x=analogRead(A0);} //проверка уровня сигнала
if(x>=200){k=1;y1=y2;digitalWrite(7,LOW);x=0;}//включение кулера по сигналу на 3 секунды
}
//
// Конец /
//
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
// Arduino UNO
//
////////////////////////
//
//программа для ультразвукового датчика - включатель светодиода RGB //
const int echoPin=9;
const int trigPin=8;
unsigned int x,x1;
void setup() {
pinMode(trigPin, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
pinMode(12, OUTPUT);
pinMode(echoPin, INPUT);
digitalWrite(trigPin, LOW);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
digitalWrite(12, LOW);
}
void loop() {
digitalWrite(trigPin, HIGH);
delayMicroseconds(15);
digitalWrite(trigPin, LOW);
x = pulseIn(echoPin, HIGH);
x1 = x / 58;
if(x1<=55&x1>=35){digitalWrite(10, LOW);digitalWrite(11, LOW);digitalWrite(12, LOW);}//условие выключения светодиода
if(x1<=15&x1>=5){digitalWrite(10,HIGH);digitalWrite(11, LOW);digitalWrite(12, LOW);}//условие включения красного кристалла
if(x1<=25&x1>=15){digitalWrite(11,HIGH);digitalWrite(10, LOW);digitalWrite(12, LOW);}//условие включения зелёного кристалла
if(x1<=35&x1>=25){digitalWrite(12,HIGH);digitalWrite(10, LOW);digitalWrite(11, LOW);}//условие включения синего кристалла
delay(100);// временная задержка
}
//
// Конец /
//
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
dimamichev писал(а):Пришёл первый датчик - ультразвуковой HC-SRO4. Решил продолжить свои эксперименты. Попробовал собрать макетку для переключения трёхцветного светодиода в зависимости от расстояния ладони до датчика. По такому скетчу и схеме... Получается можно сделать своеобразную "клавиатуру", управляемую плоскостью ладони. Не нашёл подобные поделки в интернете... интересно почему? Ведь ширина такой "клавиши" может быть всего 5 см.
Вернуться в Arduino и другие Xduino
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2