Sadržaj:

Napravite vlastiti POV zaslon: 3 koraka
Napravite vlastiti POV zaslon: 3 koraka

Video: Napravite vlastiti POV zaslon: 3 koraka

Video: Napravite vlastiti POV zaslon: 3 koraka
Video: КАК НАСТРОИТЬ L4D2 2024, Lipanj
Anonim
Napravite vlastiti POV zaslon
Napravite vlastiti POV zaslon

Percepcija vida (POV) ili Postojanost vida (ima nekoliko varijacija) zanimljiv je fenomen ljudskog vida koji se javlja kada vizualna percepcija objekta ne prestane unatoč tome što objekt mijenja položaj. Ljudska bića vide sliku u intervalima od djelića sekundi; te se slike spremaju u mozak na vrlo kratko vrijeme (trenutak). Primjer ovog fenomena je kada promatrate izvor svjetla, poput LED -a ili žarulja, uključen i okrenut. Naša je vizija prevarena vjerujući da je rotirajuće svjetlo zapravo kontinuirani krug, slično kao kontinuirani krug formiran od rotirajućeg propelera u ravnini. POV se koristi već dugi niz godina, počevši od gifoskopa, za stvaranje različitih vrsta iluzija i animacija naše vizije; često se koristi za prikazivanje poruka i animacija na zaslonima pomoću LED dioda, rotirajući ih u 2D ili 3D za različite vrste poruka. Cilj ove bilješke o aplikaciji je osmisliti i pokazati kako funkcionira Perception of Vision ispisujući riječ "SILEGO" na zaslonu koji će se izgraditi, te dati ideje koje će vas voditi kroz proces izrade složenijih dizajna u budućnosti. Za ovaj projekt koristili smo Dialog GreenPAK ™ SLG46880, s kompletom utičnica koji omogućuje jednostavno povezivanje ovog prototipa sa svim vanjskim komponentama pomoću kabela. Korištenje većeg GreenPAK -a za projektiranje POV zaslona opće namjene vrlo je povoljno zbog njegovih robusnih komponenti, poput podsustava ASM, koje će vam omogućiti ispis bilo koje vrste uzoraka na zaslonu. Ova će aplikacija pokazati konačni rezultat pomoću SLG46880.

U nastavku smo opisali korake potrebne za razumijevanje kako je GreenPAK čip programiran za stvaranje POV zaslona. Međutim, ako samo želite dobiti rezultat programiranja, preuzmite GreenPAK softver kako biste vidjeli već dovršenu datoteku za dizajn GreenPAK. Priključite GreenPAK Development Kit na svoje računalo i pritisnite hit program za stvaranje prilagođenog IC -a za POV zaslon.

Korak 1: Sheme

Sheme
Sheme

Ovaj primjer prikaza POV cilja 2D tip prikazan na slici 1, koji ima niz od jedanaest LED dioda (svaka s otpornicima za regulaciju struje) spojenih izravno na različite GPO pinove na GreenPAK CMIC -u. Krug je prototipiran i lemljen u matične ploče PCB -a. Napajanje koje se koristi za zaslon je 9 V 10 A L1022 alkalna baterija, spojena na krug regulatora napona pomoću LM7805V koji emitira 5 V. Osim rotacije zaslona, potreban je istosmjerni motor s dovoljno snage za pomicanje svih upravljački krug pričvršćen na prilagođeno postolje. U ovom slučaju korišten je motor od 12 V, spojen na glavnu sklopku, i standardno regulirano napajanje koje daje različite razine napona kroz okretni prekidač, dopuštajući motoru da se okreće s nekoliko brzina.

Korak 2: GreenPAK dizajn

GreenPAK dizajn
GreenPAK dizajn
GreenPAK dizajn
GreenPAK dizajn
GreenPAK dizajn
GreenPAK dizajn
GreenPAK dizajn
GreenPAK dizajn

Prilikom projektiranja različitih vrsta poruka i animacija za POV zaslon koristeći GreenPAK, trebali bismo znati i alate i ograničenja čipa. Na ovaj način možemo stvoriti stručan dizajn, koristeći najmanje elektroničkih komponenti za postizanje POV zaslona. Ovaj dizajn koristi nove prednosti koje nudi SLG46880 CMIC, s naglaskom na komponentu podsustava asinkronih državnih strojeva. Alat podsustava SLG46880 ASM može biti povoljniji od prethodnih alata GreenPAK ASM zbog svojih novih značajki koje dopuštaju složenije dizajne državnih strojeva. Neke od relevantnih unutarnjih komponenti podsustava ASM -a koje se koriste su:

● ASM makroćelija s 12 država

● Makroćelija dinamičke memorije (DM)

● F (1) Računska makroćelija

● Državne neovisne komponente

Što čip omogućuje više makroćelija državnog stroja za stvaranje i konfiguriranje, to su mogućnosti dizajna brojnije. Svako od dvanaest stanja korišteno je za ispisivanje različitih dijelova riječi za prikaz, uključivanjem/isključivanjem različitih kombinacija LED dioda, od kojih su se neke ponavljale dva ili više puta, a u nekim slučajevima se mijenjalo vrijeme ponavljanja stanja, jer isti se uzorak mogao koristiti za različita slova u različito vrijeme. Države su strukturirane u tablici 1.

Tablica 1 pokazuje kako su svako od postojećih stanja u dizajnu povezano sa slovima u riječi "SILEGO". To je u korelaciji s LED konfiguracijom prikazanom na slici 2.

Kao što možete primijetiti, sva stanja zajedno izvedena u različito vrijeme postižu potpunu izgradnju riječi, slika 3 prikazuje kako su stanja povezana/povezana. Svi prijelazi stanja su redoslijeda milisekundi, a svaki stupac na dijagramu na slici 2 predstavlja jednu milisekundu (1 ms). Neka stanja traju 3 ms, 4 ms i druga, dovoljno dugo s minimalnom brzinom motora koja se koristi za video demonstraciju pri približno 460 o / min.

Važno je razmotriti i izmjeriti brzinu motora kako bi se znalo i izračunalo vrijeme projektiranja za opću namjenu. Na taj način poruka se može sinkronizirati s brzinom motora, vidljivom ljudskom oku. Još jedno razmatranje kako bi prijelaz stanja bio manje neprimjetan i jasniji našoj viziji je povećanje brzine motora na više od 1000 okretaja u minuti, a vremenska stanja postavljena u redoslijedu mikrosekundi kako bi se poruka mogla glatko vidjeti. Možda se pitate: kako biste sinkronizirali brzinu motora s brzinom poruke ili animacije? To se postiže pomoću nekoliko jednostavnih formula. Ako imate brzinu motora od 1000 o / min, da biste znali koliko DC motoru treba po okretu u sekundama, tada:

Frekvencija = 1000 o / min / 60 = 16,67 Hz Razdoblje = 1 / 16,67 Hz = 59,99 ms

Poznavajući razdoblje, znate koliko motoru treba jedan zaokret. Ako želite ispisati poruku poput "Hello World", nakon što znate razdoblje svakog skretanja, samo je važno koliko želite da poruka bude na zaslonu. Za ispis željene poruke željene veličine slijedite ovo opće pravilo:

Na primjer, ako želite da poruka pokriva 40 % prostora na zaslonu, tada:

Veličina poruke = (razdoblje * 40 %) / 100 % = (59,99 ms * 40 %) / 100 % = 24 ms

To znači da će se poruka prikazivati u 24 ms za svako skretanje, pa bi prazan prostor ili ostatak prostora u zaokretu (ako nešto ne prikazujete nakon poruke) trebao biti:

Prazan prostor = Razdoblje - Veličina poruke = 59,99 ms - 24 ms = 35,99 ms

Konačno, ako trebate prikazati poruku u tih 40% razdoblja, morate znati koliko će stanja i prijelaza biti potrebno za pisanje očekivane poruke, na primjer ako poruka ima dvadeset (20) prijelaza, tada:

Razdoblje pojedinačnog stanja = Veličina poruke / 20 = 24 ms / 20 = 1,2 ms.

Stoga bi svako stanje trebalo trajati 1,2 ms da bi se poruka ispravno prikazala. Naravno, primijetili biste da većina prvih dizajna nije savršena, pa ćete možda promijeniti neke parametre tijekom fizičkog testiranja kako biste poboljšali dizajn. Koristili smo makroćelije dinamičke memorije (DM) za olakšavanje prijelaza stanja. Dva od četiri DM bloka imaju matrične veze tako da mogu komunicirati s blokovima izvan podsustava ASM. Svaka DM Macrocell može imati do 6 različitih konfiguracija koje se mogu koristiti u različitim stanjima. DM blokovi se koriste u ovom dizajnu za pokretanje ASM -a za prijelaz iz jednog stanja u drugo. Na primjer, stanje Silego [3] se ponavlja dva puta tijekom prijelaza; potrebno je napisati početak i kraj velikog slova "I" koje ima isti uzorak, ali prvo mora otići u Silego [4] da napiše uzorak sredine velikih slova "I", a zatim kada Silego [3] se izvodi drugi put, potrebno je prijeći u stanje bez poruke nastavljajući ostatak prijelaza. Kako je moguće spriječiti da Silego [3] padne u beskonačnu petlju pomoću Silega [4]? Jednostavno je, postoje neki LUT -ovi konfigurirani kao SR japanke koji govore Silegu [3] da ne bira Silego [4] uvijek iznova, već da drugi put odabere stanje bez poruke. Korištenje SR japanki za sprječavanje beskonačnih petlji pri ponavljanju bilo kojeg stanja odličan je način za rješavanje ovog problema i zahtijeva samo 3-bitni LUT konfiguriran kao što je prikazano na slikama 4 i 5. Ovaj se proces događa istovremeno s ASM izlaz tjera Silego [3] da ide u Silego [4], pa će sljedeći put kad državni stroj izvrši Silego [3], biti obaviješten da odabere stanje bez poruke za nastavak procesa.

Još jedan ASM blok koji je bio od pomoći za ovaj projekt je F (1) Computational Macrocell. F (1) može izvesti popis određenih naredbi za čitanje, pohranu, obradu i izlaz željenih podataka. Sposoban je manipulirati 1 bitom odjednom. U ovom projektu blok F (1) je korišten za čitanje, kašnjenje i izlazne bitove za kontrolu nekih LUT -ova i omogućavanje stanja (kao što je u Silegu [1] za omogućavanje Silega [2]).

Tablica na slici 1 objašnjava kako je svaka od LED adresa adresirana na GPO pinove GreenPAK -a; pridruženi fizički pinovi se adresiraju iz izlaznog RAM -a ASM -a u matrici, kako je prikazano u tablici 2.

Kao što možete vidjeti u Tablici 2, svaki pin čipa je bio adresiran na različite ASM izlaze; ASMOUTPUT 1 ima osam (8) izlaza koji se svi koriste izravno spojeni na vanjske GPO -ove osim OUT 4. ASM OUTPUT 0 ima četiri (4) izlaza gdje su OUT 0 i OUT 1 izravno spojeni na PIN 4 odnosno PIN 16; OUT 2 se koristi za resetiranje LUT5 i LUT6 u Silego [5] i Silego [9] stanjima i na kraju OUT 3 se koristi za postavljanje LUT6 u Silego [4] i Silego [7]. ASM nRESET nije uključen u ovom dizajnu pa je samo prisiljen na HIGH povezivanje s VDD -om. Gornja i Donja LED dioda dodane su ovom projektu radi dodatne animacije dok se prikazuje "SILEGO". Ova animacija govori o nekoliko redaka koji s vremenom kruže pokretom motora. Ove linije su bijele LED diode, dok su one koje se koriste za pisanje slova crvene. Za postizanje ove animacije koristili smo GreenPAK -ov PGEN i CNT0. PGEN je generator uzoraka koji će izlaziti sljedeći bit u svom nizu na svakom rubu takta. Podijelili smo period okretanja motora u 16 odjeljaka, a rezultat je postavljen na izlazni period CNT0. Uzorak programiran u PGEN prikazan je na slici 6.

Korak 3: Rezultati

Rezultati
Rezultati

Kako bismo testirali dizajn, spojili smo utičnicu SLG46880 s PCB -om pomoću vrpčnog kabela. Na krug su spojene dvije vanjske ploče, od kojih je jedna sadržavala regulator napona, a druga koja je sadržavala LED niz. Za početak prikazivanja poruke za demonstraciju uključili smo logičko kolo koje kontrolira GreenPAK, a zatim uključili istosmjerni motor. Za pravilnu sinkronizaciju možda će biti potrebno prilagoditi brzinu. Konačni rezultat prikazan je na slici 7. Tu je i pridruženi video zapis s ovom bilješkom o prijavi.

Zaključak Perception of Vision Display prezentiran u ovom projektu dizajniran je koristeći Dialog GreenPAK SLG46880 kao glavni kontroler. Pokazali smo da dizajn funkcionira ispisivanjem riječi "SILEGO" pomoću LED dioda. Neka poboljšanja koja bi se mogla napraviti u dizajnu uključuju:

● Korištenje više GreenPAK -ova za povećanje mogućnosti stanja za ispis duže poruke ili animacije.

● Dodajte više LED dioda u niz. Moglo bi biti korisno koristiti LED diode za površinsko montiranje umjesto LED dioda za probijanje kako bi se smanjila masa poluge za predenje.

● Uključivanje mikrokontrolera moglo bi vam omogućiti da promijenite prikazanu poruku pomoću I2C naredbi za ponovno konfiguriranje dizajna GreenPAK. To bi se moglo koristiti za stvaranje digitalnog prikaza sata koji ažurira znamenke za točno prikazivanje vremena

Preporučeni: