Задний фонарь, бегущий поворотник, tail light, arduino DIY

Поделиться
HTML-код
  • Опубликовано: 22 дек 2024

Комментарии • 28

  • @povorotnetuda2019
    @povorotnetuda2019  3 года назад +2

    #include // подключаем библиотеку
    int count = 40; // количество пикселей
    Adafruit_NeoPixel strip1 = Adafruit_NeoPixel(count, 3, NEO_GRB + NEO_KHZ800); //Инициализируем поворотник на 3 цифровом выходе
    Adafruit_NeoPixel strip2 = Adafruit_NeoPixel(count, 2, NEO_GRB + NEO_KHZ800); //Инициализируем ходовой огон на 2 цифровом выходе
    int set = 1;
    void setup()
    {
    pinMode(12, INPUT); //Поворотник +12 Вольт через делитель напряжения
    pinMode(4, INPUT); //обратная связь с реле +12 Вольт
    strip1.begin();
    strip2.begin();
    strip1.show();
    strip2.show();
    #define speedt 5 //Скорость плавного включения (от 1 до 100 / на скорости 100 яркость увеличится почти мгновенно)
    #define speed0 2 //Скорость пробегания поворотника (чем меньше число тем быстрее)
    #define speed1 5 //Cкорость пробегания при включении (чем меньше число тем быстрее включится)
    #define speed2 1000 //Установлена секунда задержки после увеличения яркости (если поставить 1 то задержки не будет и поворотник выключится быстрее)
    #define red1 255, 0, 0 // Цвет ходового огня (красный)
    #define color1 255, 255, 255 // Цвет ходового огня при включении 1 (белый)
    #define color2 255, 255, 255 // Цвет поворотника при включении 1 (белый)
    #define color3 255, 0 , 0 // Цвет ходового огня при включении 2 (красный)
    #define color4 255, 0 , 0 // Цвет поворотника при включении 2 (красный)
    #define yellow 255, 64 , 0 // Цвет поворотника (желтый)
    }
    void loop()
    {
    if (digitalRead(4) == HIGH )
    {
    set = 1;
    }
    if (digitalRead(4) == LOW && set == 1 )
    {
    start();
    set = 0;
    }

    if (digitalRead(12) == HIGH )
    {
    for (int i = 0; i < count + 1; i++)
    {
    for (int j = 0; j < i; j++)
    {
    strip1.setPixelColor(j, strip1.Color(yellow));
    }
    delay(speed0);
    strip1.show();
    }
    }
    if (digitalRead(12) == LOW)
    {
    for (int i = 0; i < count; i++)
    {
    strip1.setPixelColor(i, strip1.Color(0, 0, 0));
    }
    strip1.show();
    }
    }
    void start ()
    {
    for (int i = 0; i < count; i++)
    {
    for (int j = 0; j < i; j++)
    {
    strip1.setPixelColor(j, strip1.Color(color1));
    strip2.setPixelColor(j, strip2.Color(color2));
    }
    delay(speed1);
    strip1.show();
    strip2.show();
    }
    for (int i = 0; i < count; i++)
    {
    for (int j = 0; j < i; j++)
    {
    strip1.setPixelColor(j, strip1.Color(0, 0, 0));
    strip2.setPixelColor(j, strip2.Color(0, 0, 0));
    }
    delay(speed1);
    strip1.show();
    strip2.show();
    }

    for (int i = 0; i < count + 2; i++)
    {
    for (int j = 0; j < i; j++)
    {
    strip1.setPixelColor(count - j, strip1.Color(color3));
    strip2.setPixelColor(count - j, strip2.Color(color4));
    }
    delay(speed1);
    strip1.show();
    strip2.show();
    }

    for (int i = 0; i < count + 2; i++)
    {
    for (int j = 0; j < i; j++)
    {
    strip1.setPixelColor(count - j, strip1.Color(0, 0, 0));
    strip2.setPixelColor(count - j, strip2.Color(0, 0, 0));
    }
    delay(speed1);
    strip1.show();
    strip2.show();
    }
    delay(400);
    dxo();
    }
    void dxo ()
    {
    for (int j = 0; j < 255; j += speedt)
    {
    strip2.setBrightness(j);
    strip1.setBrightness(j);
    for (int i = 0; i < count + 1; i++)
    {
    strip2.setPixelColor(i, strip2.Color(red1));
    strip1.setPixelColor(i, strip1.Color(color4));
    }
    strip2.show();
    strip1.show();
    delay(20);
    }
    delay(speed2);
    {
    for (int i = 0; i < count + 1; i++)
    {
    strip2.setPixelColor(i, strip2.Color(red1));
    strip1.setPixelColor(i, strip1.Color(0, 0, 0));
    }
    strip2.show();
    strip1.show();
    }
    }

  • @gerbl4848
    @gerbl4848 3 года назад +1

    Только недавно закончил бегущие поворотники, теперь придется и стопы делать))) Спасибо за Вашу работу!

  • @ЦарьМидии
    @ЦарьМидии 3 года назад

    Красава, всё доступно и понятно !!

  • @van2zche
    @van2zche 3 года назад

    Саша ты лучший! Снимай ещё)

  • @RadioUnit
    @RadioUnit 3 года назад

    Крутотень!!! Надо будет взять на заметку😉.
    Мы вроде о взаимной рекламе договаривались, опять тишина...

  • @nbekanbek7442
    @nbekanbek7442 6 месяцев назад

    Здравствуйте. А что это за реле ? Подскажите пожалуйста)

  • @КириллМаниленко-г5ь
    @КириллМаниленко-г5ь 8 месяцев назад

    Можно же прикрепить скетч файлом

  • @nbekanbek7442
    @nbekanbek7442 6 месяцев назад

    Здравствуйте. У меня тут вопрос возник. Вы когда подключаете на задние фонари. То питания от куда берете ? От габаритов ? Просто на сколько я знаю тормоза у автомобилях горят всегда. То есть не включая габаритов. Даже если автомобиль не в в состоянии зажиганий

    • @povorotnetuda2019
      @povorotnetuda2019  6 месяцев назад

      Здравствуйте. Всё зависит от требований заказчика. Можно сделать чтобы поворотники и стоп сигнал работали в штатном режиме, то есть вообще без дополнительного питания.

  • @vsvd_ez
    @vsvd_ez 2 года назад

    А не вредно ставить резистор на 47к напрямую? Не всегда же в авто ровно 12 вольт. А для ардуинки 5.5 уже смертельно

    • @povorotnetuda2019
      @povorotnetuda2019  2 года назад

      Данная схема благополучно работает уже более чем на сотне автомобилей, думаю не вредно.

    • @vsvd_ez
      @vsvd_ez 2 года назад

      @@povorotnetuda2019 а сколько на выходе, не замеряли?

    • @povorotnetuda2019
      @povorotnetuda2019  2 года назад

      @@vsvd_ez Давно это было, уже не помню, но вроде около 7-8 Вольт. Такое подключение придумал не я, но оно стабильно работает. Если очень хочется то можно опторазвязку поставить.

    • @povorotnetuda2019
      @povorotnetuda2019  2 года назад

      @@vsvd_ez Вот, например такой модуль: ali.ski/4265a

    • @vsvd_ez
      @vsvd_ez 2 года назад

      @@povorotnetuda2019 ооо, благодарю. Этот вариант мне больше подходит, чем потеть с резисторами. С физикой не особо дружу. Получается через эти платы можно сразу правый, левый, стопари и еще какие нибудь ништяки на одну ардуинку запитать?)

  • @sergey-380
    @sergey-380 3 года назад

    А проект скеч? Спасибо

  • @belayvovan
    @belayvovan 3 года назад

    так стоп, он запаралелил кольцо и прямую ленту, это тогда вообще просто) вот бы попробовать код переписать, чтобы они не были заправленные, но это намного сложнее код

    • @povorotnetuda2019
      @povorotnetuda2019  3 года назад

      Если вы готовы выступить заказчиком то без проблем реализуем. По любым вопросам пишите на почту : povorotnetuda2019@gmail.com

  • @zaxzax1023
    @zaxzax1023 3 года назад

    Жаль ардуинка плохо работает при -20...

    • @povorotnetuda2019
      @povorotnetuda2019  3 года назад

      Даташит на микроконтроллер Atmega 328 P гласит что рабочая температура от -40 до +85 градусов.

    • @zaxzax1023
      @zaxzax1023 3 года назад

      @@povorotnetuda2019 ну вот, а практика показала чуть другие цифры... -18 работает, -20 все... Слетает прошивка.

    • @povorotnetuda2019
      @povorotnetuda2019  3 года назад

      @@zaxzax1023Ну не знаю... У нас уже в этом году было -34 и ни один клиент не сообщил о сбоях. Собственно говоря за несколько лет моей работы в данной сфере нет ни одного клиента пожаловавшегося на какие либо сбои.

    • @zaxzax1023
      @zaxzax1023 3 года назад

      @@povorotnetuda2019 возможно мне такая попалась?

    • @povorotnetuda2019
      @povorotnetuda2019  3 года назад

      @@zaxzax1023 Не могу утверждать так как сам не проводил тесты, но возможно вам попалась бракованная или просто подделка. Я встречал разные Ардуино Нано с разной топологией и разными компонентами на плате, возможно в вашем случае кокой то из компонентов оказался не готов к морозам. У меня и у самого есть большое желание проверить работу устройства в термо-камере, чтобы клиент точно знал до кокой температуры будет работать именно его комплект.