[Projekt] ASP goes to Hackerspace

W poniedziałek gościliśmy w HS grupę studentów/tek z ASP, która w ramach przedmiotu “Projekt Interdyscyplinarny” szuka inspiracji i współpracy do zrobienia jakiś zakręconych, artystycznych projektów, w których można by połączyć różne technologie, hardware i software.
Powyciągaliśmy wszystko co mamy co umie rysować, drukować, wyświetlać (światłem własnym albo odbitym :-) ), jeździć, etc.
Udało się zarzucić trochę pomysłów opartych na tych sprzętach i również na takich których nie mamy albo trzeba by je zrobić w ramach projektów.
Żeby jakoś nadać tej burzy mózgów dalszy ciąg, zakładam ten wątek, żeby po kolei opisać te pomysły o których udało się powiedzieć i również te na które zabrakło czasu.

#1 - oscyloskop rendering.

TL;DR To co słyszysz jest tym co widzisz, to co widzisz jest tym co słyszysz.
Dwa sygnały dźwiękowe - czyli typowo lewy/prawy kanał stereo - podłączone do oscyloskopu sterują osiami X-Y rysując… to co właśnie słyszysz.
Można generować zarówno abstrakcyjne wizualizacje na podstawie fal dźwiękowych z generatorów, instrumentów muzycznych albo konkretne obrazy zamienione programowo na dźwięki.
Przykładowa realizacja:

Do tworzenia oscyloskop-rendering powstało sporo oprogramowania.
Najbardziej dostępny jest darmowy (i opensource) program osci-render, który można używać samodzielnie albo w połaczeniu z blenderem i/lub instrumentem muzycznym, i/lub edytorem muzycznym (DAW):

Wersje programu dla Linux/Windows/macOS do pobrania: Release v1.33.2 · jameshball/osci-render · GitHub
Tworzenie projektu nie wymaga posiadania oscyloskopu (program ma wirtualny oscyloskop) ale na prawdziwym analogowym oscyloskopie z lampą elektronową prezentacja wygląda najlepiej.

Oscyloskop rendering można tworzyć również przy użyciu prostego hardware’u takiego jak mikrokontrolery 8-mio bitowe.
W tym roku na demo party decrunch (które było na terenie Czasoprzetrzeni) było prezentowane demo generowane z procesora AVR: AVR Demo by Adamstan84 - Demozoo

1 polubienie

#2 - animacje na wyświetlaczu elektromechanicznym flipdot.

Oldscholowe wyświetlacze, ciągle używane tam gdzie informacja nie zmienia się za często czyli np tablice informacyjne w zbiorkomach.
Podobnie jak wyświetlacze e-papier, pobierają prąd tylko w czasie zmiany pixeli, nie świecą własnym światłem i mają dość ograniczoną szybkość odświeżania/zmiany.

Próbka tego co potrafi flipdot:

W HS mamy skromniejszą wersję ale na pewno nie mniej efektowną:

W dodatku obudowaną (choć to nieustanny work-in-progress) w interfejsy i api które pozwalają wysyłać do niego dane bez konieczności znajomości “bebechów”.

1 polubienie

#3 - animacje instrumentów muzycznych.

TL;DR - trzeba obejrzeć klasykę gatunku czyli realizacje projektu Animusic:

Od tamtego czasu powstało mnóstwo animacji w tym stylu.
A dla chętnych, żeby się z tym zmierzyć dobra informacja - są tutoriale m.in do blendera:

#4 - trochę nawiązanie do #3 ale projekt w realu - czyli zrób swoją zakręconą zautomatyzowaną instalację muzyczną.

Od kogo czerpać pomysły ? Od najlepszych.
Czyli (wg mnie) zespół Wintergatan i jego twórca - Martin Molin .
Jego najnowszy projekt to cover z animusic i instrument perkusyjny z elementów które kupicie w każdym sklepie ̶m̶u̶z̶y̶c̶z̶n̶y̶m̶ ̶ budowlanym:

Martin dokumentuje wszystkie swoje projekty z wielką dokładnością - z każdego powstało setki odcinków “jak to jest (właśnie) robione”.

1 polubienie

#5 - muzyka na “instrumentach” CNC

Wszystkie urządzenia do komputerowo sterowanej obróbki (drukarki 3D, frezarki CNC, maszyny do haftowania , plotery) wydają w czasie pracy dźwięki, związane z prędkością posuwu i prędkością obrotu silników. Ponieważ te prędkości są zadawane programowo to można to wykorzystać, żeby takie dźwięki generować o ściśle zadanej wysokości.
Te maszyny są najczęściej sterowane przy pomocy bardzo prostego języka g-code którym (m.in.) można zadać współrzędne i prędkość przejazdu z jednego punktu do drugiego .
Maszyny, które mają kilka osi ( np drukarki 3D zwykle 3, frezarki od 3 do 5-ciu) mogą przesuwać głowicę jednocześnie w każdej z nich czyli potencjalnie można generować na raz tyle dzwięków ile jest osi pracy maszyny.

Przykładowa melodia (każda maszyna ma swoją niepowtarzalną barwę):

I tutaj również powstały narzędzia softwarowe, żeby ułatwić konwersję z języka muzyki na język maszynowy:

Ponieważ generowany dźwięk odpowiada trójwymiarowej ścieżce pracy to można połączyć dźwięk z wizualizacją/animacją tej ścieżki. A do wizualizacji g-code jest mnóstwo kodu opensource w róznych językach (tak :slight_smile: , blender też umie w g-code → BlenderCAM )

1 polubienie

#5 - trochę podobne do #1 ale częstotliwości radiowe czyli waterfall rendering.

Hackerspace to również tematy radiowe - wielu członków to krótkofalowcy (one też).
Dawne radia potrafiły odbierać na raz tylko jedna częstotliwość.
Współczesne odbiorniki komunikacyjne potrafią odebrać i pokazać szerokie widmo częstotliwości w postaci tzw wodospadu. Pozwala to łatwo znaleźć na paśmie wolne miejsce i monitorować co się dzieje na innych częstotliwościach niż aktualnie prowadzona łączność.
A skoro radio umie pokazać wizualnie tyle sygnałów (tyle częstotliwości) na raz to możemy odwrócić sytuację i tak wygenerować sygnał radiowy, żeby wyświetlacz pokazywał konkretny wzór.

Jak coś takiego przykładowo wygląda:

Nie ma tu wprawdzie wielkiego potencjału do animacji - obraz jest jakby “drukowany” sygnałem radiowym ale jednak można zaprojektować kreatywnie to co mamy drukować i sterować tym w czasie rzeczywistym.

Nadawanie sygnałów radiowych wymaga zezwolenia więc praktyczna realizacja takiego projektu oznacza, że albo się bawimy na minimalnych mocach, które się mieszczą w granicach dozwolonego użytku tzn. nie wyjdą poza zasięg pojedynczego pomieszczenia, albo jeśli moce/zasięg większy (w praktyce na drugi koniec świata :-) ) to np pod znakiem wywoławczym hackerspace’u i w odpowiednich miejscach na pasmach amatorskich.

W praktyce nie jest potrzebny drogi sprzęt bo odbiornikiem może być prosty rtl-sdr na usb do którego jest dostępne dużo programów które pokazują sygnał w formie wodospadu a nadajnikiem najtańsze ręczne radio ukf.

#6 - też waterfall rendering ale na prawdziwym wodospadzie z wody.
Czyli tzw wodna drukarka.
Taką “zwykłą” z hydropolis to chyba każdy/a we Wrocławiu zna (od zeszłego roku jest druga w środku)
A niżej najbardziej zakręcona realizacja tego typu jaką znalazłem:

Na zbliżeniach zawory sterujące wypływem wody wyglądają na zrobione na selenoidach ale można (by)przetestować dużo prostsze i tańsze rozwiązanie przy użyciu mikroserw modelarskich i zaworów wydrukowanych w 3D. Czyli np tego typu projekt: LibreValve: an electric MG90S servo shut-off valve by JoeyMcCord | Download free STL model | Printables.com.

1 polubienie

#7 - Weź ledy/paski ledów RGB, arduino albo ESP8266/ESP32 (takie lepsze arduino z wifi/BT) i zrób wyświetlacz matrycowy z niczego a na nim artwork.

Tylko kilka z nieskończonej liczby możliwych pomysłów:
Wyświetlacz 3D:

Wyświetlacz 3D przy użyciu ruchomej matrycy 2D:

3D jeszcze inaczej:

POV (Persistence Of Vision) czyli obraz 2D z wyświetlacza 1D

Wyświetlacz na ścianie z bloczków szklanych (W HS mamy niezagospodarowany sufit z bloczków szklanych… :roll_eyes:):

Zwykły/niezwykły wyświetlacz ale użyty nietypowo np krzyż z apteki jako ekran do animacji.

W zakresie software’u do sterowania takimi matrycami warto się przyjrzeć projektowi WLED.

#8 - garść pomysłów na tworzenie sztuki raczej softwarowo, z wykorzystaniem środowiska Processing.

generowanie z obrazu rastrowego wektorów przy pomocy transformacji jasność → amplituda+częstotliwość.
Można (by) do tego dorobić generowanie dzwięku albo bezpośrednio przez te sygnały ( czyli liczba linii = liczba generatorów) albo np używać ich amplitudy do modulowania częstotliwoci stałych generatorów nastrojonych pierwotnie na jakieś harmoniczne tony.
Ew. pomysły jak z tego zrobić animację:

  • przez programowe dynamiczne zmiany parametrów generowania tych wektorów
  • użyć tego programu jako narzędzia do transformacji klatek animacji zrobionej inna techniką
  • użyć wyjścia z tego programu jako inputu np do oscyloskop-rendering.

Kod źródłowy: GitHub - gwygonik/SquiggleDraw: Processing app to create an SVG based on the brightness of an image transformed into sine waves.

obraz

Galeria tysięcy projektów zrealizowanych przy użyciu processing (do wszystkich są dołączone kody źródłowe :heart_eyes:):

.

Ten pomysł brzmi ciekawie, możnaby może nie animację, ale jakieś video tu stworzyć… Ostatnio widziałam taki jeden mem
Można by było nawet tak jak w nim wykorzystać medium i zaskoczyć odbiorcę :P

No tak… transmisję SSTV też można by “zużyć” bardziej artystycznie niż to się zwykle robi. Cały sygnał mieści się w paśmie akustycznym (dokładnie między 1200-2300Hz) i jest właściwie analogowy więc są tu prawie te same zależności co przy oscyloskop-rendering czyli np możliwość przygotowania takiego obrazka, żeby w warstwie dzwiękowej było coś sensownie słychać np jakąś melodię.

Od Forum otwarte do Projekty

Czy dzisiaj ok.18 możemy podejść z koleżanką na zhakowanie furby? Model został odkryty i na szczęście są tutoriale na instructables. Poniżej link:

Dzisiaj środa, więc od 19 drzwi są otwarte, zapraszamy :wink: Chyba, że wcześniej potrzebujecie?

19 będzie ok :) to do zobaczenia!

1 polubienie