рд╕рднреА рдХреЛ рдирдорд╕реНрдХрд╛рд░ред рдпрд╣ ESP8266 + Blynk = is рд╢реНрд░реЗрдгреА рдХрд╛ рдПрдХ рдЕрдиреНрдп рд▓реЗрдЦ рд╣реИред рдореИрдВ рдЖрдкрдХреЛ рдЗрд╕реЗ рд╡рд┐рдЬреНрдЮрд╛рдкрди рдХреЗ рд░реВрдк рдореЗрдВ рдирд╣реАрдВ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдмрд┐рд▓рдХ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдФрд░ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЕрдиреБрднрд╡ рдХреЗ рд▓рд┐рдП рдПрдХ рд╢реНрд░рджреНрдзрд╛рдВрдЬрд▓рд┐ рдХреЗ рд░реВрдк рдореЗрдВ рдЬреЛ рдХрд┐рд╕реА рдФрд░ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рд╢реБрд░реБрдЖрдд
рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдХрдИ рд╕рд╛рд▓ рдкрд╣рд▓реЗ рдкреИрджрд╛ рд╣реБрдЖ рдерд╛, рдЬрдм рдЕрд▓реА рдкрд░ DYI рдЙрддреНрд╕рд╛рд╣ рдХреЗ рдПрдХ рдлрд┐рдЯ рдореЗрдВ, рдПрдХ
MQ-135 рд╡рд╛рдпреБ рдЧреБрдгрд╡рддреНрддрд╛ рд╕реЗрдВрд╕рд░ рдЦрд░реАрджрд╛ рдЧрдпрд╛ рдерд╛ред рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдпрд╣ рд╕реЗрдВрд╕рд░ рд╣рд╡рд╛ рдореЗрдВ рдРрд╕реЗ рдкрджрд╛рд░реНрдереЛрдВ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдкрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд░рддрд╛ рд╣реИ рдЬреИрд╕реЗ: NH3, NOx, рд╢рд░рд╛рдм, рдЧреИрд╕реЛрд▓реАрди, рдзреБрдЖрдВ рдФрд░ CO2 рдФрд░ рдПрдирд╛рд▓реЙрдЧ рдЖрдЙрдЯрдкреБрдЯ рдкрд░ рдЗрд╕рдХрд╛ рд╕рд╛рд░ рд╣рд╡рд╛ рдХреА рдЧреБрдгрд╡рддреНрддрд╛ рдХрд╛ рдЕрдиреБрдорд╛рди рджреЗрддрд╛ рд╣реИ [рд╣рд╛рдБ, рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдЯреНрдпреВрдирд┐рдВрдЧ рдкреНрд░рддрд┐рд░реЛрдз рдФрд░ рдЕрдВрд╢рд╛рдВрдХрди рд╡рд┐рдзрд┐рдпрд╛рдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рддрд░рд╣ рдпрд╣ рдмрд╣реБрдд рдЬрдЯрд┐рд▓ рд╣реИ]ред
рдкрд░реАрдХреНрд╖рдгреЛрдВ рд╕реЗ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рд╕реЗрдВрд╕рд░ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рд╣рд╛рдирд┐рдХрд╛рд░рдХ рдФрд░ "рдмрджрдмреВрджрд╛рд░" рдпреМрдЧрд┐рдХреЛрдВ рдХреЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд░рддрд╛ рд╣реИ, рдЖрдЙрдЯрдкреБрдЯ рд╕реНрддрд░ рдореЗрдВ рдПрдХ рддреЗрдЬ рдмрджрд▓рд╛рд╡ рджрд┐рдЦрд╛рддрд╛ рд╣реИред рдПрдХ рдЕрджреГрд╢реНрдп рд╢рддреНрд░реБ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рдХреЗ рд╕рд╛рде рд╕реНрдерд┐рддрд┐ рдмрджрддрд░ рдереА, рдЕрд░реНрдерд╛рддреН рдХрд╛рд░реНрдмрди рдбрд╛рдЗрдСрдХреНрд╕рд╛рдЗрдб CO2ред рдЗрд╕ рдбрд╛рдЗрдСрдХреНрд╕рд╛рдЗрдб рдХреЗ рдиреБрдХрд╕рд╛рди рдФрд░ рд╕реНрдкрд╖реНрдЯ рд╕рд░реНрд╡рд╡реНрдпрд╛рдкрдХрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рдХреБрдЫ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рд╣рдордиреЗ рдЗрд╕реЗ рджреЛрд╣рд░рд╛рдпрд╛ рдирд╣реАрдВред

рдЗрд╕рд▓рд┐рдП, рдореЗрд░реЗ рд▓рд┐рдП, MQ-135 рд╕реЗрдВрд╕рд░ рдмреЗрдХрд╛рд░ рд╣реЛ рдЧрдпрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рднреАрдбрд╝ рдореЗрдВ рдФрд░ рддрд╛рдЬреА рд╣рд╡рд╛ рдореЗрдВ рдПрдХ рдХрдорд░реЗ рдХреА рд╣рд╡рд╛ рдХреА рдЧреБрдгрд╡рддреНрддрд╛ рдореЗрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЕрдВрддрд░ рдХреЛ "рдиреЛрдЯрд┐рд╕" рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдерд╛ред рд▓реЗрдХрд┐рди рдХреЙрд▓ рдкрд╣рд▓реЗ рд╣реА рд╕реНрд╡реАрдХрд╛рд░ рдХрд░ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдХреБрдЫ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ рдХреЛ рдмрд╛рдж рдореЗрдВ
MH-Z19 IR рд╕реЗрдВрд╕рд░ рдХреЗ рд╕рд╛рде рдУрдкрдирд╡рд┐рдВрдбрдПрдпрд░ рдмреЛрд░реНрдб рдХреЗ рдЕрдВрддрд┐рдо (рд╡рд░реНрддрдорд╛рди) рд╕рдВрд╕реНрдХрд░рдг рдХрд╛
рдЬрдиреНрдо рд╣реБрдЖ [рд╣рд╛рдБ рдмрд┐рд▓реНрдХреБрд▓ рд╕рд╣реА рдирд╣реАрдВ, рд╣рд╛рдБ рдЪреАрдиреА]ред
ESP рдкрд░ рд▓реЗрдЦ
рдбреЗрдЯрд╛ рдЕрдзрд┐рдЧреНрд░рд╣рдг рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рдкрд░рд┐рдгрд╛рдореА рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдФрд░ рдЗрд╕рдХреА рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдХреНрд╖рдорддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдкрдврд╝реЗрдВ
ред рднрд╛рдЧ IрдПрдХ рдЖрд╡рд╛рд╕реАрдп рднрд╡рди рдореЗрдВ рдХрд╛рд░реНрдмрди рдбрд╛рдЗрдСрдХреНрд╕рд╛рдЗрдб рдХреЗ рд╕реНрддрд░ рдХреЛ рдорд╛рдкрдиреЗ рдХреЗ рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП, рд╕реЗрдВрд╕рд░ рдПрдХ рдЖрджрд░реНрд╢ рдФрд░ рдЗрд╖реНрдЯрддрдо рд╕рдорд╛рдзрд╛рди рдирд┐рдХрд▓рд╛ (рдбрд┐рд▓реАрд╡рд░реА рдХреЗ рд╕рд╛рде рдЕрд▓реА рдХреЗ рд▓рд┐рдП 1200 рд░реВрдмрд▓)ред
Blynk - рд▓реЛрд╣реЗ, рдмрд╛рджрд▓ рдФрд░ рдлреЛрди рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИ
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдмрд┐рд▓рдХ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд╣рд▓реЗ рд╣реА рдмрд╣реБрдд рдХреБрдЫ рдХрд╣рд╛ рдЬрд╛ рдЪреБрдХрд╛
рд╣реИ ред рдордВрдЪ рдХреНрд╖рдорддрд╛рдУрдВ рдмрд╕ рдЕрдкрдиреА рд╡рд┐рдЪрд╛рд░рд╢реАрд▓рддрд╛ рдФрд░ рдЙрдкрдпреЛрдЧ рдореЗрдВ рдЖрд╕рд╛рдиреА рдореЗрдВ рдЖрд╢реНрдЪрд░реНрдп рдХреА рдмрд╛рдд рд╣реИред рдЗрд╕рд▓рд┐рдП рдЬрдм ESP8266 рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд╛рд╕ рдХрд╛ рдорд╛рд╣реМрд▓ рдЪреБрдирдиреЗ рдФрд░ рдПрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рд▓рд┐рдЦрдиреЗ рдХрд╛ рд╕рдордп рдЖрдпрд╛, рддреЛ рд╡рд┐рдХрд▓реНрдк рддреБрд░рдВрдд
Arduino IDE рдФрд░ Blynk рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдкрд░ рдЧрд┐рд░ рдЧрдпрд╛ред
рдкрд░реАрдХреНрд╖рдг рд╕реНрдХреЗрдЪ
BlynkSimpleEsp8266 рдЪрд▓рд╛рдиреЗ рд╕реЗ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реБрдИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЬреИрд╕реЗ-рдЬреИрд╕реЗ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реЛрддреА рдЧрдИ рдФрд░ рдмрдврд╝рддреА рдЧрдИ, рдореБрдЭреЗ рдХреБрдЫ рдХрдард┐рдирд╛рдЗрдпреЛрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛, рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореИрдВ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдмрд╛рдд рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред
рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛
Arduino IDE рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ ESP8266 рдХреЗ рд▓рд┐рдП рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдореБрдЦреНрдп рд▓рд╛рдн рдпрд╣ рд╣реИ рдХрд┐ рдЖрдк рдПрдХ рд╕реНрдХреЗрдЪ рдореЗрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЗрд╕рдХреЗ рд▓рд┐рдП рд▓рдЧрднрдЧ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реЛрдЧрд╛ред
рдЯреАрдХреЗ рдХреЗ рд╡рд┐рдХрд╛рд╕ рд╕реЗ рдкрд╣рд▓реЗ, рдпрд╣ рдереАрд╕рд┐рд╕ рддреИрдпрд╛рд░ рдХреА рдЧрдИ рдереА рдФрд░ рдЗрд╕рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдмрд┐рдВрджреБ рд╢рд╛рдорд┐рд▓ рдереЗ:
1. рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдЕрдВрддрд░рд╛рд▓ рдкрд░ CO2 рд╕реЗрдВрд╕рд░ (MH-Z19) рдХреЛ рдкрдврд╝рдирд╛ рдФрд░ рддреАрди (рд╣рд░реЗ, рдкреАрд▓реЗ, рд▓рд╛рд▓) рдПрд▓ рдИ рдбреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд░рд┐рдгрд╛рдо рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рд╕реАрдорд╛рдПрдБ рд▓рдЧрднрдЧ
GOST 30494-2011 (рдЖрд╡рд╛рд╕реАрдп рдФрд░ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдЗрдорд╛рд░рддреЛрдВ) рдХрдорд░реЛрдВ рдореЗрдВ
рдорд╛рдЗрдХреНрд░реЛрдХрд▓рд╛рдЗрдореЗрдЯ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рдЪреБрдиреА рдЧрдИ рдереАрдВ: 900 рдкреАрдкреАрдПрдо рддрдХ -
рд╣рд░рд╛ , 901 рд╕реЗ 1400 рдкреАрдкреАрдПрдо -
рдкреАрд▓рд╛ , 1401 рдкреАрдкреАрдПрдо рд╕реЗ рдКрдкрд░ -
рд▓рд╛рд▓ ред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдмреАрдкрд░ рднреА рд╣реИ рдЬрд┐рд╕рдХреА рдмреАрдкрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рджрд╣рд▓реАрдЬ 1100 рдкреАрдкреАрдПрдо рдкрд░ рд╕реЗрдЯ рдХреА рдЧрдИ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдмрд┐рд▓рдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдпрд╛ рдЕрдХреНрд╖рдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЗ рджреМрд░рд╛рди, рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдХрднреА-рдХрднреА MH-Z19 рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдорд╛рдкрд╛ рдЬрд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЗрд╕рдХреА рдЕрдзрд┐рдХрддрдо рдореВрд▓реНрдп (рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╕реАрдорд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░: 1000, 2000, 3000 рдпрд╛ 5000 рдкреАрдкреАрдПрдо) рдХреЛ рдЧрдбрд╝рдмрдбрд╝ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдмрд╛рд╣рд░ рджреЗ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдереЛрдбрд╝рд╛ рдЬрдЯрд┐рд▓ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЧрд▓рдд рд╕рдВрджреЗрд╢ рджреЗ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдирд╕реЛрдВ рдХреЛ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдФрд░ рдЬрдм рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмреИрдарддрд╛ рд╣реИ рдФрд░ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕реЗрдВрд╕рд░ рдореЗрдВ рд╕рд╛рдБрд╕ рд▓реЗрдиреЗ рдХреА рд╕реНрдерд┐рддрд┐ рд╕реЗ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдорд╛рдкреА рдЧрдИ 2000 рдкреАрдкреАрдПрдо (рдЬреАрд╡рд┐рдд рдХреНрд╡рд╛рд░реНрдЯрд░реЛрдВ рдХреЗ рд▓рд┐рдП рдЬрдВрдЧрд▓реА рдореВрд▓реНрдп) рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдмрд┐рд▓реНрдХреБрд▓ рд╕рд╣реА (рдХрдИ рдорд╛рдк рдХреЛ рдЫреЛрдбрд╝рдХрд░) рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреЛ рдЙрдкрд╛рдп рдХрд┐рдП рдЧрдП рдереЗ: рдорд╛рдк рд╕реАрдорд╛
2000 рдкреАрдкреАрдПрдо рдкрд░ рд╕реЗрдЯ рдХреА рдЧрдИ рдереА (рдпрд╣ рдЖрд╡рд╛рд╕реАрдп рдкрд░рд┐рд╕рд░ рдореЗрдВ рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ 1400 рд╕реЗ рдЕрдзрд┐рдХ рд╕рдм рдХреБрдЫ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ
рд░реЗрдб рдЬрд╝реЛрди рд╣реИ) рдФрд░ рдкрд┐рдЫрд▓реЗ 10 рдорд╛рдкреЛрдВ рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХрд╛ рдФрд╕рдд рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИред рдирддреАрдЬрддрди, рдПрдХрд▓ рдЭреВрдареЗ рд╕рдХрд╛рд░рд╛рддреНрдордХ (2000 рдкреАрдкреАрдПрдо рдкрд░) рдФрд╕рдд рдЧреНрд░рд╛рдл рдкрд░ рдмрдбрд╝реЗ рдЙрдЫрд╛рд▓ рдХрд╛ рдЙрддреНрдкрд╛рджрди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдк рдЪрд╛рд╣реЗрдВ, рддреЛ рдмрд┐рдиреНрдирдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрдк рд╕реЗрдВрд╕рд░ рдорд╛рдк рд╕реАрдорд╛ рдХреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ (рдФрд╕рдд CO2 рдореВрд▓реНрдп рдирд╣реАрдВ) рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред
2. Adafruit DHT Sensor Library рдХрд╛ рдЙрдкрдпреЛрдЧ рддрд╛рдкрдорд╛рди / рдЖрд░реНрджреНрд░рддрд╛ рд╕реЗрдВрд╕рд░ (
AM2302 ) рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рджреЛ рдЫреЛрдЯреЗ рдмрджрд▓рд╛рд╡ рдХрд┐рдП рдЧрдП рдереЗ: AM2302 рдХрд╛ рдкреБрди: рдкрдврд╝рдирд╛ (рдХрднреА-рдХрднреА рдпрд╣ рдкрд╣рд▓реА рдмрд╛рд░ рдирд╣реАрдВ рдкрдврд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ) рдФрд░ рддрд╛рдкрдорд╛рди рдФрд░ рдЖрд░реНрджреНрд░рддрд╛ рдореВрд▓реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реБрдзрд╛рд░ рдХрд╛рд░рдХ рдкреЗрд╢ рдХрд┐рдП рдЧрдП рдереЗред рдпрджрд┐ рдПрдХ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╕реЗрдВрд╕рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рд░реВрдк рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдЕрдВрджрд░ рд╣рд╡рд╛ 15% рд╣реИ рдФрд░ рдмрд╛рд╣рд░ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ 2 рдбрд┐рдЧреНрд░реА рд╕реЗрд▓реНрд╕рд┐рдпрд╕ (1 рдбрд┐рдЧреНрд░реА рдПрдл) рд╕реЗ рдЕрдзрд┐рдХ рдЧрд░реНрдо рд╣реИ, рдЬрдм рдмрд╛рд╣рд░реА рд╕реЗрдВрд╕рд░ (рдЬрдореНрдкрд░ рджреНрд╡рд╛рд░рд╛ рдЪрдпрдирд┐рдд) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ - рдорд╛рдкрд╛ рдкрд░рд┐рдгрд╛рдореЛрдВ рдореЗрдВ рдХреЛрдИ рд╕реБрдзрд╛рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдФрд░ рдЕрдХреНрд╖рдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
3. рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдпрд╛ рдлреНрд▓реИрд╢рд┐рдВрдЧ рдХреЗ рдмрд┐рдирд╛ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП (рд╡рд╛рдИрдлрд╛рдИ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ, рдУрдПрд╕ рдЯреЛрдХрди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВ, рдЖрджрд┐)ред рд╕рдмрд╕реЗ рдЗрд╖реНрдЯрддрдо рд╕рдорд╛рдзрд╛рди
WiFiManager рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдерд╛, рдЬреЛ ESP рдХреЛ рдПрдХреНрд╕реЗрд╕ рдкреЙрдЗрдВрдЯ рдореЛрдб рдореЗрдВ рд░рдЦрддрд╛ рд╣реИ рдФрд░ рдЖрдкрдХреЛ
рдХреИрдкреНрдЯрд┐рд╡ рдкреЛрд░реНрдЯрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ USB рдлреНрд▓реИрд╢ рдбреНрд░рд╛рдЗрд╡ рдореЗрдВ рд╡рд╛рдИрдлрд╛рдИ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдФрд░ рдЕрдиреНрдп рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рд╕рд╣реЗрдЬрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рднрд╡рд┐рд╖реНрдп рдореЗрдВ, рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдореЗрдВ, рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕рд╣реЗрдЬреЗ рдЧрдП рд╡рд╛рдИрдлрд╛рдИ рдмрд┐рдВрджреБ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реИ рдФрд░, рд╡рд┐рдлрд▓рддрд╛ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдПрдХреНрд╕реЗрд╕ рдкреНрд╡рд╛рдЗрдВрдЯ рдФрд░ рдХреИрдкреНрдЯрд┐рд╡ рдкреЛрд░реНрдЯрд▓ рдореЛрдб рдкрд░ рд╡рд╛рдкрд╕ рд╕реНрд╡рд┐рдЪ рдХрд░рддрд╛ рд╣реИред рдФрд░ рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдЪрд╛рдирдХ рдмреЗрд▓реНрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ рдпрд╛ рдЙрд╕рдХреЗ рдкрд╛рд╕ рд╡рд╛рдИрдлрд╛рдИ рд░рд╛рдЙрдЯрд░ рдирд╣реАрдВ рд╣реИ, рддреЛ рдУрдкрдирд╡рд┐рдВрдбрдПрдпрд░ рдХрднреА рдмреВрдЯ рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдФрд░ рдХреЗрд╡рд▓ рдПрдкреА рдореЛрдб рдореЗрдВ рд╢реБрд░реВ рд╣реЛрдЧрд╛ рдФрд░ рдЯрд╛рдЗрдордЖрдЙрдЯ рджреНрд╡рд╛рд░рд╛ рд░рд┐рдмреВрдЯ рд╣реЛрдЧрд╛ред
рдЗрд╕ рдирд┐рд░рд╛рд╢рд╛рдЬрдирдХ рд╕реНрдерд┐рддрд┐ рд╕реЗ рдмрд╛рд╣рд░ рдХрд╛ рд░рд╛рд╕реНрддрд╛ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдкрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЕрдЧрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЕрднреА рднреА Blynk рдпрд╛ MQTT рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧреИрд░-рд╢реВрдиреНрдп рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╣реИрдВ, рддреЛ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкрд░ рд╣рдо рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдФрд░ рд░рд┐рдмреВрдЯ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВрдЧреЗ, рдЕрдиреНрдпрдерд╛ рд╣рдо рд╡рд╛рдИрдлрд╛рдИ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ, рд▓реЗрдХрд┐рди рдСрдлрд╝рд▓рд╛рдЗрди рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред
if (!wifiManager.autoConnect("OpenWind - tap to config")){ if (mqtt_server[0] != '\0' || blynk_token[0] != '\0'){ Serial.println("Failed to go online for Blynk and MQTT, restarting.."); ESP.restart(); } else{ Serial.println("Failed to go online, offline mode activated"); online = false; }
4. Blynk рдХреЛ рдЗрдВрдЯрд░рдиреЗрдЯ рдХрдиреЗрдХреНрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ (рдпрджрд┐ рд╕рд░реНрд╡рд░ рд╕реНрдерд╛рдиреАрдп рдирд╣реАрдВ рд╣реИ) рдФрд░ рдЗрд╕рд▓рд┐рдП рд╡рд╛рдИрдлрд╛рдИ рдХрдиреЗрдХреНрд╢рди рдХреА рдЙрдкрд▓рдмреНрдзрддрд╛ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдлрд┐рд▓рд╣рд╛рд▓ WiFiManager рд▓рд╛рдЗрдмреНрд░реЗрд░реА WiFi рдХреЗ рд╕рд╛рде рдкреБрди: рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реИ рдФрд░ рдЕрдЧрд░ рдЕрдкрд╛рд░реНрдЯрдореЗрдВрдЯ рдФрд░ рд░рд╛рдЙрдЯрд░ рдореЗрдВ рд▓рд╛рдЗрдЯ "рдмреНрд▓рд┐рдВрдХ" рд╣реЛрддреА рд╣реИ, рддреЛ рдХреЗрд╡рд▓ рд░рд┐рдмреВрдЯ рдХрд░рдиреЗ рд╕реЗ ESP8266 рдХреЛ WiFi рдореЗрдВ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдорд┐рд▓реЗрдЧреАред рдЗрд╕рд▓рд┐рдП, рдореБрдЭреЗ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдЯрд╛рдЗрдорд░ рдЬреЛрдбрд╝рдирд╛ рдкрдбрд╝рд╛, рдЬреЛ рдмрд┐рдирд╛ рдХрдиреЗрдХреНрд╢рди рдХреЗ 60 рд▓рдЧрд╛рддрд╛рд░ рд╕реЗрдХрдВрдб рдХреЗ рдмрд╛рдж рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рд░рд┐рдмреВрдЯ рдХрд░реЗрдЧрд╛ред
if (WiFi.status() != WL_CONNECTED && online){ if (!wifilost_flag){ wifilost_timer_start = uptime; wifilost_flag = true; } if (((uptime - wifilost_timer_start) > wifilost_timer_max) && wifilost_flag){ Serial.print("\n\rWiFi connection lost, restarting.."); wifilost_flag = false; ESP.restart(); } }
5. Blynk рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ MQTT рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ
рдкреАрдкреБрд▓реНрд╕ рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рд╕рд░реНрд╡рд░ рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рд╕рдорд╛рди рд╕реЗрд╡рд╛ рдХреЗ рд▓рд┐рдП рдЧрд╡рд╛рд╣реА рднреЗрдЬрдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рдЪреБрди рд╕рдХрддрд╛ рд╣реИред рдЗрди рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП,
PubSubClient рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рдЪреБрдирд╛ рдЧрдпрд╛ рдерд╛, рдЬреЛ рдХрд┐ рд╕рдмрд╕реЗ рд╕рдордЭ рдореЗрдВ рдЖрдиреЗ рд╡рд╛рд▓реА рд╕реА рднрд╛рд╖рд╛ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдХреЗрд╡рд▓ рдПрдХ (Arduino IDE рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдП рдЧрдП рд▓реЛрдЧреЛрдВ рд╕реЗ) рдЬрд┐рд╕рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рдЙрджрд╛рд╣рд░рдг рдереЗред
6. рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдЪрдордХрд╛рдирд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЕрдХреНрд╕рд░ рдирд╣реАрдВ рдФрд░ рдмрд╣реБрдд рдЬрдЯрд┐рд▓ рдирд╣реАрдВ (рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд
рд╕реАрдкреА 2102 ), рд▓реЗрдХрд┐рди рдореИрдВ рдЕрднреА рднреА рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдпрдерд╛рд╕рдВрднрд╡ рд╕рд░рд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред
ArduinoOTA рдкреБрд╕реНрддрдХрд╛рд▓рдп рдПрдХ рдирдпрд╛ рдмрд╛рдЗрдирд░реА рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдФрд░ рдЗрд╕реЗ рдлреНрд▓реИрд╢ рдХрд░рдиреЗ рдореЗрдВ рдЖрд╕рд╛рди
рдмрдирд╛рддрд╛ рд╣реИред рдУрдЯреАрдП рдХреЛ рдпрд╛ рддреЛ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдПрдХ рдмрдЯрди рджреНрд╡рд╛рд░рд╛ рд╕рдХреНрд░рд┐рдп рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдпрд╛ рдПрдХ рдЯреЗрд▓реАрдлреЛрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рджреВрд░рд╕реНрде рд░реВрдк рд╕реЗред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХреБрдЫ рдЖрд╢реНрдЪрд░реНрдп рдереЗ, рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рд╡рд┐рднрд┐рдиреНрди рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдЖрдХрд╛рд░реЛрдВ (SPIFFS) рдХреЗ рд╕рд╛рде ESP8266-12E рдореЙрдбреНрдпреВрд▓ рдЦрд░реАрджреЗ рд╣реИрдВред
Flash

ESP8266-12E рдХреЗ рдмрд╛рд╣рд░реА рд░реВрдк рд╕реЗ рдЕрдкреНрд░рднреЗрджреНрдп рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдЖрдХрд╛рд░ рдореЗрдВ 1 рдпрд╛ 3 рдПрдордмреА рдХреА рдлрд╛рдЗрд▓ рдкреНрд░рдгрд╛рд▓реА рд╣реЛ рд╕рдХрддреА рд╣реИ рдФрд░ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдлрд░реНрдорд╡реЗрдпрд░ (Arduino IDE рдореЗрдВ рдирд┐рд░реНрдорд╛рдг рд╡рд┐рдХрд▓реНрдк) рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╕рдВрднрд╛рд╡рд┐рдд рд╕рдорд╕реНрдпрд╛рдУрдВ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП, рдЬрдм рд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ, рддреЛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдореЗрдореЛрд░реА рдЖрдХрд╛рд░ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдФрд░, рдЬрдм рдУрдЯреАрдП рдЕрдкрдЧреНрд░реЗрдб рд╣реЛрддрд╛ рд╣реИ, рддреЛ рд╕рд░реНрд╡рд░ рдкрд░ рдЙрдЪрд┐рдд рдмрд╛рдЗрдирд░реА рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░реЗрдВ (рдЕрднреА рддрдХ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛)ред рдпрд╛ рдЖрдк рдереЛрдбрд╝рд╛ рд╕рд░рд▓ рддрд░реАрдХреЗ рд╕реЗ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ 1 рдПрдордмреА рдХреЗ рдЫреЛрдЯреЗ рдирд╛рдордорд╛рддреНрд░ рдореВрд▓реНрдп рдХреЗ рд╕рд╛рде SPIFFS рдХреЗ рд▓рд┐рдП рд╕рднреА рдлрд░реНрдорд╡реЗрдпрд░ рдЗрдХрдЯреНрдард╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рдореЗрдореЛрд░реА рдХреЗ рд╕рд╛рде ESP8266-12E рдкрд░ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред
рдРрд╕реЗ рдЪреЗрдХ рдХреЗ рд▓рд┐рдП, рдПрд╕рдбреАрдХреЗ рдореЗрдВ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдХрд╛рд░реНрдп рд╣реИрдВ рдЬреЛ рдЖрдкрдХреЛ рдЖрдИрдбреАрдИ рдореЗрдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдФрд░ рдЪрдпрдирд┐рдд рдореЗрдореЛрд░реА рдХреЗ рдЖрдХрд╛рд░ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред
String realSize = String(ESP.getFlashChipRealSize()); String ideSize = String(ESP.getFlashChipSize()); bool flashCorrectlyConfigured = realSize.equals(ideSize); if(flashCorrectlyConfigured){ Serial.println("flash correctly configured, SPIFFS starts, IDE size: " + ideSize + ", match real size: " + realSize); } else{ Serial.println("flash incorrectly configured, SPIFFS cannot start, IDE size: " + ideSize + ", real size: " + realSize); }
7. рд╡рд┐рднрд┐рдиреНрди рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рднреНрд░рдорд┐рдд рди рд╣реЛрдиреЗ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдПрдХ-рджреВрд╕рд░реЗ рд╕реЗ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, Arduino IDE рд╕реЗ
arduino-1.8.5 \ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ \ platform.txt рдлрд╝рд╛рдЗрд▓ рдХреЛ рдереЛрдбрд╝рд╛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдерд╛ рддрд╛рдХрд┐ рд╕рдВрдХрд▓рди рдХреЗ рджреМрд░рд╛рди рдПрдХ рдмреИрдЯ рдлрд╝рд╛рдЗрд▓ рд▓реЙрдиреНрдЪ рдХреА рдЧрдИ, рдЬреЛ рд╡рд░реНрддрдорд╛рди рд╕реНрдХреЗрдЪ рдХреА рдПрдХ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рддреА рд╣реИред рдФрд░ рдкрд░рд┐рдгрд╛рдореА рдмрд╛рдЗрдирд░реА, рдФрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╕рдВрд╕реНрдХрд░рдг рд╕рдВрдЦреНрдпрд╛ рднреА рдмрдврд╝ рдЬрд╛рддреА рд╣реИред
recipe.hooks.sketch.prebuild.0.pattern=D:\arduino-1.8.5\hardware\increment.bat {build.path} {build.source.path} {build.project_name}
рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдкреНрд░рддреНрдпреЗрдХ рдЕрд╕реЗрдВрдмрд▓реА / рдлрд╝рд░реНрдорд╡реЗрдпрд░ рдХреЗ рдмрд╛рдж рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдмрд╛рдЗрдирд░реА рдореЗрдВ рд╡рд╛рдпрд░реНрдб рдирдВрдмрд░ рдФрд░ рдЙрд╕реА рдирдВрдмрд░ рдХреЗ рд╕рд╛рде рд╕реНрдХреЗрдЪ рдХреА рдПрдХ рдкреНрд░рддрд┐ рд╣реЛрддреА рд╣реИред рдФрд░ рдпрджрд┐ рдЖрдк рд╕реНрдХреЗрдЪ рдХреЗ рд╕рд╛рде рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рдбреНрд░реЙрдкрдмреЙрдХреНрд╕ рдореЗрдВ рдбрд╛рд▓рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдПрдХ рд╕рдВрд╕реНрдХрд░рдг рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рдгрд╛рд▓реА рдорд┐рд▓рддреА рд╣реИред
Arduino IDE рдФрд░ рдмреИрдЯ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдСрдЯреЛ-рдЗрдиреНрдХреНрд░реАрдореЗрдВрдЯ рд╕рдВрд╕реНрдХрд░рдг рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рдирд┐рд░реНрджреЗрд╢ рдЧрд┐рдердм рдкрд░ рдкреЛрд╕реНрдЯ рдХрд┐рдП рдЧрдП рд╣реИрдВред
8. рдЦреИрд░, рдЪреВрдВрдХрд┐ рдПрдХ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдпреВрдПрд╕рдмреА-рдпреВрдПрдЖрд░рдЯреА рдПрдбрд╛рдкреНрдЯрд░ рд╣реИ (рд╡рд┐рдВрдбреЛрдЬ рдФрд░ рд▓рд┐рдирдХреНрд╕ рдореЗрдВ рд╕реАрдкреА 2102 рдХреЗ рд▓рд┐рдП рдбреНрд░рд╛рдЗрд╡рд░ рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ), рдЯрд░реНрдорд┐рдирд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдорд╛рдк рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рдерд╛ (9600 рдХреА рдЧрддрд┐ рдкрд░)ред рд╣рд░ рдмреАрд╕ рд╕реЗрдХрдВрдб рдореЗрдВ рдПрдХ рдмрд╛рд░ рдорд╛рдк рдкрд░рд┐рдгрд╛рдо рдФрд░ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддреЗ рд╣реИрдВред
Reading MHZ19 sensor: ok
Reading DHT22 sensor: ok
===================================================
Humidity: 36.20%
Temperature: 27.20C \ 83.56F
C02: 1153 ppm
C02 average: 462 ppm
ADC: 99
UpTime: 0 days, 0 hours, 3 minutes, 45 seconds.
Time: 16:25:56 20/3/2018
===================================================
рдФрд░ Enter рдмрдЯрди рджрдмрд╛рдХрд░, рдЖрдк рд╕рд┐рд╕реНрдЯрдо рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдВрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
======SYSTEM-STATUS================================
Device name: OpenWindAir
Software version: 0.1.235
FreeHeap: 33824
ChipId: 13704617
FlashChipId: 1405167
FlashChipSize: 4194304
FlashChipSpeed: 40000000
CycleCount: 2204474679
Time: 16:27:6 20/3/2018
UpTime: 295
======BLYNK-STATUS=================================
Blynk token: 65a99f9e363a421c8b22d5b0162cce27
Blynk connected: 1
Notify level: 1100
Beep: 1
CO2 limit: 2000
Temperature correction: 1
======NETWORK-STATUS===============================
WiFi network: adakta2
WiFi status: 3
RSSI: -70
MAC: 18FE34D11DA9
IP: 192.168.0.152
Online: 1
======MQTT-STATUS==================================
MQTT server:narodmon.ru
MQTT port:1883
MQTT login:login
MQTT key:key
MQTT topics:
/OpenWindAir/h
/OpenWindAir/t
/OpenWindAir/f
/OpenWindAir/ppm
/OpenWindAir/status
======END-of-STATUS================================
рд╕рдмрд╕реЗ рдЕрдкреНрд░рд┐рдп рд╕рдорд╕реНрдпрд╛
рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди рдЖрдкрдХреЛ рдЬреЛ рд╕рдмрд╕реЗ рдЕрдкреНрд░рд┐рдп рдмрд╛рдд рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛, рд╡рд╣ рд╣реИ, рдЬрдм рдПрдордХреНрдпреВрдЯреАрдЯреА рд╕рд░реНрд╡рд░ рдФрд░ рдмрд┐рдиреНрдирдХ рдХреЛ рдорд╛рдк рдкрд░рд┐рдгрд╛рдо рднреЗрдЬрддреЗ рд╕рдордп, рдХреБрдЫ рдбреЗрдЯрд╛ рдЦреЛ рдЬрд╛рдирд╛ рд╢реБрд░реВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рд╕рд░реНрд╡рд░ рддрдХ рдирд╣реАрдВ рдкрд╣реБрдВрдЪ рд╕рдХрддрд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ, MQTT рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдФрд░ рдбреЗрдЯрд╛ рднреЗрдЬрдиреЗ рдореЗрдВ рдХреБрдЫ рд╕реЗрдХрдВрдб рд▓рдЧ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЗрд╕ рд╕рдордп рдХреЗ рджреМрд░рд╛рди Blynk рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдЕрдкрдиреЗ рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рдХрдиреЗрдХреНрд╢рди рдЦреЛ рджреЗрддреА рд╣реИ рдФрд░ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдпрджрд┐ рдЖрдк рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╕рд░реНрд╡рд░ рд╕реЗ рдкреБрди: рдЬреБрдбрд╝рд╛рд╡ рд╢реБрд░реВ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕рдореЗрдВ рдмрд╣реБрдд рд╕рдордп рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдХреБрдЫ рдкрд░рд┐рдгрд╛рдо рдорд┐рд▓ рд╕рдХрддреЗ рд╣реИрдВред рдорд╛рдк рдЦреЛ рдЬрд╛рдПрдЧрд╛ред рдореБрдЭреЗ WiFi рдХреНрд▓рд╛рдЗрдВрдЯ
_blynkWifiClient рдХреА рд╕реНрдерд┐рддрд┐ рдкрд░ рдПрдХ рдЪреЗрдХ рдЬреЛрдбрд╝рдирд╛ рдерд╛ рдФрд░ рдпрджрд┐ рдХреЛрдИ рдХрдиреЗрдХреНрд╢рди рдирд╣реАрдВ рд╣реИ, рддреЛ рдордЬрдмреВрд░ рд╕реНрдЯреЙрдк _blynkWifiClient.stop () рдХрд░реЗрдВ, рдФрд░ рдлрд┐рд░ Blynk рд╕рд░реНрд╡рд░ рдХреЛ рдлрд┐рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВред
if (WiFi.status() == WL_CONNECTED){ wifilost_flag = false; if (blynk_token[0] != '\0'){ if (Blynk.connected() && _blynkWifiClient.connected()){ Blynk.run(); } else{ Serial.print("\n\rReconnecting to blynk.. "); Serial.print(Blynk.connected()); if (!_blynkWifiClient.connected()){ _blynkWifiClient.stop(); Return _blynkWifiClient.connect(BLYNK_DEFAULT_DOMAIN, BLYNK_DEFAULT_PORT); } Blynk.connect(4000); Serial.print(Blynk.connected()); } }
рдирд┐рд╖реНрдХрд░реНрд╖
рдпрд╣ рдореЗрд░рд╛ рдкрд╣рд▓рд╛ рд▓реЗрдЦ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╣реЗрд░реЗрдмреЗ рдкрд░ рдкрдВрдЬреАрдХрд░рдг рдХреЗ 7 рд╕рд╛рд▓ рдмреАрдд рдЪреБрдХреЗ рд╣реИрдВред рдХреГрдкрдпрд╛ рдмрд╣реБрдд рдХрдареЛрд░рддрд╛ рд╕реЗ рдиреНрдпрд╛рдп рди рдХрд░реЗрдВ рдФрд░ рдЧреЛрд╡рдиреЛрдХреЙрдб рдкрд░ рдзреНрдпрд╛рди рди рджреЗрдВ, рдЬреЛ рдЕрдм рддрдХ рдХреЗрд╡рд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рд╣реИ рдЬреЛ рдореИрдВ рдмреЛрд▓рддрд╛ рд╣реВрдВред
рдЖрдк рдкреВрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд╕рд╛рде
рдЬреАрдердм рдкрд░ рднрдВрдбрд╛рд░ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред
рдПрдХ рд╕реАрдУ 2 рд╕реЗрдВрд╕рд░ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдореБрдЭреЗ (рдФрд░ рдореЗрд░реЗ рдкрд░рд┐рд╡рд╛рд░) рдХреЛ рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рдПрдХ рднрд░реЗ рдХрдорд░реЗ рдореЗрдВ рд░рд╣рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддреА рд╣реИред рд▓реЗрдХрд┐рди рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд, рдЙрд╕рдиреЗ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд╢рд┐рд╡рд┐рд░реЛрдВ рдХреЗ рдмреАрдЪ рд╢рд╛рд╢реНрд╡рдд рдпреБрджреНрдз рдХреЛ рд░реЛрдХ рджрд┐рдпрд╛ рдЬреЛ рдЧрд░реНрдо рд╣реИрдВ рдФрд░ рдЬреЛ рд▓реЛрдЧ рдЙрдбрд╝рд╛ рд░рд╣реЗ рд╣реИрдВ (рдпрд╣ рдореИрдВ рдерд╛), рдкреВрд░реНрд╡ рдХреЗ рдкрдХреНрд╖ рдореЗрдВред
рдлрд┐рд░ рдПрдХ QR рдХреЛрдб рд╣реЛрдЧрд╛, рдЬрд┐рд╕реЗ рд╕реНрдХреИрди рдХрд░рдХреЗ Blynk рдПрдкреНрд▓рд┐рдХреЗрд╢рди (
AppSore ,
Android ) рдХреЗ рд╕рд╛рде рдЖрдк рдкрддрд╛ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдкрд┐рдЫрд▓реЗ 3 рдорд╣реАрдиреЛрдВ рд╕реЗ рдореЗрд░реА рдЬрдЧрд╣ рдкрд░ рдХреМрди рд╕рд╛ рдорд╛рдЗрдХреНрд░реЛрдХрд▓рд╛рдЗрдореЗрдЯ рд╣реИред
рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛рдо рдХрд░ рд░рд╣реА рд╣реИ, рдХреГрдкрдпрд╛ рдХреБрдЫ рднреА рдордд рддреЛрдбрд╝реЛред