![WYKONAJ PROJEKTOR OBJĘTOŚCIOWY OD CZERWCA: 7 kroków WYKONAJ PROJEKTOR OBJĘTOŚCIOWY OD CZERWCA: 7 kroków](https://img.gwsigeps.com/img/workshop/make-a-volumetric-projector-from-junk-6.jpg)
Spisu treści:
- Kieszonkowe dzieci:
- Krok 1: Przejdź do tej strony
- Krok 2: Rozpocznij przeskakiwanie soczewki okularowej
- Krok 3: PROGRAMOWANIE
- Krok 4: Jak pierwszy pracował?
- Krok 5: Jak powstał obraz pierwszego człowieka.
- Krok 6: Odpylanie w innym dobrym demo i więcej informacji
- Krok 7: Wystarczy, aby działał długo, aby zrobić wideo.
Projektor wolumetryczny jest … czym R2-D2 pokazywał Księżniczkę Leię w Gwiezdnych Wojnach.
To stary projekt, który wydawał się wstrzymany przez odmowę DLP dostarczenia chipu DMD
znacznie zwiększyć rozdzielczość 3D. Ten projekt w ogóle się nie zmienił
zanim HDTV nawet istniał. Przypuszczam, że po tym, jak ludzie zdadzą sobie sprawę, że świat nie jest płaski, to właśnie to
będą oglądać, kiedy technologia filmowa z 1800 roku w końcu się „zestarzeje”.
Jest na tyle prosty, że został zbudowany w całości przez nie więcej niż 2 osoby, w bardzo krótkim czasie
łączny czas.
W rzeczywistości wyświetla w powietrzu animowane obrazy bitmapowe 3D.
Może być zrobiony przez każdego, kto jest dobry w programowaniu PIC i jest skłonny mechanicznie.
Kosztowało nas to NIC, i ma potencjał wykraczający poza najbardziej budżetowe badania 3D.
Nie zawiera żadnych części, które nie były dostępne w 1980 roku. Wszystkie zostały oczyszczone ze stosu śmieci.
Większość lub wszystkie animacje 3D zostały wysłane 100 mil przez modem 14400 baud.
Nie zatrzymuje się, jeśli modem rozłączy się.
Wygląda tak samo ze wszystkich stron.
Nie ma luster, tylko jeden obiektyw, który nie ma ograniczenia wielkości lustra parabolicznego.
To kawał śmieci, ale działa.
JEST PUBLICZNY DOMAINOWANY (podobnie jak udział w Cc)
A jeśli informacja zostanie zaktualizowana, może zostać uwzględnione rozwiązanie problemu braku pozyskania DLP.
Podobnie jak niektóre animacje, które są w nim przechowywane.
To stary laptop 80286, używany jako TTY po prawej stronie.
Kieszonkowe dzieci:
Krok 1: Przejdź do tej strony
Wszystkie aktualnie dostępne notatki dla tego projektu są tutaj i mogą być aktualizowane w przyszłości.
holodeck.virand.com
Zbuduj Holodeck
holodeck.virand.com
Używane części elektroniczne:
9-pinowe złącze szeregowe (DB9)
Konwerter napięcia szeregowego danych MAX232C
INTEL 8031 PROCESSOR (z zegarem zegara 11,092 MHz)
4K EPROM
256 diod LED jest zablokowanych przez …
32 z 74HC574 wybrane przez …
2 z 74LS154
32 KB pamięci RAM wykorzystanej jako 60 buforów ramki 3D
CZUJNIK OPTYCZNY do synchronizacji pionowej tłoka obiektywu poprzez przerwanie z procesorem
Zasilanie 5Volt … gdy wszystkie diody LED są włączone, pobierają około 7 A.
Niepotrzebnie absurdalny i ciężki mechanizm tłokowy przesuwający soczewkę okularów w górę iw dół.
Protokół: Prosty ASCII RS-232C z prędkością do 19200 bodów … tylko kilka poleceń sterujących.
Rozwiązanie bez DLP będzie wykorzystywać starożytny mechaniczny mechanizm projekcji telewizyjnej wysokiej rozdzielczości zamiast diod LED.
Mechanizm nazywany jest „śrubą lustrzaną” i działa inaczej niż spiralne zwierciadło w starym projekcie 3D na stronie, ale jest to tania i niska technika alternatywa dla chipów DLP dla tego projektu.
Krok 2: Rozpocznij przeskakiwanie soczewki okularowej
Zdobądź największą soczewkę okularową, którą możesz znaleźć, może taką, która nie została jeszcze przycięta, aby zmieścić się w ramach.
Asortyment może być lepszy. Niecięte soczewki przypominają szkła powiększające, chyba że mają
wklęsła strona. Lub po prostu zagraj z czyimiś okularami przez minutę.
Zdobądź diodę LED i baterię zegarka i zapal ją. Trzymaj „okulary” patrząc w dół.
Przytrzymaj diodę nad okularami. Przesuń okulary w górę iw dół. Powinieneś zobaczyć
ruchomy wirtualny obraz między okularami a diodą LED.
Jeśli masz krąg diod LED i przesuwasz szklaną soczewkę w górę iw dół, dostajesz rurkę.
Jeśli masz kwadrat diod LED, otrzymasz kostkę.
Jeśli zmienisz obraz podczas ruchu obiektywu, na przykład używając PIC z wieloma diodami LED, możesz uzyskać dowolny kształt.
Co ważne, wirtualny obraz pojawia się w powietrzu nad obiektywem,
a rozmiar obiektywu to maksymalny rozmiar obrazu.
---
EDYCJA: nowy obraz + komentarz:
Oh … Okazuje się, że nieśmiałość tego głośnika niskotonowego powoduje nieoczekiwane wielokrotne unoszenie się obrazów.
Krok 3: PROGRAMOWANIE
Zdaję sobie sprawę, że pominąłem część budowy maszyn.
To śmieci, więc dlaczego miałbyś to robić w ten sam sposób?
Oto krótki opis programu w angielskim pseudokodzie:
1.RESET
Czy są jakieś użyteczne dane w pamięci RAM?
Jeśli nie, skopiuj animację demonstracyjną z pamięci ROM do pamięci RAM.
2. Przeczytaj listę ramek animacji i wyświetl następną ramkę.
(Skopiuj pamięć RAM na diody LED)
wyjątki: Ramka 00 oznacza przejście do ostatniej klatki, FF oznacza przejście do pierwszej klatki.
3. Poczekaj na synchronizację, a następnie Przejdź do kroku 2
Przerwanie SYNC: jak powyżej, przejdź do kroku 2
PRZERWANIE WEJŚCIA SZEREGOWEGO:
Po prostu zapisuje dane w buforze i kontynuuje tak jak poprzednio, chyba że jest to RETURN, a następnie go przestrzega.
Format danych: od 0 do 9 i od A do F są szesnastkowe. Zazwyczaj do przechowywania w pamięci RAM.
małe litery to polecenia …
r -cold restart … skopiuj demo z ROM do RAM (testowanie)
a - następnie dane heksadecymalne od 01 do 3F reprezentujące sekwencję animacji klatki, plus 00 dla zachowania ostatniego obrazu i FF dla pętli
d - po którym następuje jeden bajt szesnastkowy, ramka do wyświetlenia
f - po którym następuje jeden bajt szesnastkowy, ramka do zapisu danych
i - zidentyfikuj aktywne urządzenie na porcie RS-232C, odpowiada „Q”, co oznacza „CUBE” (testowanie)
HEX DATA - zwykle reprezentuje nową ramkę bitmapy 3D, wygodnie kończąc każdą linię RETURN, ponieważ zawiera jeden poziom 2D ramki bitmapy 3D. Niektóre polecenia wybierają ramki za pomocą następującego bajtu heksadecymalnego.
Wiele animacji, w szczególności obracających symetryczne obiekty, może animować w zaledwie 3 klatkach, a po klatkach
przesłane, polecenie „a 01 02 03 00” rozpoczyna animację.
Rozdzielczość projektora wolumetrycznego wynosi obecnie 16 x 16 x 16 = 4096 bitów = pół kilobajta, więc około 62 klatki animacji obrazu 3D mieszczą się w 32K.
Ramka zero jest podzielona na pamięć sekwencji animacji i bufor danych szeregowych oraz polecenie na
wyświetlacz Frame Zero zostanie zinterpretowany jako „Wstrzymaj animację, pokaż bieżący obraz do odwołania”
To wszystko jest tak proste, jak kroki 1,2,3, a oprogramowanie w ROM jest mniejsze niż 1K, a pozostała przestrzeń ROM zawiera
obraz demonstracyjny, aby rzecz zawsze działała nawet bez połączenia z komputerem.
Długi „program telewizyjny 3D” może być do niego przesyłany strumieniowo, ponieważ może pobrać jedną rzecz i zagrać inną w tym samym czasie.
Wszystkie animacje tego projektora wolumetrycznego zostały szybko wygenerowane za pomocą programu napisanego w języku BASIC w mniej niż godzinę.
Jakieś pytania?
Krok 4: Jak pierwszy pracował?
Ten został wykonany dawno temu z MC68705P3S, który jest niejasno podobny do PIC16C57, mający około 1K.
Używanie takich wyświetlaczy igłowych do 3D nie jest zbyt imponujące,
przynajmniej w tym czasie diody LED nie były tak jasne, obraz był bardzo ciemny i można go było zobaczyć tylko w ciemnych pomieszczeniach.
Chip został zaprogramowany za pomocą sprytnych wzorów, które tworzyły warstwy obracającej się kostki,
z 3 fazami obrazu (sześcian obracał się, przechodząc przez 3 obrazy).
Wzory zostały wybrane tak, aby wyświetlacz matrycowy nie był skanowany,
ale pozostań włączony, gdy wirnik przechodzi przez obraz sześcianu.
Wszystkie projektory wolumetryczne Cube wykorzystują nieskanowane diody LED, aby zapewnić maksymalną jasność.
Wirnik? To był po prostu chip i bateria oraz wyświetlacz matrycowy na wentylatorze komputera.
Trzy obrazy bitmapowe składały się z kilku warstw starannie zaprojektowanych map bitowych 7x10 (tylko 17 bitów, a nie 70 bitów).
Z pewnością zmieszczą się w starym układzie PIC.
Była sekwencja animacji. Obraz kostki obrócił się zgodnie z ruchem wskazówek zegara,
następnie obrócił się w kierunku przeciwnym do ruchu wskazówek zegara, a następnie zatrzymał się. Sekwencjonowanie 3 obrazów
w animacji było coś takiego jak ….
1231231231231231231231231 (w jedną stronę)
3213213213213213213213213 (w drugą stronę)
3333333333333333333333333 (przestań obracać, a następnie powtórz całą sekwencję)
(Na stronie internetowej WMV pojawia się animacja „nakrętka w kostce”, która gra podobnie, mająca tylko 3 klatki).
Gdy wentylator się obrócił, obwód został poprowadzony przez magnes ziem rzadkich przechodzący przez głowicę taśmy, aby zrzucić ramkę na diody LED.
To urządzenie jest bardzo łatwe do wykonania, ale niezbyt imponujące i jeśli spróbujesz dotknąć obrazu, będzie bolało.
Krok 5: Jak powstał obraz pierwszego człowieka.
Przedstawiony diagram jest wstępnym planem, w jaki sposób „pierwszy” wygenerował trzy obrazy
to sprawiło, że obraz obracającej się kostki. Duży wzór na górze oznacza
wygląd górnej części obrazu wirtualnego, który nie został faktycznie zakodowany.
Poniżej każdego obrazu szybko wyświetlana jest seria matrycowych wzorów LED
w kolejności, gdy wirnik się obrócił, tak że w jednej z trzech ramek pojawił się sześcian
animowanie jego rotacji. Każdy z małych wzorów reprezentuje wycinek
Ramka 3D, jak świecą diody LED, gdy wirnik przechodzi przez obraz.
Zostały one bardzo starannie skonstruowane, ponieważ to konkretne urządzenie było ograniczone
do wyświetlania wzorów, które mogą pojawić się na wyświetlaczu LED bez multipleksowania.
Każdy wzór to taki, który może wynikać z ciągłego stosowania mocy
wyświetlacz LED. Było to konieczne, ponieważ wyświetlacz nie był zbyt jasny,
i byłby dużo ciemniejszy z multipleksowaniem.
Ponieważ kwadrat nie należy do wzorów, które mogłyby być wyświetlane w ten sposób,
najbardziej oczywistym sposobem na wyświetlenie kostki 3D nie było między trzema ramkami.
Zatem „pierwszy” (urządzenie 3D zbudowane na wentylatorze) był bardzo ograniczony i prymitywny i nie bardziej użyteczny niż dla
pokazując, że można wyświetlić obracającą się kostkę 3D, a ludzie powiedzieliby „wow”.
Krok 6: Odpylanie w innym dobrym demo i więcej informacji
Ok, moje komputery są trochę mniej zaniedbane i mogę zrobić więcej zdjęć.
Oto główna płyta na dużej śmieciowej maszynie.
Jest bardzo urażony po wyjęciu z magazynu, prawdopodobnie wiele luźnych przewodów,
kiedy ta rzecz biegnie, trzęsie się gwałtownie z powodu tych wielkich paskudnych silników.
Gdzieś tam jest nasza niesamowita animacja 3D przedstawiająca samolot lecący nad górami,
który musi być swego rodzaju archetypem, ponieważ Perspecta (tm) zrobiła bardzo podobne demo
w wiadomościach wkrótce po tym i zanim się dowiedzieliśmy.
Zaproponowałem im wtedy technikę projekcji, ale nawet nie zobaczyliśmy naszego junk-o-matic
zignorowali i wysłali nam spam.
My i nasi przyjaciele po prostu się uśmiechnęliśmy i powiedzieliśmy: „tak to robisz!”,
tak jak nasze wyświetlacze sferyczne (być może przyszłe instrukcje)
potrzebne do pokazania obrazu kuli ziemskiej. Latające demo
który z niecierpliwością mam nadzieję pokazać tutaj wkrótce, jest wyraźnie inny niż
wszystkie inne wirujące kształty i takie rzeczy. Jest 2D render z „latającego demo”
obraz gdzieś na stronie „holodeck” połączonej w kroku 2.
Przez kable taśmowe każda z 256 diod LED nad magiczną soczewką okularową jest
podłączony do własnego bitu pamięci RAM iw ten sposób jest podobny do DLP / DMD
w tym sensie, że tech ma trochę pamięci RAM kontrolującej każde pojedyncze lustro,
stale i równolegle. Żadnych luster, tylko diody LED na drugim końcu kabli.
Dwie bardzo małe płyty nie pokazane mają (# 1) chip MAX232 i (# 2) czujnik położenia soczewki.
Masz pytania lub komentarze na temat tego obwodu?
Psst! Każdy PIC działa szybciej niż ta deska.
KOREKCJA BŁĘDU: Chipy wyboru adresu to 74154 (nie 74164)
Krok 7: Wystarczy, aby działał długo, aby zrobić wideo.
Może będę musiał pozbyć się silników i tam umieścić głośnik niskotonowy.
I odpowiadaj na pytania lub dodawaj więcej przydatnych informacji o tym, jak to działa.
Niestety ten krok nie jest jeszcze gotowy, czy i tak jestem palantem?
Ponadto, jeśli ktoś to obchodzi, ten „podgląd” obrazu został po raz pierwszy wyświetlony na projektorze
po syntezie danych, a później renderowane lub tłumaczone z danych projektora.