<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl-pl">
<link rel="self" type="application/atom+xml" href="https://forum.atnel.pl/feed.php?f=22&amp;t=13938&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2015-12-20T17:03:15+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=22&amp;t=13938&amp;mode</id>
<entry>
<author><name><![CDATA[rskup]]></name></author>
<updated>2015-12-20T17:03:15+01:00</updated>
<published>2015-12-20T17:03:15+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13938&amp;p=148554#p148554</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13938&amp;p=148554#p148554"/>
<title type="html"><![CDATA[Re: Pseudo solarna lampka led - termometr RGB]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13938&amp;p=148554#p148554"><![CDATA[
Fajny pomysł na zrobienie termometru. Chyba trzeba będzie się tym zainspirować i coś takiego też zrobić <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br />A tak na przyszłość, bo miejmy nadzieję, że nie spoczniesz na laurach i będziesz prezentował kolejne ciekawe rozwiązania, to jak filmujesz mocne źródła światła, to dobrze jest je czymś rozpraszającym przysłonić, lub położyć białą kartkę i pokazywać światło od niej odbite. Bo teraz kolor to głownie widać tylko na blacie <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /><br /><br />-- <br />Pozdrawiam,<br />Robert<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3427">rskup</a> — 20 gru 2015, o 17:03</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2015-12-20T11:01:41+01:00</updated>
<published>2015-12-20T11:01:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13938&amp;p=148514#p148514</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13938&amp;p=148514#p148514"/>
<title type="html"><![CDATA[Re: Pseudo solarna lampka led - termometr RGB]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13938&amp;p=148514#p148514"><![CDATA[
Co do czasu świecenia to fakt u mnie taka lampka świeciła w lato od ok 23 do 3 w nocy. Teraz też pewnie była by to godzina.<br /><br />Namazane ze smarta.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 20 gru 2015, o 11:01</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Radziu]]></name></author>
<updated>2015-12-20T10:59:05+01:00</updated>
<published>2015-12-20T10:59:05+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13938&amp;p=148513#p148513</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13938&amp;p=148513#p148513"/>
<title type="html"><![CDATA[Re: Pseudo solarna lampka led - termometr RGB]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13938&amp;p=148513#p148513"><![CDATA[
Baterię faktycznie można było wykorzystać jako czujnik, nie pomyślałem o tym. Natomiast w moim przypadku musiała być zasilana przewodowo, bo balkon mam od północnego zachodu, więc słońce rzadko oświetla lampkę. Oryginał świecił tylko około godziny, a RGB jednak bierze sporo więcej prądu, a chciałem żeby świeciło do samego rana. Rano rzut okiem i wiem mniej więcej ile stopni <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3450">Radziu</a> — 20 gru 2015, o 10:59</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2015-12-20T10:47:12+01:00</updated>
<published>2015-12-20T10:47:12+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13938&amp;p=148512#p148512</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13938&amp;p=148512#p148512"/>
<title type="html"><![CDATA[Re: Pseudo solarna lampka led - termometr RGB]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13938&amp;p=148512#p148512"><![CDATA[
No fajnie ci to wyszło <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br />co do czujnika światła mogłeś wykorzystać ten z solarki bo on w max słońcu daje ok 3V pomiar za pomocą ADC i by nie było dodatkowego elementu a ten z obudowy <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> no ale i tak wypasik kiedyś też o czymś takim myślałem bo mam 10 uszkodzonych lampek i zostały same obudowy ... w lampce solarnej jest też układ ładowania kondka ( baterii) zależnie od wykonania <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> więc lampki mogły by być bezprzewodowe <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br />Nie mniej bardzo mi się podoba taki efekcik w lampce solarnej <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br />Gratuluję pomysłu oraz wykonania <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 20 gru 2015, o 10:47</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Radziu]]></name></author>
<updated>2015-12-20T10:40:34+01:00</updated>
<published>2015-12-20T10:40:34+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13938&amp;p=148511#p148511</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13938&amp;p=148511#p148511"/>
<title type="html"><![CDATA[Pseudo solarna lampka led - termometr RGB]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13938&amp;p=148511#p148511"><![CDATA[
Witam<br /><br />Poniżej przedstawiam taki mały mini gadżet jaki zrobiłem jakiś czas temu. Jest to pseudo solarna lampka ogrodowa, pseudo, bo tak naprawdę jest zasilana przewodowo, ale włącza się tak jak solarne po zapadnięciu ciemności. Lampka jest jednocześnie termometrem RGB, czyli kolor światła jest uzależniony od temperatury. Kolory zmieniają się płynnie (PWM), do tego zastosowałem korekcję gamma z Mirkowych poradników.<br /><br />Poniżej schemat i projekt płytki:<br /><br /><a href="https://obrazkiforum.atnel.pl/3450/b739118fac5a3e20041d6329dbce6683.png"  class="postlink"><img src="https://obrazkiforum.atnel.pl/thumb/3450/b739118fac5a3e20041d6329dbce6683.png" alt="Obrazek" /></a> <a href="https://obrazkiforum.atnel.pl/3450/9c568231f9f574b4210977707fe81bb3.png"  class="postlink"><img src="https://obrazkiforum.atnel.pl/thumb/3450/9c568231f9f574b4210977707fe81bb3.png" alt="Obrazek" /></a><br /><br />Program w C:<br /><br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &quot;1Wire/ds18x20.h&quot;<br /><br />void temperatura();<br /><br />uint16_t czujnik_sw(uint8_t kanal);<br /><br />volatile uint8_t LED_GREEN_PWM, LED_RED_PWM, LED_BLUE_PWM;<br />int pwm;<br />int milivolt;<br />int celsiusz;<br />int swiatlo;<br />int wlaczone;<br />const int prog1 = 350; // fiolet<br />const int prog2 = 450; // niebieski<br />const int prog3 = 550; // seledynowy<br />const int prog4 = 650; // zielony<br />const int prog5 = 750; // żółty<br />const int prog6 = 850; // czerwony<br /><br />const uint8_t gamma_correction&#91;&#93; = {<br />  0,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  1,  2,  2,  3,  3,<br />  4,  4,  5,  5,  6,  7,  7,  8,  9, 10, 11, 12, 13, 14, 15, 17, 18, 19,<br /> 21, 22, 24, 25, 27, 29, 30, 32, 34, 36, 38, 40, 42, 45, 47, 49, 52, 54,<br /> 57, 59, 62, 65, 68, 71, 74, 77, 80, 83, 86, 90, 93, 97,100,104,108,112,<br />116,120,124,128,132,137,141,145,150,155,160,164,169,174,180,185,190,195,<br />201,207,212,218,224,230,236,242,248,255<br />};<br /><br />int main(void)<br />{<br />DDRB |= (1&lt;&lt;PB1);<br />DDRB |= (1&lt;&lt;PB0);<br />DDRB |= (1&lt;&lt;PB2);<br /><br />ADMUX |= (1&lt;&lt;REFS1);<br />ADCSRA |= (1&lt;&lt;ADEN) | (1&lt;&lt;ADPS2) | (1&lt;&lt;ADPS1);<br /><br />TCCR0A |= (1&lt;&lt;WGM01);<br />TCCR0B |= (1&lt;&lt;CS00);<br />OCR0A = 199;// dodatkowy podział częsttotliwości przez 200<br />TIMSK |= (1&lt;&lt;OCIE0A);<br /><br />sei();// odblokowanie globalne przerwań<br /><br />temperatura();      // pomiar temperatury<br /><br />LED_BLUE_PWM = 255;    // test diody<br />LED_GREEN_PWM = 255;<br />LED_RED_PWM = 255;<br /><br />_delay_ms(1000);<br /><br />LED_BLUE_PWM = 0;<br />LED_GREEN_PWM = 0;<br />LED_RED_PWM = 0;<br /><br />_delay_ms(1000);<br /><br />while(1)<br />{<br /><br />swiatlo = czujnik_sw(3);               // pomiar światła<br /><br />if (swiatlo &gt; 50) {<br />wlaczone = 0;<br />}<br /><br />if (swiatlo &lt; 10) {<br />wlaczone = 1;<br />}<br /><br />if (wlaczone) {                        // jeżeli ciemno zapal diodę<br /><br /><br />temperatura();<br />milivolt = celsiusz + 500;<br /><br />if (milivolt &lt; prog1) {                // temperatura &lt; -15 fiolet<br />LED_BLUE_PWM = 255;<br />LED_GREEN_PWM = 0;<br />LED_RED_PWM = 255;<br />}<br /><br />if (milivolt &gt;= prog1 &amp;&amp; milivolt &lt; prog2) {  // &gt;= -15 &lt; -5 przechodzi w niebieski<br />LED_BLUE_PWM = 255;<br />LED_GREEN_PWM = 0;<br />pwm = 99 - (milivolt - prog1);<br />LED_RED_PWM = gamma_correction&#91;pwm&#93;;<br />}<br />if (milivolt &gt;= prog2 &amp;&amp; milivolt &lt; prog3){    // &gt;= -5 &lt; 5 przechodzi w seledyn<br />LED_BLUE_PWM = 255;<br />pwm = (milivolt - prog2);<br />LED_GREEN_PWM = gamma_correction&#91;pwm&#93;;<br />LED_RED_PWM = 0;<br />}<br />if (milivolt &gt;= prog3 &amp;&amp; milivolt &lt; prog4){     // &gt;=5 &lt;15 przechodzi w zielony<br />pwm = 99 - (milivolt - prog3);<br />LED_BLUE_PWM = gamma_correction&#91;pwm&#93;;<br />LED_GREEN_PWM = 255;<br />LED_RED_PWM = 0;<br />}<br />if (milivolt &gt;= prog4 &amp;&amp; milivolt &lt; prog5){   // &gt;15 &lt;25 przechodzi w zółty<br />LED_BLUE_PWM = 0;<br />LED_GREEN_PWM = 255;<br />pwm = (milivolt - prog4);<br />LED_RED_PWM = gamma_correction&#91;pwm&#93;;<br />}<br />if (milivolt &gt;= prog5 &amp;&amp; milivolt &lt; prog6){   // &gt;= 25 &lt;35 przechodzi w czerwony<br />LED_BLUE_PWM = 0;<br />pwm = 99 - (milivolt - prog5);<br />LED_GREEN_PWM = gamma_correction&#91;pwm&#93;;<br />LED_RED_PWM = 255;<br />}<br />if (milivolt &gt;= prog6){                          // &gt;35 czerwony<br />LED_BLUE_PWM = 0;<br />LED_GREEN_PWM = 0;<br />LED_RED_PWM = 255;<br />}<br />}<br />else {<br />LED_BLUE_PWM = 0;                                // jeżeli widno, zgaś diodę<br />LED_GREEN_PWM = 0;<br />LED_RED_PWM = 0;<br />}<br />_delay_ms(5000);<br />}<br />}<br /><br /><br />ISR( TIM0_COMPA_vect )<br />{<br />static uint8_t cnt; // definicja naszego licznika PWM<br /><br />// bezpośrednie sterowanie wyjściami kanałów PWM<br />if(cnt&gt;=LED_GREEN_PWM) PORTB |= (1&lt;&lt;PB1); else PORTB &amp;= ~(1&lt;&lt;PB1);<br />if(cnt&gt;=LED_RED_PWM) PORTB |= (1&lt;&lt;PB2); else PORTB &amp;= ~(1&lt;&lt;PB2);<br />if(cnt&gt;=LED_BLUE_PWM) PORTB |= (1&lt;&lt;PB0); else PORTB &amp;= ~(1&lt;&lt;PB0);<br /><br /><br />cnt++;// zwiększanie licznika o 1<br />}<br /><br />uint16_t czujnik_sw(uint8_t kanal) {        //procedura pomiaru światła<br />ADMUX = (ADMUX &amp; 0xF8) | kanal;<br />ADCSRA |= (1&lt;&lt;ADSC);<br />while (ADCSRA &amp; (1&lt;&lt;ADSC));<br />return ADCW;<br />}<br /><br />void temperatura() {                        // procedura pomiaru temperatury<br />  char data&#91;12&#93;;<br />  ow_reset();<br />  ow_byte_wr(0xCC);<br />  ow_byte_wr(0x44);<br />  ow_reset();<br />  ow_byte_wr(0xCC);<br />  ow_byte_wr(0xBE);<br />  for ( int i = 0; i &lt; 9; i++) {<br />    data&#91;i&#93; = ow_byte_rd();<br />  }<br />  int raw = (data&#91;1&#93; &lt;&lt; 8) | data&#91;0&#93;;<br />  celsiusz = (float)raw / 16.0 * 10;<br />}[/syntax]<br /><br />I filmik przedstawiający działanie:<br /><br /><div style="width: 583px; height: 471px; margin: 0 auto; padding-left: 26px; padding-top: 48px; background: url('https://www.atnel.pl/download/atnel_tv.png') no-repeat;"> <strong>iframe</strong> </div><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3450">Radziu</a> — 20 gru 2015, o 10:40</p><hr />
]]></content>
</entry>
</feed>