Orodha ya maudhui:

Mwanga wa Wakeup: Hatua 7 (na Picha)
Mwanga wa Wakeup: Hatua 7 (na Picha)

Video: Mwanga wa Wakeup: Hatua 7 (na Picha)

Video: Mwanga wa Wakeup: Hatua 7 (na Picha)
Video: Mbosso - Picha Yake (Official Music Video) 2024, Novemba
Anonim
Nuru ya kuamka
Nuru ya kuamka

Wakati ninaandika haya ya kufundisha ni katikati ya msimu wa baridi kwenye ulimwengu wa Kaskazini na hiyo inamaanisha siku fupi na usiku mrefu. Nimezoea kuamka saa 06:00 na wakati wa Jua jua litakuwa linaangaza wakati huo. Katika msimu wa baridi ingawa, hupata mwangaza saa 09:00 ikiwa tuna bahati ya kuwa na siku ambayo haina mawingu (ambayo… si mara nyingi).

Wakati fulani uliopita nilisoma juu ya "taa ya kuamka" iliyotengenezwa na Philips ambayo ilitumika nchini Norway kuiga asubuhi yenye jua. Sikuwahi kununua, lakini niliendelea kufikiria juu ya kutengeneza kwa sababu kutengeneza mwenyewe ni ya kufurahisha kuliko kuinunua tu.

Ugavi:

Picha ya picha "Ribba" 50 x 40 cm kutoka IKEA

hardboard iliyotobolewa kutoka duka la vifaa

Bodi ya maendeleo ya STM8S103 kupitia Ebay au wengine

Saa Saa Halisi ya DS1307 (Mouser, Farnell, Conrad, nk)

Kioo cha saa 32768 Hz (Mouser, Farnell, Conrad, nk)

3V lithiamu coincell + mmiliki sanjari

BUZ11 au IRLZ34N N-channel MOSFETs (3x)

BC549 (au transistor nyingine yoyote ya NPN)

vilele nyeupe nyingi, nyekundu, bluu, kijani, nk kadri utakavyo

baadhi ya vipinga na capacitors (angalia skimu)

Powerbrick, 12V hadi 20V, 3A au zaidi (k.m. nguvu za zamani za kompyuta ndogo)

Hatua ya 1: Kufanya iwe (Kidogo) Rahisi Kuinuka

Kuifanya (Kidogo) iwe Rahisi Kuinuka
Kuifanya (Kidogo) iwe Rahisi Kuinuka

Wazo ni kwamba ni ngumu kutoka kitandani asubuhi wakati giza bado. Na ikiwa unaishi karibu au hata juu ya mduara wa arctic itakuwa giza muda mrefu sana. Katika maeneo kama Tromsö huko Norway hakutapata mwanga hata kidogo kwani huko jua huzama nusu ya Novemba tu ili kuonekana tena nusu Januari.

Kwa hivyo kile Philips alifanya ni kuiga kuchomoza kwa jua.

Philips polepole huongeza mwangaza wa taa, ambayo pengine imetengenezwa na viunzi kadhaa lakini imefichwa nyuma ya kifaa kimoja. Wakati wao kutoka kwa mwangaza kamili huchukua dakika 30.

Taa za kuamsha za Philips sio za bei ghali lakini ina rangi moja tu na inaonekana kidogo kidogo. Nadhani naweza kufanya vizuri zaidi.

Hatua ya 2: Rangi zaidi

Rangi zaidi
Rangi zaidi

Nuru yangu ya kuamka hutumia rangi nne, nyeupe, nyekundu, bluu na kijani. Kwanza kuja nyeupe nyeupe, kisha kuja nyekundu, na mwisho chache bluu na kijani leds. Wazo langu lilikuwa kwamba siwezi kuiga tu kuongezeka kwa mwangaza lakini pia kuhama kwa rangi ya nuru ya asubuhi, kwa kuanza na nyeupe kidogo, na kuongeza nyekundu baadaye baadaye na kuchanganya na bluu na kijani mwishowe. Sina hakika kwamba kweli inafanana na nuru halisi ya asubuhi, lakini napenda onyesho la kupendeza kama ilivyo sasa.

Yangu pia ni haraka kuliko taa ya kuamsha ya Philips, badala ya dakika 30 ya taa ya Philips, yangu huenda kutoka mwangaza wa 0% hadi 100% kwa chini ya dakika 5. Kwa hivyo jua langu hutoka kwa kasi zaidi.

KUMBUKA:

Ni ngumu sana kutengeneza picha za taa yangu ya kuamka, nilijaribu na kamera kadhaa na simu mahiri lakini picha zote nilizotengeneza hazifanyi haki halisi.

Hatua ya 3: Curve ya Sigmoid, Flickering na "resolution"

Curve ya Sigmoid, Flickering na
Curve ya Sigmoid, Flickering na

Kwa kweli nilitaka kuangaza iwe laini iwezekanavyo. Macho ya wanadamu ni logarithmic katika unyeti, ikimaanisha kuwa katika giza kamili wao ni nyeti zaidi kuliko ilivyo kwa mchana kamili. Kuongezeka kidogo kwa mwangaza wakati viwango viko chini "huhisi" sawa na hatua kubwa zaidi wakati taa iko kwenye mwangaza wa 40%. Ili kufanikisha hili nilitumia curve maalum iitwayo Sigmoid (au S-curve) hii curve huanza kama curve ya kielelezo ambayo viwango vya nusu mbali tena. Niligundua kuwa ni njia nzuri sana ya kuongeza (na kupunguza) nguvu.

Mzunguko wa saa ya microcontroller (na vipima muda) ni 16 MHz na ninatumia azimio kubwa la TIMER2 (65536) kuunda ishara tatu za upana wa kunde (PWM). Kwa hivyo kunde huja 16000000/65536 = mara 244 kwa sekunde. Hiyo iko juu zaidi ya kikomo cha macho kuona upepesi wowote.

Kwa hivyo viongozo vinalishwa na ishara ya PWM ambayo imetengenezwa na bittimer hii 16 ya mdhibiti mdogo wa STM8S103. Kwa kiwango cha chini ishara hii ya PWM inaweza kuwa ON ni urefu wa kunde 1 na urefu wa mapigo uliobaki 65535 umezimwa.

Kwa hivyo viongozo vilivyounganishwa na ishara hiyo ya PM basi itakuwa ON 1/65536-th ya wakati: 0.0015%

Kwa kiwango cha juu wao ni ON 65536/65536-th ya wakati: 100%.

Hatua ya 4: Elektroniki

Umeme
Umeme
Umeme
Umeme
Umeme
Umeme
Umeme
Umeme

Mdhibiti mdogo

Ubongo wa taa ya kuamka ni STM8S103 microcontroller kutoka STMicroelectronics. Ninapenda kutumia sehemu ambazo zina uwezo wa kutosha kwa kazi. Kwa kazi rahisi kwani hii sio lazima kutumia watawala-STM32 (vipenzi vyangu vingine) lakini Arduino UNO haitoshi kwani nilitaka ishara tatu za PWM na azimio la 16 kidogo na hakuna kipima muda na njia tatu za pato kwenye UNO.

Saa ya Wakati Halisi

Wakati unasomwa kutoka kwa saa halisi ya DS1307 inayofanya kazi na kioo cha 32768 Hz na ina betri ya kuhifadhi 3V.

Kuweka wakati, siku na wakati wa kuamka hufanywa na vifungo viwili na kuonyeshwa kwa onyesho la tabia ya 16 x 2 LCD. Kuweka chumba changu cha kulala giza kweli usiku, mwangaza wa mwangaza wa LCD umewashwa tu wakati viongo vinang'aa kuliko taa ya nyuma na wakati unapanga wakati, mchana na wakati wa kuamka.

Nguvu

Nguvu hutoka kwa usambazaji wa zamani wa umeme wa mbali, yangu inazalisha 12V na inaweza kutoa 3A. Unapokuwa na usambazaji mwingine wa umeme inaweza kuwa muhimu kurekebisha vipinga katika safu na nyuzi zilizoongozwa. (Tazama hapa chini)

Tamaa

Viongozi vimeunganishwa na usambazaji wa 12V, vifaa vyote vya elektroniki vilivyo kwenye 5V vilivyotengenezwa na mdhibiti wa laini 7805. Katika mpango huo inasema kwamba ninatumia mdhibiti wa TO220, ambayo haihitajiki kama mdhibiti mdogo, onyesho na saa halisi hutumia mililita chache tu. Saa yangu hutumia toleo dogo la TO92 la 7805 inayoweza kusambaza 150mA.

Kubadilika kwa kamba zilizoongozwa hufanywa na N-channel MOSFETs. Tena, katika mpango huo inaonyesha vifaa vingine kuliko vile nilivyotumia. Nilitokea kuwa na MOSFET tatu za zamani sana za BUZ11 badala ya IRFZ34N MOSFETs mpya. Wanafanya kazi vizuri

Kwa kweli unaweza kuweka vipindi vingi kama unavyopenda, maadamu MOSFET na nguvu ya kushughulikia inaweza kushughulikia sasa. Katika mpango nimechora kamba moja tu ya rangi yoyote, kwa kweli kuna rangi kadhaa zinazofanana na nyuzi zingine za rangi hiyo.

Hatua ya 5: Resistors (kwa Leds)

Resistors (kwa Leds)
Resistors (kwa Leds)

Kuhusu wapinzani katika kamba zilizoongozwa. Vipande vyeupe na hudhurungi kawaida huwa na voltage ya 2.8V juu yao wanapokuwa na mwangaza kamili.

Vipande vyekundu vina 1.8V tu, taa zangu za kijani zina 2V juu yao kwa mwangaza kamili.

Jambo jingine ni kwamba mwangaza wao kamili haufanani. Kwa hivyo ilichukua majaribio kadhaa kuwafanya kuwa sawa (kwa macho yangu). Kwa kuzifanya leds ziangaze sawasawa katika mwangaza kamili, pia zitaonekana kuwa sawa katika viwango vya chini, ishara ya upana wa kunde huwawasha kwa ukali kamili lakini kwa muda mrefu na mfupi, macho yako hutunza wastani.

Anza na hesabu kama hii. Ugavi wa umeme hutoa (kwa upande wangu) 12V.

Vipande vinne vyeupe kwenye safu vinahitaji 4 x 2.8V = 11.2V, hii inaacha 0.8V kwa kontena.

Niligundua kuwa walikuwa na mwangaza wa kutosha saa 30mA kwa hivyo kontena inahitaji kuwa:

0.8 / 0.03 = 26.6 ohm. Katika muundo unaona kuwa niliweka kipikizi cha 22 ohm, na kufanya viongozo kung'aa kidogo.

Vipande vya hudhurungi vilikuwa vyenye kung'aa sana kwa 30mA, lakini ikilinganishwa na laini nyeupe kwa 15 mA, pia walikuwa na karibu 2.8V juu yao kwa 15mA kwa hivyo hesabu ilikuwa 4 x 2.8V = 11.2V tena ikiacha 0.8V

0.8 / 0.015 = 53.3 ohm kwa hivyo nilichagua kinzani cha 47 ohm.

Vipande vyangu vyekundu pia vinahitaji mA 15 ziwe zenye kung'aa sawa na zingine, lakini zina 1.8V tu juu yao kwa sasa. Kwa hivyo ningeweza kuweka zaidi katika safu na bado nina "chumba" cha kipinga.

Viongozi sita nyekundu walinipa 6 x 1.8 = 10.8V, kwa hivyo juu ya kontena ilikuwa 12 - 10.8 = 1.2V

1.2 / 0.015 = 80 ohm, niliifanya kuwa 68 ohm. Kama tu hizo zingine, ni nyepesi kidogo.

Vipande vya kijani nilivyotumia ni mkali kama zingine karibu 20mA. Nilihitaji chache tu (kama zile za samawati) na nilichagua kuweka nne mfululizo. Katika 20mA wana 2, 1V juu yao, ikitoa 3 x 2.1 = 8.4V

12 - 8.4 = 3.6V kwa kontena. Na 3.6 / 0.02 = 180 ohm.

Ikiwa utaunda taa hii ya kuamka haiwezekani kuwa na umeme sawa, itabidi urekebishe idadi ya vipindi katika safu na vipinga vinavyohitajika.

Mfano mdogo. Sema una nguvu ya kutoa 20V. Ningechagua kuweka viongozo 6 vya bluu (na nyeupe) katika safu, 6 x 3V = 18V kwa hivyo 2V kwa kontena. Na lets sema unapenda mwangaza saa 40mA. Kuzuia basi inahitaji kuwa 2V / 0.04 = 50 ohm, kinzani ya 47 ohm itakuwa sawa.

Ninashauri kutokwenda juu zaidi ya 50mA na viongozo vya kawaida (5mm). Wengine wanaweza kushughulikia zaidi, lakini napenda kuwa upande salama.

Hatua ya 6: Programu

Nambari yote inaweza kupakuliwa kutoka:

gitlab.com/WilkoL/wakeup_light_stm8s103

weka nambari ya chanzo wazi, karibu na hii yote inayoweza kufundishwa ikiwa unataka kufuata maelezo.

Kuu.c

Main.c kwanza huweka saa, vipima muda na vifaa vingine vya pembeni. Wengi wa "madereva" niliandika kwa kutumia Maktaba ya Kawaida kutoka kwa STMicroelectronics na ikiwa una maswali yoyote juu yao, iandike kwa maoni chini ya yanayoweza kufundishwa.

Eeprom

Niliacha nambari ya "maandishi kuonyesha" ambayo nilikuwa nikitumia kuweka maandishi kwenye eeprom ya STM8S103 kama maoni. Sikuwa na hakika kuwa nilikuwa na kumbukumbu ya kutosha ya nambari yangu yote kwa hivyo nilijaribu kuweka iwezekanavyo katika eeprom kuwa na taa yote kwa programu. Mwishowe hiyo haikuonekana kuwa ya lazima na nikahamisha maandishi kuangaza. Lakini niliiacha kama maandishi ya maoni kwenye faili kuu.c. Ni vizuri kuwa nayo, wakati ninahitaji kufanya kitu kama hicho baadaye (katika mradi mwingine)

Eeprom bado inatumika, lakini tu kwa kuhifadhi wakati wa kuamka.

Mara moja kwa sekunde

Baada ya kuweka vifaa vya pembeni kificho huangalia ikiwa sekunde moja imepita (imefanywa na kipima muda).

Menyu

Ikiwa ndio kesi huangalia ikiwa kitufe kilibonyezwa, ikiwa inaingia kwenye menyu ambapo unaweza kuweka wakati wa sasa, siku ya wiki na wakati wa kuamka. Kumbuka kwamba inachukua kama dakika 5 kutoka mbali hadi mwangaza kamili, kwa hivyo weka wakati wa kuamka mapema zaidi.

Wakati wa kuamka huhifadhiwa katika eeprom ili hata baada ya kukatika kwa umeme "ijue" wakati wa kukuamsha. Wakati wa sasa umehifadhiwa katika saa halisi wakati.

Kulinganisha wakati wa sasa na wa kuamka

Wakati hakuna kitufe kilichobanwa huangalia wakati wa sasa na kuilinganisha na wakati wa kuamka na siku ya wiki. Sitaki kuniamsha mwishoni mwa wiki:-)

Wakati mwingi hakuna kitu kinachohitajika kufanywa kwa hivyo huweka "viongozo" vya kutofautisha kwa OFF nyingine kuwasha. Tofauti hii inakaguliwa pamoja na ishara ya "mabadiliko_uwezo", ambayo pia inatoka kwa kipima muda na inatumika mara 244 kwa sekunde. Kwa hivyo wakati kutofautisha kwa "leds" ni ON kiwango kimeongezeka mara 244 kwa sekunde na ikiwa imezimwa inapungua mara 244 kwa sekunde. Lakini ongezeko linaenda kwa hatua moja ambapo kupungua ni katika hatua za 16 ikimaanisha kuwa wakati taa ya kuamka ina matumaini imefanya kazi yake, inazima mara 16 kwa kasi lakini bado vizuri.

Laini na KUTOKA KWA KUMBUKUMBU

Laini hutoka kwa hesabu ya Sigmoid curve. Hesabu ni rahisi lakini inahitaji kufanywa katika anuwai ya kuelea (maradufu) kwa sababu ya kazi ya exp (), angalia faili sigmoid.c.

Katika hali ya kawaida mkusanyaji / kiunganishi cha cosmic hana msaada wa vigeu vya alama vinavyoelea. Kuiwasha ni rahisi (mara tu umeipata) lakini inakuja na ongezeko la saizi ya msimbo. Ongezeko hili lilikuwa kubwa sana kufanya nambari ifae katika kumbukumbu ya flash ikijumuishwa na kazi ya sprintf (). Na kazi hiyo inahitajika kwa kubadilisha nambari kuwa maandishi ya onyesho.

Itoa ()

Ili kurekebisha shida hii niliunda kazi ya itoa (). Hii ni kazi ya Integer To Ascii ambayo ni ya kawaida, lakini haijajumuishwa na maktaba ya kawaida ya STMicroelectronics, wala na maktaba za cosmic.

Hatua ya 7: IKEA (tungefanya nini bila wao)

IKEA (tungefanya nini bila wao)
IKEA (tungefanya nini bila wao)
IKEA (tungefanya nini bila wao)
IKEA (tungefanya nini bila wao)
IKEA (tungefanya nini bila wao)
IKEA (tungefanya nini bila wao)

Picha kutoka ilinunuliwa kutoka IKEA. Ni fremu ya Ribba ya 50 x 40cm. Sura hii ni nene kabisa na hiyo inafanya kuwa nzuri kwa kuficha umeme nyuma yake. Badala ya bango au picha niliweka kwenye kipande cha ubao ngumu uliobomolewa. Unaweza kuinunua kwenye duka la vifaa ambapo wakati mwingine huitwa "bodi ya kitanda" Ina mashimo madogo ndani yake ambayo ilifanya iwe bora kwa kuweka vichwa. Kwa bahati mbaya mashimo kwenye ubao wangu yalikuwa makubwa kidogo kuliko 5 mm kwa hivyo ilibidi nitumie gundi-moto ili "kupandisha" viunzi.

Nilitengeneza shimo la mstatili katikati ya bodi ngumu kwa onyesho la 16x2 na kuibofya. PCB na vifaa vyote vya elektroniki hutegemea onyesho hili, haijapachikwa kwa kitu kingine chochote.

Bodi ngumu iliyotobolewa ilipakwa rangi nyeusi na lakini nyuma ya mkeka. Nilichimba mashimo mawili kwenye fremu kwa vifungo kuweka muda na tarehe, kwani fremu ni nene ilibidi niongeze mashimo ndani ya fremu ili vifungo vifungilie vya kutosha.

Ilipendekeza: