WYKONAJ PROJEKTOR OBJĘTOŚCIOWY OD CZERWCA: 7 kroków

WYKONAJ PROJEKTOR OBJĘTOŚCIOWY OD CZERWCA: 7 kroków

Spisu treści:

Anonim

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.