Форум программистов, компьютерный форум, киберфорум
Наши страницы
Робототехника и умный дом
Войти
Регистрация
Восстановить пароль
Другие темы раздела
Робототехника Робо рука с 6 степенями свободы манипулятор http://www.cyberforum.ru/robotics/thread2393257.html
Доброго Времени суток. Буду краток. нужно написать программу на ПК которая будет управлять роботизированой рукой манипулятором с 6 серводвигателями, в програмироввании я особо не силен( вообще не...
Шаговый мотор Nema17 Робототехника
Здравствуйте! Прошу Вас помочь в управлении шаговым мотором с использованием Arduino Uno и драйвером шагового двигателя A4988 с концевиком. Суть управления: Мотор должен делать заданное...
Робототехника Всенаправленные колеса
Допустим имеется робот приведенный на картинке. Все колеса являются всенаправленными (колесами Илона/шведскими колесами). Также имеется вектор, который хранит точки (х,у) по которым движется этот...
Робототехника Не крутится боковая щетка в роботе пылесосе Здравствуйте, помогите разобраться со схемой, кто знает, как работает этот кусок схемы?! Суть такова: Сгорела щетка в двигателе, поставил другой движок, все глухо. Напряжения на двигателе... http://www.cyberforum.ru/robotics/thread2357091.html
Робототехника Как при утечке воды от Sonoff 4CH Pro шла команда на закрытие крана воды http://www.cyberforum.ru/robotics/thread2344558.html
Добрый день. Заказал я с Алиэкспресс запиратель крана (https://ru.aliexpress.com/item/DC8V-DC16V/32854252129.html) и Sonoff 4CH Pro...
Не работает ISO8200B чип вывода 24в Робототехника
Здравствуйте, подскажите не кто не сталкивался с чипом ISO8200B. уже второй день бьюсь и не могу его запустить. Вроде все просто подача напряжения на ножки и должно все работать. А выходит так что на...
Робототехника Особые режимы работы AHRS
Тестирую алгоритм Мэджвика для управления тележки ориентацией смартфона. Собственно, для этой задачи алгоритм система ориентации настройки особой не требует, ибо точность потребная довольно низка,...
Робототехника У кого есть опыт работы с шилдом на основе TB6612FNG Купил вот такую версию драйвера. Движок крутится туда - сюда. Но не реагирует на шим. И не работает standby. У продавца в описание подключения нога standby подписана NC. Проблема в том, что к... http://www.cyberforum.ru/robotics/thread2281222.html
Робототехника Материалы по LEGO Mindstorms http://www.cyberforum.ru/robotics/thread2263930.html
Работает ли тут кто с платформой LEGO Mindstorms? Собрал в одном месте кучу материалов по данному конструктору: инструкции, документация, различные методические пособия, материалы по программированию...
Робототехника Использование модуля ESP8266 для системы умного дома? Итак, что касается сетей, я полный профан, а сделать какое-нибудь устройство управляемое через удаленный доступ хочется. Хотелось бы пошаговый туториал (можно на вражеском) о том, как с ним начать... http://www.cyberforum.ru/robotics/thread2248112.html
DaeRiuS
0 / 0 / 1
Регистрация: 24.03.2019
Сообщений: 6
0

Включение освещения в Умном доме

28.03.2019, 14:42. Просмотров 830. Ответов 2
Метки (Все метки)

Здравствуйте, форумчане. Осуществляю популярную и известную всем систему "Умный дом". Сделан макет, напиханы датчики, скоро буду делать нормальную проводку, но сейчас занялся самым сложным - кодом. И решил начать с освещения. Вроде бы ничего сложного, реакцию на смену состояния делаю таким же способом, как и всегда - отдельная функция, где происходит смена значения переменной 1 -> 0, 0 -> 1:
C++
1
2
3
4
5
6
void BUTTON_CHECK(){
  if (digitalRead(BUTTON_PIN == HIGH)){
    button_state = !button_state;
    delay(200);
  }
}
Весь код, с использованием нескольких датчиков(не все будут использоваться для этого в будущем) вот:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#define PIR_PIN A0   // Датчик присутствия
#define BUTTON_PIN A1   // Сенсорная кнопка
#define MICRO_PIN A3    // Датчик звука
#define GAS_PIN A4   // Датчик дыма и газов
#define BUZ 4     // Пъезо-пищалка
boolean button_state = false;
boolean pir_state = false;
boolean gas_state = false;
boolean micro_state = false;
 
 
void setup() {
Serial.begin(9600);
pinMode(PIR_PIN, INPUT);
pinMode(GAS_PIN, INPUT);
pinMode(BUTTON_PIN, INPUT);
pinMode(MICRO_PIN, INPUT);
pinMode(BUZ, OUTPUT);
}
 
void loop() {
  BUTTON_CHECK();
  PIR_CHECK();
  GAS_CHECK();
  MICRO_CHECK();
  Serial.println(button_state);
  Serial.println(pir_state);
  Serial.println(gas_state);
  Serial.println(micro_state);
  Serial.println(" ");
  if ((button_state || pir_state || micro_state || gas_state) == true){
    BUZZER();   
  }
}
 
//////////////////////////////////////////////
void BUTTON_CHECK(){
  if (digitalRead(BUTTON_PIN == HIGH)){
    button_state = !button_state;
    delay(200);
  }
}
void PIR_CHECK(){
  if (digitalRead(PIR_PIN == HIGH)){
    pir_state = !pir_state;
    delay(200);
  }
}
void GAS_CHECK(){
  if (digitalRead(GAS_PIN == LOW)){
    gas_state = !gas_state;
    delay(200);
  }
}
void MICRO_CHECK(){
  if (digitalRead(MICRO_PIN == HIGH)){
    micro_state = !micro_state;
    delay(100);
  }
}
void BUZZER(){
  tone(BUZ, 25);
  delay(2000);
}
И сама проблема заключается в том, что с этим очень примитивным кодом(я писал его разными способами, поэтому выкладываю сюда, возможно не лучший, но последний, который был использован) у переменных состояния каждого датчика просто меняется само по себе состояние 1 -> 0, 0 -> 1 поочередно. У меня все далее выводится в порт, и видно, что пишет так:

Вернуться к обсуждению:
Включение освещения в Умном доме
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.03.2019, 14:42
Готовые ответы и решения:

Включение/отключение освещения по расписанию
Здравствуйте. Появилась задача организовать в помещении включение и выключения лампы 220В в...

Включение аварийного освещения при пропадании напряжения
Коллеги, подскажите. Есть аккумулятор, есть зарядное устройство к нему, постоянно включенное в...

ЧПУ в умном фильтре битрикса
Здравствуйте, уважаемые форумчане! Возникла потребность сделать ЧПУ в умном фильтре и в принципе...

Перегрузка оператора разыменования в умном указателе
#include <stdio.h> template <class Type> class SmartPointer{ private: Type* pointer;...

Какой микроконтроллер находится в умном браслете от фирмы xiaomi?
Здравствуйте, не знаете ли какой микроконтроллер находится в умном браслете от фирмы xiaomi? Может...

2
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru