ãããã£ãŠãåçŽãªIRã³ãã³ããªããŒã¿ãŒãããã¡ãã£ã¢ã³ã³ãããŒã©ãŒã¯ããã»ã©åçŽã§ã¯ãªããã®ã«å€ãããŸããã ãŸããããã«å€§æ°å§ã»ã³ãµãŒãè¿œå ããŠã倩æ°å³ãå®æãããŸããã ãããŠ-ã¯ã€ã€ã¬ã¹ã»ã³ãµãŒããã®ç¡ç·ä¿¡å·ã®ãªããŒã¿ãŒãããã«ãããäžå€®ã³ã³ãããŒã©ãŒã®äžéšã®æ©èœã®å¯¿åœãšäœ¿çšãå€å°ç°¡çŽ åãããŸããã ããæ£ç¢ºã«ã¯ãç«ã®é€ç®±ã®ã»ãšãã©åé¡ã®ãªã管çãå€æããŸããã
誀解ã¯ãããŸããã§ããããã®ã³ã³ãããŒã©ãŒã«ã¯ç¹å¥ãªç®çãå¿ èŠæ§ã¯ãããŸããã§ããã ãããäœãã®ã¯èå³æ·±ãããšã§ããããçªã®å€ã泚ææ·±ãèããã³ãŒããŒã飲ã¿ããã€ãæããæ Œåçžã®æ¯åžã®äžã§æ°žé ã®ããšãèãã以å€ã®äœããšé·ãå¬ã®å€ãéããã®ã¯é¢çœãã£ãã§ãã
çŸåšã®å®çšçãªã¢ããªã±ãŒã·ã§ã³ã®1ã€ïŒæŸæ£ããªããã°ãªããªãã£ãïŒã¯ã1ã€ã®ãã¿ã³ã§ãã¬ãã«ã¯ã€ã€ã¬ã¹ããŒããŒããå«ããããšãšãäœããèŠãããã«ãã¬ãã«æ¥ç¶ãããAndroidããŒãã§ãŒã³ã§ãã¡ã€ã«ãããŒãžã£ãŒãåæã«èµ·åããããšã§ãã ç§ãèãã2çªç®ã®ã¢ããªã±ãŒã·ã§ã³ã¯ãããããçã«ãéãããã§ãããããéšå±ã®æž©åºŠã«å¿ããŠç©ºèª¿ãèªåå¶åŸ¡ããããšã§ãã
ãããããã¹ãŠãé 調ã«é²ãã§ããŸãã
ã·ãªãŒãºã®ä»ã®è£
眮ããã³ããã€ã¹
ã ã¢ã³ããã¯å¥ãšããŠïŒzyrk-zyrk
ç®çãšæ©èœ
ã¡ãã£ã¢ã³ã³ãããŒã©ãŒã¯ãäžå€®ã³ã³ãããŒã©ãŒãšé£åããããã«èšèšãããŠããŸãã
æ©èœãéãããŠãããããåãã¿ã³ã®åºå®ã³ãŒãã䜿çšããŠäºææ§ã®ãããããã³ã«ã䜿çšããŠã³ãã³ããçºè¡ã§ããç¡ç·ãªã¢ãŒãã³ã³ãããŒã«ãšçµã¿åãããŠèªåŸæäœãå¯èœã§ãïŒååãšããŠãåçŽãªç¡ç·ãœã±ãããç¡ç·ãªã¬ãŒãç §æã¹ã€ãããããªã¢ãŒãïŒã
å®è£ ãããæ©èœïŒC-äžå€®ã³ã³ãããŒã©ãŒä»ããA-ãªãã©ã€ã³ã®å¯èœæ§ããïŒïŒ
1ïŒLG TVã³ã³ãããŒã«ïŒCãAïŒ
2ïŒG-mini HDR900Dã¡ãã£ã¢ãã¬ãŒã€ãŒã³ã³ãããŒã«ïŒCãAïŒ
3ïŒãšã¢ã³ã³å¶åŸ¡LG CS12AQïŒCãAïŒ
4ïŒç¡ç·ã»ã³ãµãŒããã»ã³ãã©ã«ã³ã³ãããŒã©ãŒãžã®ç¡ç·ãªã¢ãŒãã³ã³ãããŒã«ã³ãã³ãããã³ä¿¡å·ã®äžç¶ïŒCïŒ
5ïŒå€§æ°å§ãšå®€æž©ã®å€ã®æž¬å®ãšäžå€®å¶åŸ¡è£ 眮ãžã®éä¿¡ïŒCïŒ
èæ¯
ã¡ãã£ã¢ã³ã³ãããŒã©ãŒã®åºæ¬çãªèãæ¹ã¯æ¬¡ã®ãšããã§ãã äžå€®å¶åŸ¡è£ 眮ããç¡ç·ã³ãã³ããåä¿¡ãã察å¿ããã³ãã³ããéä¿¡ããŸããããã§ã«IRãã€ãªãŒããä»ããŠããŸãã ãã¡ããããã®å Žåãã¡ãã£ã¢ã³ã³ãããŒã©ãŒã¯å¶åŸ¡å¯Ÿè±¡ããã€ã¹ã®æ¯èŒçè¿ãã«é 眮ããå¿ èŠããããå¶åŸ¡å¯Ÿè±¡æ©åšã®IRãã€ãªãŒããšIRã¬ã·ãŒããŒéã®çŽæ¥çãªå¯èŠæ§ã¯ãåã«åææ¡ä»¶ã§ãã
åå§çãªæ¹æ³ã§ããã€ã¹ã®IRã³ãã³ããåãåããŸãããIRremoteã©ã€ãã©ãªã䜿çšããŠãIRã¬ã·ãŒããŒãšArduinoããå°ããªã¹ã¿ã³ããçµã¿ç«ãŠãŸããã ãã®ã©ã€ãã©ãªã®ç¹åŸŽã¯ãå€ãã®ãããã³ã«ãèªèããå€ãã®å Žåãèµ€å€ç·ãªã¢ã³ã³ã®å¶åŸ¡ã³ãŒããèªä¿¡ãæã£ãŠãèªã¿åããããšã§ãã ãã®ç¹ã§ã¯ãRC-Switchãšéåžžã«ãã䌌ãŠããŸããã³ãŒããååŸãããããããããã€ã¹ã§äœ¿çšããŸãã
ã³ãŒããèªèãããªãå ŽåãIRremoteãå¶åŸ¡ã³ãŒããšãšãã«çºè¡ãããçã®ãäžé£ã®ãã«ã¹å¹ ããããŸãã ãã ããæ¬ ç¹ã¯ããã®ãªãã·ã§ã³ãã³ã³ãããŒã©ãŒãªãœãŒã¹ã®ç¹ã§ã¯ããã«ç¡é§ã«ãªãããšã§ãã ããããããã§å¿ èŠãªå Žåãäžè¬çã«ã¯ã代æ¿æ段ã¯ãããŸããã
äž¡æ¹ã®æ¹æ³ã§ã¢ããªã±ãŒã·ã§ã³ãèŠã€ãããŸããã ããŸããŸãã¬ããšã¡ãã£ã¢ãã¬ãŒã€ãŒã«åé¡ã¯ãªãããšã¢ã³ã³ã¯æ°ãŸããã§ããã ååã®è©±ãèªããšãã²ã©ãçå®ãæããã«ãªããŸããã空調ã³ãã³ãã®ã³ãŒãã¯ãŒãã«ã¯ãèšå®ãããåäœã¢ãŒãã«é¢ãããã¹ãŠã®æ å ±ã絶察ã«å«ãŸããŠããŸãã
ãšã¢ã³ã³ã飌ããªãã
å¹³åçãªãšââã¢ã³ã³ã¯ãããªãæãã§åŸé ãªçãç©ã§ãã 圌ã¯äœãèŠããŠããããäœãç¥ããã
ãçã®ãã³ãŒãã䜿çšããå¿ èŠãããå Žåãããããªãã·ã§ã³ã§ããããšãç解ããã®ã¯éåžžã«ç°¡åã§ãã ããšãã°ããã¬ãã®ãªã¢ã³ã³ã®åããã¿ã³ãäœåºŠã§ãæŒããšãã³ãã³ãã¯æ¯ååãã«ãªããŸãã ãããŠããã®ã³ãã³ãã¯ã©ãã§ã䜿çšã§ããŸãã
ããããããšãã°ãšã¢ã³ã³ã®ãªã¢ã³ã³ã®æž©åºŠäžæãã¿ã³ãæŒããšã枩床ç¯å²å ã®ã³ãã³ãã¯æ¯åç°ãªããŸãã ããã¯ãèšå®æž©åºŠãã³ãŒãã¯ãŒãã§éä¿¡ããããã®å€åã®å åã§ã¯ãªãããã§ãã ãŸããã³ãŒãã¯ãŒãã§éä¿¡ãããã®ã¯ãåäœã¢ãŒãïŒå·æ°/ç±/ãã¡ã³ïŒããã¡ã³é床ããã©ã€ã³ãã®äœçœ®ãªã©ã§ãã IRremoteããã®ããã³ãŒãããããçµæã䜿çšããŠããçŸå®ãšã¯äœã®é¢ä¿ããªããããè¯ãçµæã§çµããããšã¯ãããŸããã
å¥ã®åé¡ã¯ããšã¢ã³ã³ã®ç¹åŸŽãšæ©èœã絶ããå€åããŠããããšã§ã-äžä»£ããäžä»£ãžãã¢ãã«ããã¢ãã«ãžã ãã®ããããã©ã³ãã®ã©ã€ãã©ãªã誰ããæžãããšããŠããæè¯ã®å Žåãæ©èœïŒãããŠææªã®å Žåãäœæ¥èœåïŒã¯ãåºç€ãšãªãã¢ãã«ã®æ©èœã«å¶éãããŸãã
äŸã¯æ¬¡ã®ãšããã§ããåçŽãã©ã€ã³ããèªåå¶åŸ¡ããã«ãšã¢ã³ã³ã䜿çšããŠãã人ã ãŸããã³ãŒãã¯ãŒãã§ããã€ãã®ãã¢ãåçŽãã©ã€ã³ããå¶åŸ¡ããŠããããšãã©ã®ããã«ç¥ã£ãŠããŸããïŒå ã®ãããã³ã«ãèŠãŠããªãå ŽåïŒïŒ ããªããç§ã®æèŠãå¿ èŠãªå Žå-ã©ãããã§ãã 確ãã«ãã³ãŒãã¯ãŒãã«æ°ããããŒã ã®ããã®äºåããã£ããšããŠãã圌ããäœãããŠããããæ£ç¢ºã«ç解ããããšã¯äžå¯èœã§ã-ããããã€ãªã³åãå«ãŸããŸãã ãŸãã¯å€å空æ°ä¹Ÿç¥ã ãã®ãããªãããªãã¯ç¥ã£ãŠãããæ³¢æã€ã
ããããããŒããŒã¯ååšããŸãã å人ãLGãšã¢ã³ã³ã®ããã«åœŒã®ã©ã€ãã©ãªãæžããŸããã
ããŠã空調ã³ãã³ããäœæããããžãã¯ãäœããã®æ¹æ³ã§èšç®ããå¿ èŠããããã©ãããå°ãèããåŸãç·æ¥ã®å¿ èŠã¯ãªããšããçµè«ã«éããŸããã å®éãããªãéãããæ©èœã»ããã䜿çšããŠããŸããååãšããŠãåãå ç±æž©åºŠãšåãå·åŽæž©åºŠã§ãã ãã®ããããã¹ãŠã®å®è£ ã«æéãè²»ããã®ã§ã¯ãªãããªã¢ãŒãã³ã³ãããŒã«ã«é çªã«ã€ã³ã¹ããŒã«ããŠãçŸåšã®ã¢ãŒãã®ã³ãã³ãïŒãªã³ããªããå ç±ãå·åŽïŒãèªã¿åãããšã«ããŸããã
ã ãããããã¯æ¡éãã«æããŸããã1ã€ã®æ©èœã«1ã€ã®ãã€ã¯ãã³ã³ãããŒã©ãŒãè²»ãããŠããããšãããããŸãã ãŸããããã¯ãªããšãªãç¡é§ã ã£ãã®ã§ãå°ãèããŠãããã§ããã°ãå€éšã®æ°è±¡ã»ã³ãµãŒãããã奪ãããŠããã®ã§ããªãåæã«æ°å§ã枬å®ããªãã®ãã決ããŸããã ãã®ããã人æ°ã®é«ãBMP085ã»ã³ãµãŒãã³ã³ãããŒã©ãŒã«è¿œå ãããŸããã
倧æ°ã®é©ã
èå³æ·±ã話ã¯ãBMP085ã«é¢é£ããŠããŸãã æåã«ã泚æããã ãã§ãªããã³ããŒãåãåã£ãåŸã«ã®ã¿ãé»å§ã3Vãš5Vã®2ã€ã®ããŒãžã§ã³ã®ååšã«ã€ããŠåŠã³ãŸããã ããã«ãå žåçãªããŒãäžã§ã¯ããã®ã»ã³ãµãŒãå¿ èŠãšããé»å§ã®çš®é¡ãæžã蟌ã¿ãŸããã ããŸããŸãªã»ã³ãµãŒã®åçãèŠãŠãæçµçã«ã¯ãã£ã³ã¹ãã€ããå¿ èŠããããŸããã
第äºã«ã泚ææã«ã倧æ°å§ã»ã³ãµãŒãè³Œå ¥ããŠãããšç¢ºä¿¡ããŠããŸããã å®éãBMP085ã¯ã©ãã§ããŸãã«ãã®æ¹æ³ã§è¡šç€ºãããŸãã ãããã£ãŠããããåãåã£ãåŸãã»ã³ãµãŒã®ä»æ§ãèªãã§ãããã«ã枩床枬å®ãå«ãŸããŠããŸãããšæã£ããšããç§ã¯éåžžã«é©ããŸããã ãããŠè©³çŽ°-ã- 40ã+ 85°Cã®åäœç¯å²ã+ -2°Cã®æž©åºŠç²ŸåºŠ ãã
å§åãšæž©åºŠã®äž¡æ¹ãåæã«æž¬å®ããããšãå¯èœã§ãããšæãããŸããã ããã«ãç¹ã«ããã¯éåžžã«è¯ãããŒãã¹ã§ããããã粟床ã¯éåžžã«è¯å¥œã§ããã
ç§ã¯ããã«èšããªããã°ãªããªã-ç§ã¯æž¬å®å€ãç¹å®ã®æšæºæž©åºŠèšãšæ¯èŒããªãã£ãã®ã§ãã»ã³ãµãŒãã©ãã ããã©ã®æ¹åã«ééã£ãŠããããèšãããšã¯ã§ããŸããïŒä»®ã«ãã£ããšããŠãïŒã
ã ãã€ã¯ãã³ã³ãããŒã©ãŒã®å ç±ã枩床枬å®ã«äœããã®åœ±é¿ãäžãããšã¯æããªãããã«ãã»ã³ãµãŒãã±ãŒã¹ããçå£ã«åãåºããŸããã ãããŠãããã¯å¿ èŠã§ãã圌ã¯ãã§ã«ã»ããã£ãœãã§ãïŒ
ãªããŒã¿ãŒ
3çªç®ã®æ©èœã®ã¢ã€ãã¢ã¯ãã»ã³ãã©ã«ã³ã³ãããŒã©ãŒãã©ãžãªãã¿ã³ãããŸãããèãåãããç«ã®é€ç®±ãäœåãããšããäºå®ã«çŽé¢ãããšãã«ããªããšãããŠçãŸããŸããã äžè¬ã«ãå€éã«ç®ãéããã«ãçæ³çã«ã¯ç®ãèŠãŸããã«ãã¿ã³ãæŒããšæ³å®ãããŠããŸããã çŸå®ã«ã¯ç¬èªã®èª¿æŽãè¡ãããŠããŸããæã䌞ã°ããŠããã¿ã³ãå¥ã®åŽã«åããŠãäœåºŠãæŒãå¿ èŠããããŸããã
ãã¿ã³ã¯äžåœã®ã»ãã¥ãªãã£ã¢ã©ãŒã ããã®ãã®ã§ããããŸãšããªç¯å²ãç°ãªãããªãå³ããéä¿¡æ©ãæã£ãŠãããããããã¯äžè¬ã«å¥åŠã§ãã
ãããŠãããã§ãã¡ãã£ã¢ã³ã³ãããŒã©ãŒã®çŸåšã®å Žæã¯éåžžã«æåããããšãããããŸãããã©ãžãªãã¿ã³ãšäžå€®ã³ã³ãããŒã©ãŒã®ã¡ããã©äžéã§ãå®éã«ã¯ä¿¡å·ãå²ãåœãŠãããŠããŸããã 解決çã¯æ¬¡ã®ãšããã§ããã¡ãã£ã¢ã³ã³ãããŒã©ã¯ç¡ç·ããªãã¹ã³ãã䜿ãæ £ããã³ãã³ãã«ééããå Žåã¯åéä¿¡ããŸãã
競åã®åé¡ã¯éåžžã«ç°¡åã«è§£æ±ºãããŸãã 第äžã«ãäžå€®å¶åŸ¡è£ 眮ã¯ãã©ãžãªãã¿ã³ã³ãã³ãã®ãã¬ãŒã å ã®æåã®åèªã«å¿çããæéããããŸãã ãããŠãã®åŸã圌ã¯èª°ãäœãåæŸåºããããæ°ã«ããŸããã ããã«ãã¡ãã£ã¢ãªã¬ãŒã³ã³ãããŒã©ãŒã¯ãååãšããŠãã©ãžãªãã¿ã³ã®åŸã«ã³ãã³ãã®éä¿¡ãå®äºããŸããããã«ãããæªã¿ã®ãªãä¿¡å·ãåä¿¡ããããšãå¯èœã«ãªããŸãã
ããã¯çããããšæãããšãç解ããŠããŸãã ã¯ãããããŠå®è£ ãã©ããããããããã§ã¯ãããŸããã ãããå®éã«ã¯ãã©ãžãªãã¿ã³ã®åé¡ãå¿ããŠããŸããã ä»ã§ã¯ãã€ã§ãåäœããããã§ã¯ãšãã§ããªãè ã®æ¯ãããããŸããã
ãŸããæåããã£ããã«ã念ã®ããã«ãã¯ã€ã€ã¬ã¹ã»ã³ãµãŒïŒãªãŒã¯ãšç ïŒã®ãªã¬ãŒãè¿œå ããŸããã ããã¯ç§ã«ãšã£ãŠé£ããããšã§ã¯ãããŸããããããããã圹ã«ç«ã€ãªãããªãã§ããïŒ
åäœåç
äžè¬ã«ãã¡ãã£ã¢ã³ã³ãããŒã©ãŒã¯äžå€®ã³ã³ãããŒã©ãŒãšé£åããããã«èšèšãããŠããŸãã èªåŸçãªäœæ¥ã¯ããã«ããã¿ã³ã®ç¡ç·ãªã¢ãŒãã³ã³ãããŒã«ãå¿ èŠãšããæ©èœãå¶éããããªããšããŸããã¯ãªã¢ããªã±ãŒã·ã§ã³ã§ãã
ãããã£ãŠãäžå€®å¶åŸ¡è£ 眮ãšã®çžäºäœçšã«ã€ããŠå ·äœçã«èª¬æããŸãã
IRãªã¬ãŒ
IRå¶åŸ¡ã³ãã³ãã§ã¯ãããã€ãã®æ¡ä»¶ãæºããããŠããå¿ èŠããããŸãã
1ïŒãããã¯ãŒã¯ïŒãŠã§ãïŒãå¶åŸ¡ç¡ç·ãIRã³ãã³ãã®å¯Ÿå¿è¡šãäœæããå¿ èŠããããŸã
2ïŒãããã¯ãŒã¯ïŒãŠã§ãïŒã³ãã³ããšã³ã³ãããŒã«ç¡ç·ã³ãã³ãã¯ãã»ã³ãã©ã«ã³ã³ãããŒã©ãŒã§èª¬æããå¿ èŠããããŸãã
3ïŒã¡ãã£ã¢ã³ã³ãããŒã©ãŒã§ã¯ãå¶åŸ¡ç¡ç·ã³ãã³ããšå¯Ÿå¿ããIRã³ãã³ããèšè¿°ããå¿ èŠããããŸã
管çã¯ã¹ããŒã ã«åŸã£ãŠè¡ãããŸãã
1ïŒãŠãŒã¶ãŒããã©ãŠã¶ãŒã§ãããã¯ãŒã¯ïŒWebïŒã³ãã³ããå ¥åïŒã¹ããŒããã©ã³ã®ãã¿ã³ãæŒãïŒ
2ïŒäžå€®å¶åŸ¡è£ 眮ã¯ãããã¯ãŒã¯ïŒãŠã§ãïŒã³ãã³ããåŠçãã察å¿ããç¡ç·ã³ãã³ããçºè¡ããŸã
3ïŒã¡ãã£ã¢ã³ã³ãããŒã©ãŒãç¡ç·ã³ãã³ããåä¿¡ããé©åãªIRã³ãã³ããIRãã€ãªãŒãã«çºè¡ãã
ãããã¯ãŒã¯ïŒWebïŒã³ãã³ãã¯ãéåžžã®HTTP POSTãªã¯ãšã¹ãã§ãïŒããªããã£ã圢åŒ-ãã©ãŠã¶ãŒè¡ã®ã¢ãã¬ã¹ïŒã äŸïŒ
192.168.22.185/?TVON
ããã§ãã 192.168.22.185 ãã¯ã³ã³ãããŒã©ãŒã®ã¢ãã¬ã¹ã§ããããTVONãã¯ã³ãã³ãã§ãã ãããã£ãŠãç§ãã¡ã¯æ³ååãšåžžèã«åºã¥ããŠèªåãã¡ã§ããŒã ãäœããŸãã
ç¡ç·ã³ãã³ãã¯RC-Switchãããã³ã«ã«åŸã£ãŠããŸããããã«ããã24ãããã®ããžã¿ã«ã³ãŒããã€ãŸã0ã16777216ã®æ°åãéä¿¡ã§ããŸããã€ãŸãã ãã§ã«äœ¿çšã§ããã³ãŒããè€è£œããªãããè¿ãã§ïŒããšãã°ãé£äººãšïŒé£ã¶ã³ãŒããè€è£œããªãéãããããããéžæã§ããŸãã
次ã«äœãèµ·ãã£ãŠãããã調ã¹ãã«ã¯ã2ã€ã®æ¹æ³ããããŸãã1ã€ç®ã¯ãæ©åšã®äžé©åãªåäœã«ãããã®ã§ãã -SwitchïŒReceiveDemo_Simpleã®äŸïŒã
IRremoteã©ã€ãã©ãªã䜿çšããŠããã¯ãããžãŒã®IRã³ãã³ããèªèã§ããŸãã
ã¡ãã£ã¢ã³ã³ãããŒã©ã«ããç¡ç·ã³ãã³ãã®åä¿¡ããã³å®è¡ã®ç¢ºèªã¯æäŸãããŸããã
倧æ°å§ãšå®€æž©ã®äŒé
ãããã®ã€ã³ãžã±ãŒã¿ãŒãéä¿¡ããã«ã¯ãæ°è±¡ã»ã³ãµãŒãšåãRC-Switchã©ã€ãã©ãªãšåãææ³ã䜿çšããŸãã ã€ãŸããã³ã³ãããŒã©ãŒã¯å®æçã«ïŒ30åã«1åïŒå€ã枬å®ããæ°å€ã³ãŒãã®åœ¢åŒã§äžå€®ã³ã³ãããŒã©ãŒã«ç©ºäžã«éä¿¡ããŸãã
æ°è±¡ã»ã³ãµãŒãšã®éãã¯ãç§ãæ ããããŠãåã€ã³ãžã±ãŒã¿ãŒã«åå¥ã®ã°ã«ãŒããå²ãåœãŠãããšã ãã§ãã
ãã®çµæãå§åã¯1210XXXXã®åœ¢åŒã®ã³ãŒãã§éä¿¡ãããŸããããã§ãXXXXã¯mPaã®å§åå€ã®æŽæ°éšåã§ãïŒ100åã®1ã¯ããŸãèå³æ·±ããããŸããïŒã mmHgã§ã®åèšç®ã¯äžå€®ã³ã³ãããŒã©ãŒã«ãã£ãŠå®è¡ãããŸãããçç±ã¯åããªãã§ãã ããã ç¥ããŸãã
枩床ã¯1310YXXXã®åœ¢åŒã®ã³ãŒãã§éä¿¡ãããŸããXXXã¯æž©åºŠå€ã«10ãæããå€ïŒ10åã®1ãéä¿¡ãããŸãïŒãYã¯æž©åºŠèšå·ïŒ0ã¯æ£ã1ã¯è² ïŒã§ãã ãŸãã宀枩ã®ãµã€ã³ãå¿ èŠãªçç±ãå°ããªãã§ãã ããã
äž¡æ¹ã®å€ã¯ãçãééã§æ¬¡ã ã«éä¿¡ãããŸãã
äžå€®å¶åŸ¡è£ 眮ã«ããã³ãã³ãåä¿¡ã®ç¢ºèªã¯æäŸãããŸããã
ç¡ç·ã³ãã³ããªããŒã¿ãŒ
ãã®ãµãŒãã¹æ©èœã¯ãRC-Switchã䜿çšããŠåºæ¬çã«å®è£ ãããŸãã ãªã¬ãŒã³ãŒãã決å®ãããã®ãªã¹ããã¡ãã£ã¢ã³ã³ãããŒã©ã«å ¥åããã ãã§ååã§ãã äžå€®å¶åŸ¡è£ 眮ããå°éããªããç¡ç·ãœã±ãããŸãã¯ã¹ã€ããã®ã³ãŒãã«ããããšãã§ããŸãã ãŸãã¯ãäžå€®å¶åŸ¡è£ 眮ããèãããªããã»ã³ãµãŒã
ãããã£ãŠãã¡ãã£ã¢ã³ã³ãããŒã©ããªã¬ãŒã³ãŒããèªèããå ŽåïŒãã¿ã³ãæŒãããã»ã³ãµãŒãããªã¬ãŒãããã³ãã³ããéä¿¡ãããå ŽåïŒãæå®ãããåæ°ã ãç¹°ãè¿ããŸãã
å¯äžã®ç¹åŸŽã¯ãç§ã®å®è£ ã§ã¯ããéäžå®ãã»ã³ãµãŒã®ä¿¡å·ãããšãã°ãªã¢ãŒãã³ã³ãããŒã«ãããã«äžç¶ããã絶ããä¿¡å·ãéãã»ã³ãµãŒã®ä¿¡å·ïŒããšãã°ãæŒããç ïŒãåšæçã«é 延ããŠäžç¶ãããããšã§ãã
ãã®ããžãã¯ã¯æ¬¡ã®ãšããã§ãã ã»ã³ãã©ã«ã³ã³ãããŒã©ãŒïŒCCïŒã¯åžžã«ãã«ãã¡ãã£ã¢ã³ã³ãããŒã©ãŒïŒMKïŒãèããšèããããŠããŸãããããã¯çžäºã®é 眮ã«ãã£ãŠä¿èšŒãããŠããŸãã åæã«ãMCãä»ããåšèŸºä¿¡å·ã®ãªã¬ãŒã¯ãã€ãã·ãšãŒã¿ãŒã«ããä¿¡å·è»¢éãçµäºãããããåŸã«å®äºããããšãä¿èšŒãããŠããŸãã
ãããã£ãŠãäžæ¹ã§ãäžå€®å§å¡äŒã¯ãã€ãã·ãšãŒã¿ãŒãèãããªããŠããªã¬ãŒä¿¡å·ãåä¿¡ããããšãä¿èšŒãããä»æ¹ã§ã¯ãã€ãã·ãšãŒã¿ãŒãšMKã®äž¡æ¹ãåæã«ãããååŸããå Žåã«ã³ãã³ããåä¿¡ããŸãã
æ®ãã®ã¯ãåžžæä¿¡å·ãéãã»ã³ãµãŒã®ç¹ç°æ§ã ãã§ãã ç§ãèšã£ãããã«ãæŒæ°Žã»ã³ãµãŒã¯ãæ°Žã«æµžã£ãŠããéãããããªãŒããªããªããŸã§çµ¶å«ããããšããããŸãã æ¡ä»¶ãæ£åžžã«æ»ã£ãå Žåã«ã®ã¿åæ¢ããŸãã ãããã£ãŠãMKã¯æåã«5ç§éã®äŒæ¢åŸã«ä¿¡å·ã®äžç¶ãéå§ãïŒäžå€®å§å¡äŒèªäœãã»ã³ãµãŒãèãå ŽåïŒã次ã«ãã€ãã·ãšãŒã¿ãŒãä¿¡å·ãéä¿¡ããŠããéããã®ãµã€ã¯ã«ãåžžã«ç¹°ãè¿ããŸãã ã€ãŸã ãäžç·ã«æãããã®ããã«MKã
äžå€®å¶åŸ¡è£ 眮ã«ããã³ãã³ãåä¿¡ã®ç¢ºèªã¯æäŸãããŸããã
é
ç§ã¯ç²ããŠããããšãç解ããŠããŸãããç§ã¯ããªãã«æãåºãããŸã-çŸåšã®æ§æã®ããã®ã»ãããäŸãã°ãªã³ã¯ã ã ããïŒ
1ïŒ Arduino Pro Mini ïŒATmega328pã16 MHzã5VïŒ
2ïŒ433 MHz ASK / OOK ã¬ã·ãŒããŒããã³ãã©ã³ã¹ããã¿ãŒããã
3ïŒIR LED IR513B-40ïŒ940 nmïŒïŒ2åïŒãŸãã¯é¡äŒŒå
4ïŒLEDã®é»æµå¶éæµæïŒçæ³çã«ã¯68ãªãŒã ïŒ
4ïŒ BMP085ã»ã³ãµãŒ ïŒ5VããŒãžã§ã³ïŒ
5ïŒå¥œã¿ã«åãããŠLEDãé»æºãã¹ã€ããã³ã°ãã³ãã¯ã¿ããã¬ããããŒãã¯ã€ã€ã«å¯Ÿå¿ããã¯ã€ã€
6ïŒã±ãŒã¹
7ïŒé»æº
AVæ©åšãå¶åŸ¡ãããå Žåã¯ãIRãªã¢ãŒãã³ã³ãããŒã«ã®ä¿¡å·ãèªã¿åãããã®å æ€åºåšãå¿ èŠã§ãã ãã®ç®çã®ããã«ã TSOP4836 ïŒæãäžè¬çãªå€èª¿åšæ³¢æ°36 kHzã®å信埩調åšïŒã䜿çšããŸããã ãã®ãã£ãŽããã®ç¹åŸŽã¯ãããããªããè£åŽãäœãã§èŠããªããã°ã倧éã®å¹²æžããã£ããããããšããããšã§ãã å¿ã«çããŠããããããã«ã·ãŒã«ãããããã®ãè³Œå ¥ããŠãã ããã
ãã®4ã€ã®ã³ã³ããŒãã³ãã®ãã¡3ã€ããããã©ã«ãããã³ã«æ¥ç¶ãããŠããããããã®ã¹ã±ããã®ã¢ã»ã³ããªå³ã¯å®å šã«ã¯æããã§ã¯ãããŸããããããã¯LEDãã¬ã·ãŒããŒãããã³BMP085ã»ã³ãµãŒã§ãã ãã ããéä¿¡ãã³ã¯ååãšããŠèªåã§éžæã§ããŸããã³ãŒãã®åŸåã§ä¿®æ£ããããšãå¿ããªãã§ãã ããã
1ïŒåä¿¡æ©
DATA-ããžã¿ã«ãã³2
VCC-é»æº+ 5V
GND-å°é¢ãž
2ïŒéä¿¡æ©
DATA-ããžã¿ã«ãã³6
VCC-é»æº+ 5V
GND-å°é¢ãž
3ïŒBMP085
Adafruitã®æ瀺ã«åŸã£ãŠ ïŒ
SCL-ã¢ããã°ãã³5ãž
SDA-ã¢ããã°ãã³4
VCC-é»æº+ 5VïŒããŒãžã§ã³5Vã®ã¿ããã以å€-3.3VïŒ
GND-å°é¢ãž
4ïŒIRãã€ãªãŒã
äž¡æ¹ãçŽåã«æ¥ç¶ãããŠããŸãã çãæ¹ã®ã¯ã€ã€ãŒãæã£ãŠããã®ã¯çæ¹ã ãã§ã-圌ã¯ãã¬ããèŠãŠããŸãããããçæ¹ã¯æ¬ç©ã§ã-圌ã¯ãšã¢ã³ã³ã«å ¥ãå¿ èŠããããŸãã
ç³ãèš³ãããŸããããç§ã¯åžžã«ã¢ããŒããšã«ãœãŒããæ··åããŠããŸãã äžè¬çã«ãäžæ¹ã®åŽ-ã¢ãŒã¹ïŒã«ãœãŒãïŒïŒããããŠããäžæ¹ïŒã¢ããŒãïŒïŒãé»æµå¶éæµæïŒç§ã¯ãã¢ã§180ãªãŒã ãã€ãŸã90ãªãŒã ïŒããããžã¿ã«ãã³3ïŒããã¯ã©ã€ãã©ãªã§ããã©ã«ãã§èšå®ãããŠããŸãããã ããMegaã§ã¯æ©èœããŸãããã©ã€ãã©ãªã³ãŒãã®å€æŽãå¿ èŠã«ãªããŸã-èŠããŠãããŠãã ããïŒã
æ£çŽã«èšããšãç§ã®æµæã¯ééã£ãŠããŸãã ããããä»ã«æè¿ãªãã®ã¯ãªãã3ã€ã䞊åã«é 眮ããã®ã¯æãã§ãããªããªããå®æ Œé»æµã¯Arduinoã®èœåãããé«ããªãå¯èœæ§ãããã確èªããããªãã£ãããã§ãã
é»æµå¶éæµæã¯ã䟿å©ãªé»åã§èªåã§ãã€ãªãŒãã®æ°ã«ã€ããŠèšç®ã§ããŸãã
ç§ã¯ãã®å¹žãããã¹ãŠïŒæåéãïŒå°ããªç®±ã«è©°ããŸããã ãããããã§ãªãå Žåã¯ãåä¿¡æ©ãšéä¿¡æ©ã®ã¢ã³ãããå¿ããªãã§ãã ããã æå ã«ãŸã£ããäœããªãå Žåã¯ãã¯ã€ã€ãŒã1/4æ³¢é·ïŒ173 mmãŸãã¯164 mmïŒã«åæã§ããŸãã
æåã¯ãBMP085ã»ã³ãµãŒãå éšã«ãããŸããããããã§ããã«å ç±ãããå¯èœæ§ãããããšã«æ°ä»ããå®éã«å®è¡ããŸããã èŠãç®ã¯ããã»ã©çŸãããããŸãããã枩床ãããå°ãæ£ç¢ºã«æž¬å®ããå¿ èŠããããŸãã
ã ã³ãã¯ã¿ïŒé»æºããã³LEDæ¥ç¶çšã åŸè ã®å Žå-éåžžã®ã¢ãã©ã«2.5 mmãžã£ãã¯
ãœãããŠã§ã¢
Sketchã«ã¯æ¬¡ã®éæšæºã©ã€ãã©ãªãå¿ èŠã§ãã
1ïŒããŒã¿äº€æããã³ãªã¬ãŒä¿¡å·çšã®RC-Swtich ã
2ïŒIR ãªã¢ã³ã³ã§ AVæ©åšãå¶åŸ¡ããããã®IRremote ã
3ïŒBMP085ã»ã³ãµãŒããããŒã¿ãåä¿¡ããAdafruit_BMP085 ã
4ïŒæéééãã«ãŠã³ãããããã®SimpleTimer ã
åäœããã«ã¯ã次ã®ãã®ãå¿ èŠã§ãã
1ïŒãªã¬ãŒçšã®ç¡ç·ã³ãã³ãã®ã³ãŒããå ¥åããŸãã
2ïŒç®¡ç察象ããã€ã¹ã®IRã³ãŒããå ¥åããŸãã
3ïŒãã«ãã¡ãã£ã¢ã³ã³ãããŒã©ãŒãIRã³ãã³ããçºè¡ããç¡ç·ã³ãã³ãã®ã³ãŒããå ¥åããŸãã
4ïŒã»ã³ãã©ã«ã³ã³ãããŒã©ãŒã®ã³ãŒãã§ãã«ãã¡ãã£ã¢ã³ã³ãããŒã©ãŒã®ã³ãã³ãã»ã¯ã·ã§ã³ãã«ã¹ã¿ãã€ãºããïŒã€ã³ã¿ãŒãããçµç±ã®å¶åŸ¡çšïŒã
äžç¶çšã®ç¡ç·ã³ãã³ãã®ã³ãŒããæ¢ã«ç¥ã£ãŠããããšãåæãšããŠããŸãïŒãããã¯ç¡ç·ã»ã³ãµãŒããªã¢ã³ã³ãªã©ã§ãïŒã ããããªãå Žåã¯ãArduinoãã¬ã·ãŒããŒãReceiveDemo_Simpleãµã³ãã«ã§RC-Switchã©ã€ãã©ãªã䜿çšããŸãã
å¶åŸ¡ãããããã€ã¹ã®IRã³ãŒãã¯ãã€ã³ã¿ãŒããããµãŒãã£ã³ã«äœ¿çšãããã¿ãã¬ããããããŸãã¯ãªã¢ãŒãã³ã³ãããŒã«ããèªã¿åãããšã§ç¢ºèªã§ããŸãã 2çªç®ã®å Žåãå æ€åºåšãArduinoã«æ¥ç¶ããIRremoteã©ã€ãã©ãªã䜿çšããå¿ èŠããããŸãã æ¥ãã§ããå Žåã¯ãäž»ãªãã®ãèŠããŠãããŠãã ããïŒ
1ïŒåããã¿ã³ãæŒãããšãã«ç°ãªãå€ã衚瀺ãããå Žåã¯ãäœããããããããšãæå³ãããããšã¢ã³ã³ããã®ãªã¢ãŒãã³ã³ãããŒã«ããããŸãã ãã®å Žåãé©åãªç®¡çã©ã€ãã©ãªãæ¢ãã®ãçã«ããªã£ãŠããŸãã ãŸãã¯ãããã§ãªãå Žåã¯ãå€æ°ã»ã¯ã·ã§ã³ã§è¡ã£ãããã«ãçã®ãã³ãŒãã䜿çšããŠããã¹ãŠãPROGMEMã«ããã¯ããŸãã
ãçã®ãã³ãŒãã§ã¯ãè¡ã«æ確ã«è¡šç€ºãããæåã®å€ã¯æåã§ç Žæ£ããå¿ èŠãããããšã«æ³šæããŠãã ããã
2ïŒåããã¿ã³ãæŒãããšãã«åãã³ãŒãã衚瀺ãããå Žå-å®å šã«äœ¿çšã§ããŸãã IRremoteã«ãç¬èªã®éä¿¡ãã©ãŒãããããããã³ãã³ãã³ãŒãã«å ããŠãéä¿¡ãå®è¡ããã³ãã³ãã·ã¹ãã ãæå®ããå¿ èŠãããããšãå¿ããªãã§ãã ããã NECããããŸãã
ãããŠãããã«ã³ãŒãèªäœããããŸãã
// 28.10.2013 - // 29.11.2013 - #include <Wire.h> #include <Adafruit_BMP085.h> #include <RCSwitch.h> // http://code.google.com/p/rc-switch/ #include <SimpleTimer.h> // #include <IRremote.h> unsigned long myData; long aL; boolean water1=false; // boolean water2=false; boolean water3=false; boolean smoke1=false; boolean smoke2=false; boolean smoke3=false; #define txPin 6 // SimpleTimer checkWeather; // RCSwitch meteoSwitch = RCSwitch(); RC-Switch IRsend irsend; // IRRemote // PROGMEM const prog_uint16_t acON[59] PROGMEM ={9450, 4350, 650, 1600, 600, 500, 550, 550, 550, 500, 600, 1600, 600, 500, 600, 500, 600, 500, 600, 500, 600, 500, 600, 500, 600, 500, 600, 500, 600, 500, 600, 500, 600, 500, 550, 1650, 600, 500, 600, 1600, 550, 1650, 600, 500, 550, 550, 600, 500, 550, 550, 600, 1600, 600, 450, 600, 1600, 600, 1600, 600}; const prog_uint16_t acOFF[59] PROGMEM ={9550, 4300, 600, 1600, 650, 450, 650, 450, 600, 500, 650, 1550, 600, 500, 600, 500, 600, 500, 600, 1600, 600, 1600, 600, 500, 600, 500, 600, 500, 600, 500, 600, 500, 600, 500, 500, 600, 600, 500, 600, 500, 600, 450, 650, 450, 600, 1600, 650, 450, 600, 1600, 650, 450, 600, 500, 600, 500, 650, 1550, 600}; const prog_uint16_t acCool[59] PROGMEM ={9500, 4350, 600, 1650, 600, 500, 600, 500, 600, 500, 600, 1550, 600, 500, 600, 500, 600, 500, 600, 500, 600, 500, 600, 500, 600, 500, 550, 1650, 600, 500, 600, 1600, 600, 1600, 600, 500, 600, 1600, 600, 500, 600, 500, 600, 500, 600, 500, 600, 500, 600, 500, 600, 1600, 600, 1550, 600, 1600, 600, 1600, 600}; const prog_uint16_t acHeat[59] PROGMEM ={9500, 4350, 600, 1600, 650, 450, 650, 450, 650, 450, 600, 1600, 600, 500, 600, 500, 600, 500, 600, 500, 600, 500, 600, 500, 600, 500, 600, 1600, 600, 500, 600, 1550, 650, 1550, 600, 1600, 650, 1550, 650, 450, 650, 1550, 600, 500, 600, 500, 600, 500, 650, 450, 650, 1550, 600, 500, 600, 500, 600, 500, 600}; // PROGMEM const prog_uint16_t *IRRemotePointer[] = { acON, acOFF, acCool, acHeat}; Adafruit_BMP085 bmp; // BMP085 void setup() { pinMode(13, OUTPUT); // bmp.begin(); meteoSwitch.enableTransmit(txPin); // meteoSwitch.enableReceive(0); // 2 checkWeather.setInterval(1800000, getClimate); // delay(2000); // } void txSwitch(long cmd) { // RC-Switch, meteoSwitch.disableReceive(); // , for (byte txC=0; txC<1; txC++) { meteoSwitch.send(cmd, 24); meteoSwitch.enableReceive(0); } } void repeatAlarm() { // "" txSwitch(aL); water1=false; water2=false; water3=false; smoke1=false; smoke2=false; smoke3=false; } void enableRx() { meteoSwitch.enableReceive(0); // } void loop () { checkWeather.run(); if (meteoSwitch.available()) { // , int value = meteoSwitch.getReceivedValue(); if (value != 0) { switch (meteoSwitch.getReceivedValue()) { case 1418288: // Water leak KITCHEN - , 5 ( ) if (water1 == false) { aL=1418288; checkWeather.setTimeout(5000, repeatAlarm); water1 = true; } break; case 3470133: // Water leak WASHER if (water2 == false) { aL=3470133; checkWeather.setTimeout(5000, repeatAlarm); water2 = true; } break; case 3592421: // Water leak MAIN if (water3 == false) { aL=3592421; checkWeather.setTimeout(5000, repeatAlarm); water3 = true;} break; case 1084887: // Smoke KITCHEN if (smoke1 == false) { aL=1084887; checkWeather.setTimeout(5000, repeatAlarm); smoke1=true; } break; case 2184536: // Smoke HALL if (smoke2 == false) { aL=2184536; checkWeather.setTimeout(5000, repeatAlarm); smoke2 = true; } break; case 12602757: // Smoke ROOM if (smoke3 == false) { aL=12602757; checkWeather.setTimeout(5000, repeatAlarm); smoke3 = true;} break; case 15741424: // txSwitch(15741424); break; case 46151: // txSwitch(46151); break; case 46150: // txSwitch(46150); break; // - // tv-on case 88100: irsend.sendNEC(0x20DF10EF,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // // tv-back case 88116: irsend.sendNEC(0x20DF14EB,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // tv-volup case 88132: irsend.sendNEC(0x20DF40BF,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // tv-voldown case 88164: irsend.sendNEC(0x20DFC03F,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // tv-chup case 88128: irsend.sendNEC(0x20DF00FF,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // tv-chdown case 88256: irsend.sendNEC(0x20DF807F,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // tv-mute case 88512: irsend.sendNEC(0x20DF906F,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // tv-menu case 89100: irsend.sendNEC(0x20DFC23D,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // tv-ok case 89108: irsend.sendNEC(0x20DF22DD,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // tv-up case 89116: irsend.sendNEC(0x20DF02FD,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // tv-down case 89132: irsend.sendNEC(0x20DF827D,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // tv-left case 89164: irsend.sendNEC(0x20DFE01F,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // tv-right case 89128: irsend.sendNEC(0x20DF609F,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // tv-av case 89256: irsend.sendNEC(0x20DFD02F,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // media-on case 89512: irsend.sendNEC(0xF9EA15,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // media-off case 87108: irsend.sendNEC(0xF9EA15,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // media-play case 87116: irsend.sendNEC(0xF90AF5,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // media-back case 87132: irsend.sendNEC(0xF9F20D,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // media-volup case 87164: irsend.sendNEC(0xF9E817,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // media-voldown case 87128: irsend.sendNEC(0xF92AD5,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // media-ff case 87256: irsend.sendNEC(0xF9C03F,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // media-rew case 87512: irsend.sendNEC(0xF9E01F,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // media-menu case 92108: irsend.sendNEC(0xF96897,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // media-set case 92116: irsend.sendNEC(0xF958A7,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // media-up case 92132: irsend.sendNEC(0xF9C23D,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // media-down case 92164: irsend.sendNEC(0xF950AF,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // media-left case 92128: irsend.sendNEC(0xF9609F,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // media-right case 92256: irsend.sendNEC(0xF9708F,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // media-ok case 92512: irsend.sendNEC(0xF940BF,32); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // ac-cool case 95108: IRTransmit(2, 59); delay(150); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // ac-heat case 95116: IRTransmit(3, 59); delay(150); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // ac-on case 95132: IRTransmit(0, 59); delay(150); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; // ac-off case 95164: IRTransmit(1, 59); delay(150); digitalWrite(13, HIGH); delay(40); digitalWrite(13, LOW); break; } } meteoSwitch.resetAvailable(); } } // void getClimate() { int Pressure = bmp.readPressure()/100; int Temperature = bmp.readTemperature()*10; myData = 12100000+Pressure; meteoSwitch.send(myData, 24); // if (Temperature > 0) { myData = 13100000+Temperature; meteoSwitch.send(myData, 24); // } else { myData = 13101000+abs(Temperature); meteoSwitch.send(myData, 24); // } } // "" - void IRTransmit(byte cmd, byte cmdlen) { // prog_uint16_t *currentIRRemotePointer = (prog_uint16_t *)pgm_read_word(&IRRemotePointer[cmd]); // PROGMEM unsigned int IRRawCodes[cmdlen]; // for (byte i = 0; i < cmdlen; i = i + 1) { // IRRawCodes[i] = pgm_read_word(€tIRRemotePointer[i]); // } irsend.sendRaw(IRRawCodes, cmdlen, 38); // IRRemote delay(150); }
ããŠãæåŸã ããªããã©ããã§ééããç¯ããå Žå-äŸãã°ãç§ãã¡ã¯ãããæŽçããŸãã ãããŠãæ®ãã¯ãããªããç¥ã£ãŠãããããªããããè¯ãããããšãã§ããã§ãããšä¿¡ããŠããŸãã
远䌞 誰ãã¿ã€ãã«ã«éå±ãªç¥èªã蚎ããŸãããïŒ