Ничего не найдено :(
    В гостях у Самоделкина! » Электроника » Arduino » «Левитирующий» светодиодный светильник

    «Левитирующий» светодиодный светильник

    «Левитирующий» светодиодный светильник

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

    Давайте посмотрим видео с примером работы светильника.

    Для изготовления такого светильника мастер использовал следующие

    Инструменты и материалы:
    -Arduino Nano;
    -Перемычки;
    -Неопиксельное светодиодное кольцо с 24-я светодиодами;
    -Батарея 9В;
    -Разъем батареи 9В;
    -Мате;
    -Леска;
    -Клеевой пистолет;
    -Паяльное оборудование;
    -Доступ к лазерному резаку;









    Шаг первый: электронная часть
    Сначала мастер подготавливает электронику. Припаивает +(плюс) батарейного разъема (красный провод) к контакту VIN Ардуино, припаивает - (минус) разъема к GND платы.

    Дальше нужно подключить светодиодное кольцо. На кольце четыре контакта DI, VCC и GND, и DO. Для этого проекта нужно подключить первых три. Подключает DI выводу D5, VCC к 5V, а GND - к GND Ардуино.




    Шаг второй: корпус
    Дальше мастер вырезает корпус с помощью лазерного резака. Удерживаться детали будут с помощью техники называемой тенсегрити*. Красными и синими линиями отмечена леска, которая соединяет две части корпуса. Скачать файл для лазерной резки можно ниже.
    ProjPlans.ai



    *Тенсегрити — принцип построения конструкций из стержней и тросов, в которых стержни работают на сжатие, а тросы — на растяжение.

    Шаг третий: сборка
    Дальше мастер приступает к сборке светильника.
    Собирает части корпуса. Закрепляет леску.




    Дальше приклеивает к диску светодиодное кольцо. На стойке закрепляет остальную электронику.


    Приклеивает "липучку" к центру верней части корпуса и к кольцу. Соединяет кольцо с абажуром леской. Затем мастер просто прикрепит кольцо к корпусу липучкой. Такой способ крепления мастер выбрал на тот случай, если нужно будет заменить батарею.




    Шаг четвертый: код
    Дальше мастер загружает код и проверяет работу светильника.



    #include// include the library to use the LED ring
    #definePIN5// the pin which the LED ring is connected to
    #defineNumPixels24// the number of pixels in the ring. there are rings with 8 LEDs, or you could use an LED strip with the Neopixels. Just remember to specify how many LEDs you have! 
    Adafruit_NeoPixel pixels(NumPixels, PIN, NEO_GRB + NEO_KHZ800); // declare the light object called pixels. The code will refer to the LED ring as this. 
    #defineDELAYVAL20// this decides how long the board should wait before the lights are rotated. If you make this smaller, then the rainbow colors will rotate even faster. 
    int r[NumPixels]; // this is the red value for all of the LEDs
    int g[NumPixels]; // this is the green value for all of the LEDs
    int b[NumPixels]; // this is the blue value for all of the LEDs 
    constint diff=31; // this sets the brightness value. The maximum number is 31, but any number x where 0 < x < 32 will work.
    /////// Set the initial position of the lights ////////
    voidsetLights(){
    int R=8*diff,G=0,B=0; // the initial position of all of the LEDs 
    for(int i=0;i<8;i++,R-=diff,G+=diff){ 
      r[i]=R;
      g[i]=G;
      b[i]=0;
     }
    for(int i=0;i<8;i++,G-=diff,B+=diff){
      g[i+8]=G;
      b[i+8]=B;
      r[i+8]=0;
     }
    for(int i=0;i<8;i++,B-=diff,R+=diff){
      r[i+16]=R;
      b[i+16]=B;
      g[i+16]=0;
     }
    }
    /////// Finish setting the initial position of the LEDs ////////
    voidsetup() {
      pixels.begin(); // turn on the pixels object 
    setLights(); // set the initial position of the LEDs 
    }
    int idx=0; // set the initial position of the LED rotation 
    voidloop() {
    /////// set the color of each of the LEDs ////////
    for(int i=0; i
        pixels.setPixelColor(i, pixels.Color(r[(i+idx)%24], g[(i+idx)%24], b[(i+idx)%24]));
        pixels.show();
      }
    /////// finish setting the color of the LEDs ////////
    delay(DELAYVAL); // wait DELAYVAL milliseconds 
      idx++; // move the rotation of the LEDs by one
      idx%=24; // mod the value by 24. This restricts the value of idx to between 0 and 23, inclusive


    Все готово.


    Источник (Source)
    Становитесь автором сайта, публикуйте собственные статьи, описания самоделок с оплатой за текст. Подробнее здесь.
    Подборки: Arduino Светильник

    Умный светильник из подручных материалов

    Светильник симулирующий восход Солнца

    10
    Идея
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    10
    Описание
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    9
    Исполнение
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    Итоговая оценка: 9.67 из 10 (голосов: 3 / История оценок)

    Добавить комментарий

    Привет, Гость!


    Зарегистрируйтесь

    Или войдите на сайт, если уже зарегистрированы...

    Войти

    Добавьте самоделку

    Добавьте тему

    Онлайн чат

    Опрос
    А Вы уже рассказали на сайте о своей самоделке?

    Последние комментарии

    Все комментарии