Z-Wave светофор на базе платы Z-UNO


    Для детской игры мне нужен светофор с радио управлением. У меня уже есть Z-Wave контроллер RaZberry, поэтому и светофор я решил сделать с управлением по Z-Wave. Суть проста: 4 разноцветные лампочки управляются с помощью 4-х реле (четвертая — синяя, режим турбо).
    Для разработки своего Z-Wave устройства с 4-мя реле я выбрал плату Z-UNO второй версии, которая стала более компактная.

    Программирование и заливка прошивки осуществляются в Arduino IDE. Для работы с Z-Wave к синтаксису Arduino добавлены специфичные Z-Wave функции.

    Модули реле используются 5 вольтовые, управляемые оптопарой PC817C (datasheet), подключены к ножкам 9,10,11,12. Стоит обратить внимание, что максимальный ток проходящий через ножку Z-UNO может быть не более 8мА, поэтому ограничиваем ток резистором на 220Ом.

    Скетч пишется на Си с возможностью использовать Arduino функции и специфичные Z-Wave вызовы.

    Скетч 4-х канальное Z-Wave реле
    /*
    *
    * 4 Relays controlled thouth resistors 220Omh and optocouplers 817С
    * Off — HIGH
    * On — LOW
    */

    // Pins definitions
    #define LedPin1 9
    #define LedPin2 10
    #define LedPin3 11
    #define LedPin4 12

    // Global variables to store data reported via getters
    byte switchValue1 = 1;
    byte switchValue2 = 1;
    byte switchValue3 = 1;
    byte switchValue4 = 1;

    ZUNO_SETUP_SLEEPING_MODE(ZUNO_SLEEPING_MODE_ALWAYS_AWAKE);

    // Set up 10 channels
    ZUNO_SETUP_CHANNELS(
    ZUNO_SWITCH_BINARY(getterSwitch1, setterSwitch1),
    ZUNO_SWITCH_BINARY(getterSwitch2, setterSwitch2),
    ZUNO_SWITCH_BINARY(getterSwitch3, setterSwitch3),
    ZUNO_SWITCH_BINARY(getterSwitch4, setterSwitch4)
    );

    void setup() {
    // set up I/O pins. Analog and PWM will be automatically set up on analogRead/analogWrite functions call
    pinMode(LedPin1, OUTPUT);
    pinMode(LedPin2, OUTPUT);
    pinMode(LedPin3, OUTPUT);
    pinMode(LedPin4, OUTPUT);
    }

    void loop() {
    // Empty
    }

    // Getters and setters

    void setterSwitch1(byte value) {
    digitalWrite(LedPin1, (value > 0)? LOW: HIGH);
    switchValue1 = value;
    }

    byte getterSwitch1(){
    return switchValue1;
    }

    void setterSwitch2(byte value) {
    digitalWrite(LedPin2, (value > 0)? LOW: HIGH);
    switchValue2 = value;
    }

    byte getterSwitch2(){
    return switchValue2;
    }

    void setterSwitch3(byte value) {
    digitalWrite(LedPin3, (value > 0)? LOW: HIGH);
    switchValue3 = value;
    }

    byte getterSwitch3(){
    return switchValue3;
    }

    void setterSwitch4(byte value) {
    digitalWrite(LedPin4, (value > 0)? LOW: HIGH);
    switchValue4 = value;
    }

    byte getterSwitch4(){
    return switchValue4;
    }

    Заливаем скетч в Z-UNO, после чего добавляем наше устройство в Z-Wave контроллер. Немного кастомизируем иконки и пульт управления светофором готов.


    На телефоне веб интерфейс RaZberry тоже не плохо выглядит.


    Также этим светофором можно управлять с других Z-Wave устройств, например брелока Key Fob с 4 кнопками.


    В игре я сам буду управлять светофором в зависимости от дорожной ситуации, но с помощью дополнительных датчиков, расписания и приложений RaZberry можно было бы и автоматизировать систему.


    Плата Z-UNO позволяет разрабатывать Z-Wave устройства любого типа: реле, диммеры, датчики освещенности, движения, расстояния и многие другие. Z-UNO это одно из самых дешевых Z-Wave устройств. За 3000р вы можете сделать например 10-канальное реле или 10 канальный RGBW модуль! Это очень круто!
    Z-Wave.Me
    Производитель оборудования Z-Wave
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама

    Комментарии 12

      0
      Еще бы найти это чудо в продаже.
        0
        Через 2 недели с производства придут Z-UNO второй версии. Чуть-чуть подождать.
        0
        Э-э-э… Сколько лет детям? Вы не опасаетсь внедрить им несколько неправильное понимание логики работы настоящих светофоров? т.е. понятно что игра, понарошку и всё такое прочее, но рефлексы вещь долгоиграющая — иногда через столько лет срабатывают (типа эффект велосипеда — раз научивись хрен разучишься) и иногда весьма неожиданно.
          0
          во, нашёл:
          image
          полный размер:
          http://olga.ru.com/travel/india/deli2/2910.jpg
          угадай страну по светофору
            0
            Угадай страну по фрагменту ссылки: india/deli2/
            А в метро, кстати, синий есть:
            image
              0
              Синий и бело-лунный используются на железной дороге для маневровых составов (вместо красного и зелёного).
                0
                Так точно. Еще бывает два белых, маневры на свободный путь со скоростью до 40 км/ч.
                А в метро синий это разрешение движения по показаниям АЛС-АРС, белый разрешает маневры, два белых разрешают маневры в направлении главных путей (при движении с парковых путей депо).
                  0
                  Спасибо (не могу поставить плюс).
              0
              В США, например, тоже есть светофоры с 4 сегментами — четвёртый в качестве доп. секции.
            0
            Дети такого возраста, что уже знают на какой сигнал ехать можно, а на какой нет. Да и синий должен включаться в исключительных случаях, в основном он выключен.
              0
              Спасибо за статью. Буду весьма рад, если расскажете что за светодиодные лампы используются?

            Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

            Самое читаемое