Мазмуну:

Өз POV дисплейиңизди жасаңыз: 3 кадам
Өз POV дисплейиңизди жасаңыз: 3 кадам

Video: Өз POV дисплейиңизди жасаңыз: 3 кадам

Video: Өз POV дисплейиңизди жасаңыз: 3 кадам
Video: 💎 pov: поверил в себя #pov #story 2024, Июль
Anonim
Өз POV дисплейиңизди түзүңүз
Өз POV дисплейиңизди түзүңүз

Көрүүнү кабылдоо (POV) же Көрүүнүн туруктуулугу (анын бир нече вариациясы бар) - адамдын көз карашынын кызыктуу кубулушу, ал объектинин позициясы өзгөргөнүнө карабай объектти визуалдык кабыл алуу токтобогондо пайда болот. Адамдар бир сүрөттөлүштү секунданын бөлүктөрүнүн интервалдарында көрүшөт; бул сүрөттөлүштөр мээге өтө кыска убакытка (бир заматта) сакталат. Бул кубулуштун мисалы, сиз LED же лампа сыяктуу жарык булагын күйгүзүп, тегеренип жүргөнүңүздү байкасаңыз болот. Биздин көзүбүз айлануучу жарык чынында үзгүлтүксүз тегерек экенине ишенүү үчүн алданган. POV көп жылдар бою, гипофоскоптон баштап, биздин көз карашыбызга ар кандай иллюзияларды жана анимацияларды жасоо үчүн колдонулган; Бул көп учурда LEDлерди колдонуп дисплейлерде билдирүүлөрдү жана анимацияларды көрсөтүү үчүн колдонулат, аларды ар кандай билдирүүлөр үчүн 2D же 3D форматында айландырат. Бул колдонмонун эскертмесинин максаты, курула турган дисплейге "SILEGO" сөзүн жазуу менен Vision Vision кантип иштээрин көрсөтүү жана көрсөтүү жана келечекте татаал конструкцияларды жасоо процессинде сизге багыт берүү үчүн идеяларды берүү. Бул долбоор үчүн биз Dialog GreenPAK ™ SLG46880 колдонгонбуз, бул прототип кабелдерди колдонуу менен бардык тышкы компоненттерге оңой туташууга мүмкүндүк берет. POV дисплейлерин жалпы максатта иштеп чыгуу үчүн чоңураак GreenPAKты колдонуу, анын күчтүү компоненттеринин, мисалы, ASM чакан системаларынын жардамы менен, дисплейде ар кандай үлгү басып чыгарууга мүмкүндүк берет. Бул колдонмо SLG46880ди колдонуп акыркы жыйынтыкты көрсөтөт.

Төмөндө GreenPAK чипи POV дисплейин түзүү үчүн кантип программаланганын түшүнүү үчүн керектүү кадамдарды сүрөттөдүк. Бирок, эгер сиз программалоонун жыйынтыгын алууну кааласаңыз, GreenPAK программасын жүктөп алыңыз, буга чейин бүткөн GreenPAK Дизайн Файлын көрүңүз. GreenPAK Development Kitти компьютериңизге сайып, POV дисплейи үчүн ыңгайлаштырылган IC түзүү үчүн программаны басыңыз.

1 -кадам: схемалар

Схемалар
Схемалар

Бул POV Display үлгүсү GreenPAK CMICтеги ар кандай GPO казыктарына туташкан он бир светодиоддун (токторду жөнгө салуу үчүн ар бири резистору бар) бар 1 -сүрөттө көрсөтүлгөн 2D түрүн бутага алат. Район прототиптештирилген жана ПХБ панелдерине кошулган. Дисплей үчүн колдонулган электр энергиясы 9 V 10 A L1022 щелочтуу батарея болуп саналат, ал 5 V чыгуучу LM7805V аркылуу чыңалуу жөнгө салуучу схемага туташкан, дисплейдин айлануусунан тышкары, DC мотору жетиштүү күчкө ээ. ылайыкташтырылган стендге тиркелген башкаруу схемасы. Бул учурда, 12 В кыймылдаткыч колдонулган, негизги которгучка туташкан жана мотордун бир нече ылдамдыкта айланышына мүмкүндүк берүүчү ротордук которгуч аркылуу ар кандай чыңалуу деңгээлин чыгаруучу, жөнгө салынуучу электр энергиясы менен камсыздалган.

2 -кадам: GreenPAK Дизайн

GreenPAK Дизайн
GreenPAK Дизайн
GreenPAK Дизайн
GreenPAK Дизайн
GreenPAK Дизайн
GreenPAK Дизайн
GreenPAK Дизайн
GreenPAK Дизайн

GreenPAKты колдонуп POV дисплейи үчүн ар кандай билдирүүлөрдү жана анимацияларды иштеп чыгууда, биз чиптин куралдарын жана чектөөлөрүн билишибиз керек. Ошентип, биз POV дисплейине жетүү үчүн эң аз электроника компоненттерин колдонуп, тажрыйбалуу дизайн түзө алабыз. Бул дизайн SLG46880 CMIC тарабынан сунушталган жаңы артыкчылыктарды колдонот, Асинхрондук мамлекеттик машинанын подсистемалары компонентине басым жасоо менен. SLG46880 ASM подсистемасынын куралы Мамлекеттик машинанын татаал конструкциясына мүмкүндүк берген жаңы функциялары менен мурунку GreenPAK ASM куралдарына караганда алда канча пайдалуу болушу мүмкүн. Тиешелүү ASM подсистемасынын ички компоненттеринин кээ бири колдонулат:

● 12-мамлекеттердин ASM Macrocell

● Динамикалык эс тутум (DM) Macrocell

● F (1) Macrocell эсептөө

● Мамлекеттик көз карандысыз компоненттер

Мамлекеттик машина макроцеллери канчалык көп болсо, чип түзүүгө жана конфигурациялоого мүмкүндүк берсе, дизайн мүмкүнчүлүктөрү ошончолук көп болот. Он эки штаттын ар бири көрсөтүлө турган сөздүн ар кандай фракцияларын жазуу үчүн колдонулган, светодиоддордун айкалышкан комбинацияларын күйгүзүү/өчүрүү, кээ бирлери эки же андан көп жолу кайталанган, кээ бир учурларда кайталанган абалдын убактысы өзгөрөт, анткени бир эле үлгү ар кайсы убакта ар кандай тамгалар үчүн колдонулушу мүмкүн. Мамлекеттер стол 1де структураланган.

1 -таблицада дизайндагы ар бир абалдын "SILEGO" сөзүндөгү тамгалар менен кандай байланышы бар экени көрсөтүлгөн. Бул 2 -сүрөттө көрсөтүлгөн LED конфигурациясына байланыштуу.

Байкаганыңыздай, ар кандай убакытта аткарылган бардык штаттар сөздүн толук түзүлүшүнө жетишет, 3 -сүрөт штаттардын кантип байланышкан/байланышкандыгын көрсөтөт. Бардык штаттардын өткөөлдөрү миллисекунд тартибинде жана 2 -сүрөттөгү диаграммада мамычалардын ар бири бир миллисекундту (1 мс) түзөт. Кээ бир мамлекеттер 3 мс, 4 мс жана башкаларга созулат, болжол менен 460 RPMде видео демонстрация үчүн колдонулган мотордун минималдуу ылдамдыгы менен.

Мотордун ылдамдыгын эске алуу жана жалпы максаттуу дизайн боюнча убакытты эсептөө маанилүү. Ошентип, билдирүүнү мотор ылдамдыгы менен синхрондоштурууга болот, ошону менен адам көзүнө көрүнөт. Штаттын өтүүсүн анча байкалбай турган жана биздин көз карашыбызга түшүнүктүүрөөк кылуунун дагы бир жолу - мотордун ылдамдыгын 1000 RPMге чейин жогорулатуу жана штаттардын убактысы микросекунддардын тартибинде белгиленген, ошондуктан билдирүү оңой көрүнүшү мүмкүн. Сиз өзүңүздөн сурап жаткандырсыз, мотордун ылдамдыгын билдирүүнүн же анимациянын ылдамдыгы менен кантип шайкештиресиз? Бул бир нече жөнөкөй формулалар менен ишке ашат. Эгерде сизде 1000 ылдамдыкта кыймылдаткыч ылдамдыгы бар болсо, анда DC мотору бир секундада бир революцияга канча убакыт кетерин билүү үчүн, анда:

Frequency = 1000 RPM / 60 = 16.67 Hz Period = 1 / 16.67 Hz = 59.99 ms

Мезгилди билүү менен, мотордун кезекке канча убакыт кетерин билесиз. Эгерде сиз "Hello World" сыяктуу билдирүүнү басып чыгаргыңыз келсе, анда ар бир бурулуштун убактысын билгенден кийин, дисплейде билдирүүнүн канчалык чоң болушун каалайсыз. Каалаган билдирүүнү керектүү өлчөмдө басып чыгаруу үчүн, бул эрежени аткарыңыз:

Эгер, мисалы, сиз билдирүү дисплейдин 40 % ын ээлешин кааласаңыз, анда:

Билдирүүнүн көлөмү = (Мөөнөт * 40 %) / 100 % = (59,99 мс * 40 %) / 100 % = 24 мс

Бул билдирүү ар бир бурулуш үчүн 24 мс көрсөтүлөт дегенди билдирет, андыктан боштук же боштуктун калган бөлүгү кезеги менен (эгер сиз билдирүүдөн кийин эч нерсе көрсөтпөсөңүз), мындай болушу керек:

Бош боштук = Период - Билдирүүнүн өлчөмү = 59.99 мс - 24 мс = 35.99 мс

Акыр -аягы, эгерде сиз ошол 40% мезгилде билдирүүнү көрсөтүшүңүз керек болсо, анда күтүлгөн билдирүүнү жазуу үчүн канча мамлекет жана өтмөк керек экенин билишиңиз керек, мисалы, эгерде билдирүүдө жыйырма (20) которуу болсо, анда:

Жалгыз мамлекеттик мезгил = Билдирүүнүн өлчөмү / 20 = 24 мс / 20 = 1,2 мс.

Ошентип, билдирүүнү туура көрсөтүү үчүн ар бир мамлекет 1,2 мс созулушу керек. Албетте, сиз биринчи дизайндардын көбү идеалдуу эмес экенин байкайсыз, андыктан дизайнды жакшыртуу үчүн физикалык тестирлөө учурунда кээ бир параметрлерди өзгөртүп жаткандырсыз. Биз мамлекеттин өтүүсүн жеңилдетүү үчүн Dynamic Memory (DM) Macrocells колдондук. Төрт DM блогунун экөө матрицалык байланышка ээ, андыктан алар ASM подсистемасынан тышкары блоктор менен иштеше алышат. Ар бир DM Macrocellде ар кандай штаттарда колдонула турган 6га чейин конфигурация болушу мүмкүн. DM блоктору бул конструкцияда ASMди бир абалдан экинчисине которуу үчүн колдонулат. Мисалы, Силего [3] абалы эки жолу кайталанып турат; ошол эле үлгүгө ээ болгон "I" тамгасынын башталышын жана аягын жазышы керек, бирок адегенде Силегого [4] барып, "I" баш тамгасынын ортосунун үлгүсүн жазуу керек, анан Силего болгондо [3] экинчи ирет аткарылды, калган өтүүлөрдү улантып, эч кандай билдирүү абалына өтүшү керек. Силего [3] Silego [4] менен чексиз циклга түшүп кетүүсүн кантип алдын алуу мүмкүн? Бул жөнөкөй, SR Flip Flops катары конфигурацияланган кээ бир LUTтар бар, алар Силегого [3] Силегону [4] кайра -кайра тандабоону, бирок Экинчи жолу билдирүү абалын тандабоону айтат. Кайсы бир мамлекеттер кайталанганда чексиз циклдарды болтурбоо үчүн SR Flip Flops колдонуу бул көйгөйдү чечүүнүн эң сонун жолу жана 3-бит LUTти Figure 4 жана Figure 5те көрсөтүлгөндөй конфигурациялоону талап кылат. Бул процесс ошол эле учурда болот. ASM өндүрүшү Силегону [3] Силегого [4] барууга мажбурлайт, андыктан кийинки жолу мамлекеттик машина Силегону [3] аткарганда, процессти улантуу үчүн билдирүү жок абалын тандоо эскертилет.

Бул долбоор үчүн пайдалуу болгон дагы бир ASM блогу F (1) Computational Macrocell. F (1) каалаган маалыматтарды окуу, сактоо, иштетүү жана чыгаруу үчүн белгилүү бир буйруктардын тизмесин түзө алат. Ал бир убакта 1 битти башкара алат. Бул долбоордо F (1) блогу кээ бир LUTтарды көзөмөлдөө жана биттерди чыгаруу, кечиктирүү жана чыгаруу үчүн колдонулган (мисалы, Силегодо [1] Силегону иштетүү үчүн [2]).

Диаграмма 1деги таблицада ар бир светодиод GPO казандарына карата айтылганын түшүндүрөтGreenPAK; байланышкан физикалык казыктар 2 -таблицада көрсөтүлгөндөй, матрицада ASM Output RAMдан каралат.

2 -таблицада көрүнүп тургандай, чиптин ар бир пини өзүнчө ASM өндүрүштөрүнө багытталган; ASMOUTPUT 1де сегиз (8) чыгаруу бар, алар OUT 4төн башка тышкы GPOго түздөн -түз туташкан. ASM OUTPUT 0 төрт (4) чыгууга ээ, анда OUT 0 жана OUT 1 түздөн -түз PIN 4 жана PIN 16га туташкан; OUT 2 SILEGO [5] жана Silego [9] штаттарында LUT5 жана LUT6 баштапкы абалга келтирүү үчүн колдонулат жана акыры OUT 3 LUT6'ны Silego [4] жана Silego [7] орнотуу үчүн колдонулат. ASM nRESET бул дизайнда которулбайт, ошондуктан ал VDDге туташууга мажбур болот. "SILEGO" көрсөтүлүп жатканда кошумча анимация жасоо үчүн бул долбоорго Жогорку жана Төмөнкү LEDлар кошулган. Бул анимация мотордун кыймылы менен убакыттын өтүшү менен айланып жүргөн бир нече линия жөнүндө. Бул сызыктар ак LED диоддору, ал эми тамгаларды жазуу үчүн колдонулган кызыл түс. Бул анимацияга жетүү үчүн биз GreenPAKтин PGEN жана CNT0 колдондук. PGEN - бул графиктин генератору, ал кийинки битти ар бир сааттын четинде чыгарат. Биз мотордун айлануу мөөнөтүн 16 секцияга бөлдүк жана натыйжа CNT0 чыгаруу мезгилине коюлду. PGENге программаланган үлгү Figure 6да көрсөтүлгөн.

3 -кадам: Жыйынтыктар

Жыйынтыктар
Жыйынтыктар

Дизайнды текшерүү үчүн биз SLG46880 розеткасын лента кабели менен ПХБга туташтырдык. Районго эки тышкы такта туташтырылган, анын биринде чыңалуу жөндөгүчү, экинчисинде LED массиви болгон. Демонстрация үчүн билдирүүнү көрсөтүүнү баштоо үчүн, биз GreenPAK тарабынан башкарылган логикалык схеманы күйгүзүп, андан соң DC моторун күйгүздүк. Туура синхрондоштуруу үчүн ылдамдыкты тууралоо керек болушу мүмкүн. Акыркы жыйынтык 7 -сүрөттө көрсөтүлгөн. Бул колдонмо жазуусу менен байланышкан видео дагы бар.

Бул долбоордо көрсөтүлгөн Vision Display кабылдоосу негизги контролер катары Dialog GreenPAK SLG46880 аркылуу иштелип чыккан. Дизайн диоддун жардамы менен "SILEGO" сөзүн жазуу менен иштээрин көрсөттүк. Дизайнга киргизилиши мүмкүн болгон кээ бир жакшыртуулар төмөнкүлөрдү камтыйт:

● Узунураак билдирүү же анимацияны басып чыгаруу мүмкүнчүлүктөрүнүн санын көбөйтүү үчүн бир нече GreenPAKти колдонуу.

● Массивге көбүрөөк LED кошуңуз. Айланып турган колдун массасын азайтуу үчүн, жарыкты жарыктандыруучу светодиоддорго эмес, жер үстүнө орнотулган LED диоддорун колдонуу пайдалуу болушу мүмкүн.

● Микроконтроллерди кошуу GreenPAK дизайнын кайра конфигурациялоо үчүн I2C буйруктарын колдонуу менен көрсөтүлгөн билдирүүнү өзгөртүүгө мүмкүндүк берет. Бул убакытты так көрсөтүү үчүн цифраларды жаңыртып турган санариптик саат дисплейин түзүү үчүн колдонулушу мүмкүн

Сунушталууда: