ã¯ããã«
èªåŸææ¿ãåããè¿ä»£çãªã«ã³ããªãŒããŠã¹ã«ã¯ãéåžžãã¬ã¹ãã€ã©ãŒãå«ãŸããŸãã æãåå§çãªããŒãžã§ã³ã§ã¯ãå ç±ã¯2ã€ã®æ¹æ³ã§å¶åŸ¡ãããŸãã
- ããã°ã家ã®äžã®äžè¬çãªãµãŒã¢ãã©ã³ãèšå®ããããã«ãé»åãèšå®ããããã€ã©ãŒã¯ãããããããªãŒã«ããã³ããããŸãã éåžžãé»å調æŽã¯ãå ç±åè·¯åŸã®æ°Žã®æž©åºŠã«é¢ããŠå®è¡ãããŸãã
- 家ã®äžã®éšå±ã¯ç°ãªã£ãŠããã®ã§ïŒç°ãªãçªãå£ãäž»èŠãªãã€ã³ããªã©ïŒãããããç°ãªãæ¹æ³ã§å ç±ããå¿ èŠããããŸãã å®¶å šäœã®ææ¿åè·¯ã1ã€ã®å Žåããã®ç®æšã¯ããããªãŒèªäœãžã®æ°Žã®äŸçµŠã調æŽããããšã§éæãããŸãã
åæã«ãçŸä»£ã®ãã€ã©ãŒã¯ååãšããŠå€éšå¶åŸ¡ããµããŒãããŠããŸãã ãã®æ©èœã®äž»ãªç®çã¯ãããŸããŸãªçš®é¡ã®æž©åºŠã³ã³ãããŒã©ãŒãæ¥ç¶ããŠãããããªãŒå ã®æœè±¡çãªæ°Žæž©ã§ã¯ãªããã€ã©ãŒé»åãèšå®ã§ããããã«ããããšã§ãïŒåãæ°Žæž©ã®æ°å€ã¯ãå€éšæ¡ä»¶ã«ãã£ãŠå®å šã«ç°ãªãçµæã«ã€ãªããå¯èœæ§ããããŸãïŒã¬ã®ã¥ã¬ãŒã¿ãŒãèšçœ®ãããŠããå Žæã®æž©åºŠã ã垯åå€ç®¡çããšã¯äœã§ãããŸããŸããããéåžžã¯ç¹å®ã®æ©åšã¡ãŒã«ãŒã®ç¬èªã®ãããã³ã«ïŒããšãã°ãBoschã®ããã«ïŒããŸãã¯OpenThermãããã³ã«ã®å®è£ ã®ããããã§ãã
ç§ã«ãšã£ãŠèšåãã枩床調ç¯åšã®äž»ãªåé¡ã¯äŸ¡æ Œã§ãã çŽ25,000ã«ãŒãã«ã®ãã€ã©ãŒã³ã¹ãã§ã9,000ã«ãŒãã«ã®ã¬ã®ã¥ã¬ãŒã¿ãŒã®äŸ¡æ Œã¯ããé«ãããããã§ãã
ããã¬ãšã«ãšã®äºåœéåè°ã®çµæãæšå®å€ãåæãããŸãããããã¯ãå žåçãªåæ¥èŠå¶åœå±ã®ã³ã¹ãããã1.5æ¡äœããã®ã§ããããã®åŸãåœç£èŠå¶åœå±ã®å®æœãªãã·ã§ã³ã®éçºãå§ãŸããŸããã
èŠå¶åœå±ã¯æ¬¡ã®ç®æšãèšå®ããŸããã
- 枩床ã»ã³ãµãŒãã³ã³ãããŒã«ãšããŠéžæãããŠããå Žæã®ç®æšæž©åºŠãã+ -0.5床ã®ç²ŸåºŠã§ç¶æããå¿ èŠããããŸã
- ç®æšæž©åºŠãèšå®ã§ããã¯ãã§ãã
- ã¬ã®ã¥ã¬ãŒã¿ãšãã€ã©ãŒã®åºæ¬çãªåŽé¢ãç£èŠã§ããããã«ããå¿ èŠããããŸã
ãªãŒãã³ãã«ã
建èšã®å¯èœæ§ã®ç 究ã¯ãå€éšå¶åŸ¡ã®ããã®ãã€ã©ãŒã®èœåã®ç 究ããå§ãŸããŸããã ã±ãŒã·ã³ã°ãåãå€ããåŸããžã£ã³ããŒãæãã£ãŠããã³ãã¯ã¿ãèŠã€ãããŸããã ãã€ã©ãŒã®ããã¥ã¡ã³ãã調ã¹ãããšã§ãå€éšå¶åŸ¡çšã®åãã³ãã¯ã¿ã§ããããšãæåŸ ãããŸããã ããã§ãç§ã®ã€ã¿ãªã¢ã®ãã€ã©ãŒFerroliã®ããã«ãã·ã¢èªã®ããã¥ã¡ã³ããæºåãããç¹å¥ãªç±æã«èšåããå¿ èŠããããŸãã ããã¥ã¡ã³ãã«ã¯ãã³ãã¯ã¿ã®èª¬æããããŸãã ããã©ããããç§ã¯ç¥èãªç¢æãç°å¢ã®åäœãã«èå³ããããŸããã çŽèŠ³ã¯ããããäž»é¡åéã«ç²ŸéããŠããªã翻蚳è ã®ä»äºã§ããããšããã€ããã»ã®ããããŸãããè±èªã®ããã¥ã¡ã³ããæ¢ãå¿ èŠããããŸãïŒããæåéãè±èªã«ç¿»èš³ãããã¹ãã ã£ãããïŒã ã€ã³ã¿ãŒãããPDFãããã€ã©ãŒã®ããã¥ã¢ã«ã®è±èªçãæãäžããåŸããã¹ãŠãæ確ã«ãªããå察åŽã®åãã³ãã¯ã¿ããRoom unitããšããããã¹ããèªç€ºããŸããã å°ããªã¢ã€ã³ã³ããããããçšåºŠã®æ³ååãããã°ãOpenThermã®ããŽãšééããå¯èœæ§ããããŸããã ããããããªãã®å¿ èŠãªãã®ã§ãããšç§ã¯èãããã€ã©ãŒã§æ®å¿ãªå®éšãèšç»ãå§ããŸããïŒçªã®å€ã¯-25ã ã£ãã®ã§ãããŒã¿ãŒã®é»åæ©åšãçããæãæ¥ãŸããïŒã
ããã§ãOpenThermã«å¿ èŠãªãšã¯ã¹ã«ãŒã·ã§ã³ãè¡ãå¿ èŠããããŸãã ãããã³ã«ã¯éããããŠããããéãããŠããŸããã ããªããä»æ§ãæã£ãŠãããªãã誰ãããªããè¿œããããªãã®ã§ãéããŠããŸããã 誰ãããªãã«ãããã³ã«ä»æ§ãäžããã ãã§ã¯ãªãã®ã§ãéããŠããŸããã $$$$$$$ã®OpenTherm Allianceã«åå ããŠããããã³ã«ã®æ¬äœã«ã¢ã¯ã»ã¹ããŠãã ããã ã€ã³ã¿ãŒãããã®å¥¥æ·±ãã§ããã€ããŠãOT2.2ä»æ§ãèŠã€ããŸããã
ç©çã¬ãã«ã§ã¯ãOpenThermã¯çŽ42Vã®ãªãŒãã³é»å§ãæã€2ã€ã®äœé»æµã©ã€ã³ã§ãã å¶åŸ¡ããã€ã¹ã¯ããããã«æ¥ç¶ããããšãã¹ã¬ãŒãã«åæã«é»åãäŸçµŠããŠå¶åŸ¡ã§ããŸãã
ä»æ§ã§ã¯ãOT / +ããã³OT / Liteã®2ã€ã®ãããã³ã«ã¬ãã«ãå®çŸ©ããŠããŸãã
1ã€ç®ã¯ãITéšéã®å€§å€æ°ã®äººããã®èšèãç解ããŠãããšããæå³ã§ã®ãããã³ã«ã§ãã ã€ãŸã ããã¯ãå¶åŸ¡ããã€ã¹ïŒãã¹ã¿ãŒãŠããããã«ãŒã ãŠãããããã®å Žåã¯ã¬ã®ã¥ã¬ãŒã¿ãŒïŒãšã¹ã¬ãŒãïŒã¹ã¬ãŒããŠããããããã¯ãã€ã©ãŒïŒã®éã§è¡ãããç¹å®ã®ãªã¯ãšã¹ããšåçã§ãã ãããã³ã«ã¯å¿ é ã®éšåã«åãããŠããããããŒããŒã®ãªã³/ãªããããç¶æ ã®å ±åãããå ç±åè·¯ã®åŸã«éåžžã«æ°Žæž©ãèšå®ããããã©ã¡ãŒã¿ãŒãå«ãŸããŸãïŒãã©ã¡ãŒã¿ãŒã¯ã»ãããã€ã³ããšåŒã°ããŸãïŒã ãªãã·ã§ã³-çã®å€èª¿ã®å¶åŸ¡ãããåè·¯å ã®ã¬ã¹ã®æµããå§åãæ°Žé床ã®é€å»ãŸã§ããã®ä»ã®æã ãã®å Žåãå¶åŸ¡ããã€ã¹ããããã®ã©ã€ã³ã®é»å§ã®å€åãå¶åŸ¡ããã¹ã¬ãŒããé»æµã®å€åã§å¿çããŸãã
OT / Liteã¯ããã·ã³ãã«ãªãã®ã§ãã OT / +ãå®è£ ããã»ã©é ãè¯ããªãå Žåã¯ããã€ã©ãŒãã»ãããã€ã³ãã®èšçœ®ãå¶åŸ¡ãããã¥ãŒãã£ãµã€ã¯ã«ã«åŸã£ãŠãPWMä¿¡å·ãç°¡åã«çæã§ããŸãã
ããã«ãä»æ§ã§ã¯ãã©ã€ã³ãç絡ãããã¹ãã¢ãŒããå®çŸ©ããŠããŸãã ãã®ã¢ãŒãã§ã¯ããã€ã©ãŒã¯éå±ãããŸã§å ç±ãããŸãïŒãã€ã©ãŒèªäœã«åãä»ããããæ°Žæž©ã®äžéšããŒã«å°éãããŸã§èªã¿åããŸãïŒã ãããã£ãŠããã€ã©ãŒã¯å€éšã¬ã®ã¥ã¬ãŒã¿ãŒãªãã§åäœããŸãïŒãããã£ãŠãéå£éšã«ãžã£ã³ããŒãããã£ãŠããŸãïŒã
OpenThermãå®å šã§ã¯ãªã
ããã«é°è¬ãææããOpenThermã§ãã€ã©ãŒãæ瞊ããããšã¯æ©èœããªãã£ããšèšããŸãã ã€ã³ã¿ãŒãã§ã€ã¹åè·¯ãçµã¿ç«ãŠãããOpenThermã®ããªãéèŠãªéšåãå®è£ ããã©ã€ãã©ãªã§ããæžãããŸãããããã€ã©ãŒã¯é åºã«OpenThermå¶åŸ¡ã¢ãŒããžã®åãæ¿ããæåŠããå¿çããŸããã§ããã ããæ£ç¢ºã«ã¯ããã€ã¯ãã³ã³ãããŒã©ãŒã¯çããšããŠäœãç»é²ããŸããã§ããã ãã€ã©ãŒãçãããã©ããããªã·ãã¹ã³ãŒããªãã§èšãããšã¯äžå¯èœã§ãã ãã®äºå®ãç解ãããšããã«ãUSBãªã·ãã¹ã³ãŒãïŒå¥å8ãã£ã³ãã«ããžãã¯ã¢ãã©ã€ã¶ãŒãå¥åUSBãã©ã¹ã¿ãŒïŒã40åã®åžžç·æš¹ã«æ³šæãããŸããïŒããã¯ãã ã®å·šå€§ãªãã®ã§ãïŒïŒã äºæ³ã©ããããªã·ãã¹ã³ãŒãã¯äžç¢ºå®ãªææã«äžåœããåºçºããç±å¶åŸ¡ã®é¢é£æ§ãå¬ãããããäœãæ¥ã®ã©ããã«æ¥ãã¯ãã§ããã ãã®ãããå°ãªããšã倧ãŸãã«çµæã確èªããããã«ããŸã£ããåãOpenThermãã¹ãæ©èœã䜿çšããŠãã€ã©ãŒãå¶åŸ¡ããããšã決å®ãããŸããã
ãã€ã©ãŒã®æ瞊æ¹æ³
é·ãå¬ã®å€ã«ãã€ã©ãŒãçèãããšããã®æäœã®ããžãã¯ã¯éåžžã«åçŽã§ãããšããç解ã«ã€ãªãããŸããã ããªãã¯ãæ°Žæž©ïŒèšå®å€ïŒã55âãªã©ãèšå®ããŸãã 枩床ã60°Cã«éãããŸã§ãŠã©ãŒã ã¢ãããéå§ããŸãã ãã®åŸãæ°Žæž©ã50°Cã«éãããšãªãã«ãªããåã³ãªã³ã«ãªããŸãã èšå®å€ãäžå¿ãšãããã¹ããªã·ã¹ã䌎ãäžçš®ã®ã¹ã€ã³ã°ã ããã¹ãæ©èœãã䜿çšãããšãå€éšããã€ã¹ã䜿çšããŠãã€ã©ãŒãå¶åŸ¡ããã®ãéåžžã«ç°¡åã«ãªãããããã€ã©ãŒã䜿çšããªãå ŽåãšãŸã£ããåãããã«åäœããŸãã
ãã€ã©ãŒã®çèã®å¥ã®çµæã¯ã家ã®äžã§ãã©ã¹ãŸãã¯ãã€ãã¹ã®ãã¹ãã·ã¥ãŒãºãå¿«é©ã«ãªãããã«ãéãã®æž©åºŠã«å¿ããŠããã€ã©ãŒã«èšå®ããå¿ èŠãããæ°Žæž©ãç解ããããšã§ãã
ãããã£ãŠããã€ã©ãŒå¶åŸ¡ã¯2ã€ã®ã¢ã«ãŽãªãºã ã§æ§æãããŸãã
- åžæã®èšå®å€ãšçŸåšã®æ°Žæž©ã«å¿ããããŒããŒãªã³/ãªãã¢ã«ãŽãªãºã
- å©çšå¯èœãªæž©åºŠããŒã¿ã«åºã¥ãèšå®ç¹èšç®ã¢ã«ãŽãªãºã
ããã§ã¯ãåžå Žã§å ¥æå¯èœãªãµãŒã¢ã¹ã¿ããã®åäœåçã«å¿ èŠãªäœè«ãããå¿ èŠããããŸãã 次ã®2çš®é¡ããããŸãã
- ã¯ã©ã·ãã¯ã åäœã®åå-æ¬æ¥ã®æž©åºŠãããäœæž©-æž©ããªããã°ãªããŸãããããæãã-æž©ããå¿ èŠã¯ãããŸããã 2çªç®ã®åå-å¯ãå Žåã¯ãéåžžã«æããå¿ èŠããããŸã
- OTCïŒå±å€æž©åºŠè£åïŒãåããããããã¬ã®ã¥ã¬ãŒã¿ãŒãã€ãŸã 枩床è£åã¬ã®ã¥ã¬ãŒã¿ãŒã ãããã¯ãããããã ãããã«ãããèšå®å€ã®å±å€æž©åºŠãžã®äŸåãèšå®ã§ããŸãã çè«çã«ã¯ã家ã®æž©åºŠãããæ£ç¢ºã«å¶åŸ¡ããå¿ èŠããããŸã
éšå±ãšè·¯äžã®äž¡æ¹ã«æž©åºŠããŒã¿ãããã®ã§ãååãšããŠOTCã§ããã€ã¹ãå®è£ ã§ããŸããã å®éãäž¡æ¹ã®ã¹ããŒã ããã¹ãããå®éšã§ç¢ºèªãããšããã2çªç®ã®æ¹ãåçæ§ãé«ããªã£ãŠããŸãã
æ°è±¡ã¹ããŒã·ã§ã³ã®å®è£ ã®çµæãšããŠãæ°è±¡ããŒã¿ãç§ã®å®¶ã®åšãã®ç©ºæ°ã«çŸããããšãæãåºããããšæããŸãã ãµãŒã¢ã¹ã¿ããã®ã¢ã«ãŽãªãºã ã¯æ¬¡ã®ããã«ãªããŸãã
- 空ããæ°è±¡ããŒã¿ããã£ãã
- å ç±åè·¯å ã®æ°Žã®æž©åºŠã枬å®ãã
- å©çšå¯èœãªããŒã¿ã«åºã¥ããŠãåè·¯å ã®ç®æšæ°Žæž©ãèšç®ããŸã
- åè·¯å ã®ç®æšæ°Žæž©ãç¶æããããã«ããŒããŒãå¶åŸ¡ããŸã
ããŒããŠã§ã¢
ããŒããŠã§ã¢ã¯æ¬¡ã®ãã®ã«å¿ èŠã§ãã
- 空ããåä¿¡ããããŒã¿
- 家ã®ç®æšæž©åºŠãèšå®ããããšãã§ããŸã
- 衚瀺ãããåºæ¬çãªã€ã³ãžã±ãŒã¿
- 圌女ã¯ãã€ã©ãŒå¶åŸ¡ã®ãã©ã€ã³ãçããããæ¹æ³ãç¥ã£ãŠããŸãã
- 圌ãã®ä»äºãšãã€ã©ãŒã®åäœã«é¢ããããŒã¿ã空äžã«éãè¿ããŠã圌ããäžå€®ãŠãããã«æãããããèŠèŠåãããããã«ãã
ãããã®èŠä»¶ã¯ã¹ããŒã ã«ãã£ãŠæ±ºå®ãããŸãã
æãåçŽãªéšåãã€ãŸããã€ã©ãŒå¶åŸ¡éšåããå§ãã䟡å€ããããŸãã JP1-2ã€ã®ãã€ã©ãŒå¶åŸ¡ã©ã€ã³ãæ¥ç¶ãããã³ãã¯ã¿ãŒã S1-ãã€ã©ãŒå¶åŸ¡ã©ã€ã³ãç絡ãããããã£ãŠãªãã©ã€ã³ã«ãããã°ã«ã¹ã€ããïŒã³ã³ãããŒã©ãŒãã©ããªããã¯ããããŸããïŒã ããªããžD1ãD4ã¯ããã€ã©ãŒãžã®æ¥ç¶ã®æ¥µæ§ãã¬ã©ã³ã¹ã確ä¿ããããã«å¿ èŠã§ãã ãã©ãã«ãã©ãŒU1ã¯ãªã¬ãŒãšããŠæ©èœãããã€ã©ãŒã®é«é»å§å¶åŸ¡ã©ã€ã³ïŒéããŠããå Žåãããã¯æ倧42Vã§ããããšãæãåºããŠãã ããïŒãšåè·¯ã®TTLéšåãšã®éã«ã¬ã«ãããã¯çµ¶çžãæäŸããŸãã R2ã¯ããã€ã¯ãã³ã³ãããŒã©ãŒã®ïŒå¶åŸ¡ãå®è¡ãããïŒD5端åãæµããé»æµã倧ããããªãããã«å¿ èŠãªå¶éæµæã§ãã ååãšããŠããã®éšåã¯äœé»æµãªã¬ãŒã§çœ®ãæããããšãã§ããŸããã...ç§ã®éã®å¥¥æ·±ãã§ã¯ããã€ã©ãŒãOT / +ããµããŒãããææçãªæ¹æ³ã§ããã管çã§ãããšããåžæããããŸãã ãã€ã©ãŒãšãã¢ãªã³ã°ããå®éã®ã¹ããŒã ã¯ãããè€éã§ãã ããã§ã¯ããã€ã©ãŒãé/éã¢ãŒãã§å¶åŸ¡ããããã«å¿ èŠãªç¯å²ã§ã®ã¿èª¬æããŸãã
DS18B20枩床ã»ã³ãµãŒã¯ããã€ã¯ãã³ã³ãããŒã©ãŒã®ãã³12ã«æ¥ç¶ãããŠããŸãã æµæR4ã¯ãä»æ§ã«åŸã£ãŠDS18B20ã®ããŒã¿ãã³ãšé»æºãã¹ã®éã«æ¥ç¶ãããŠããŸãã
HD44780ã³ã³ãããŒã©ãŒã«åºã¥ãLCDç»é¢-8æåã®2è¡ã ã¹ã€ããã³ã°åè·¯ã¯å€å žçã§ããVcc-é»æºãã¹ãVss-ã°ã©ã³ããV0ã«åºæºé»å§ãå°å ããŠã³ã³ãã©ã¹ãã調æŽããŸããããã¯ã建ç©ã®æµæR3ã®æ£é¢ã«ãããã£ãã€ããŒã«ãã£ãŠåœ¢æãããŸãã R3ã¯äžåºŠå³ãã£ãŠå¿ããããã«ãããããšãã§ããŸãã R / Wãã³ã¯ã°ã©ã³ãã«èšå®ãããŠããŸãã æ®ãã®ãã³ã¯ãã³ã³ãããŒã©ãŒã®RS->ãã³11ãæå¹å-> 10ãDB4-> 4ãDB5-> 7ãDB6-> 8ãDB7-> 9.ã®ããã«æ¥ç¶ãããŸãã
åä¿¡æ©ã¯ç«¯æ«2ã«ãéä¿¡æ©ã¯ç«¯æ«3ã«æ¥ç¶ãããŠããŸãã
A0ã¯ãåå§åšã圢æããå¯å€æµæåšã«æ¥ç¶ãããŸãã 端åA0ã®é»å§ã«åºã¥ããŠãã³ã³ãããŒã©ãŒã®ãã¡ãŒã ãŠã§ã¢ã¯å®¶ã®ç®æšæž©åºŠã«ã€ããŠçµè«ãåºããŸãã
ãœãããŠã§ã¢éš
äœæ¥ã®ã¢ã«ãŽãªãºã ã¯æ¬¡ã®ããã«ãªããŸãã
ã»ãšãã©ã®å ŽåãMKã¯æŸéäžã®ã¡ãã»ãŒãžãåŸ ã€æéãè²»ãããŸãã èšå®ããæéå ã«ã¡ãã»ãŒãžãå±ããªãå Žåãã¢ã«ãŽãªãºã ã¯åŒãç¶ãæ¬äœãå®è¡ããŸãïŒçµå±ããã®éã«åè·¯å ã®æ°Žã®æž©åºŠãå€åããå¯èœæ§ããããããŒããŒããªã³ãŸãã¯ãªãã«ããæéã«ãªãå¯èœæ§ããããŸãïŒã
ãããšäžŠè¡ããŠãA0ã®é»å§æž¬å®ãè¡ãããããã«å¿ããŠäœå® å ã®ç®æšæž©åºŠãèšå®ãããŸãã é»å§0ã¯18°Cã®æž©åºŠã«å¯Ÿå¿ããé»å§Vccã¯26°Cã®æž©åºŠã«å¯Ÿå¿ããŸãã 枩床ãå€åããå Žåãã€ãŸã ãŠãŒã¶ãŒãçŸåšãããåããšãç»é¢ãæŽæ°ãããåžžã«3ã€ã®ãã©ã¡ãŒã¿ãŒã衚瀺ãããŸããéšå±ã®ç®æšæž©åºŠããµãŒãããã®æ°Žã®æž©åºŠãçŸåšã®ãµãŒãããã®æ°Žã®ç®æšæž©åºŠã§ãã
åè·¯å ã®ç®æšæ°Žæž©ã¯ã次ã®åŒã䜿çšããŠèšç®ãããŸãã
Trrw = 20 +ïŒTrr-ToïŒ+ïŒTr-TrrïŒ* 30ãããã§
Trrw-ãµãŒãããå ã®ç®æšæ°Žæž©
Trr-家ã®ç®æšæž©åºŠ
ãž-å±å€æž©åºŠ
Tr-家ã®äžã®æž©åºŠ
ã芧ã®ãšãããç¹å®ã®ã·ãã20ïŒãã¥ãŒãªã¹ãã£ãã¯ã«éžæïŒãšããçšèªããããOTCïŒTrr-ToïŒãšããçšèªã¯å€§ãããéšå±ã®ç®æšæž©åºŠãšå€æ°æž©ã®å·®ã倧ãããéšå±ã®ç®æšæž©åºŠã«å°éããªãå Žåã®ããã«ãã£ïŒTr-TrrïŒ* 30ã
ã¢ã«ãŽãªãºã ã®å®è£ ã¯éåžžã«ç°¡åã§ãããã¡ãŒã ãŠã§ã¢ã®ã¹ã±ãããèŠããšç解ã§ããŸãã
ã¹ã±ãã
#include <TimerTwo.h>
#include <OneWire.h>
#include <DallasTemperature.h>
#include <VirtualWire.h>
#include <EEPROM.h>
#include <WirelessSensorPipe.h>
#include <LiquidCrystal.h>
#define DEBUG
#define INVALID_TEMPERATUREïŒ1000ïŒ
/ *ããŒããŠã§ã¢æ§æ* /
#define DSPIN 12
#define TRANSMITPIN 3
#define RECEIVEPIN 2
#define HEATERCONTROLPIN 5
#define TARGETTEMPCONTROLPIN A0
// LCDãã³ãããã³ã°
#define LCDRS 11
#define LCDENABLE 10
#define LCDD4 4
#define LCDD5 7
#define LCDD6 8
#define LCDD7 9
#define RECEIVETIMEOUT 30 //ã¯ã€ã€ã¬ã¹åä¿¡ã¿ã€ã ã¢ãŠã
bool Heater_enabled = false;
void enable_heaterïŒïŒ
{
digitalWriteïŒHEATERCONTROLPINãHIGHïŒ;
Heater_enabled = true;
}
void disable_heaterïŒïŒ
{
digitalWriteïŒHEATERCONTROLPINãLOWïŒ;
Heater_enabled = false;
}
float target_room_temperatureãprevious_target_room_temperature;
/ *ããã³ã·ã§ã¡ãŒã¿ããç®æšå®€æž©ãèªã¿åããå€ãå€æŽãããå Žåã«trueãè¿ããŸã* /
bool updateTargetRoomTempïŒïŒ
{
uint16_tpotentiometer_value = analogReadïŒTARGETTEMPCONTROLPINïŒ;
target_room_temperature = 22 + 4 / 1024.0 *ããã³ã·ã§ã¡ãŒã¿ãŒå€;
ifïŒfabsïŒtarget_room_temperature-previous_target_room_temperatureïŒ<0.1ïŒ
{
falseãè¿ããŸãã
}
previous_target_room_temperature = target_room_temperature;
trueãè¿ããŸãã
}
uint16_t cycle_counter = 0;
void targetTempChangeCheckerïŒïŒ
{
ifïŒcycle_counter ++ïŒ 16 == 0ïŒ// timer2ã®æ倧æéã¯16ããªç§ãªã®ã§ã16ã®15ãµã€ã¯ã«ãã¹ãããã«ã¢ãŠãããŠã1ç§ãããçŽ4åã¿ãŒã²ãã枩床å€ãæŽæ°ããŸã
{
ifïŒupdateTargetRoomTempïŒïŒïŒ
updateOnScreenInfoïŒïŒ;
}
}
#define OUTSIDE_SENSOR_ID 27327
#define ROOM_SENSOR_ID 13467
#define TEMPERATURE_HYSTERESIS 5
#define HEATER_MAX_TEMP 80
#define HEATER_MIN_TEMP 30
float room_temperature = INVALID_TEMPERATURE;
float outside_temperature = INVALID_TEMPERATURE;
float RW_temperature;
float target_RW_temperature = 30;
OneWire one_wireïŒDSPINïŒ;
ãã©ã¹æž©åºŠã»ã³ãµãŒïŒïŒone_wireïŒ;
void updateTargetRWTemperatureïŒïŒ
{
sensor.requestTemperaturesïŒïŒ;
RW_temperature = sensor.getTempCByIndexïŒ0ïŒ;
target_RW_temperature = 20 +ïŒtarget_room_temperature-outside_temperatureïŒ+ïŒtarget_room_temperature-room_temperatureïŒ* 30;
target_RW_temperature = minïŒtarget_RW_temperatureãHEATER_MAX_TEMPïŒ;
target_RW_temperature = maxïŒtarget_RW_temperatureãHEATER_MIN_TEMPïŒ;
}
LiquidCrystal lcdïŒLCDRSãLCDENABLEãLCDD4ãLCDD5ãLCDD6ãLCDD7ïŒ;
void updateOnScreenInfoïŒïŒ
{
char floatBuffer [7];
lcd.setCursorïŒ0,0ïŒ;
lcd.printïŒFïŒ "éšå±"ïŒïŒ;
lcd.printïŒdtostrfïŒtarget_room_temperatureã2ã1ãfloatBufferïŒïŒ;
lcd.setCursorïŒ0,1ïŒ;
lcd.printïŒFïŒ "W"ïŒïŒ;
lcd.printïŒïŒintïŒRW_temperatureïŒ;
lcd.printïŒFïŒ "TW"ïŒïŒ;
lcd.printïŒïŒintïŒtarget_RW_temperatureïŒ;
}
WirelessSensorPipeãã€ãã
void setupïŒïŒ
{
#ifdef DEBUG
Serial.beginïŒ9600ïŒ;
Serial.printlnïŒFïŒ "Entered setup"ïŒïŒ;
#endif
pinModeïŒHEATERCONTROLPINãOUTPUTïŒ;
sensor.beginïŒïŒ;
pipe.beginïŒTRANSMITPINãRECEIVEPINã13ïŒ;
#ifdef DEBUG
Serial.printïŒFïŒ "ã»ã³ãµãŒIDïŒ"ïŒïŒ;
Serial.printlnïŒpipe.idïŒïŒïŒ;
#endif
updateTargetRoomTempïŒïŒ;
updateTargetRWTemperatureïŒïŒ;
TimerTwo :: initïŒ16384ãtargetTempChangeCheckerïŒ;
TimerTwo :: startïŒïŒ;
lcd.beginïŒ8ã2ïŒ;
}
int current_transmission_phase = 0;
ãã€ãã«ãŒãïŒïŒ
{
#ifdef DEBUG
Serial.printïŒFïŒ "ã¿ã€ã ã¹ã¿ã³ãïŒ"ïŒïŒ;
Serial.printlnïŒmillisïŒïŒ/ 1000ïŒ;
Serial.printïŒFïŒâ RW枩床ïŒâïŒïŒ;
Serial.printlnïŒRW_temperatureïŒ;
Serial.printïŒFïŒâ target_RW枩床ïŒâïŒïŒ;
Serial.printlnïŒtarget_RW_temperatureïŒ;
Serial.printïŒFïŒãå€æ°æž©åºŠïŒâïŒïŒ;
Serial.printlnïŒoutside_temperatureïŒ;
Serial.printïŒFïŒâ宀枩ïŒâïŒïŒ;
Serial.printlnïŒroom_temperatureïŒ;
Serial.printïŒFïŒãç®æšå®€æž©ïŒâãïŒ;
Serial.printlnïŒtarget_room_temperatureïŒ;
// LEDãç¹æ» ãããŠãèªã¿åããå®äºããããšã瀺ããŸã
// digitalWriteïŒ13ãHIGHïŒ;
//é 延ïŒ100ïŒ;
// digitalWriteïŒ13ãLOWïŒ;
#endif
updateTargetRoomTempïŒïŒ;
lcd.beginïŒ8.2ïŒ; //äœããã®çç±ã§LCDãå®æçã«çã£ãŠããŸãã®ã§ãããã¯ãã®ç¶æ ããæãåºãããã®äžæçãªããã¯ã§ãã ãã®ãããªè¡åã®çç±ãæããã«ãªã£ããšãã«åé€ãããŸãã
lcd.clearïŒïŒ;
updateOnScreenInfoïŒïŒ;
WirelessSensorPipe ::ãã±ãããã±ããã
ifïŒpipe.receiveïŒãã±ãããRECEIVETIMEOUT * 1000ïŒïŒ
{
ifïŒpacket.type == WirelessSensorPipe :: TEMPERATUREïŒ
{
ã¹ã€ããïŒpacket.idïŒ
{
ã±ãŒã¹OUTSIDE_SENSOR_IDïŒ
outside_temperature = packet.value;
äŒæ©;
ã±ãŒã¹ROOM_SENSOR_IDïŒ
room_temperature = packet.value;
äŒæ©;
}
}
åž°ã //æ®ãã®ã³ãŒããã¹ãããããŠãããŒã¿ã®éä¿¡ãšãããŒã¿ãé£ç¶ããŠéä¿¡ããä»ã®ããã€ã¹ãšã®ç«¶åãåé¿ããŸãã ã€ãŸãã誰ããéä¿¡ãããŸã§åŸ æ©ãã誰ãéä¿¡ããªãå Žåã¯æ®ãã®äœæ¥ãå®è¡ããŸã
}
updateTargetRWTemperatureïŒïŒ;
ifïŒRW_temperature> = target_RW_temperature + TEMPERATURE_HYSTERESIS && target_RW_temperature <HEATER_MAX_TEMPïŒ
{
disable_heaterïŒïŒ;
}
ifïŒRW_temperature <= target_RW_temperature-TEMPERATURE_HYSTERESIS && target_RW_temperature> HEATER_MIN_TEMPïŒ
{
enable_heaterïŒïŒ;
}
ã¹ã€ããïŒcurrent_transmission_phase ++ïŒ
{
ã±ãŒã¹0ïŒ
pipe.sendïŒWirelessSensorPipe :: TEMPERATUREãroom_temperatureïŒ;
äŒæ©;
ã±ãŒã¹1ïŒ
pipe.sendïŒWirelessSensorPipe :: HEATERSETPOINTãtarget_RW_temperatureïŒ;
äŒæ©;
ã±ãŒã¹2ïŒ
pipe.sendïŒWirelessSensorPipe :: HEATERRWTEMPERATUREãRW_temperatureïŒ;
äŒæ©;
ã±ãŒã¹3ïŒ
pipe.sendïŒWirelessSensorPipe :: HEATERTARGETROOMTEMPERATUREãtarget_room_temperatureïŒ;
äŒæ©;
ã±ãŒã¹4ïŒ
pipe.sendïŒWirelessSensorPipe :: HEATERFLAMEENABLEDãheater_enabledïŒ;
current_transmission_phase = 0;
äŒæ©;
}
}
#include <OneWire.h>
#include <DallasTemperature.h>
#include <VirtualWire.h>
#include <EEPROM.h>
#include <WirelessSensorPipe.h>
#include <LiquidCrystal.h>
#define DEBUG
#define INVALID_TEMPERATUREïŒ1000ïŒ
/ *ããŒããŠã§ã¢æ§æ* /
#define DSPIN 12
#define TRANSMITPIN 3
#define RECEIVEPIN 2
#define HEATERCONTROLPIN 5
#define TARGETTEMPCONTROLPIN A0
// LCDãã³ãããã³ã°
#define LCDRS 11
#define LCDENABLE 10
#define LCDD4 4
#define LCDD5 7
#define LCDD6 8
#define LCDD7 9
#define RECEIVETIMEOUT 30 //ã¯ã€ã€ã¬ã¹åä¿¡ã¿ã€ã ã¢ãŠã
bool Heater_enabled = false;
void enable_heaterïŒïŒ
{
digitalWriteïŒHEATERCONTROLPINãHIGHïŒ;
Heater_enabled = true;
}
void disable_heaterïŒïŒ
{
digitalWriteïŒHEATERCONTROLPINãLOWïŒ;
Heater_enabled = false;
}
float target_room_temperatureãprevious_target_room_temperature;
/ *ããã³ã·ã§ã¡ãŒã¿ããç®æšå®€æž©ãèªã¿åããå€ãå€æŽãããå Žåã«trueãè¿ããŸã* /
bool updateTargetRoomTempïŒïŒ
{
uint16_tpotentiometer_value = analogReadïŒTARGETTEMPCONTROLPINïŒ;
target_room_temperature = 22 + 4 / 1024.0 *ããã³ã·ã§ã¡ãŒã¿ãŒå€;
ifïŒfabsïŒtarget_room_temperature-previous_target_room_temperatureïŒ<0.1ïŒ
{
falseãè¿ããŸãã
}
previous_target_room_temperature = target_room_temperature;
trueãè¿ããŸãã
}
uint16_t cycle_counter = 0;
void targetTempChangeCheckerïŒïŒ
{
ifïŒcycle_counter ++ïŒ 16 == 0ïŒ// timer2ã®æ倧æéã¯16ããªç§ãªã®ã§ã16ã®15ãµã€ã¯ã«ãã¹ãããã«ã¢ãŠãããŠã1ç§ãããçŽ4åã¿ãŒã²ãã枩床å€ãæŽæ°ããŸã
{
ifïŒupdateTargetRoomTempïŒïŒïŒ
updateOnScreenInfoïŒïŒ;
}
}
#define OUTSIDE_SENSOR_ID 27327
#define ROOM_SENSOR_ID 13467
#define TEMPERATURE_HYSTERESIS 5
#define HEATER_MAX_TEMP 80
#define HEATER_MIN_TEMP 30
float room_temperature = INVALID_TEMPERATURE;
float outside_temperature = INVALID_TEMPERATURE;
float RW_temperature;
float target_RW_temperature = 30;
OneWire one_wireïŒDSPINïŒ;
ãã©ã¹æž©åºŠã»ã³ãµãŒïŒïŒone_wireïŒ;
void updateTargetRWTemperatureïŒïŒ
{
sensor.requestTemperaturesïŒïŒ;
RW_temperature = sensor.getTempCByIndexïŒ0ïŒ;
target_RW_temperature = 20 +ïŒtarget_room_temperature-outside_temperatureïŒ+ïŒtarget_room_temperature-room_temperatureïŒ* 30;
target_RW_temperature = minïŒtarget_RW_temperatureãHEATER_MAX_TEMPïŒ;
target_RW_temperature = maxïŒtarget_RW_temperatureãHEATER_MIN_TEMPïŒ;
}
LiquidCrystal lcdïŒLCDRSãLCDENABLEãLCDD4ãLCDD5ãLCDD6ãLCDD7ïŒ;
void updateOnScreenInfoïŒïŒ
{
char floatBuffer [7];
lcd.setCursorïŒ0,0ïŒ;
lcd.printïŒFïŒ "éšå±"ïŒïŒ;
lcd.printïŒdtostrfïŒtarget_room_temperatureã2ã1ãfloatBufferïŒïŒ;
lcd.setCursorïŒ0,1ïŒ;
lcd.printïŒFïŒ "W"ïŒïŒ;
lcd.printïŒïŒintïŒRW_temperatureïŒ;
lcd.printïŒFïŒ "TW"ïŒïŒ;
lcd.printïŒïŒintïŒtarget_RW_temperatureïŒ;
}
WirelessSensorPipeãã€ãã
void setupïŒïŒ
{
#ifdef DEBUG
Serial.beginïŒ9600ïŒ;
Serial.printlnïŒFïŒ "Entered setup"ïŒïŒ;
#endif
pinModeïŒHEATERCONTROLPINãOUTPUTïŒ;
sensor.beginïŒïŒ;
pipe.beginïŒTRANSMITPINãRECEIVEPINã13ïŒ;
#ifdef DEBUG
Serial.printïŒFïŒ "ã»ã³ãµãŒIDïŒ"ïŒïŒ;
Serial.printlnïŒpipe.idïŒïŒïŒ;
#endif
updateTargetRoomTempïŒïŒ;
updateTargetRWTemperatureïŒïŒ;
TimerTwo :: initïŒ16384ãtargetTempChangeCheckerïŒ;
TimerTwo :: startïŒïŒ;
lcd.beginïŒ8ã2ïŒ;
}
int current_transmission_phase = 0;
ãã€ãã«ãŒãïŒïŒ
{
#ifdef DEBUG
Serial.printïŒFïŒ "ã¿ã€ã ã¹ã¿ã³ãïŒ"ïŒïŒ;
Serial.printlnïŒmillisïŒïŒ/ 1000ïŒ;
Serial.printïŒFïŒâ RW枩床ïŒâïŒïŒ;
Serial.printlnïŒRW_temperatureïŒ;
Serial.printïŒFïŒâ target_RW枩床ïŒâïŒïŒ;
Serial.printlnïŒtarget_RW_temperatureïŒ;
Serial.printïŒFïŒãå€æ°æž©åºŠïŒâïŒïŒ;
Serial.printlnïŒoutside_temperatureïŒ;
Serial.printïŒFïŒâ宀枩ïŒâïŒïŒ;
Serial.printlnïŒroom_temperatureïŒ;
Serial.printïŒFïŒãç®æšå®€æž©ïŒâãïŒ;
Serial.printlnïŒtarget_room_temperatureïŒ;
// LEDãç¹æ» ãããŠãèªã¿åããå®äºããããšã瀺ããŸã
// digitalWriteïŒ13ãHIGHïŒ;
//é 延ïŒ100ïŒ;
// digitalWriteïŒ13ãLOWïŒ;
#endif
updateTargetRoomTempïŒïŒ;
lcd.beginïŒ8.2ïŒ; //äœããã®çç±ã§LCDãå®æçã«çã£ãŠããŸãã®ã§ãããã¯ãã®ç¶æ ããæãåºãããã®äžæçãªããã¯ã§ãã ãã®ãããªè¡åã®çç±ãæããã«ãªã£ããšãã«åé€ãããŸãã
lcd.clearïŒïŒ;
updateOnScreenInfoïŒïŒ;
WirelessSensorPipe ::ãã±ãããã±ããã
ifïŒpipe.receiveïŒãã±ãããRECEIVETIMEOUT * 1000ïŒïŒ
{
ifïŒpacket.type == WirelessSensorPipe :: TEMPERATUREïŒ
{
ã¹ã€ããïŒpacket.idïŒ
{
ã±ãŒã¹OUTSIDE_SENSOR_IDïŒ
outside_temperature = packet.value;
äŒæ©;
ã±ãŒã¹ROOM_SENSOR_IDïŒ
room_temperature = packet.value;
äŒæ©;
}
}
åž°ã //æ®ãã®ã³ãŒããã¹ãããããŠãããŒã¿ã®éä¿¡ãšãããŒã¿ãé£ç¶ããŠéä¿¡ããä»ã®ããã€ã¹ãšã®ç«¶åãåé¿ããŸãã ã€ãŸãã誰ããéä¿¡ãããŸã§åŸ æ©ãã誰ãéä¿¡ããªãå Žåã¯æ®ãã®äœæ¥ãå®è¡ããŸã
}
updateTargetRWTemperatureïŒïŒ;
ifïŒRW_temperature> = target_RW_temperature + TEMPERATURE_HYSTERESIS && target_RW_temperature <HEATER_MAX_TEMPïŒ
{
disable_heaterïŒïŒ;
}
ifïŒRW_temperature <= target_RW_temperature-TEMPERATURE_HYSTERESIS && target_RW_temperature> HEATER_MIN_TEMPïŒ
{
enable_heaterïŒïŒ;
}
ã¹ã€ããïŒcurrent_transmission_phase ++ïŒ
{
ã±ãŒã¹0ïŒ
pipe.sendïŒWirelessSensorPipe :: TEMPERATUREãroom_temperatureïŒ;
äŒæ©;
ã±ãŒã¹1ïŒ
pipe.sendïŒWirelessSensorPipe :: HEATERSETPOINTãtarget_RW_temperatureïŒ;
äŒæ©;
ã±ãŒã¹2ïŒ
pipe.sendïŒWirelessSensorPipe :: HEATERRWTEMPERATUREãRW_temperatureïŒ;
äŒæ©;
ã±ãŒã¹3ïŒ
pipe.sendïŒWirelessSensorPipe :: HEATERTARGETROOMTEMPERATUREãtarget_room_temperatureïŒ;
äŒæ©;
ã±ãŒã¹4ïŒ
pipe.sendïŒWirelessSensorPipe :: HEATERFLAMEENABLEDãheater_enabledïŒ;
current_transmission_phase = 0;
äŒæ©;
}
}
ç»é¢ãæäœãããšãã»ãšãã©ã®åé¡ãçºçããããšã«æ³šæããŠãã ããã äžé©åãªæ¥ç¶ãåæåãªã©ãåäŸã®ãã ãã«ã€ããŠã¯èª¬æããŸããããã¿ã€ããŒã®äžæ£ç¢ºãªäœ¿çšã«é¢é£ããåé¡ã«ã€ããŠã¯èšåã§ããŸãã å®éã«ã¯ãæåã®ã¿ã€ããŒå®è£ ã¯A0ãèªã¿åãã枩床ãèšç®ããç»é¢ã確å®ã«æŽæ°ããŸããã ãªãã¬ãã·ã¥ã¬ãŒãã¯2 Hzãšéåžžã«é«ããç»é¢ã®æŽæ°æé ã¯éåžžã«æéãããããŸããã ããã¯ãã¢ã«ãŽãªãºã ã®ã¡ã€ã³ã«ãŒãïŒã»ãšãã©ã®æéã空äžããåä¿¡ããããšããããšã«è²»ããããïŒããã¿ã€ããŒãã³ãã©ãŒã«ãã£ãŠé·ãéäžæããããšããäºå®ã«ã€ãªãããŸããã ããã«ãããåä¿¡æ©ã®ãœãããŠã§ã¢éšåã¯ãã¿ã€ããŒãã³ãã©ãŒã®æ³šææ£æŒ«äžã«å€ãã®ããšãéããããã空äžããäœãåä¿¡ã§ããŸããã§ããã ããã«ãç»é¢ããšãã©ãçã£ãŠããŸããå ã«æ»ãã«ã¯ååæåããå¿ èŠããããŸãã ãã®åäœã®çç±ã¯äœã§ãããããããŸããã
ç§ãééãã2çªç®ã®åé¡-ã³ã³ãããŒã©ãŒãæåã«èšçœ®ãããå Žæã¯ãæ®å¿ãªç¡ç·ã®åœ±ã®å Žæã§ããããšãå€æããŸããã
ãããã®2ã€ã®åé¡ã«ãããã³ã³ãããŒã©ãŒãäœãåãå ¥ããªãçç±ã解æããããšããŠããªãã®å€ã奪ãããŸããã æãæ£å察ã¯ããããã®ãããããåé€ããŠãç¶æ³ãæ¹åãããªãã£ããããäž¡æ¹ãåæã«è§£æ±ºããå¿ èŠããã£ããããããªãé·ãéããç¡ç·ã®åœ±ã¯ãããšã¯é¢ä¿ãããŸãããããã³ããã¹ãŠãåä¿¡åŽãšæ£åžžã«ãªã£ãŠããããªã©ã®ãšã©ãŒãçºçããŸããã
ãã1ã€ã®éåžžã«æªãã¢ã€ãã¢ã¯ãã¢ã«ãŽãªãºã ã®åå埩ã§ããã¹ãŠã®å¶åŸ¡ããããã©ã¡ãŒã¿ãŒãäžæ¬ããŠç¡ç·ã«è»¢éããããšã§ããã éä¿¡ããããã©ã¡ãŒã¿ãŒã«ã¯ãéšå±ã®æž©åºŠãéãã®æž©åºŠïŒå¶åŸ¡ç®çã§ã®ç¹°ãè¿ãïŒã家ã®èšå®ç®æšæž©åºŠãæ°Žæž©ã®èšç®ãããç®æšå€ãæ°Žæž©ã®çŸåšå€ããã€ã©ãŒå¶åŸ¡åè·¯ãéããŠãããã©ãããå«ãŸããŸãã ã¢ã«ãŽãªãºã ã®1åã®å埩ã®å®è¡ã«ã¯çŽ30ç§ãããããããã±ããã®æã1åéã«2å空äžã«èœã¡ãè¡çªã®ç¢ºçãå¢å ããŸããã ãããã£ãŠã1åã®å埩ã§1ã€ã®ãã©ã¡ãŒã¿ãŒã®ã¿ã空äžã«éä¿¡ããããã«ãã¡ãŒã ãŠã§ã¢ãå€æŽããå¿ èŠããããŸããã ãããã£ãŠãåãã©ã¡ãŒã¿ãŒã¯3åããšã«æŽæ°ããå§ããŸããã
ããŒããªã¹ã
Arduino Pro Mini -100ã«ãŒãã«ãã€
DS18B20-34åãã€ããã
ãã©ã³ã¹ããã¿ãŒ+ã¬ã·ãŒããŒ433MHz -40ã«ãŒãã«
LCD WH0802A-NGG-CT -125ã«ãŒãã«ãã€
4N35-9ã«ãŒãã«ãã€
ãã€ãªãŒãããªããžDB107-5.5ã«ãŒãã«ãã€
æµæåš-ããã5ã«ãŒãã«
ãã°ã«ã¹ã€ããïŒãªãã©ã€ã³ã§è³Œå ¥ïŒ-20ã«ãŒãã«
ã±ãŒã¹KR-606-PS -40ã«ãŒãã«
çµæ-ã¯ãã ããã¬ããããŒããã¯ã€ã€ãã¯ãã ããŠã®æžäŸ¡ååŽè²»ãèæ ®ããŠ-çŽ450ã«ãŒãã«ã Ebayã§LCDã泚æããå Žåãããã«80ã«ãŒãã«å®ããªããŸãã
ãã¹ããçµè«ãèšç»
ã³ã³ãããŒã©ãŒèªäœãšã¹ãã€ã©ãŒã®äžã®ãã€ã©ãŒã®åçã LCDã®äžã®äžåçã«ã«ããããããŠã£ã³ããŠããIã³ããŸãã
åç
ããããDS18B20ã¯ãã€ã©ãŒåºå£ã«ããæ¢ããããŠããŸã
åç
ãã³ã³ãããŒã«ããã«ããåãStrikeã§ã©ã®ããã«èŠãããã®åçã
åç
ç§ãèšã£ãããã«ã2ã€ã®å¶åŸ¡ã¹ããŒã ãå®è£ ãããŸãã-å€å žçãªãããªãã¡ ãç±ããªãïŒã ç§ãã¡ã¯æããŸãïŒãããããŠè¡è·¯æž©åºŠã®è£æ£ãè¡ããŸãã
ååãšããŠãæåã®ãã®ã¯æåã«æ瀺ã·ã¹ãã ã«æ瀺ãããèŠä»¶ãæºãããŸããã ç®æšå€ã®ååã®ç¯å²å ã®å®€æž©ãæäŸããŸããã ãã ãããã¡ãªããã¯ããã®ç®æšå€ã®ååŸã®å€åã§ãããæ¯å¹ ã¯ã»ãŒ0.5床ã§ãã ã€ãŸã 宀å ã®æž©åºŠã¯ã¿ãŒã²ããã®åšãã§æ¯åããŸããããã®æ¯åã¯ãå€éšèŠå ãå®å®ããŠãããããæããã«å€éšèŠå ã«ãããã®ã§ã¯ãããŸããã§ããã
ããããOTCã®å°å ¥ã¯äºæ³å€ã®è¯ãçµæããããããŸããã äžèšã®åŒã«åŸã£ãŠã¢ã«ãŽãªãºã ã«åŸã£ãŠäœæ¥ãããšã枩床ãã¿ãŒã²ãããã-0.2 + 0.1床以å ã«å®å®ããŸããã 0.2床ã®äœäžã¯äœæž©èª¿ç¯ããã»ã¹ã®ç¹æ§ãšã¯é¢ä¿ããããŸãããã誰ããæž©æ°ŽãéããšïŒããšãã°ãæŽæµã«30åããããŸãïŒããã€ã©ãŒã¯çµŠæ¹¯åè·¯ã§æž©æ°Žã確å®ã«å ç±ããããã«å¿ããããšã«æ³šæããŠãã ããã å ç±åè·¯ã¯å ç±ããŸããã
ãã®ã¢ãŒãã®ã³ã³ãããŒã©ãŒã¯åæäœåããŠãããé£è¡ã¯æ£åžžã§ãæ éã¯ãããŸããã§ããã ãµãŒã¢ã¹ã¿ããã¯å¿ççãªå¿«é©ãããã¡ããšé«ããŠãããšèšããŸãã 以åã¯ãå°ãªããšãå€ãšæããšã«æ°Žæž©ãèšå®ããå¿ èŠããããŸããããçŸåšã®è·¯äžæž©åºŠãäºæž¬ãšèªåã®çŽæã®èšŒèšã«å¿ããŠåªåãå¿ èŠã§ãããããã€ã©ãŒãããããšãèŠããŠããŸãã-ããã¯ããèªäœã§åäœããŸãã
èšç»ã¯OT / +ãçµãããšãæå³ãã泚æãããªã·ãã¹ã³ãŒãã®å©ç¹ããããŸãããããã®å©ããåããŠãééã£ããã®ããã€ã©ãŒã«éã£ãããšãæ¢ã«ããããŸããïŒã³ãŒãã«ãããã¡ãªã¿ã€ããã¹ãããã確èªããŠããŸããã§ãã-ç§ã®ç®ã¯ãŒãããŸããïŒç§ã¯äžè¬çã«é»ã£ãŠããŸãã ååãšããŠãããã¯ãµãŒã¢ã¹ã¿ããã®åäœãæ¹åããŸããããããå€ãã®èšºæãæ®åœ±ããããšãå¯èœã«ããŸãã ããã«ãããã¯ã誰ããšããã«ããŽãªãŒã®æ ¹æ¬çãªåé¡ã«ãªããŸããã