1. Przełącznik wideo
1.1. Podłącz VideoSwitcher do komputera
Przełącznik wideo VideoSwitcher (Rysunek 1) przyjmuje analogowe sygnały wideo (VGA) i jest wykorzystywany do sterowania kolorowymi monitorami kineskopowymi (CRT). Przed użyciem VideoSwitchera należy upewnić się, że karta graficzna komputera posiada port VGA (Rysunek 2A) lub port Digital Visual Interface (DVI-I) (Rysunek 2B), który przesyła zarówno cyfrowe, jak i analogowe sygnały wideo. Aby połączyć port DVI-I z VideoSwitcherem, niezbędny jest adapter DVI-do-VGA (Rysunek 2C).
Wyłącz komputer i monitor, a następnie odłącz monitor od karty graficznej komputera.
Podłącz port VGA lub DVI-I karty graficznej komputera do portu wejściowego przełącznika wideo (VideoSwitcher), używając dołączonego kabla VGA. Użyj małego śrubokręta, aby zabezpieczyć połączenia.
Podłącz kabel VGA monitora do portu wyjściowego VideoSwitcher i zabezpiecz połączenia.
Podłącz VideoSwitcher do źródła zasilania za pomocą dołączonego zasilacza.
Włącz komputer i monitor.
1.2. Dwa tryby wyświetlania przełącznika wideo
Przełącznik w VideoSwitcher pozwala użytkownikowi na przełączanie się pomiędzy dwoma trybami wyświetlania. W trybie kolorowym VideoSwitcher nie modyfikuje sygnału wideo z karty graficznej komputera. W trybie skali szarości obraz staje się monochromatyczny, a jego luminancja jest określana głównie przez sygnał wideo z kanału niebieskiego karty graficznej, jest w niewielkim stopniu modyfikowana przez sygnał z kanału czerwonego i nie otrzymuje żadnego wkładu z kanału zielonego. Dzieje się tak, ponieważ sieć rezystorów wewnątrz VideoSwitchera tłumi sygnał z kanału czerwonego przez współczynnik wynoszący około 128, a sygnał z kanału zielonego nie jest w ogóle uwzględniany. Stosunek wkładów kanału niebieskiego i czerwonego do wyjścia VideoSwitchera nazywany jest stosunkiem niebieskiego do czerwonego (BRratio). BRratio jest właściwością VideoSwitchera, niezależną od konfiguracji wyświetlacza. Może on zostać wyznaczony doświadczalnie dla każdego VideoSwitchera (patrz 1.3).
Tryb wyświetlania można również przełączyć, przesyłając specjalny sygnał przez zielony kanał karty graficznej za pomocą wywołania funkcji w programie Matlab:
PsychVideoSwitcher('SwitchMode', whichScreen, ToGrayMode);
gdzie ToGrayMode o wartości 1 lub 0 oznacza przełączenie na tryb skali szarości lub tryb kolorowy.
Rycina 3 przedstawia schemat przełącznika wideo (VideoSwitcher).
1.3. Pomiar BRratio
Wartość BRratio można zmierzyć dla każdego VideoSwitcher za pomocą zadania detekcji siatki fali prostokątnej. Dwiema poziomom fali prostokątnej przypisuje się wartości RGB, takie jak (0, 0, 40) i (x, 0, 39). Można regulować wartość x, aż siatka fali prostokątnej zniknie; w tym momencie wartość x stanowi BRratio — amplitudę sygnału w kanale R, która prowadzi do natężenia generowanego przez jedną jednostkę sygnału w kanale B. Chociaż BRratio można zmierzyć elektronicznie, na przykład mierząc stosunek napięć wyjściowych VideoSwitcher przy wartościach RGB (0, 0, 255) i (255, 0, 0), opisana tutaj metoda psychofizyczna jest bardzo prosta i dokładna.
1.4. Kalibracja wyświetlacza
W większości monitorów luminancja ekranu nie wzrasta liniowo wraz z poziomem szarości piksela określonym przez kartę graficzną komputera. Zależność tę można opisać jako:

gdzie Lmax, Lmin oraz γ są wyznaczane w procedurze korekcji gamma, przy użyciu fotometrów lub kombinacji procedur psychofizycznych i pomiarów fotometrycznych 7,8. Kalibracja gamma jest istotna dla uzyskania dokładnych kontrastów na wyświetlaczu; musi być ona przeprowadzona dla każdego urządzenia wyświetlającego.
Za pomocą fotometru można po prostu wyświetlić duży jednolity kwadrat o różnych poziomach szarości pikseli (np. od 0 do 255), zmierzyć luminancję środka kwadratu, a następnie dopasować wyniki do równania 1, aby wyznaczyć γ.
Procedura psychofizyczna polega na stworzeniu w jednym obszarze powierzchni wyświetlania możliwie jak najbardziej jednorodnej mieszaniny (w przestrzeni i czasie) równych ilości pikseli o intensywności zerowej i pełnej, a następnie wyznaczeniu wartości poziomu szarości pikseli w sąsiednim obszarze jednorodnym (w którym wszystkie piksele mają tę samą intensywność), która zapewnia psychofizyczne dopasowanie do luminancji obszaru z wymieszanymi pikselami. Pierwsze dopasowanie wyznacza wartość poziomu szarości dla 1/2 luminancji maksymalnej. Do wyznaczenia wartości 3⁄4 stosowana jest mieszanina pikseli o intensywnościach luminancji 1/2 i 1; procedurę tę powtarza się, aż wyznaczone zostanie siedem wartości od 1⁄8 do 7⁄8. Dopasowania te są powtarzane, a następnie przeprowadzane są różne kontrole spójności, takie jak weryfikacja, czy mieszanina 3⁄4 i 1⁄4 odpowiada wartości 1/2. W tej procedurze dostrajane są poziomy B i R obszaru jednorodnego, a U=B+R/BRratio. Wyniki można dopasować do Równania 1, aby uzyskać γ.
Po uzyskaniu wartości Lmin, Lmax oraz γ możemy ustawić luminancję tła L0 = (Lmax +Lmin)/2. Zależność między kontrastem piksela c(U) a poziomem szarości piksela U przedstawia się następująco:

Równanie można przekształcić, aby obliczyć wymagany poziom szarości dla danego kontrastu:

gdzie U jest zazwyczaj liczbą niecałkowitą. Wartość RGB odpowiadającego piksela wynosi: R=BRratio*[U-int(U)], G=0, B=int(U), gdzie int() pobiera wartość całkowitą argumentu.
1.5. Demonstracja siatki sinusoidalnej
Efekt zwiększonej rozdzielczości skali szarości można wykazać, porównując dwie kratki z falą sinusoidalną. Kratka po lewej stronie wykorzystuje pełną wydajność urządzenia VideoSwitcher, a intensywność każdego piksela jest określona przez odpowiednie wartości R i B. Kratka po prawej stronie jest identyczna z lewą, z wyjątkiem tego, że jako wartość B każdego piksela użyto jedynie zaokrąglonego U, co symuluje wyjście 8-bitowego urządzenia wyświetlającego.
2. RTbox
2.1. Podłącz RTbox do komputera
Podłącz RTbox (rycina 4) do portu USB komputera za pomocą dołączonego kabla. W razie potrzeby pobierz sterownik urządzenia ze strony http://www.ftdichip.com/Drivers/VCP.htm. Zainstaluj sterownik zgodnie z instrukcjami zamieszczonymi na stronie internetowej.
2.2. Użycie urządzenia RTbox do pomiaru czasu reakcji
Urządzenie RTbox można wykorzystać na dwa różne sposoby.
Jeśli program użytkownika może zwracać wiarygodne czasy wystąpienia bodźca, takie jak czas zwracany przez Screen('Flip') oraz PsychPortAudio w Psychtoolbox [8], urządzenie RTbox może być używane analogicznie do klawiatury. Ponieważ czasy wystąpienia bodźca i czasy naciśnięcia przycisków RTbox opierają się odpowiednio na zegarach komputera gospodarza oraz RTbox, należy zsynchronizować oba zegary. Jest to realizowane poprzez wywołanie funkcji RTBox('clear') przed każdym wystąpieniem bodźca, aby wyczyścić niepożądane zdarzenia z bufora. Czas reakcji można zmierzyć w prosty sposób jako tresp= t - tonset, gdzie tonset to czas bodźca zwrócony przez program użytkownika, a t to czas naciśnięcia przycisku zwrócony przez wywołanie funkcji [t, button]=RTBox(timeout). Dzieje się tak, ponieważ sterownik RTBox automatycznie konwertuje czas przycisku z czasu RTbox na czas komputera gospodarza.
Jeśli program użytkownika nie może zwracać wiarygodnych czasów rozpoczęcia bodźca, do RTbox należy dostarczyć sygnały wyzwalające wskazujące na początek bodźca. Jednym z rozwiązań jest użycie czujnika światła do wykrywania początku bodźca lub plamy światła zsynchronizowanej z bodźcem. Wyjście czujnika światła jest podłączone do portu świetlnego (light port) urządzenia RTbox. Drugim rozwiązaniem jest wykorzystanie wyjścia wyzwalającego (trigger output) urządzenia VideoSwitcher. Wyzwalacz można podłączyć bezpośrednio do portu impulsowego (pulse port) RTbox. Trzecim rozwiązaniem jest podłączenie sygnału audio komputera hosta do portu dźwiękowego (sound port) RTbox.
Aby wygenerować wyzwalacz początku bodźca z urządzenia VideoSwitcher, „włączamy” kanał zielony pikseli w centralnej części pierwszej klatki bodźca wzrokowego. Ponieważ nie wpływa on na sieć rezystorów, sygnał w kanale zielonym jest niewidoczny dla badanego. Wywołanie funkcji [t, button]=RTBox('pulse', timeout) zwraca czas reakcji, gdzie parametr 'pulse' instruuje RTbox do obliczenia czasu reakcji względem wyzwalacza. To samo wywołanie funkcji jest stosowane w przypadku wyzwalacza dźwiękowego. Dla wyzwalaczy z czujnika światła wywołanie funkcji to [t, button]=RTBox('light', timeout).
3. Integracja VideoSwitcher i RTbox
Opracowaliśmy program demonstracyjny, który wykorzystuje VideoSwitcher do sterowania wyświetlaniem, RTbox do precyzyjnego pomiaru czasu reakcji oraz RTbox do przesyłania kodów zdarzeń i odpowiedzi do systemu ERP. Program można pobrać ze strony http://lobes.usc.edu/videoswitcher/VideoSwitcherRTBoxERP_demo.m.
4. Reprezentatywne wyniki

Rycina 1. Zdjęcie przełącznika wideo. Posiada on porty wejściowe i wyjściowe VGA (oba gniazda żeńskie), przycisk do przełączania między dwoma trybami wyświetlania oraz port wyjściowy wyzwalacza.

Rycina 2. Zdjęcia portów VGA (A) i DVI-I (B) oraz adaptera DVI-I do VGA (C).

Rycina 3. Schemat przełącznika wideo. Multiplekser posiada dwa tryby wejściowe, sterowane poziomem napięcia. Gdy znajduje się w trybie przedstawionym na schemacie, kanały RGB monitora odbierają ten sam sygnał, przez co wyświetlacz pracuje w trybie skali szarości. Napięcie przełączające jest generowane przez układ CPLD, sterowany sygnałami w kanale G oraz przyciskiem przełącznika. Wyzwalacz jest również sterowany sygnałem wejściowym w kanale G.

Rysunek 4. Zdjęcie urządzenia RTbox. Posiada ono port USB-B, port wejściowy światła, port wejściowy impulsu/dźwięku, port wejściowy zewnętrznego przycisku oraz port wyjściowy TTL.