ãããã£ãŠãç§ã®å®è£ ã«èå³ãããå Žåã¯ãhabrakatïŒããã«ã¢ããããŒãããæºåãã§ããŠããã¹ã±ããïŒãžããããã
ãšã³ããªãŒã
å€ãèŠè¶ããŠãç§ã¯ãšã¢ã³ã³ãè³Œå ¥ããå¿ èŠããããšèããŸãããã家ãšã¢ããŒãã®ã¬ã€ã¢ãŠãã¯åå²ã·ã¹ãã ã®äœ¿çšãèš±å¯ããªãã®ã§ãç§ã¯åºã®ãšã¢ã³ã³ãåãå¿ èŠããããŸããã ã¯ããç§ã¯ãã¥ãŒãã®åºåã§hemoæ žãšãªããã®ãç解ããã®ã§ãã¯ããã«ããšã¢ã³ã³ãšçªã®æã®èª¿æŽã«ã€ããŠç°¡åã«è©±ããŸãã ãã¹ãŠãéåžžã«ç°¡åã§ãã2ã€ã®ãã¥ãŒããããã1ã€ã¯ç©ºæ°ãåŒã蟌ã¿ã2ã€ç®ã¯ãããåãåºããŸãïŒãããïŒã å·æ°ã¯ãšã¢ã³ã³ã®äžå€®éšããæåºãããŸãã
ãã¥ãŒããåãåºãããã«å¿ èŠãªã®ã¯ïŒ
â¢ãã¬ãã·ã°ã©ã¹ã¯ãçªã®1ãµãã·ïŒäºéçªïŒãšãã¥ãŒãçšã®ç©Žã®ãµã€ãºã§ãã
â¢ãã¬ãã·ã¬ã©ã¹ãåãä»ããããã®4ã€ã®ããŠã³ã
â¢éæ°å£çšãã¥ãŒãïŒãã©ã€ã«ãåããŸãïŒ2åã
â¢ãšã¢ã³ã³
äžçªäžã®è¡ã¯ããã¬ãã·ã¬ã©ã¹ã«ãã¥ãŒãçšã®2ã€ã®ç©Žãããã空æ°ãåžã蟌ãã§é€å»ããããšã§ãã ããã¯ã空æ°ãèããªããªãããã«ããããã«è¡ãããŸããïŒããŸããŸãªãã©ãŒã©ã ã§ããã«ã€ããŠèªã¿ãŸããããæ°ã¥ããŸããã§ããããæªåããããšã¯ãªããšæããŸãïŒã 空æ°æµã亀差ããªãããã«ãPlexiglasã®æž©é¢šã®å¹ãåºãå£ãå·Šäžã«å°ããªè§åºŠã§ãåžæ°ç®¡ãäžå³ã«å°ããªè§åºŠã§åºå®ããŸããã ç§ã¯çªã®å€ã«ãã¬ãã·ã¬ã©ã¹ã®ããŠã³ããäœããçªã®æ¬¡ã®ã»ã¯ã·ã§ã³ã«èšçœ®ãããèåž³ãèŠãŠã¢ã€ãã¢ãæµ®ãã³ãŸããïŒäžã®éã«äœãã§ãããšèã«æ©ãŸãããããã«ãããã¯ããã©ã®éè±äžã«ããªãŒã«ãªããŸããããã¢ããŒãã«ã¯æ¯çŸœç«ã¡ã¯ãããŸããã§ããïŒã
äžã®åçã§ã¯ããããã©ã®ããã«åãä»ããããŠãããããã¥ãŒããã©ãã«ããããªã©ãã¯ã£ããããŠããããã§ãã 質åãããå Žåã¯ãã³ã¡ã³ãã§è³ªåããŠãã ããã ãããŠãä»ãç§ãã¡ã¯çªã®è¿ãã«ãããšã¢ã³ã³ãæã£ãŠããŸãããšã¢ã³ã³ãããã¥ãŒãããã¬ãã·ã¬ã©ã¹ã«æ¿å ¥ãããéãã«åºãããŸãïŒå¯äžã®äžäŸ¿ã¯çªãåžžã«éããŠãããããã¬ãã·ã¬ã©ã¹ã«ãã£ãŠãããã¯ãããŠããŸããããã¯å¯©çŸçã«æ¥œãããã®ã§ã¯ãããŸããããèåå£ãéããããã«ãç©Žã¯çŽåŸçŽ20cmã§ãè·¯äžã«2åã®æ¬²æã¯ãããŸããïŒã ããã§ã¯ãã·ã¹ãã ã®ããžãã¯ã«ç§»ããŸãããã
è«çéš
ç§ã®å ŽåãElectrolux EACM-14EZ / N3ãšã¢ã³ã³ã䜿çšãããŠããŸããããã«ã¯ããã€ãã®ã¢ãŒããšIRãªã¢ãŒãããããŸãã æåã®äž»èŠãªãã®ã¯ããã¡ãããå·åŽïŒhelloãCapïŒã§ãã 2çªç®ã®ããããããã»ã©æçšã§ã¯ãªãã®ã¯ã空æ°ã®é€æ¹¿ã§ãïŒå 湿ãã€ãŸãé€æ¹¿ã§ã¯ãããŸããïŒã 2ã€ç®ã¯ãç¹ã«æããšãã«éåžžã«äŸ¿å©ã§ãããªããªããç±ã¯ä¹Ÿç¥ãã空æ°ïŒä»ã®å Žåã¯å¯ããªã©ïŒã§éã¶ã®ãç°¡åã ããã§ããæè¿ã§ã¯ã¢ããŒãã®æ¹¿åºŠã¯75-80ïŒ ã§ããïŒå°ãªããšãè·å Žã§ç§ã«æ瀺ããã湿床èšã¯ããèšã£ãŠããŸããïŒ ïŒ ç©ºæ°ãå 湿ããããã«ãç§ã¯æ°Žã沞ç¹ãŸã§åçŽã«å ç±ããå®äŸ¡ãªå 湿åšã䜿çšããŸããããã¯ãŸã å®äºããŠããŸããã®ã§ããŸã æ¥ç¶ã®èª¬æã¯ãããŸããããç§ã¯ééããªããããå ¬éããŸããå®éã«ã¯ãIRãªã©ã®ã€ã³ã¿ãŒãã§ãŒã¹ããããŸãããããã§ããªãã¯ãããå解ãããªã¬ãŒã§ã³ã³ãããŒã©ãŒãã¯ãã ä»ãããå¿ èŠããããŸãããã¡ã€ã³ãããã¯ã«æ»ããŸãããã ç§ãšåŠ»ã«ãšã£ãŠãéšå±ã®æž©åºŠã¯22ã24床ãçæ³çã§ããïŒæ¥µç«¯ãªå Žåã¯25床ã§ããã湿床ã¯ããªãäœãã§ãïŒã
ãããã£ãŠã次ã®ããžãã¯ã匷調ããŸãã
â¢t> 25床ã®å Žåãå·åŽã·ã¹ãã ããªã³ã«ããŸã
â¢t <22床ã§å·åŽã·ã¹ãã ããªãã«ãã
â¢h> 60ïŒ ã§é€æ¹¿ã¢ãŒãããªã³ã«ããŸã
â¢h <40ïŒ ã§æåºã¢ãŒãããªãã«ãã
â¢22 <t <25ããã³40 <h <60ã®å Žå-èªåã¢ãŒãããªã³ã«ããŸãïŒã³ã³ãããã¢ã ã§ã¯ææ°Žãšå·åŽã亀äºã«ãªã³ã«ããããã³ã³ãããŒã©ãŒãä»ããŠã·ãããå¶åŸ¡ããŸããåã¿ã€ãã«ã€ããŠ5åãšããŸãããïŒ
åèšã§4ã€ã®IRããŒã ããããŸãã
â¢å·åŽãæ倧ã«ããããã«ã³ã³ãããã¢ã ããªã³ã«ããŸãïŒãã¡ã³ã¯æ倧ã§ã枩床ã¯ã¢ãã«ã«å¿ããŠ16ãŸãã¯18床ïŒ
â¢æ倧ã®ææ°Žã®ããã«ã³ã³ãããã¢ã ããªã³ã«ããŸãïŒæ倧ã®å Žåã¯ãã¡ã³ïŒ
â¢èªåã¢ãŒãã§ã³ã³ãããã¢ã ããªã³ã«ãã
â¢ã³ã³ãããã¢ã ããªãã«ãã
ããã§æãããªããã§ãã å人çã«ãç§ã¯èªåã®ããã«4ããŒã ã®ãªãã·ã§ã³ãéžæããŸãããã«ãŒã«ãè¶ ããå Žåãèªåã¢ãŒãããªã³ã«ãªã£ãŠããŸãïŒãã¡ãããç¬èªã®ä»£æ¿ã¹ã€ããã³ã°ã·ã¹ãã ãæžãããšãã§ããŸãããä»ã®ãšããããã§ååã§ãïŒã
å®è£ éå§
ã€ãŒãµãããã·ãŒã«ãã¢ã»ã³ããªã䜿çšããArduinoã
ãšã¢ã³ã³ã®ãªã¢ã³ã³ã®ã³ãã³ããæžãçããŸãã ãã®ããã«ãç§ã¯arduinoçšã®æ¢è£œã®ã©ã€ãã©ãªãããã«æ¥ç¶ãããPSTNãããã³kondeyaèªäœããã®ãªã¢ãŒãã³ã³ãããŒã«ã䜿çšããŸããã ã©ã€ãã©ãªãgithubããããŠã³ããŒãããŸãïŒã¡ãªã¿ã«ãææ°ã®ããŒãžã§ã³ã§ã¯é·ãããã±ãŒãžã§åé¡ã解決ããŸãããã50ã«å¶éãããŠãããããäžéšã®ããŒã ã¯åãŸããŸããã§ãããã2ç§ã§ä¿®æ£ãããŸããããå€ãã®æãã®ã¬ãã¥ãŒã«é »ç¹ã«äŒããŸããïŒã ãã®ã©ã€ãã©ãªã®å©ç¹ã¯ããã¢ã®PSTNãžã®çä¿¡ä¿¡å·ã®ããªã䟿å©ãªãã¬ãŒããããåºåãã·ãªã¢ã«ã§ããããšã§ãã
TSOPèªäœãããããã®åã«IR LEDããããŸã
TSOP22ã®ãã³é åïŒä»ã®ã»ãšãã©ã®å Žåãç§ãç¥ãéãããã¹ãŠåãã§ãïŒïŒ
ã¿ã€ãïŒNECãRC5ãªã©ïŒããšã®çããŒã¿ïŒã€ãŸããåŠçãããŠããªãïŒãšéä¿¡æºåå®äºã®è§£ææžã¿ãã±ããã®äž¡æ¹ãå®çŸ©ãããŠããå Žåã¯åºåãããçã圢åŒã§ã©ã€ãã©ãªããçŽæ¥éä¿¡ã§ããŸãã ç§ã®ãšã¢ã³ã³ã«ã¯äžè¬çã«åãå ¥ããããŠããæšæºã®ããã±ãŒãžããããŸããïŒã¡ãªã¿ã«ããã¬ãã®ããã§ãããNECãããââã³ã«ã䜿çšãããªã³ã©ã€ã³ã®ãã¬ãã£ãã¯ã¹ã¯æ©èœããŸãïŒãããããçããŒã¿ã䜿çšããŸãã ãŸããäžã®å³ã«ç€ºãããã«PSTNã»ã³ãµãŒãæ¥ç¶ãïŒLEDã«æ³šæããªãã§ãã ããïŒãarduinoã®ãã¢ã©ã€ãã©ãªïŒIRrecvDumpïŒããããŒãµãŒãã¡ãŒã ãŠã§ã¢ãå ¥åããŸãã
TSOPæ¥ç¶å³
åããŠãã°ã«ééãããšãïŒããã±ãŒãžã¯ç¬åã§è¡ããŸããã 圌ã¯éšå±ã§ãããè¡ãã圌ãäœããããããããªããšç€ºåããã 圌ã¯ã©ããããããæã£ãŠãã«ã³ããŒã«åºãããŸãã-èæ¯ã¯ç¶ããŸããã æ£çŽãªãšãããç§ã¯åé¡ãäœã§ããããç解ããŠããŸããã§ããããæå¯ãã®é»åšåºã«è¡ãã2ã€ã®æ°ããtsopsãè³Œå ¥ããŸããïŒæåã®ãã®ãŒã¯äžåœããéãããŸããïŒããã®ãããªã°ãªããããªãããªã¢ã³ã³ã®ãã¿ã³ãæŒããããšãã«ã®ã¿ããã±ãŒãžã衚瀺ãããŸããã ä¿¡å·ãèšé²ããã«ã¯ãarduinoãã³ã³ãã¥ãŒã¿ãŒã«æ¥ç¶ããäžã®å³ã®ãã¹ãŠãæ¥ç¶ããåŸãããŒãã¢ãã¿ãŒãéããŠç®çã®comããŒãã瀺ããŸãã ãªã¢ã³ã³ãäžããŠãç®çã®ã³ãã³ãã§ãã¿ã³ãæŒããŸãã ã¢ãã¿ãŒã«å¿ èŠãªãã¹ãŠã®æ å ±ã衚瀺ãããŸãã ã«ã¹ã¿ã ãã¡ãŒã ãŠã§ã¢ã䜿çšããŠãã³ããŒãšè²Œãä»ãã䜿çšããŠã¹ã±ããã«è²Œãä»ããã®ã«äŸ¿å©ãªã³ãŒããããã«çæããŸããã ããŒãã«ãã©ãŒãããããããã®ã¹ã±ãããä¿åããã®ãå¿ããŸããã ã©ã€ãã©ãªã®ãã¢ã¯ååã§ãããããã»ã©å€§ããªéãã¯ãããŸããã
ãã®çµæãéä¿¡çšã®ããã±ãŒãžãåãåããŸãããããšãã°ããšã¢ã³ã³ãæ倧ã«ãªã³ã«ããŸãã
Raw periods: +2650 -2650 +750 -2000 +750 -700 +700 -700 +700 -700 +750 -700 +700 -700 +750 -650 +750 -700 +750 -700 +700 -700 +700 -700 +750 -700 +700 -700 +750 -650 +750 -700 +700 -700 +750 -700 +700 -700 +750 -700 +700 -700 +750 -650 +800 -700 +700 -750 +700 -650 +750 -700 +700 -700 +750 -650 +800 -650 +750 -700 +700 -2000 +750 -1950 +750 -2000 +750 : unsigned int TurnColdOn[68] = {2650,2650,750,2000,750,700,700,700,700,700,750,700,700,700,750,650,750,700,750,700,700,700,700,700,750,700,700,700,750,650,750,700,700,700,750,700,700,700,750,700,700,700,750,650,800,700,700,750,700,650,750,700,700,700,750,650,800,650,750,700,700,2000,750,1950,750,2000,750}; irsend.sendRaw(TurnColdOn,68,38);
Rawæéã«ã€ããŠã¯ãã+ããæå®ããããã€ã¯ãç§æ°ãæžã蟌ã¿ãã-ããæå®ããããã€ã¯ãç§æ°ãæžã蟌ã¿ãŸããã ããšãã°ãtinekãªã©ã®AVRã³ã³ãããŒã©ãŒã䜿çšãããŠãŒã¶ãŒã«ã¯ããã€ã¯ãç§ã®é 延æ©èœããããŸãã ãã®ããã«äœ¿çšããŸãïŒ
#include <util/delay.h> _delay_us( );
ãããã£ãŠãå¿ èŠãªãã¹ãŠã®ã³ãã³ããåéããŸãã 次ã«ãDHT22ãArduinoã®IR LEDã«æ¥ç¶ããã¡ã€ã³ããžãã¯ãå«ãã¹ã±ãããäœæããŸãã ãã®ããŒãžã§ã³ã§ã¯ãæ®å¿µãªãããå®å šã«æç·ã®ããŒã¿äŒéã·ã¹ãã ã䜿çšããNF24L01ã»ã³ãµãŒã泚æããŸããããç§ã®ãæ°ã«å ¥ãã®äžåœããã©ãã ãã®ã»ã³ãµãŒãæ¥ãã®ãã¯ããããŸããã詳现ã«ã€ããŠã¯ãTODOã»ã¯ã·ã§ã³ã®èšäºã®æåŸã®éšåã§æçµçã«äºå®ãããŠãããã®ã®ãªã¹ããåç §ããŠãã ãã ãŸãããããžã§ã¯ããå®è£ ããããã«ã€ãŒãµãããã·ãŒã«ãã䜿çšãããŸããïŒ9ã15ãã«ã®é åã«ããäžçåœã®é¡äŒŒåïŒç§ã¯9ã§åããŸããïŒïŒã
åçã§ã¯ã枩床ã»ã³ãµãŒã®ãããã°
ã³ã¬ã¯ã·ã§ã³ã®çµæã次ã®ã¹ããŒã ãåŸãããŸãã
Vcc端åãšããŒã¿ç«¯åã®éã«ãã枩床ã»ã³ãµãŒã«10 kOhmã®å€ã®ãã«ã¢ãããã«ã¢ããæµæãé 眮ããããå§ãã人ãããŸããããããªãã§ãæ©èœããŸããæ£çŽèšã£ãŠãæ£çŽèšã£ãŠããããŸãããã枬å®å€ã¯ååã§ã¯ãããŸããã
ã¡ã€ã³ã®å®è£ ïŒã³ãŒãïŒ
ã·ã¹ãã å šäœã¯ãã¹ãäžã«çµã¿ç«ãŠãããŸãã
DHT22ã¯2ã€ã®ã¢ããã°ãã³ã«æ¥ç¶ãããIR LEDã¯3ïŒpwmã®ãããã³ïŒã«æ¥ç¶ãããŠããŸãã
ã³ãŒã
#include <dht.h> #include <SPI.h> #include <Ethernet.h> #include <IRremote.h> #define DHT22_PIN 2 dht DHT; byte mac[] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; byte gateway[] = {192, 168, 1, 1 }; byte subnet[] = {255, 255, 255, 0 }; IPAddress ip(192, 168, 1, 220); float MAX_TEMP = 25.0; float MIN_TEMP = 22.0; int MAX_HUMID = 60; int MIN_HUMID = 40; int last_condey_status = 0; unsigned int TurnCondeyOff[68] = {2700,2600,750,700,700,700,700,700,750,700,750,700,750,650,750,700,700,700,750,700,750,650,750,700,700,700,750,700,700,700,700,700,750,700,700,700,750,650,750,700,750,700,700,700,750,650,750,700,700,700,750,650,750,700,750,700,750,700,700,2000,750,2000,750,1950,750,2000,750}; unsigned int TurnCondeyMaxOn[68] = {2650,2650,750,2000,750,700,700,700,700,700,750,700,700,700,750,650,750,700,750,700,700,700,700,700,750,700,700,700,750,650,750,700,700,700,750,700,700,700,750,700,700,700,750,650,800,700,700,750,700,650,750,700,700,700,750,650,800,650,750,700,700,2000,750,1950,750,2000,750}; unsigned int TurnCondeyWaterOn[68] = {2650,2650,750,2000,750,700,700,700,700,700,750,700,700,700,750,650,750,700,750,700,700,700,700,700,750,700,700,700,750,650,750,700,700,700,750,700,700,700,750,700,700,700,750,650,800,700,700,750,700,650,750,700,700,700,750,650,800,650,750,700,700,2000,750,1950,750,2000,750}; unsigned int TurnCondeyAuto[68] = {2650,2650,750,2000,750,700,700,700,700,700,750,700,700,700,750,650,750,700,750,700,700,700,700,700,750,700,700,700,750,650,750,700,700,700,750,700,700,700,750,700,700,700,750,650,800,700,700,750,700,650,750,700,700,700,750,650,800,650,750,700,700,2000,750,1950,750,2000,750}; IRsend irsend; int dht_status = 0; char serverName[] = "myserver.ru"; byte server[] = {192, 168, 1, 5 }; EthernetClient client; void setup() { Serial.begin(9600); Serial.print("LIBRARY VERSION: "); Serial.println(DHT_LIB_VERSION); delay(1000); Serial.println("Try to configure Ethernet using DHCP..."); // start the Ethernet connection: if(Ethernet.begin(mac) == 0) { Serial.println("Failed to configure Ethernet using DHCP. Using manual config."); Ethernet.begin(mac, ip, gateway); } PrintIPtoSerial(); } void loop() { Serial.println("status,\tHumidity (%),\tTemperature (C)"); // READ DATA int chk = DHT.read22(DHT22_PIN); switch (chk) { case DHTLIB_OK: dht_status = 200; Serial.print("OK,\t"); break; case DHTLIB_ERROR_CHECKSUM: dht_status = 501; Serial.print("Checksum error,\t"); break; case DHTLIB_ERROR_TIMEOUT: dht_status = 504; Serial.print("Time out error,\t"); break; default: dht_status = 500; Serial.print("Unknown error,\t"); break; } // DISPLAY DATA Serial.print(DHT.humidity, 1); Serial.print(",\t"); Serial.println(DHT.temperature, 1); SendDataToServer(dht_status, DHT.temperature, DHT.humidity); WorkWithCondey(DHT.temperature, DHT.humidity); Serial.println(); delay(1000); } boolean SendDataToServer(int d_stat, float temp, int humidity) { if (client.connect(server, 80)) { char buf[80]; int temp1 = (temp - (int)temp) * 100; int humidityl = (humidity - (int)humidity) * 100; Serial.println("Sending information to weather server"); // Make a HTTP request: sprintf(buf, "GET /meteo.php?S=%d&T=%0d.%d&H=%0d.%d&CS=%d HTTP/1.1", (int)d_stat, (int)temp, abs(temp1), (int)humidity, abs(humidityl), last_condey_status); client.println(buf); client.println("Host: myserver.ru"); client.println("Connection: close"); client.println(); client.stop(); return true; } else { // if you didn't get a connection to the server: Serial.println("Connection to weather server failed"); client.stop(); return false; } } void WorkWithCondey(float temp, int humidity) { int status = 0; if(temp > MAX_TEMP) { status=1; } if(temp < MIN_TEMP) { status=0; } if(humidity > MAX_HUMID) { status = status+3; } if(humidity < MIN_HUMID) { status = status; } String condey_text_status = ""; if(status != last_condey_status) { last_condey_status = status; if(status == 0) { irsend.sendRaw(TurnCondeyOff,68,38); } if(status == 1) { irsend.sendRaw(TurnCondeyMaxOn,68,38); } if(status == 3) { irsend.sendRaw(TurnCondeyWaterOn,68,38); } if(status == 4) { irsend.sendRaw(TurnCondeyAuto,68,38); } } Serial.print("Condition status: "); Serial.println(status); } void PrintIPtoSerial() { Serial.print("My Local IP address: "); Serial.println(Ethernet.localIP()); }
ãã®ã³ãŒãã¯æž©åºŠã»ã³ãµãŒã調ã¹ããµãŒããŒã«ããŒã¿ãéä¿¡ããŸãïŒåŠçãããŸã§ãšã¢ã³ã³ã®æåŸã®ã¹ããŒã¿ã¹ãéä¿¡ããŸããã䟿å©ã«ãªãå¯èœæ§ããããŸãïŒãWorkWithCondeyé¢æ°ãåŒã³åºãããã»ã³ãµãŒããŒã¿ã確èªããŠã³ã³ãããã¢ã ãšã¢ãŒãããªã³ã«ãããã©ããã決å®ããŸãã ãµãŒããŒåŽã«ã¯ãããŒã¿ä»ãã®getãªã¯ãšã¹ããåãå ¥ããåçŽãªphpã¹ã¯ãªããããããŸãïŒèš±å¯ãªã¹ãããã®ããŒã«ã«ipsããã®ã¿ïŒã 圌ã¯ãã®ããŒã¿ãïŒmongodbã®éã«ïŒããŒã¿ããŒã¹ã«ä¿åããããŒã¿ããã¡ã€ã«ã«æžã蟌ã¿ãŸãããã®ãã¡ã€ã«ã¯ã€ã³ã¿ãŒãããã§å©çšã§ããŸãããã®ããŒã¿ãèªã¿åãããªã³ã¹ã¯ãªãŒã³ãã£ã¹ãã¬ã€ïŒOSDïŒã¢ãŒãã§è¡šç€ºããå°ããªããã°ã©ã ãCïŒã§æžããŸããã èæ¯ã®ãªããã¹ãŠã®ãŠã£ã³ããŠã®äžéšã®ããã¹ãã ãã®ã¹ããŒã å šäœã§æé©åããèšç»ã«ã€ããŠã¯ãTUDUã»ã¯ã·ã§ã³ãåç §ããŠãã ããã ç§ã®ã³ãŒãã䜿çšããå Žåã¯ãmyserver.ruãããŒã¿ã«çœ®ãæããããšãå¿ããªãã§ãã ããã
ã¹ã±ãããèšå ¥ããåŸã®æ å ±ïŒ
Binary sketch size: 22 034 bytes (of a 32 256 byte maximum) - 68% used
ãããŠããããcomããŒãã®åºåã§ã
ã©ã€ãã©ãªããŒãžã§ã³ïŒ0.1.05
DHCPã䜿çšããŠã€ãŒãµããããæ§æããŠã¿ãŠãã ãã...
ç§ã®ããŒã«ã«IPã¢ãã¬ã¹ïŒ192.168.1.107
ã¹ããŒã¿ã¹ã湿床ïŒïŒ ïŒã枩床©
OKã67.5ã26.2
æ°è±¡ãµãŒããŒãžã®æ å ±ã®éä¿¡
ç¶æ ã¹ããŒã¿ã¹ïŒ4
ã¹ããŒã¿ã¹ã湿床ïŒïŒ ïŒã枩床©
OKã67.4ã26.3
æ°è±¡ãµãŒããŒãžã®æ å ±ã®éä¿¡
ç¶æ ã¹ããŒã¿ã¹ïŒ4
ã¹ããŒã¿ã¹ã湿床ïŒïŒ ïŒã枩床©
OKã67.4ã26.3
æ°è±¡ãµãŒããŒãžã®æ å ±ã®éä¿¡
ç¶æ ã¹ããŒã¿ã¹ïŒ4
ã¹ããŒã¿ã¹ã湿床ïŒïŒ ïŒã枩床©
OKã67.4ã26.3
æ°è±¡ãµãŒããŒãžã®æ å ±ã®éä¿¡
ç¶æ ã¹ããŒã¿ã¹ïŒ4
ã¹ããŒã¿ã¹ã湿床ïŒïŒ ïŒã枩床©
OKã67.4ã26.4
æ°è±¡ãµãŒããŒãžã®æ å ±ã®éä¿¡
ç¶æ ã¹ããŒã¿ã¹ïŒ4
ã¹ããŒã¿ã¹ã湿床ïŒïŒ ïŒã枩床©
OKã67.3ã26.3
æ°è±¡ãµãŒããŒãžã®æ å ±ã®éä¿¡
ç¶æ ã¹ããŒã¿ã¹ïŒ4
ã¹ããŒã¿ã¹ã湿床ïŒïŒ ïŒã枩床©
OKã67.3ã26.4
æ°è±¡ãµãŒããŒãžã®æ å ±ã®éä¿¡
ç¶æ ã¹ããŒã¿ã¹ïŒ4
ã¹ããŒã¿ã¹ã湿床ïŒïŒ ïŒã枩床©
OKã67.2ã26.4
æ°è±¡ãµãŒããŒãžã®æ å ±ã®éä¿¡
ç¶æ ã¹ããŒã¿ã¹ïŒ4
DHCPã䜿çšããŠã€ãŒãµããããæ§æããŠã¿ãŠãã ãã...
ç§ã®ããŒã«ã«IPã¢ãã¬ã¹ïŒ192.168.1.107
ã¹ããŒã¿ã¹ã湿床ïŒïŒ ïŒã枩床©
OKã67.5ã26.2
æ°è±¡ãµãŒããŒãžã®æ å ±ã®éä¿¡
ç¶æ ã¹ããŒã¿ã¹ïŒ4
ã¹ããŒã¿ã¹ã湿床ïŒïŒ ïŒã枩床©
OKã67.4ã26.3
æ°è±¡ãµãŒããŒãžã®æ å ±ã®éä¿¡
ç¶æ ã¹ããŒã¿ã¹ïŒ4
ã¹ããŒã¿ã¹ã湿床ïŒïŒ ïŒã枩床©
OKã67.4ã26.3
æ°è±¡ãµãŒããŒãžã®æ å ±ã®éä¿¡
ç¶æ ã¹ããŒã¿ã¹ïŒ4
ã¹ããŒã¿ã¹ã湿床ïŒïŒ ïŒã枩床©
OKã67.4ã26.3
æ°è±¡ãµãŒããŒãžã®æ å ±ã®éä¿¡
ç¶æ ã¹ããŒã¿ã¹ïŒ4
ã¹ããŒã¿ã¹ã湿床ïŒïŒ ïŒã枩床©
OKã67.4ã26.4
æ°è±¡ãµãŒããŒãžã®æ å ±ã®éä¿¡
ç¶æ ã¹ããŒã¿ã¹ïŒ4
ã¹ããŒã¿ã¹ã湿床ïŒïŒ ïŒã枩床©
OKã67.3ã26.3
æ°è±¡ãµãŒããŒãžã®æ å ±ã®éä¿¡
ç¶æ ã¹ããŒã¿ã¹ïŒ4
ã¹ããŒã¿ã¹ã湿床ïŒïŒ ïŒã枩床©
OKã67.3ã26.4
æ°è±¡ãµãŒããŒãžã®æ å ±ã®éä¿¡
ç¶æ ã¹ããŒã¿ã¹ïŒ4
ã¹ããŒã¿ã¹ã湿床ïŒïŒ ïŒã枩床©
OKã67.2ã26.4
æ°è±¡ãµãŒããŒãžã®æ å ±ã®éä¿¡
ç¶æ ã¹ããŒã¿ã¹ïŒ4
ãã°ãããããããã«ããšã¢ã³ã³ã®ã¹ããŒã¿ã¹ã¯ã4ãã§ãã ãœãŒã¹ã³ãŒããèŠããšãã¹ããŒã¿ã¹4ã«ãªããŸã-ãšã¢ã³ã³ã®èªåã¢ãŒãã®ã«ãŒã«ããããŸãã湿床ã¯67.2ïŒ ã枩床ã¯26.4床ã§ãããããç解ã§ããŸãã ã»ã³ãµãŒããšã¢ã³ã³ã®æ°æµã«è¿ã¥ãããšãã¹ããŒã¿ã¹ã0ã«å€ãããŸãã ãšã¢ã³ã³ããªãã«ãªã£ãŠããŸãã
ãŸãšã
空調ãå¶åŸ¡ããæ£äžã®ã·ã¹ãã å šäœ
Arduinoãã€ãŒãµãããã·ãŒã«ããIR LEDãTSOPã»ã³ãµãŒããšã¢ã³ã³ãããããããã¯ãã¹ãŠèªåçã«æ©èœããŸãã 2æ¥éïŒé±æ«ïŒãã¹ãããŸãããããŸã ã¯ã©ãã·ã¥ããŠããªããªã©ãã¹ã±ããã®ããã€ãã®ãã°ãä¿®æ£ãããŸããã
TODOïŒ
ãããã£ãŠãå®è£ äºå®ã®ãªã¹ãïŒ
1.ãã¡ã€ã«ã·ã¹ãã ãç Žæããªãããã«ãããŒã¿ãã¡ã€ã«ãMemcacheã«å€æŽããŸãã 念ã®ãããmemcacheã®æåŸã®5ã€ã®ãšã³ããªãä¿æããŸã
2.ããŒã¿ããŒã¹ãMongoDBããMysqlã«å€æŽããŸãïŒãŸãã¯ä»ã®äœããããã§ã¯ããŸãæå³ããªããç«ã£ãŠããŸããããä»ã®ããŒã¿ããŒã¹ã¯ãªããã€ã³ã¹ããŒã«ãé¢åã§ããïŒ
3.ããŒã¿ããŒã¹ã«æžã蟌ãã«ã¯ããã¥ãŒïŒApache MQãŸãã¯ä»ã®é¡äŒŒç©ïŒã䜿çšããŸãã
4.ã·ã¹ãã ã3ã€ã®éšåã«åå²ããŸããArduinoãšã€ãŒãµããããRL24L01ã枩床ã»ã³ãµãŒä»ãããŒãïŒtinka 2313ïŒãRF24L01ãIR LEDïŒtinka 2313ïŒãšRF24L01ä»ãã®ããŒãã§ãã ããã¯ãµã€ãºãå°ããããããã«å¿ èŠã§ããããããã¹ãŠãarduinoã«ã®ã¿æ¥ç¶ãã空äžã§äœæ¥ããå¿ èŠã¯ãããŸããã
5.å¥ã®èªç©ºäŸ¿ãèãåºããããããŸã§ã©ã®ããã«æ¹åãããèãããããŠããŸããïŒã³ã¡ã³ãã§ã¢ããã€ã¹ããŠãã ãããç§ã¯éåžžã«å¬ããã§ãïŒã
6.åäŸã®èªçã«é¢é£ããŠïŒåœŒã¯çåŸ1ãæã§ããïŒã圌ã¯ã»ã³ãµãŒïŒIRååšæ€åºåšïŒã®ãã¡ããã泚æããŸãããããããã©ã®çšåºŠããŸããããããããŸããã åäŸãããå ŽåïŒäžè¬ã«ãéšå±ã«ãããšãïŒãã³ã³ãããã¢ã ã®é»æºãå ¥ããå¿ èŠã¯ãããŸããã ããã«ã察å¿ããã¹ããŒã¿ã¹ã¯ãå±å ã«ããã¹ã¯ãªããã«éä¿¡ãããŸãã
7.å®äŸ¡ãªå 湿åšãå€æŽããŠããã®ã·ã¹ãã ã«æ¥ç¶ããŸãã NF24L01ãtinka 2313ãããã³åçŽãªãªã¬ãŒãåããããŒããããã«è¡ããŸãã ãªããªã ãã®å 湿åšã«ã¯ããªã³ãšãªãããããŠãã¿ã³ããã®2ã€ã®ã¢ãŒããããããŸãã:)
NF24L01ïŒ
PIRã»ã³ãµãŒïŒ
è¬èŸ
Habru-å人çãªçµéšãå ±æããç¥èãè£å ã§ãããã©ãããã©ãŒã
DIHALT -DIYã«åå ããèå³æ·±ãèšäºã®ããã
arduino playground -DHTã»ã³ãµãŒãæäœããããã®ã©ã€ãã©ãªçš
shirriff -IRä¿¡å·ãæäœããããã®ã©ã€ãã©ãªçš
äžåœ-å®äŸ¡ãªã³ã³ããŒãã³ããšã»ã³ãµãŒçš
èªè ã®çãããæåŸãŸã§èªãã§ãã ãã:)
ãããŠãã¡ãããæ¯åãšéæ³ã®åŠ»ã¯ãã®èããå®çŸããããã«å°»ã蹎ããŸãã
ãã¡ã€ã«
äžèšã®ç§ã®ã¹ã±ããïŒå¿µã®ããïŒ
DHT22çšã©ã€ãã©ãªïŒArduinoãµã€ãïŒ
DHT22ã®ããŒã¿ã·ãŒã
䜿çšããTSOP31256ã®ããŒã¿ã·ãŒã
IRãæäœããããã®ã©ã€ãã©ãªïŒgithubïŒ
æŽæ°ããŸããã åçãè¿œå ããé ç·å³ãè¿œå ããã³æŽæ°ããŸããã ããŒã¿ã·ãŒããè¿œå ããŸããã æŽæ°ãããã¹ã±ããã³ãŒãïŒå°ããªä¿®æ£ïŒã DHT22ããã³DHT11ã©ã€ãã©ãªãžã®ãªã³ã¯ãä¿®æ£ããŸããã
æŽæ°ããŸããã 2-æçµçãªArduinoæ¥ç¶å³ãæŽæ°ããŸããã ïŒæµæãè¿œå ãããŸãããSiorinexã®ãããã«æè¬ããŸãïŒ
ãã®èšäºã楜ããã§ãã³ã¡ã³ãã«ã³ã¡ã³ããææ¡ãæ®ããŠãã ããã ç§ã¯å»ºèšçãªæ¹å€ãåãã§ããŸãã ãããŠãç§ã¯ããã«åæããŸããããã¯åå¿è åãã®åå¿è åãèšäºã§ãã é±æ«ã«ã¯ãå®å šãªèª¬æãšãã¢ã³ã¹ãã¬ãŒã·ã§ã³ãšãšãã«ããã¹ãŠãã©ã®ããã«æ©èœãããã®ãããªãæ®åœ±ããŸãã