Kostka do gry
Pamiętam jak kilkanaście lat temu, kiedy w Polsce coraz łatwiej dostępne były układy cyfrowe, jednym ze często budowanych przez elektroników urządzeń była właśnie elektroniczna kostka do gry. Jej działanie było proste - przyciskaliśmy przycisk, a po chwili diody świecące LED pokazywały nam przypadkową liczbę oczek. Ale czy rzeczywiście? W tym właśnie momencie spieszę rozszyfrować tytuł niniejszego artykułu. Otóż wynik wcale nie był aż taki przypadkowy.
Mówiąc szczerze i teoretyzując ? można go było przewidzieć. Jak to możliwe? W teorii, w momencie rzutu kostką lub zastosowania jej elektronicznego odpowiednika prawdopodobieństwo otrzymania dowolnej wartości jest dla każdej liczby oczek takie samo (oczywiście pomijamy znane z opowiadań i historii przypadki preparowania tego ciekawego sześcianu). Tyle tylko, że w przypadku tradycyjnej kostki, dochodzą jeszcze czynniki związane z jej toczeniem się po stole czy innej powierzchni. Mówiąc bardziej obrazowo, jeżeli popatrzymy na stojącą na stole kostkę, możemy sobie wyobrazić, że podczas rzutu przekręca się na jeden z czterech boków. Który z nich ? to już kwestia przypadku; może to być sekwencja 1-2, 1-3, 1-4 etc. A podczas prawdziwej gry rzut kostką to cały ciąg takich przewrotek i nie jesteśmy w żaden sposób w stanie przewidzieć, co wypadnie.
W przypadku kostki elektronicznej losowanie liczby oczek przebiega zupełnie inaczej. Urządzenie tworzy generator (tzw. taktujący) z podłączonym do niego licznikiem zliczającym każdych sześć impulsów. Po zatrzymaniu procesu zliczania następuje wyświetlenie aktualnej zliczonej wartości z zakresu 1-6. Gdyby znacznie zwolnić impulsy taktujące i na stałe włączyć wyświetlanie wyniku, zobaczylibyśmy, że wartości zawsze wyświetlane są kolejno tzn: po jedynce wyświetli się dwójka, a po dwójce trójka itp. A po szóstce znowu jedynka. I tak w kółko.
Gdzież więc ta przypadkowość wyniku? Przecież dla takiego wolno działającego układu jesteśmy w stanie wyłączać takt w równych odstępach czasu i ?losować? cały czas np. szóstki. Rozwiązanie jest bardzo proste i tkwi w niedoskonałości zmysłów ludzkich. Wystarczy znacząco podnieść częstotliwość taktującą licznik. Wtedy nie będziemy w stanie śledzić zmian, nasz człowieczy zegar nie jest bowiem w stanie idealnie odmierzyć bardzo krótkich odstępów czasu miedzy kolejnymi zmianami stanu licznika. Również nasze palce są zbyt zawodne żeby precyzyjnie zatrzymać proces liczenia. I od razu kolejne, bardzo ważne wyjaśnienie ? gdyby do naszej kostki elektronicznej podłączyć bardzo prosty układ synchronizacji np. na kilku bramkach, to tak ? moglibyśmy za każdym razem trafiać w upragniony wynik.
W obecnej elektronice cyfrowej problem przebiegów losowych jest całkiem poważnym zagadnieniem. O ile w naszej kostce możliwe jest łatwe obejście przypadkowości, w niektórych zastosowaniach przemysłowych stosowane są specjalne, rozbudowane programy pseudolosowe. A związane z nimi kłopoty docenili literaci. Problem gier elektronicznych i przypadkowości był wielokrotnie poruszany w literaturze S-F gdzie często łamaczem kasyn okazywał się zazwyczaj jakiś człowiek z wszczepionym komputerem ? na tyle szybkim, że pozwalającym przewidzieć wygraną.
Zajmijmy się praktyczną realizacją elektronicznej kostki do gry. Zestaw zawierający wszystkie niezbędne do jej zbudowania komponenty (z wyjątkiem baterii) opracowany został przez firmę Velleman pod oznaczeniem MK150. Co ciekawe, zrezygnowano z tradycyjnych układów cyfrowych na rzecz mikroprocesora w obudowie ośmionóżkowej. Niezbędne narzędzia to lutownica, cyna, wkrętak i cążki do obcinania końcówek. I oczywiście troszkę czasu.
Na wieczku pudełka producent zamieścił zdjęcie zmontowanego urządzenia obok dużej białej kostki do gry. W środku znajdziemy komplet elementów elektronicznych, płytkę drukowaną i dokumentację. Ta ostatnia jest opracowana w bardzo przystępny sposób, niestety wśród krótkich opisów brak tych po polsku. Nie jest to żaden problem ? rysunki pokazują krok po kroku, co i jak zamontować. A i samych elementów jest niewiele ? kilka rezystorów i diod świecących, mikroprocesor, podstawki, płytka drukowana i metalowe odstępniki.
Mikroprocesor ? w nim znajduje się generator impulsów taktujących, licznik do sześciu i program sterujący, który nadzoruje wypracowywanie wyniku i jego wyświetlanie. W prezentowanej ?kostce? zastosowano jeszcze kilka ciekawych rozwiązań. Pierwszym z nich jest przestrzenny sposób montażu. Płytkę drukowaną należy przełamać w odpowiednim miejscu ? otrzymamy dwie mniejsze, kwadratowe. Po zamontowaniu wszystkich elementów skręcamy je przy pomocy załączonych do zestawu odstępników w przestrzenną kanapkę. Na górnej powierzchni znajdują się diody LED, na dolnej oprawka na baterie, procesor i element inicjujący losowanie. Całość nawiązuje kształtem do prawdziwej kostki do gry.
Układ nie ma typowego wyłącznika zasilania. Procesor obsługuje specjalną funkcję uśpienia. Po kilkunastu sekundach od ostatniego losowania następuje wygaszenie diod LED i wyłączenie generatora taktu. Pobór prądu spada wtedy do uA, czyli do wartości pozwalającej zrezygnować z tradycyjnego włącznika zasilania i na zastosowanie stosunkowo drogiej, ale niedużej baterii litowej.
Pozostał jeszcze do omówienia bardzo ciekawy sposób inicjowania losowania, czyli ?rzutu? kostką. W zestawie Vellemana tradycyjny przycisk zastąpiony został czujnikiem wstrząsowym. Jest to mała rurka z wtopionymi wewnątrz dwoma stykami i poruszającą się w środku kulką. W momencie podniesienia czy wręcz poruszenia kostką, kulka przesuwa się i zwiera styki inicjując proces losowania oczek. Wyświetlane są najpierw wszystkie możliwe kombinacje, ich zmiany powoli spowalniają, wreszcie pojawia się ta jedna wybrana (wylosowana) wartość, decydującą o naszym ruchu w ulubionej grze.