Психоделическая RGB лестница своими руками

[ Версия для печати ]
Добавить в Telegram Добавить в Twitter Добавить в Вконтакте Добавить в Одноклассники
Страницы: (5) 1 [2] 3 4 ... Последняя »  К последнему непрочитанному [ ОТВЕТИТЬ ] [ НОВАЯ ТЕМА ]
drussilla7
11.12.2020 - 00:35
2
Статус: Offline


Шутник

Регистрация: 10.12.20
Сообщений: 49
kryskaloki
там яркость регулируется. В рабочем режиме почти на минималке стоит, в глаза не светит
 
[^]
biomusorka
11.12.2020 - 00:36
0
Статус: Offline


Юморист

Регистрация: 4.05.20
Сообщений: 429
Если мягкий свет поставить, то красиво. Эт че, надо с прогать и с компа включать? Че за блок? Ардуинина?
 
[^]
drussilla7
11.12.2020 - 00:37
2
Статус: Offline


Шутник

Регистрация: 10.12.20
Сообщений: 49
АМАЛКЕР
Raspberry под рукой была, и wiif встроенный. Планирую сделать доп управление через Alexa
 
[^]
drussilla7
11.12.2020 - 00:37
2
Статус: Offline


Шутник

Регистрация: 10.12.20
Сообщений: 49
biomusorka
Блок Raspberry Pi 4, но и Ардуино хватило бы с головой. Просто под рукой была только Raspberry.
 
[^]
Yakeros
11.12.2020 - 00:38 [ показать ]
-11
kryskaloki
11.12.2020 - 00:39
1
Статус: Offline


Ярила

Регистрация: 19.04.16
Сообщений: 2633
Цитата (drussilla7 @ 11.12.2020 - 00:35)
kryskaloki
там яркость регулируется. В рабочем режиме почти на минималке стоит, в глаза не светит

Ну дело не только в том, слепит или нет. На лестнице что нужно, чтобы было сильнее освещено? Правильно - ступени. А так выходит, что они менее освещены, чем задники, если смотреть снизу.

При спуске-то норм.


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

Это сообщение отредактировал kryskaloki - 11.12.2020 - 00:39
 
[^]
kryskaloki
11.12.2020 - 00:40
19
Статус: Offline


Ярила

Регистрация: 19.04.16
Сообщений: 2633
Цитата (Yakeros @ 11.12.2020 - 00:38)
Ну ты талантище, нет слов. После просмотра видео, понял, что ты не в России или эсэнговии, а где-то в цивилизации. Заглянул в профиль, и понял. В России не многие поймут этого шедевра.

Мля, как же вы затрахали, мудлоны. Съедь уже наконец из нашего Мордора в Цивилизацию. Забудь русский язык и дорогу на ЯП. Так будет лучше для всех.
 
[^]
drussilla7
11.12.2020 - 00:41
0
Статус: Offline


Шутник

Регистрация: 10.12.20
Сообщений: 49
kryskaloki
Отличная идея! На днях попробуем, заценим как оно.

Один минус подсветки, шерсть котячью приходиться убирать через день. :)
 
[^]
Yobyavsyo
11.12.2020 - 00:44
1
Статус: Offline


Хохмач

Регистрация: 12.06.19
Сообщений: 690
Я вот купил RGB ленту. С пультом. На кой хуй купил???
Даже доча (6) не может определиться, куда её приспособить.

Размещено через приложение ЯПлакалъ
 
[^]
drussilla7
11.12.2020 - 00:45
8
Статус: Offline


Шутник

Регистрация: 10.12.20
Сообщений: 49
Кому интересно, код программы на python которая все этим добром управляет
Код

import time
import argparse
import colorsys

from rpi_ws281x import ws, Color, Adafruit_NeoPixel
import RPi.GPIO as GPIO

# LED strip configuration:

# Bottom - from top to bottom
# 75 75 75 75 75 75 | 75 90 105 85 80                                                                             │
LED_1_COUNT = 177        # Number of LED pixels.                                                        │
LED_1_PIN = 18          # GPIO pin connected to the pixels (must support PWM! GPIO 13 and 18 on RPi 3). │
LED_1_FREQ_HZ = 800000  # LED signal frequency in hertz (usually 800khz)                                │
LED_1_DMA = 10          # DMA channel to use for generating signal (Between 1 and 14)                   │
LED_1_BRIGHTNESS = 255  # Set to 0 for darkest and 255 for brightest                                    │
LED_1_INVERT = False    # True to invert the signal (when using NPN transistor level shift)             │
LED_1_CHANNEL = 0       # 0 or 1

# Top - From bottom to top
# 75 80 95 95 90 85
LED_2_COUNT = 104        # Number of LED pixels.                                                        │
LED_2_PIN = 13          # GPIO pin connected to the pixels (must support PWM! GPIO 13 or 18 on RPi 3).  │
LED_2_FREQ_HZ = 800000  # LED signal frequency in hertz (usually 800khz)                                │
LED_2_DMA = 10          # DMA channel to use for generating signal (Between 1 and 14)                   │
LED_2_BRIGHTNESS = 255  # Set to 0 for darkest and 255 for brightest                                    │
LED_2_INVERT = False    # True to invert the signal (when using NPN transistor level shift)             │
LED_2_CHANNEL = 1       # 0 or 1                                                                        │
LED_STRIP_TYPE = ws.WS2811_STRIP_BRG

# from bottom to top
leds_per_stair = [ 16, 17, 21, 18, 15, 15, 15, 15, 15, 15, 15, 15, 16, 19, 19, 18, 17 ]

def hsv2rgb(h,s,v):
   return tuple(round(i * 255) for i in colorsys.hsv_to_rgb(h,s,v))

def colorWipe(strip1, strip2, led_indexes, color, wait_ms=1):
   """Wipe color across display a pixel at a time."""
   for stair in led_indexes:
       for i in range(len(stair) - 1):
           stair[0].setPixelColor(stair[i + 1], color)
           stair[0].show()
           time.sleep(wait_ms/1000)


def wheel(pos):
   """Generate rainbow colors across 0-255 positions."""
   if pos < 85:
       return Color(pos * 3, 255 - pos * 3, 0)
   elif pos < 170: pos -= 85 return Color(255 - pos * 3, 0, pos * 3) else: pos -= 170 return Color(0, pos * 3, 255 - pos * 3) def rainbowCycle(strip1, strip2, wait_ms=20, iterations=5): """Draw rainbow that uniformly distributes itself across all pixels.""" totalPixels = strip1.numPixels() + strip2.numPixels() for j in range(256 * iterations): for i in range(totalPixels): if i >= strip1.numPixels():
               strip2.setPixelColor(strip2.numPixels() - (i - strip1.numPixels()) - 1, wheel(
                   (int(i * 256 / totalPixels) + j) & 255))
           else:
               strip1.setPixelColor(i, wheel(
                   (int(i * 256 / totalPixels) + j) & 255))
       strip1.show()
       strip2.show()
       time.sleep(wait_ms / 1000.0)

def slowOnBottomToTop(led_indexes):
   """Draw rainbow that uniformly distributes itself across all pixels."""
   for stair in led_indexes:
       for value in range(4):
           for i in range(len(stair) - 1):
               color = hsv2rgb(0.05, 1, value/10.0)
               stair[0].setPixelColor(stair[i+1], Color(color[0], color[1], color[2]))
           stair[0].show()
           time.sleep(5/1000)

def slowOnTopToBottom(led_indexes):
   for stair in reversed(led_indexes):
       for value in range(4):
           for i in range(len(stair) - 1):
               color = hsv2rgb(0.05, 1, value/10.0)
               stair[0].setPixelColor(stair[i+1], Color(color[0], color[1], color[2]))
           stair[0].show()
           time.sleep(5/1000)

def rainbowPerStair(strip1, strip2, led_indexes, wait_ms=20, iterations=50):
   """Draw rainbow that uniformly distributes itself across pixels of each stair."""
   for j in range(256 * iterations):
       for stair in led_indexes:
           for i in range(len(stair) - 1):
               stair[0].setPixelColor(stair[i+1], wheel((int(i * 256 / (len(stair) - 1)) + j) & 255))
       strip1.show()
       strip2.show()
       time.sleep(wait_ms / 1000.0)

def map_leds(strip1, strip2):
   led_indexes = []
   indexes_used = 0
   for i in range(len(leds_per_stair)):
       if i < 11:
           led_indexes.append([strip1])
           for j in range(leds_per_stair[i]):
               led_indexes[i].append(176 - indexes_used)
               indexes_used = indexes_used + 1
           # bottom part

           if indexes_used == 177:
               indexes_used = 0
       else:
           led_indexes.append([strip2])
           for j in range(leds_per_stair[i]):
               led_indexes[i].append(indexes_used)
               indexes_used = indexes_used + 1
   return led_indexes

if __name__ == '__main__':
   # Process arguments
   parser = argparse.ArgumentParser()
   parser.add_argument('-c', '--clear', action='store_true', help='clear the display on exit')
   args = parser.parse_args()

   # Create NeoPixel objects with appropriate configuration for each strip.                            │
   strip1 = Adafruit_NeoPixel(LED_1_COUNT, LED_1_PIN, LED_1_FREQ_HZ, LED_1_DMA, LED_1_INVERT, LED_1_BRIGHTNESS, LED_1_CHANNEL, LED_STRIP_TYPE)

   strip2 = Adafruit_NeoPixel(LED_2_COUNT, LED_2_PIN, LED_2_FREQ_HZ, LED_2_DMA, LED_2_INVERT, LED_2_BRIGHTNESS, LED_2_CHANNEL, LED_STRIP_TYPE)

   led_indexes= map_leds(strip1, strip2)

   # Intialize the library (must be called once before other functions).                               │
   strip1.begin()
   strip2.begin()

   GPIO.setwarnings(False)
   GPIO.setmode(GPIO.BOARD)
   GPIO.setup(11, GPIO.IN)
   GPIO.setup(13, GPIO.IN)

   print('Press Ctrl-C to quit.')

   #rainbowCycle(strip1, strip2)
#    rainbowPerStair(strip1, strip2, led_indexes)
   try:
       while True:
           top = GPIO.input(11)
           bottom = GPIO.input(13)
           if bottom == 1:
               slowOnBottomToTop(led_indexes)
               time.sleep(15)
               colorWipe(strip1, strip2, led_indexes, Color(0, 0, 0), 5)
           elif top == 1:
               slowOnTopToBottom(led_indexes)
               time.sleep(15)
               colorWipe(strip1, strip2, led_indexes, Color(0, 0, 0), 5)

   except KeyboardInterrupt:
       if args.clear:
           colorWipe(strip1, strip2, led_indexes, Color(0, 0, 0), 2)
 
[^]
DaoDao
11.12.2020 - 00:45
6
Статус: Offline


Ярила

Регистрация: 7.07.12
Сообщений: 5166
хехех узнаю профили лестницы и стену -точно страна травокуров, вначале подумала - не может быть... но точно, наш наркоман... ganja.gif smoka.gif

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

А сейчас уже многие в нашем раёне такую же подсветку сделали, крестьяне - никакой фантазии biggrin.gif biggrin.gif biggrin.gif
 
[^]
drussilla7
11.12.2020 - 00:46
0
Статус: Offline


Шутник

Регистрация: 10.12.20
Сообщений: 49
Цитата (Yobyavsyo @ 11.12.2020 - 00:44)
Я вот купил RGB ленту. С пультом. На кой хуй купил???
Даже доча (6) не может определиться, куда её приспособить.

Под стол ее влепить и делов-то :)
 
[^]
drussilla7
11.12.2020 - 00:48
0
Статус: Offline


Шутник

Регистрация: 10.12.20
Сообщений: 49
Цитата (DaoDao @ 11.12.2020 - 00:45)
хехех узнаю профили лестницы и стену -точно страна травокуров, вначале подумала - не может быть... но точно, наш наркоман... ganja.gif smoka.gif

гыгы, палево smoka.gif ganja.gif
 
[^]
DaoDao
11.12.2020 - 00:48
1
Статус: Offline


Ярила

Регистрация: 7.07.12
Сообщений: 5166
у вас датчика освещения установлены - что бы освещение днем не включалось?

У нас включается свет как стемнеет, но не ранее 18:00 и до часу ночи, потом выключается и утром включается в 6 утра , если темно и горит до 8 утра, потом отключается....
 
[^]
Temp1933
11.12.2020 - 00:49
1
Статус: Offline


Шутник

Регистрация: 28.02.11
Сообщений: 50
Цитата (drussilla7 @ 10.12.2020 - 23:37)
АМАЛКЕР
Raspberry под рукой была, и wiif встроенный. Планирую сделать доп управление через Alexa

esp8266 же
 
[^]
drussilla7
11.12.2020 - 00:52
1
Статус: Offline


Шутник

Регистрация: 10.12.20
Сообщений: 49
Цитата (DaoDao @ 11.12.2020 - 00:48)
у вас датчика освещения установлены - что бы освещение днем не включалось?

У нас включается свет как стемнеет, но не ранее 18:00 и до часу ночи, потом выключается и утром включается в 6 утра , если темно и горит до 8 утра, потом отключается....

на датчик освещения не хватило проводов (50 метров было), но был план его установить (даже дырка под него есть). По прошествии месяца уже настолько привыкли к 24/7 подсветке что передумал ставить датчик света и теперь включается всегда по движению.
 
[^]
drussilla7
11.12.2020 - 00:53
0
Статус: Offline


Шутник

Регистрация: 10.12.20
Сообщений: 49
Цитата (Temp1933 @ 11.12.2020 - 00:49)
Цитата (drussilla7 @ 10.12.2020 - 23:37)
АМАЛКЕР
Raspberry под рукой была, и wiif встроенный. Планирую сделать доп управление через Alexa

esp8266 же

Да, можно, но под рукой уже была Raspberry Pi которая как мини сервер для моих ботов работает (24/7). Теперь еще и лестницу контролирует. По сути перенес ее в другое место и втыкнул пару проводов.
 
[^]
Олегъъъ
11.12.2020 - 00:59
0
Статус: Offline


BroDude

Регистрация: 28.01.19
Сообщений: 1915
какбэ круто up.gif , но как по ней бухому пройти??
 
[^]
gryngs
11.12.2020 - 01:00
0
Статус: Offline


Приколист

Регистрация: 17.12.15
Сообщений: 272
Цитата (drussilla7 @ 11.12.2020 - 01:46)
Цитата (Yobyavsyo @ 11.12.2020 - 00:44)
Я вот купил RGB ленту. С пультом. На кой хуй купил???
Даже доча (6) не может определиться, куда её приспособить.

Под стол ее влепить и делов-то :)

Амбилайт подсветку для монитора, тв.. rulez.gif
 
[^]
кыстыбай
11.12.2020 - 01:03
0
Статус: Offline


Ярила

Регистрация: 6.01.18
Сообщений: 4687
Херня, как по мне... Но для полного блезиру нужно было еще ленту в перила вмонтировать с той же подсветкой стены.
 
[^]
Ono76
11.12.2020 - 01:04
-6
Статус: Online


Ярила

Регистрация: 24.11.15
Сообщений: 16378
Так то прикольно и котяра присутствует, но воняет от новорега рекламой
 
[^]
drussilla7
11.12.2020 - 01:09
3
Статус: Offline


Шутник

Регистрация: 10.12.20
Сообщений: 49
Цитата (Олегъъъ @ 11.12.2020 - 00:59)
какбэ круто up.gif , но как по ней бухому пройти??

а зачем бухому ходить по ней? Летать нужно! lol.gif
 
[^]
drussilla7
11.12.2020 - 01:10
1
Статус: Offline


Шутник

Регистрация: 10.12.20
Сообщений: 49
Цитата (Ono76 @ 11.12.2020 - 01:04)
Так то прикольно и котяра присутствует, но воняет от новорега рекламой

спасибо! :) в следующий раз помоюсь
 
[^]
klasterus
11.12.2020 - 01:17
1
Статус: Offline


Обладатель лысой киски

Регистрация: 28.07.17
Сообщений: 406
Накладки на ступени были совсем не лишние. Ладно, дело молодое...
 
[^]
АМАЛКЕР
11.12.2020 - 01:18
4
Статус: Offline


Шпаломётчик

Регистрация: 21.04.13
Сообщений: 1497
Цитата (Ono76 @ 11.12.2020 - 01:04)
Так то прикольно и котяра присутствует, но воняет от новорега рекламой

И что же, по вашему, он рекламирует, этот коварный тип?
 
[^]
Понравился пост? Еще больше интересного в Телеграм-канале ЯПлакалъ!
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии. Авторизуйтесь, пожалуйста, или зарегистрируйтесь, если не зарегистрированы.
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) Просмотры темы: 17345
0 Пользователей:
Страницы: (5) 1 [2] 3 4 ... Последняя » [ ОТВЕТИТЬ ] [ НОВАЯ ТЕМА ]


 
 



Активные темы






Наверх