Orodha ya maudhui:

Minidot 2 - Holoclock: Hatua 6
Minidot 2 - Holoclock: Hatua 6

Video: Minidot 2 - Holoclock: Hatua 6

Video: Minidot 2 - Holoclock: Hatua 6
Video: Видео-обзор коллиматорных прицелов Delta Optical MiniDot HD 24 и HD 26 2024, Julai
Anonim
Minidot 2 - Holoclock
Minidot 2 - Holoclock
Minidot 2 - Holoclock
Minidot 2 - Holoclock

Labda holoclock ni sahihi kidogo….inatumia filamu ya utawanyiko ya holographic mbele kutoa kidogo kina. Msingi huu unaofundishwa ni sasisho kwa Minidot yangu ya zamani iliyoko hapa: https://www.instructables.com/id / EEGLXQCSKIEP2876EE / na kutumia tena nambari nyingi na mizunguko kutoka kwa Microdot yangu iliyopo hapa: Minidot ya awali ilikuwa ngumu kupita kiasi, kutoka kwa Microdot nilijifunza jinsi ya kufanya RTC kwenye PIC ukitumia tu kioo cha 32.768 na sikuhitaji kutumia chip maalum ya RTC. Pia nilitaka kuondoa vidonge vya kuonyesha kutoka kwa Minidot iliyopita. Kwa hivyo sasa kuna chip tu ya mdhibiti wa nguvu na PIC16F88….pichips mbili tu. Sababu zingine za sasisho ni Minidot yangu ilikuwa ikipata kutokuwa ya kuaminika kwa sababu ya bodi ya swichi tofauti na nilitaka kufifia laini kati ya mifumo ya nukta kama pamoja na aina fulani ya sensorer ya taa ili kupunguza onyesho usiku. Minidot nyingine ilikuwa imeangaza mwangaza, na iliangaza chumba wakati wa usiku. Kifaa hicho kilijengwa kwa msaada wa kifurushi cha programu ya EagleCad na mkusanyaji wa Sourceboost. Utahitaji kuwa na uzoefu na vifaa vya elektroniki na programu za kudhibiti PIC kuanza mradi huu. Tafadhali kumbuka hii sio ya kufundisha kwa vifaa vya elektroniki au programu ya PIC, kwa hivyo tafadhali weka maswali yanayohusiana na muundo wa Miniclock. Rejelea mafundisho hapo juu au mafundisho mengine mengi kwenye wavuti hii kwa ushauri juu ya kutumia EagleCad au programu za PICs. Kwa hivyo hapa ni…. Minidot 2, Holoclock …… au Minidot Kizazi Kifuatacho ………….

Hatua ya 1: Mzunguko

Mzunguko
Mzunguko
Mzunguko
Mzunguko
Mzunguko
Mzunguko

Mzunguko huu ni sawa na Microdot. Kumbuka safu ya charlieplex ni sawa … pini chache tu ndizo zimehamishwa.

Kioo cha 20Mhz kimeongezwa kwenye mzunguko wa Microdot ili kuweka PIC haraka zaidi, hii inaruhusu safu kukaguliwa haraka na kuwezesha utekelezaji wa algorithm ya kufifia. Algorithm ya kupunguka ilikuwa muhimu sana kupata muundo wa msalaba na kazi nyepesi ya mwanga kufanya kazi. Hii isingewezekana na Microdot, kwa sababu ya mwendo wa saa polepole kwani mizunguko kadhaa ya skana ilihitaji kutumiwa kwa kufifia. Tazama sehemu inayofuata kwa maelezo ya utendaji wa Kupunguza. Vitu vingine vya kuzingatia ni matumizi ya mdhibiti wa pampu ya malipo ya MCP1252 kusambaza 5V, chip ninayopenda sana kwa sasa. Ikiwa ukibadilisha mzunguko unaweza kutumia kitambo wazi cha zamani 7805 …… Nina idadi tu ya chips hizi zinazoning'inia karibu. Sasa nimehamishia swichi mbele, inaokoa kuzunguka nyuma ya saa baada ya kuacha nguvu ili kuweka tena wakati na sasa kila kitu ni PCB moja tu…sina maswala ya ujazo. Pia kumbuka ni ujumuishaji wa LDR. Hii hutumiwa kwa mgawanyiko wa voltage ambayo inahisiwa na pini ya A / D kwenye PIC. PIC inapohisi kiwango cha mwanga kilichoko chini (kwa mfano, wakati wa usiku) hesabu ya kufifia huweka safu ya charlieplex kuwa nyeusi kwa mizunguko zaidi kuliko wakati kiwango cha taa kiko juu. Sikuweza kupata alama ya LDR katika maktaba ya Eaglecad, kwa hivyo nilitumia tu ishara ya LED…..usidanganyike ni LDR. Tazama picha halisi ya PCB hapo chini. Jambo moja la kumbuka wakati unatumia LED za rangi nyingi katika safu ya charliplex. Unahitaji kuhakikisha kuwa voltage ya mbele ya LED ni sawa au chini sawa. Ikiwa sivyo, basi njia za sasa zinazopotoka zinaweza kutokea na taa nyingi za LED zitawaka. Kwa hivyo kutumia taa za nguvu za 5mm au za juu kwa usanidi huu haitafanya kazi kwani kawaida kuna tofauti kati ya taa za kijani kibichi / bluu na taa nyekundu / manjano. Katika kesi hii nilitumia mwongozo wa 1206 SMD na ufanisi mkubwa wa LED za kijani / bluu haswa. Voltages za mbele hazikuwa suala hapa ingawa. Ikiwa ungetaka kutumia mchanganyiko wa taa za kijani kibichi / bluu na nyekundu / manjano kwenye safu ya charlieplex utahitaji kutenganisha rangi tofauti kuwa safu mbili za charliplex. Kuna maelezo mengi ya uchanganuzi wa akili ambayo yanaweza kugundulika …… Sitaenda kwa maelezo hapa. Nitakuachia ufanye utafiti. (Bonyeza ikoni ndogo ya 'i' kwenye kona ya picha hapa chini ili uone toleo kubwa)

Hatua ya 2: Algorithm ya Kupunguza - Uboreshaji wa Upana wa Pulse ya Charliplexed

Algorithm ya Kupunguza - Uboreshaji wa Upana wa Pulse
Algorithm ya Kupunguza - Uboreshaji wa Upana wa Pulse

Kama nilivyosema hapo awali, nilitaka kuwa na mitindo tofauti ya nukta kwa wakati kufifia vizuri badala ya kutetereka kutoka kwa muundo mmoja hadi mwingine. Tazama video kwa maandamano. Katikati ni saa mpya ya Minidot, kulia ni Minidot wa zamani. Angalia jinsi mpya ilivyo nzuri zaidi. (FYI maonyesho mengine nyuma ni onyesho langu la kompyuta ndogo ya Minicray na chembe yangu iliyotekwa ya Nebulon ambayo inaiwezesha Minicray katika uwanja wa kufungwa kwa sumaku ya antimatter. Tazama hapa: https://www.youtube.com/watch? V = bRupDulR4MKwa onyesho Ukitazama kwenye nambari, fungua faili ya kuonyesha.c. Kumbuka kuna safu nne za kuchora ramani za tris / bandari kuangazia safu yoyote na safu mbili (moja zaidi ya nambari ya Microdot) kwa kufafanua ni LED zipi zinapaswa kuangazwa kwa muundo wowote wa LEDs.eg:

// LED1 LED2 LED3… char iliyosainiwa LEDS_PORTA [31] = {0x10, 0x00, 0x00,… char iliyosainiwa LEDS_TRISA [31] = {0xef, 0xff, 0xff,… unsigned char LEDS_PORTB [31] = {0x00, 0x02, 0x04, … Unsigned char LEDS_TRISB [31] = {0xfd, 0xf9, 0xf9,… unsigned char nLedsA [30], unsigned char nLedsB [30];Ili kuwasha LED1 kwa mfano, unahitaji kuweka rejista za TRIS TRISA: B = 0xef: 0xfd na madaftari ya PORT PORTA: B = 0x10: 0x00 na kadhalika. Ikiwa utaandika maadili ya tris kwa binary utaona kuwa wakati wowote, kuna matokeo mawili tu yaliyowezeshwa. Nyingine zote zimewekwa kwa Tri-state (kwa hivyo usajili wa TRIS). Hii ni msingi wa kuchanganyikiwa. Pia utagundua kuwa pato moja kila wakati ni mantiki '1' na nyingine daima ni mantiki '0'…. Mwelekeo ambao unawasha LED yoyote kati ya laini hizi mbili za pato. Thamani ya mwisho katika bandari / tris arrays ni thamani tupu kuwasha hakuna LED hata kidogo. Katika Microdot, kazi ya update_display iliyozungushwa kwa baiskeli mfululizo kupitia safu nyingine (nLeds ) kuona ikiwa LED hiyo inapaswa kuangazwa. Ikiwa ilikuwa hivyo, basi maadili yanayofanana ya tris / bandari yaliwekwa na LED iliangazwa kwa kipindi cha muda. Vinginevyo thamani batili ilipelekwa kwa rejista za PICs TRIS / PORT na hakuna LED iliyoangaziwa kwa muda. Wakati inafanywa haraka vya kutosha hii ilitoa mfano. Programu iliyobaki ingesoma mara kwa mara maadili ya RTC na kutengeneza muundo mzuri wa mpangilio katika safu hiyo …. sio) basi vipindi vya ziada vingetumika kutuma null maadili ikiwa onyesho lingepunguzwa….. kwa mwangaza kamili basi hakuna vipindi vya ziada vitakavyotumika. Inaporudiwa ikiwa kulikuwa na vipindi vingi vya taa kwa taa zilizoangazwa, onyesho lingepungua. Kwa kweli hii ni moduli ya upana wa mapigo iliyochanganywa…..au kwa sababu vifaa vimeundwa katika upeanaji wa charlieplex, halafu moduli ya upana wa mpigo iliyochomwa. Mchoro wa pili hapa chini unaonyesha usanidi wa kimsingi wa hii. Ninaita hii sura ya skana. Vipindi 30 vya kwanza kwenye fremu hutumiwa kupitia LEDs…. na idadi tofauti ya vipindi vya ziada hufafanua jinsi onyesho litakavyopungua. Mzunguko huu unarudia. Vipindi zaidi vya ubatili inamaanisha wakati mdogo wa LED kuwa kwenye fremu (kwa sababu idadi ya vipindi imeongezeka). Kumbuka mhimili wima haimaanishi kiwango cha voltage. Hali halisi ya pini zinazoenda kwenye LED zinatofautiana kulingana na nafasi yake katika safu ya hijabu…..katika mchoro inamaanisha tu kuzima au kuzima. Hii pia ilimaanisha urefu wa jumla wa sura kwa wakati pia uliongezeka, na hivyo kupungua kiwango. Wakati taa zilipofifia, zingeanza kuangaza kwa maneno mengine. Kwa hivyo njia hii ni muhimu kwa kiwango tu. Kwa saa, ilikuwa sawa. Kazi inaitwa vipindi ambayo inasoma kibadilishaji cha A / D kwenye PIC na kuweka kiwango hiki cha mwangaza. Ikiwa unasoma nambari, inakagua pia ikiwa LED iko karibu na LDR imewashwa, na haifanyi mipangilio yoyote ya kiwango ikiwa ni hivyo, hii inasimamisha mwangaza bila kutarajia wakati muundo ulibadilika.

Hatua ya 3: Upimaji wa Algorithm - Athari ya Kuanguka kwa Msalaba na Bahati Mbili

Algorithm ya Kupunguza - Athari ya Kuanguka kwa Msalaba na Bahati Mbili
Algorithm ya Kupunguza - Athari ya Kuanguka kwa Msalaba na Bahati Mbili

Mpito kati ya muundo mmoja na uliofuata hapo awali ulikuwa wa haraka. Kwa saa hii nilitaka kuonyesha muundo mmoja hatua kwa hatua unapungua katika mwangaza na muundo unaofuata ukiongezeka polepole… yaani msalaba unafifia.

Sikuhitaji kuwa na LED za kibinafsi kudhibitiwa katika viwango tofauti vya mwangaza kufanya kufifia msalaba. Inahitajika tu muundo wa kwanza kwa mwangaza mmoja na ya pili kwa mwangaza mdogo. Halafu kwa kipindi kifupi ningepunguza mwangaza wa kwanza kidogo, na kuongeza ya pili…..hizi zingeendelea hadi muundo wa pili kamili. Kisha saa ingesubiri hadi muundo unaofuata utatakiwa kuonyesha na kutakuwa na mpito mwingine. Kwa hivyo nilihitaji kuhifadhi mifumo miwili. Ile inayoonyeshwa sasa na muundo wa pili ambao ulikuwa karibu kuonyeshwa. Hizi ziko katika safu nLedsA na nLedsB. (angalia chochote cha kufanya na bandari katika kesi hii). Hii ni bafa mbili. Kazi ya update_display () ilibadilishwa kuzunguka kupitia muafaka nane na kuonyesha muafaka kadhaa kutoka safu ya kwanza, halafu nyingine. Kubadilisha idadi ya fremu zilizotengwa kwa kila bafa katika mizunguko yote nane ilielezea jinsi kila muundo ungekuwa mkali. Tulipomaliza kuendesha baiskeli kati ya bafa tulibadilisha bafa ya 'onyesho' na 'onyesho linalofuata', kwa hivyo kazi inayozalisha muundo ingeandika tu kwa bafa ya 'onyesho linalofuata'. Mchoro hapa chini unaonyesha hii kwa matumaini. Unapaswa kuona kuwa mpito utachukua muafaka wa skena 64. Kwenye picha, picha ndogo imeonyesha mchoro wa sura ya skana kutoka ukurasa uliopita ulipunguzwa kwa ustadi. Neno juu ya kiwango cha upya. Yote hii inahitaji kufanywa haraka sana. Sasa tuna viwango viwili vya hesabu za ziada, moja kwa upeo wa onyesho la mazingira na moja kwa mizunguko nane ya sura iliyotumiwa kufanya mabadiliko kati ya bafa mbili. Kwa hivyo nambari hii inapaswa kuandikwa katika mkutano, lakini inatosha katika 'C'.

Hatua ya 4: Ujenzi - PCB

Ujenzi - PCB
Ujenzi - PCB
Ujenzi - PCB
Ujenzi - PCB

Hii ni sawa kabisa. Pande mbili tu za PCB zilizo na vifaa kadhaa vya SMD hapo juu. Samahani ikiwa wewe ni mtu wa kupitia shimo, lakini ni rahisi sana kufanya miradi ya SMD… mashimo bila kuchimba. Unapaswa kuwa na mkono thabiti, kituo cha kutengenezea joto na mwanga mwingi na ukuzaji ili kufanya mambo iwe rahisi.

Jambo pekee la kumbuka katika ujenzi wa PCB ni ujumuishaji wa kontakt ya programu ya PIC. Hii inaunganisha na pini za ICSP kwenye PIC na utahitaji programu ya ICSP. Tena nilikuwa nikitumia kiunganishi changu cha junkbox. Unaweza kuacha hii na waya tu za solder kwa pedi ikiwa ungependa. Vinginevyo ikiwa una programu iliyofungwa tu, unaweza kutengeneza kichwa kinachounganisha kwenye tundu lako na kisha kuuzia kwa pedi za ICSP. Ukifanya hivyo, futa Rx na uunganishe Ry ambazo ni viungo tu vya ohm (ninatumia tu blob ya solder). Hii itakata umeme uliobaki kutoka kwa PIC kwa hivyo haiingilii programu. Programu iliyofungwa hutumia tu pini za ICSP kama programu ya ICSP, hakuna uchawi unaohusika kweli. Unahitaji pia kufanya hivyo ikiwa kwa makosa umesahau kuweka ucheleweshaji wa nambari kabla ya RTC kuanza. Kwa 16F88 pini za programu ya ICSP ni sawa na pini zinazohitajika kwa glasi 32.768kHz inayotumiwa kwa RTC …… ikiwa T1 oscillator ya nje (yaani RTC) inafanya kazi kabla ya ICSP kuanza kazi, basi programu itashindwa. Kawaida ikiwa kuna kuweka upya kwenye pini ya MCLR na kuna kuchelewa, basi data ya ICSP inaweza kutumwa kwa pini hizi na programu inaweza kuanza vizuri. Walakini kwa kutenganisha nguvu kwa PIC programu ya ICSP (au programu iliyotengenezwa na kichwa) inaweza kudhibiti nguvu kwa kifaa na kulazimisha programu. Vitu vingine vya kuzingatia ni kwamba pedi za kioo kwenye PCB hapo awali zilibuniwa kwa fuwele za SMD. Sikuweza kungojea zingine ziwasilishwe kwa hivyo glasi ya saa 32.768kHz iliuzwa kwa juu kama inavyoonyeshwa, na kioo cha 20MHz kiliambatanishwa na kuchimba mashimo kadhaa kwenye pedi, ikipiga glasi kupitia chini na kutengenezea juu. Unaweza kuona pini kulia tu kwa PIC16F88.

Hatua ya 5: Filamu ya Holographic na Makazi

Filamu ya Holographic na Nyumba
Filamu ya Holographic na Nyumba
Filamu ya Holographic na Nyumba
Filamu ya Holographic na Nyumba
Filamu ya Holographic na Nyumba
Filamu ya Holographic na Nyumba

Ujenzi wa mwisho ni kuweka tu PCB ndani ya kesi hiyo na baada ya programu kuibandika na dob ya gundi moto. Mashimo matatu huruhusu ufikiaji wa microswitches kutoka mbele.

Sehemu inayojulikana ya saa hii ni matumizi ya filamu ya holographic diffuser. Hii ni filamu maalum ambayo nilikuwa nimelala karibu ambayo hutoa kina kizuri kwa kifaa. Unaweza kutumia karatasi wazi ya ufuatiliaji (ambayo ningesogeza PCB karibu mbele), au kifaa kingine chochote kama vile vilivyotumika kwenye taa za taa za taa. Uzoefu kuhusu, jambo pekee linalohitaji kufanya ni kukuruhusu kutofautisha kati ya idadi ya taa zilizoangazwa, au vinginevyo kuhesabu dots kujua wakati itakuwa ngumu. Nilitumia nyenzo za utawanyiko wa holographic kutoka kwa Ushirika wa Kimwili wa macho (www.poc.com) na utawanyiko wa mviringo wa digrii 30, onyesho la hadhi ya kompyuta iliyoonyeshwa mahali pengine kwenye filamu inayoweza kufundishwa na utawanyiko wa elliptical ya 15x60. Unaweza kutumia mkanda mweusi kuficha matumbo yanayong'aa wakati wa mchana ili kupata sura ya kushangaza zaidi. Unaweza hata kuacha onyesho wazi na wacha watu waone wageni kama mimi. Stendi hiyo ilikuwa na vipande viwili vya bar ya aluminium 'L' iliyokatwa kidogo chini ili kuinama. Kumbuka katika picha hizi taa za ziada ziliongezwa ili uweze kuona vifuniko vya kuonyesha n.k Katika taa ya kawaida ya sebule, LED zinajulikana zaidi, hata wakati wa mchana.

Hatua ya 6: Programu-interface na Mtumiaji

Uendeshaji wa kifaa ni rahisi sana, hakuna njia maalum za muundo au vitu vya kupendeza. Kitu pekee inachofanya ni kuonyesha wakati.

Kuweka muda kwanza bonyeza SW1. Kifaa kitaangazia LED zote mara chache na kisha kikundi cha masaa 10 cha LEDs SW3 kitaongeza kundi lililochaguliwa SW2 litahamia kwenye kikundi kinachofuata cha LED, kila wakati ikiangaza taa zote kwenye kikundi kwa muda mfupi. Nambari imeandikwa kwa toleo la mkusanyaji wa Sourceboost 'C' 6.70. Nambari ya RTC iko kwenye faili za t1rtc.c / h, na ina kazi ya kukatiza kwenye kipima muda cha T1 cha PIC. Kipima muda cha T1 kimewekwa kukatiza kila sekunde 1. Kwa kila sekunde, ubadilishaji wa wakati huongezwa. Pia kipima muda cha kupe huhesabiwa chini kila sekunde pamoja na wakati. Hii hutumiwa kuamua wakati wa kubadilisha onyesho. Kazi ya kukatiza pia hutumia kukatiza kipima muda cha T0 ili kuonyesha upya onyesho, ikiita kazi katika kuonyesha.c Faili za kuonyesha.h / display.c zina kazi za kusasisha onyesho na kuonyesha wakati faili zinadhibiti.c / h zina kazi za kuweka wakati na kusoma swichi Faili holoclock.c / h ndio vitanzi kuu na uanzishaji.

Ilipendekeza: