Nuo Douglas Engelbart medinių ratų iki CMOS matricų: optinio sekimo fizika
1964 metais Douglas Engelbart ir Bill English Stanfordo tyrimų institute sukonstravo pirmąją pasaulyje kompiuterio pelę iš išskobto medžio bloko ir dviejų statmenų metalinių peilio formos ratų, kurie fiziškai rėžėsi į stalo paviršių ir suko potenciometrus. Vos po ketverių metų vokiečių bendrovės „Telefunken“ inžinierius Rainer Mallebrein ratukus pakeitė gumuotu plieniniu rutuliu modelyje Telefunken RKS 100-86. Ištisus tris dešimtmečius kompiuterių vartotojai nuolankiai krapštė dulkes, pūkus ir suspaustas odos ląsteles nuo stringančių mechaninių ritinėlių.
Šiuolaikinės pelės atstumo mechaniškai nebematuoja – jos yra mikroskopinės didelės spartos vaizdo kameros. Žemo galingumo infraraudonųjų spindulių šviesos diodas arba VCSEL lazeris kampu apšviečia mikroskopinį pelės kilimėlio reljefą. Specializuota CMOS matrica fotografuoja paviršiaus topografiją nuo 10 000 iki 20 000 kadrų per sekundę greičiu. Integruotas skaitmeninis signalų procesorius (DSP) realiu laiku vykdo kryžminės koreliacijos optinio srauto (Optical Flow) algoritmus, lygindamas gretimus kadrus ir išskaičiuodamas poslinkio vektorius (Δx, Δy). Jeigu jūsų pelės kursorius staiga „trūkčioja“ ar „šokinėja“, tai retai būna programinė klaida – dažniausiai tai optinio jutiklio prisotinimas, veidrodinis atspindys nuo pernelyg glotnaus paviršiaus arba mikroskopinė dulkė ant lęšio apertūros.
USB HID apklausos dažnis ir vėlinimas: kodėl 8 000 Hz dažniausiai tėra placebas
Įprasta USB pelė savo koordinates operacinei sistemai praneša naudodama USB Human Interface Device (HID) protokolą. Apklausos dažnis (Polling rate) nurodo, kaip dažnai operacinės sistemos branduolys teiraujasi įrenginio apie naujus koordinačių paketus:
- 125 Hz (Standartinė biuro pelė): Duomenys atnaujinami kas 8,0 milisekundes. Puikiai tinka skaičiuoklių naršymui, tačiau greitose šaudyklėse sukelia juntamą mikrotolygumo trūkumą.
- 1 000 Hz (eSporto standartas): Koordinačių paketas siunčiamas kas 1,0 milisekundę. Tai ideali pusiausvyra tarp kadrų sinchronizacijos ir centrinio procesoriaus (CPU) pertraukčių apkrovos.
- 4 000 Hz – 8 000 Hz (Hiper-dažnis): Apklausa vyksta kas 0,25–0,125 milisekundės. Nors teorinis aparatinis vėlinimas nukrenta žemiau 125 mikrosekundžių, operacinė sistema moka milžinišką kainą atidėtųjų procedūrų iškvietimais (DPC) ir procesoriaus branduolių apkrova. Naudojant monitorių su mažesniu nei 360 Hz atnaujinimo dažniu, 8 000 Hz pelė 95% savo koordinačių paketų atiduoda į tuštumą – monitoriaus pikselių atsako laikas fiziškai nespėja atvaizduoti šių mikro-poslinkių.
Mechaninių mikrojungiklių tragedija: kontakto atšokimas, oksidacija ir dvigubas spragtelėjimas
Ar kada nors bandėte vienu paspaudimu atidaryti katalogą, o operacinė sistema užfiksavo dvigubą paspaudimą ir netikėtai paleido programą? Tai klasikinis mechaninio kontakto atšokimo (Contact Bounce) padarinys, techninėje literatūroje vadinamas chatter defektu. Tradiciniuose mechaniniuose mikrojungikliuose (pvz., „Omron“, „Kailh“ ar „Huano“) lenkta berilio vario spyruoklinė plokštelė fiziškai smogia į paauksuotą kontaktinę aikštelę.
Spartaus oscilografo ekrane matyti, kad grandinės sujungimas niekada nebūna ideali stačiakampė banga. Metalo plokštelė fiziškai atsitrenkia, atšoka ir vibruoja kelias milisekundes, kol nusistovi stabilus ominis kontaktas. Pelės mikrokontrolerio programuotojai taiko programinės įrangos apsaugos algoritmus (debounce timers), kurie ignoruoja signalo svyravimus pirmąsias 4–12 milisekundžių. Tačiau po kelių milijonų paspaudimų plonas aukso sluoksnis nusitrina, prasideda galvaninė oksidacija, o spyruoklė praranda mechaninį standumą. Atšokimo trukmė viršija numatytą laiko langą ir vartotojas gauna parazitinį dvigubą paspaudimą. Jeigu mūsų įrankis užfiksuoja intervalus tarp paspaudimų, mažesnius nei 50 ms atliekant vieną judesį, jūsų pelės jungiklio mechanika yra nepataisomai nusidėvėjusi.
Spaudinėjimo greičio (CPS) biomechanika: Jitter, Butterfly ir pirštų perkrova
Įprastoje ergonomiškoje padėtyje žmogaus nervų ir raumenų laidumas riboja savanorišką vieno piršto spaudinėjimo dažnį iki maždaug 5,5–7,5 paspaudimo per sekundę (CPS). Norint peržengti 10 CPS ribą, tenka pasitelkti ekstremalias biomechanines gudrybes:
- Jitter Clicking (8–12 CPS): Vartotojas sąmoningai įtempia dilbio lenkiamuosius ir tiesiamuosius raumenis vienu metu, sukeldamas izometrinį raumenų drebulį (tremorą), kuris nukreipiamas tiesiai į smilių. Nors technika efektyvi, ilgalaikis jos taikymas sukelia didelę riešo kanalo sindromo ir sausgyslių uždegimo riziką.
- Butterfly Clicking (12–20+ CPS): Du pirštai (smilius ir didysis) pakaitomis žaibišku greičiu atakuoja pagrindinį klavišą, išnaudojant jungiklio histerezės tašką dvigubiems impulsams išgauti.
- Drag Clicking (20–30+ CPS): Sausas, šiurkštus pirštas slysta matiniu pelės korpuso paviršiumi, sukeldamas trinties-sukibimo vibracijas, kurios tiesiogine prasme supurto mikrojungiklio klavišą dešimtis kartų per sekundę.
Jutiklio kalibracija: 36 000 DPI mitai, natyvi skiriamoji geba ir nulinis greitinimas
Žaidimų periferijos gamintojų rinkodara dievina astronominius DPI skaičius. Rinkoje nesunku rasti biudžetinių pelių su deklaruojamu „36 000 DPI“ jautrumu. Įsivaizduokite: esant 36 000 DPI, pajudinus pelę vos vieną colį (2,54 cm), kursorius nuskrieja 36 000 pikselių – tai aštuoniolika standartinių „Full HD“ monitorių iš eilės. Esant tokioms reikšmėms, jutiklio procesorius privalo taikyti agresyvų programinį glotninimą (smoothing) ir interpoliaciją, o tai įneša kelias milisekundes vėlinimo bei iškraipo natūralią judesio trajektoriją.
Profesionalūs elektroninio sporto atletai renkasi natyvias optinio jutiklio reikšmes tarp 800 ir 1 600 DPI, kartu užtikrindami 100% linijinį žaliavinį įvesties signalą (būtinai išjungiant „Windows“ funkciją „Padidinti žymeklio tikslumą“, kuri tėra eufemizmas netiesiniam kursoriaus greitinimui). Tikras taiklumas kyla iš raumenų atminties ir nulinio jutiklio vėlinimo, o ne iš išpūstų skaičių ant pakuotės dėžutės.