Arduino, ESP8266, Raspberry Pi 2 && OpenHab. Умный дом: азы управления.

Тема в разделе "Глядите, что я сделал", создана пользователем ИгорьК, 12 май 2015.

  1. ИгорьК

    ИгорьК Давно здесь

    То есть вам надо восстановить АТ прошивку на модуле? Я так до компа и не добрался, но точно помню, что у Амперки в вики есть инструкция как это делается. Поищите.

    По ссылке раздел "Перепрошивка":
    http://wiki.amperka.ru/продукты:troyka-wi-fi
     
  2. BlackWolfSpb

    BlackWolfSpb Нуб

    Благодарю, вопрос снят
     
  3. Egony

    Egony Нерд

    Три дня как зарелизился OH 2.3. Подробности тут: https://github.com/openhab/openhab-distro/releases/tag/2.3.0

    Несмотря на пробелы в документации, OH2.2 в сравнении с 1.8 имеет существенный прогресс (задницей попугая не пользуюсь, только текст, только хардкор). Надеюсь, 2.3 будет с новыми багами лучше :)
     
    ИгорьК нравится это.
  4. SergeiL

    SergeiL Гуру

    По поводу управления освещением по солнцу, перешел с варианта анализа времени заката/рассвета (типа: через 10 минут после заката) на вариант анализа угла на солнце.

    Мне показалось, что включение выключение освещения, стало происходить примерно при одинаковой уличной освещенности вне зависимости от времени года.

    Продолжительность сумерек, для одного и того же местоположения, сильно зависит от времени года и может отличаться почти в два раза.

    Items:
    Код (Text):
    Number    Elevation          "Высота солнца [%.2f °]"       (Astro)        {astro="type=ELEVATION"}
    Switch    SUN_Light_Switch   "Ночное освещение"             (Astro)  
    Rules:
    Код (Text):
    rule "Elevation Changed"
    when
        Item Elevation changed  
    then
        if (Elevation.state < -1 && Elevation_Light != 1 )
        {
            sendCommand(SUN_Light_Switch, ON)
            Elevation_Light = 1
        }
        else if (Elevation.state > -2 && Elevation_Light != 0 )
        {
            sendCommand(SUN_Light_Switch, OFF)
            Elevation_Light = 0
        }
    end    
    Elevation.state < -1 - это закат, солнце уходит за горизонт и угол на солнце стал меньше чем -1.0 градус.
    Elevation.state > -2 - это скоро восход, солнце поднимается и угол на солнце стал больше чем -2.0 градуса.


    SUN_Light_Switch - виртуальный переключатель.
    Ну а дальше в зависимости от присутствия людей, открытия дверей, и состояния SUN_Light_Switch, включаем, выключаем, или не включаем освещение.;)
     
    ИгорьК нравится это.
  5. ИгорьК

    ИгорьК Давно здесь

    Предполагаю, что солнце крутится вокруг земли равномерно со скоростью 360/24*60 угла в минуту. :cool:

    Поэтому, если хватать углы после перехода солнца через горизонт то это тоже время :)
     
  6. SergeiL

    SergeiL Гуру

    Главное, чтобы дух Коперника не услышал:).

    Это более справедливо к широтам, близким экватору. :)

    Там продолжительность сумерек практически одинаковая, круглый год, 20-24 минуты.
    Гражданские сумерки это от 0 до -6 градусов.

    Есть же еще наклон оси земли, и чем ближе к полюсам тем больше разница в угле захода
    солнца за горизонт, в период равноденствий и летнего или зимнего солнцестояния.:)

    Для Москвы длительность гражданских сумерек уже 35-60 минут.
    Для Питера еще больше. В дни летнего солнцестояния гражданские сумерки длятся от заката до рассвета.
    А в Мурманске, солнце совсем не заходит за горизонт летом.;)
     
    Последнее редактирование: 3 июл 2018
    Egony нравится это.
  7. Dgoneee

    Dgoneee Нуб

    Здравствуйте, я новичёк в сложном деле освоения OpenHab, работал с жпио малинки по этой инструкции, https://www.mksmarthouse.com/gpio-binding , получилось всё как и должно было... upload_2018-8-1_17-51-16.png

    при нажатии кнопки Button интерфейс показывает "закрыто",
    1) Вопрос как сделать чтобы при нажатии кнопки включался или выключался (изменял положение ) канал один, подозреваю что делается это в правилах, но как писать правила не представляю, если не сложно покажите как их можно писать?
    2) значки отображаются как кружёчки с палочкой как можно поменять менять, например на лампочку...
    зарание большое спасибо....
     
  8. Arkad_snz

    Arkad_snz Гик

    Не понятно - чего вы добиваетесь? - Индикации восхода/заката, или комфорта в помещении?
    Если комфорта, то и регистрируте его уровень, и корректируйте лампами.
    Давайте еще включать свет по "соседка Маня пошла корову доить"

    У чукчи спрашивают:
    - Какая будет зима - теплая/холодная?
    - Однако - все люди с метеостанции в лес ушли - дрова на зиму заготавливают - холодная будет зима!
    ----- Продолжение:
    Чукча отправляется в лес за дровами на зиму.
    На следующий день метеорологи - "Видать, зима будет холодная - вон - чукча дрова запасает!"

    А, все потому, что все ориентируются не на первичные признаки (показания приборов, приметы...), а на побочные (никак не связанные с зимой)., а это уже шаманизм!
    При таком способе детектирования "темно, пора свет включать" впору не включатель дергать, а в бубен стучать!
     
    Последнее редактирование: 2 авг 2018
  9. SergeiL

    SergeiL Гуру

    То, чего я добивался - в этом вопросе достигнуто.;)

    Мне нужно было сделать включение дежурного, ночного освещения в коридорах.
    Дежурное освещение в коридорах должно было включаться когда кто-то есть дома (не зачем включать когда дома нет никого).
    Когда кто-то выходит из комнаты с включенным верхним светом в коридор, должно включаться нормальное освещение коридора. А если во всех примыкающих комнатах свет выключен (ночь) верхнее освещение включать не нужно, дабы не делать перехода из темноты в ярко освещенное помещение.

    Критерий того, что все работает как надо - домочадцы не задумываются, что что-то не так.
    На мой вопрос, как со светом в коридорах я слышу ответ: "А что, там что то не так ? не замечали?"
    То есть человек не должен задумываться, что что-то нужно делать дополнительно, или что-то не так работает.

    А как Ваша Bluetooth-гарнитура для мобилы поживает? Закончили, уже прочти год прошел?;)
     
  10. Arkad_snz

    Arkad_snz Гик

    Ну, вот - вы все конкретно расписали без заката/рассвета.
    Вот и ставьте датчики освещенности и присутствия в комнатах и коридоре. Логику - см. выше ваше же описание.

    Супергарнитура (если вы про телефон-перчатку) - медленно ворочается в голове - эти полгода провел в больнице - только и имел возможность подумать, да порисовать немного. Массу идей накопил.
     
  11. SergeiL

    SergeiL Гуру

    Сочувствую:(.
    У меня как раз, все прекрасно работает по расчету угла на солнце, если Вы не поняли. ;)
    Поэтому, датчики освещенности не нужны :)
     
  12. Arkad_snz

    Arkad_snz Гик

    Рад за вас.
    А, как вы пользуетесь освещением без Ардуино!?
    Если вас просят - "Включи свет - темно - не вижу ничего", то вы берете сектант, измеряете высоту солнца, долго на бумажке вычисляете - попадает ли измеренное значение "в вилку", и отвечаете - "Солнце еще высоко - неграм пора на плантации!", "Отставить свет!".
    Теперь я сочувствую...
    Для полноты образа солцепоклонника рекомендую сделать карманные солнечные часы - стильно будет выглядеть попытка ответить на вопрос коллеги - "Не подскажете - который сейчас час - не пора ли на обед?".
     
    Последнее редактирование: 3 авг 2018
  13. ИгорьК

    ИгорьК Давно здесь

    Знаете, у меня уличное освещение работает приблизительно так же, по солнцу. Может, вы просто сделаете еще что-то полезное и поделитесь со всеми, а критиковать не будете?
     
  14. Arkad_snz

    Arkad_snz Гик

    "приблизительно так же" - уличное освещение регулируется освещенностью, а не углом на солнце.
    Угол на источник, и освещенность - это "так же"!?
    Не, корреляция, конечно, есть но она не равна единице!.
    Или "похоже" - "то же", что и "равно"!?
     
  15. ИгорьК

    ИгорьК Давно здесь

    У меня свет на улице включается через 30 минут после захода солнца и никакая освещенность при этом не измеряется.
     
  16. Arkad_snz

    Arkad_snz Гик

    Чудо!
    Свет на столбе зажигается сам собой, ниотчего, нипочему, и, видимо, низачем!
     
  17. ИгорьК

    ИгорьК Давно здесь

    Да. А что?
     
  18. SergeiL

    SergeiL Гуру

    Ну да, это как для древнего Египтянина часы.
    По стрелкам понятно когда утро, день, ночь, и не нужно из дворца выходить и на освещенность смотреть.;)
     
  19. Комрады выручайте!

    Раньше работало правило

    Код (Javascript):
    import org.openhab.core.library.types.*
    import org.openhab.core.persistence.*
    import org.openhab.model.script.actions.*
    import java.util.regex.*

    var String NRegim
    var String newTOjidaniya
    var String newTDen
    var String newTNoch

    rule "TestingRule"
    when
      Item KlimatControlRegim changed or
      Item UstanovkaTemperaturyOjidaniya changed or
      Item UstanovkaTemperturyDen changed or
      Item UstanovkaTemperaturyNoch changed
    then
      NRegim = KlimatControlRegim.state.toString()
      newTOjidaniya = UstanovkaTemperaturyOjidaniya.state.toString()
      newTDen = UstanovkaTemperturyDen.state.toString()
      newTNoch = UstanovkaTemperaturyNoch.state.toString()
      logInfo("rules", '"' + NRegim + '"')
      logInfo("rules", '"' + newTOjidaniya + '"')
      logInfo("rules", '"' + newTDen + '"')
      logInfo("rules", '"' + newTNoch + '"')
    end

    rule "Restore data after reboot"
    when
        System started
    then
        createTimer(now.plusSeconds(60)) [|
            UstanovkaTemperaturyOjidaniya.postUpdate("newTOjidaniya")
            UstanovkaTemperturyDen.postUpdate("newTDen")
            UstanovkaTemperaturyNoch.postUpdate("newTNoch")
            KlimatControlRegim.postUpdate("NRegim")
        publish("mosquitto", "/openHAB/out/UstanovkaTemperaturyOjidaniya/command",newTOjidaniya)
        publish("mosquitto", "/openHAB/out/UstanovkaTemperturyDen/command",newTDen)
        publish("mosquitto", "/openHAB/out/UstanovkaTemperaturyNoch/command",newTNoch)
        publish("mosquitto", "/openHAB/out/KlimatControlRegim/command",NRegim)
        ]
    end
    Суть его была такова, что изменение итема записывалось в переменную, а в случае перезагрузки OH,
    изменения применялись автоматически, но теперь после обновы правило не работает, видимо изменили подход, может кто нибудь помочь переделать это на новый лад?

    P.S. В логах ошибка типов что ли Cannot convert 'newTDen' to a state type which item 'UstanovkaTemperturyDen' accepts: [DecimalType, QuantityType, UnDefType].
     
    Последнее редактирование: 8 авг 2018 в 19:03