рд╕реНрдорд╛рд░реНрдЯ рд╡рд╛рдИрдлрд╛рдИ рд▓рд╛рдЗрдЯ рд╕реНрд╡рд┐рдЪ



рд╢реБрдн рджрд┐рди, рдкреНрд░рд┐рдп рдкрд╛рдардХред

рд╢реБрд░реБрдЖрдд рдореЗрдВ рдереЛрдбрд╝рд╛ рд╕рд╛ рд▓рд┐рд░рд┐рдХреНрд╕ред "рд╕реНрдорд╛рд░реНрдЯ" рд▓рд╛рдЗрдЯ рд╕реНрд╡рд┐рдЪ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдирдпрд╛ рдирд╣реАрдВ рд╣реИ рдФрд░, рд╢рд╛рдпрдж, рдпрд╣ рдкрд╣рд▓реА рдмрд╛рдд рд╣реИ рдЬреЛ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдзреНрдпрд╛рди рдореЗрдВ рдЖрддреА рд╣реИ рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ Arduino рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдФрд░ IoT рддрддреНрд╡реЛрдВ рдХреЗ рд╕рд╛рде рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛ рдерд╛ред рдФрд░ рдореИрдВ рдЗрд╕рдХрд╛ рдЕрдкрд╡рд╛рдж рдирд╣реАрдВ рд╣реВрдВред рд╕рд░реНрдХрд┐рдЯ рддрддреНрд╡реЛрдВ, рдореЛрдЯрд░реНрд╕ рдФрд░ рдПрд▓ рдИ рдбреА рдХреЗ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВ рдХреБрдЫ рдФрд░ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдЬреЛ рд░реЛрдЬрдорд░реНрд░рд╛ рдХреА рдЬрд┐рдВрджрдЧреА рдореЗрдВ рдорд╛рдВрдЧ рдореЗрдВ рд╣реИ рдФрд░ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛрдЧрд╛, рдФрд░ рдЖрд░рд╛рдо рдХреЗ рд▓рд┐рдП рдкреНрд░рдпреЛрдЧ рдХрд╛ рд╢рд┐рдХрд╛рд░ рдирд╣реАрдВ рд░рд╣реЗрдЧрд╛ред

рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛рдКрдВрдЧрд╛ рдХрд┐ рдХреИрд╕реЗ рдореИрдВрдиреЗ рдПрдХ рд╕реНрд╡рд┐рдЪ рдмрдирд╛рдпрд╛ рдЬреЛ рд╕рд╛рдорд╛рдиреНрдп рдХреА рддрд░рд╣ рдХрд╛рдо рдХрд░реЗрдЧрд╛ (рдЬреЛ рдХрд┐ рдЖрдорддреМрд░ рдкрд░ рдПрдХ рджреАрд╡рд╛рд░ рдкрд░ рд▓рдЧрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ) рдФрд░ рд╕рд╛рде рд╣реА рдЗрд╕реЗ рд╡рд╛рдИрдлрд╛рдИ (рдпрд╛ рдЗрдВрдЯрд░рдиреЗрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ, рдЬреИрд╕рд╛ рдХрд┐ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ) рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рдЗрд╕рд▓рд┐рдП, рд╣рдо рдпреЛрдЬрдирд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдЧрд╛, рдЗрд╕рдХреА рдПрдХ рд╕реВрдЪреА рддреИрдпрд╛рд░ рдХрд░реЗрдВрдЧреЗред рдореБрдЭреЗ рддреБрд░рдВрдд рдпрд╣ рдХрд╣рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдореЗрд░рд╛ рдЗрд░рд╛рджрд╛ рдШрдЯрдХреЛрдВ рдкрд░ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдкреНрд░рднрд╛рд╡ рдбрд╛рд▓рдирд╛ рдирд╣реАрдВ рдерд╛ рдФрд░ рдордВрдЪреЛрдВ рдкрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдШрдЯрдХреЛрдВ рдХреЛ рдЪреБрдирд╛ рдФрд░ рдкреИрд╕реЗ рдХреЗ рд▓рд┐рдП рдореВрд▓реНрдпред рдЗрд╕рд▓рд┐рдП, рдХреБрдЫ рдШрдЯрдХ рдЕрдиреБрднрд╡реА рдЗрд▓реЗрдХреНрдЯреНрд░рд┐рдХ рдПрдореЗрдЪреНрдпреЛрд░ рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ рдЕрдиреБрдкрдпреБрдХреНрдд рд▓рдЧ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреГрдкрдпрд╛ рдХрдбрд╝рд╛рдИ рд╕реЗ рдиреНрдпрд╛рдп рди рдХрд░реЗрдВ, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдХреЗрд╡рд▓ рдЗрд▓реЗрдХреНрдЯреНрд░реЛрдореИрдХреЗрдирд┐рдХреНрд╕ рдореЗрдВ рдирдпрд╛ рд╣реВрдВ рдФрд░ рдЕрдзрд┐рдХ рдЕрдиреБрднрд╡реА рдкреЗрд╢реЗрд╡рд░реЛрдВ рдХреА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреА рдмрд╣реБрдд рд╕рд░рд╛рд╣рдирд╛ рдХрд░реВрдВрдЧрд╛ред
рд╕рдВрдЦреНрдпрд╛рдирд╛рдорд╡рд┐рд╡рд░рдгрдХреАрдордд
1HLK-PM01220VAC рд╕реЗ 5VDC рдПрдбреЙрдкреНрдЯрд░4,02 тВм
2рдПрд╕рдПрд╕рдЖрд░-40DAрд╕рд░реНрдХрд┐рдЯ рдХрд░рдВрдЯ рдХрдВрдЯреНрд░реЛрд▓ рдХреЗ рд▓рд┐рдП рд╕реЙрд▓рд┐рдб рд╕реНрдЯреЗрдЯ рд░рд┐рд▓реЗ3,35 тВм рд╣реИ
3AMS1117-3.35V рд╕реЗ 3V рд╡реЛрд▓реНрдЯреЗрдЬ рджрдмрд╛рдиреЗрд╡рд╛рд▓рд╛ рдпрдВрддреНрд░1,29 тВм
4ESP8266-01рд╡рд╛рдИрдлрд╝рд╛рдИ рдХреЗ рд╕рд╛рде рдорд╛рдЗрдХреНрд░реЛрдХрдВрдЯреНрд░реЛрд▓рд░2,35 тВм рд╣реИ
рдХреБрд▓:11,01 тВм

рдореБрдЭреЗ рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА: рдПрдХ рд╕рд░реНрд╡рд░ рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рд╕реНрд╡рд┐рдЪ рдХреЛ рдЗрдВрдЯрд░рдиреЗрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, Arduino Uno, рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдореИрдВрдиреЗ ESP рдХреНрд░рдорд╛рджреЗрд╢рд┐рдд рдХрд┐рдпрд╛, рдПрдХ рд░рд╛рдЙрдЯрд░ рдФрд░ рддрд╛рд░, рдЯрд░реНрдорд┐рдирд▓реЛрдВ рдЖрджрд┐ рдЬреИрд╕реЗ рдЙрдкрднреЛрдЧреНрдп, рдпрд╣ рд╕рдм рд╕реНрд╡рд╛рдж рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рднрд┐рдиреНрди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рдЕрдВрддрд┐рдо рдкрд░рд┐рдгрд╛рдо рдХреЗ рд▓рд┐рдПред

рдХреАрдорддреЗрдВ рдПрдмреЗ рд╕реЗ рд▓реА рдЧрдИ рд╣реИрдВ, рдЬрд╣рд╛рдВ рдореИрдВрдиреЗ рдЙрдиреНрд╣реЗрдВ рдЦрд░реАрджрд╛ рд╣реИред

рдФрд░ рдпрд╣рд╛рдВ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдЯреЗрдмрд▓ рд╕реЗ рддрддреНрд╡ рдХреИрд╕реЗ рджрд┐рдЦрддреЗ рд╣реИрдВ:



рдЕрдм рдЖрдк рдПрдХ рдХрдиреЗрдХреНрд╢рди рдЖрд░реЗрдЦ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ:



рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ рд╢рд╛рдпрдж рджреЗрдЦрд╛, рдпреЛрдЬрдирд╛ рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИред рд╕рдм рдХреБрдЫ рдЖрд╕рд╛рдиреА рд╕реЗ, рдЬрд▓реНрджреА рдФрд░ рдмрд┐рдирд╛ рд╕реЛрд▓реНрдбрд░ рдХреЗ рдЗрдХрдЯреНрдард╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдПрдХ рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╡рд░реНрдХрд┐рдВрдЧ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк, рдЬрд┐рд╕реЗ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдкрд░реЗрд╢рд╛рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рд╕рдм рдХреБрдЫ рддрд╛рд░реЛрдВ рдФрд░ рдЯрд░реНрдорд┐рдирд▓реЛрдВ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИред рдХреЗрд╡рд▓ рдирдХрд╛рд░рд╛рддреНрдордХ рдпрд╣ рд╣реИ рдХрд┐ рд░рд┐рд▓реЗ рд╕реНрд╡рд┐рдЪ рдХреЗ рд╕реЙрдХреЗрдЯ рдореЗрдВ рдлрд┐рдЯ рдирд╣реАрдВ рд╣реБрдЖред рд╣рд╛рдВ, рд╢реБрд░реВ рдореЗрдВ рдореИрдВрдиреЗ рдЗрд╕реЗ рд╕реНрд╡рд┐рдЪ рдХреЗ рдкреАрдЫреЗ рдХреА рджреАрд╡рд╛рд░ рдореЗрдВ рдзрдХреЗрд▓рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдИ, рддрд╛рдХрд┐ рдпрд╣ рд╕реМрдВрджрд░реНрдп рд╕реЗ рднрд░рдкреВрд░ рд╣реЛред рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдЕрдлрд╕реЛрд╕ рдХреЗ рд▓рд┐рдП, рд╕реЙрдХреЗрдЯ рдореЗрдВ рдкрд░реНрдпрд╛рдкреНрдд рдЬрдЧрд╣ рдирд╣реАрдВ рдереА рдФрд░ рд░рд┐рд▓реЗ рдмрд╕ рдпрд╛ рддреЛ рдКрдкрд░ рдпрд╛ рдиреАрдЪреЗ рдлрд┐рдЯ рдирд╣реАрдВ рд╣реБрдИ рдереА:



рдЗрд╕рд▓рд┐рдП, рдореИрдВрдиреЗ рдЕрд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рд╕реЙрдХреЗрдЯ рд╕реЗ рд░рд┐рд▓реЗ рдХреЛ рддрдм рддрдХ рдирд┐рдХрд╛рд▓ рд▓рд┐рдпрд╛ рдЬрдм рддрдХ рдореБрдЭреЗ рд▓реЛрд╣реЗ рдХреЛ рдЫрд┐рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЙрдХреЗрдЯ рдХреЗ рд╕рд╛рде рдПрдХ рдЙрдкрдпреБрдХреНрдд рд╕реНрд╡рд┐рдЪ рдмреЙрдХреНрд╕ рдирд╣реАрдВ рдорд┐рд▓рд╛ред рд▓реЗрдХрд┐рди рдЕрд╕реНрдерд╛рдпреА рд╕реЗ рдЬреНрдпрд╛рджрд╛ рд╕реНрдерд╛рдпреА рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реИ, рд╣реИ рдирд╛? рдЗрд╕рд▓рд┐рдП, рдпрд╣ рд╕рдм рдЕрдм рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:



рдЗрдиреНрд╕реБрд▓реЗрдЯ рдЯреЗрдк рдмрд┐рдЬрд▓реА рдХреЗ рдЭрдЯрдХреЗ рд╕реЗ рдмрдЪрд╛рдПрдЧрд╛ ... рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИред

рдЕрдм рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдкрд╛рд░реНрдЯ рдХреАред

рдФрд░ рдХреЛрдб рдФрд░ рд╡рд┐рд╡рд░рдг рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд╕рд╛рде рдЖрдЧреЗ рдмрдврд╝рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдореИрдВ рджреАрдкрдХ рдирд┐рдпрдВрддреНрд░рдг рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдЪрд┐рддреНрд░ рджреВрдВрдЧрд╛ред



рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдХрд┐рд╕реА рджрд┐рди рдореИрдВ рд╕рдм рдХреБрдЫ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦреВрдВрдЧрд╛ рдФрд░ рдХрдиреЗрдХреНрд╢рди HTTP рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рддреЗрдЬрд╝ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдПрдХ рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП рдпрд╣ рдХрд░реЗрдЧрд╛ред рджреВрд░рд╕реНрде рд░реВрдк рд╕реЗ, рдмрд▓реНрдм рдЕрдкрдиреА рд╕реНрдерд┐рддрд┐ рдХреЛ рд▓рдЧрднрдЧ 1-1.5 рд╕реЗрдХрдВрдб рдореЗрдВ рдмрджрд▓ рджреЗрддрд╛ рд╣реИ, рдФрд░ рддреБрд░рдВрдд рд╕реНрд╡рд┐рдЪ рд╕реЗ, рдЬреИрд╕рд╛ рдХрд┐ рдПрдХ рд╕рднреНрдп рд╕реНрд╡рд┐рдЪ рд╣реЛрддрд╛ рд╣реИред

рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдИрдПрд╕рдкреА 8266-01


рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ Arduino рд╣реИред рдЖрдк GitHub рд╕реЗ Arduino IDE рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ред рд╕рднреА рд╕реНрдерд╛рдкрдирд╛ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдирд┐рд░реНрджреЗрд╢ рд╣реИрдВред

рдЕрдЧрд▓рд╛, рд╣рдореЗрдВ рдХрдВрдкреНрдпреВрдЯрд░ рд╕реЗ рдИрдПрд╕рдкреА рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЗрд╕рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ RX рдФрд░ TX рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рд▓рд┐рдП рдпрд╛ рддреЛ USB рд╕реЗ рд╕реАрд░рд┐рдпрд▓ рдЕрдбреИрдкреНрдЯрд░ (рдЬреИрд╕реЗ FTDi , CH340 , FT232RL ) рдпрд╛ рдХрд┐рд╕реА Arduino рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо (рдореЗрд░реЗ рдкрд╛рд╕ Arduino Uno) рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ ESP8266-01 3.3 рд╡реЛрд▓реНрдЯ рджреНрд╡рд╛рд░рд╛ рд╕рдВрдЪрд╛рд▓рд┐рдд рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ рдЗрд╕реЗ Arduino рд╕реЗ рдХрдиреЗрдХреНрдЯ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ (рдЕрдХреНрд╕рд░) 5 рд╡реЛрд▓реНрдЯ рджреНрд╡рд╛рд░рд╛ рд╕рдВрдЪрд╛рд▓рд┐рдд рд╣реЛрддреЗ рд╣реИрдВ, рд╕реАрдзреЗ рдЕрдиреНрдпрдерд╛ рд╕рдм рдХреБрдЫ рдирд░рдХ рдореЗрдВ рдЬрд╛рдПрдЧрд╛ред рдЖрдк рд╡реЛрд▓реНрдЯреЗрдЬ рд░рд┐рдбреНрдпреВрд╕рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдКрдкрд░ рджреА рдЧрдИ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдХрдиреЗрдХреНрд╢рди рдпреЛрдЬрдирд╛ рд╕рд░рд▓ рд╣реИ: рд╣рдо TX рдХрдиреЗрдХреНрдЯ рдХрд░рддреЗ рд╣реИрдВ ,RX рдФрд░ GND ESP рдХреНрд░рдорд╢рдГ RX, TX рдФрд░ GND рдПрдбрд╛рдкреНрдЯрд░ / Arduinoред рдЙрд╕рдХреЗ рдмрд╛рдж, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдХрдиреЗрдХреНрд╢рди рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИред Arduino IDE рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдорд╛рдЗрдХреНрд░реЛрдХрдВрдЯреНрд░реЛрд▓рд░ рдХреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

Arduino Uno рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдХреБрдЫ рдмрд╛рд░реАрдХрд┐рдпреЛрдВ:
  • Uno рдореЗрдВ 3.3V рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рдерд╛ред рдЬрдм рдЖрдк рдЗрд╕реЗ рдИрдПрд╕рдкреА рд╕реЗ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рддреЛ рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рдиреЗ рд▓рдЧрддрд╛ рд╣реИ, рд╕рдВрдХреЗрддрдХ рдЪрд╛рд▓реВ рд╣реЛрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди COM рдкреЛрд░реНрдЯ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдЦреЛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдИрдПрд╕рдкреА рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ 3.3V рдмрд┐рдЬрд▓реА рдХреА рдЖрдкреВрд░реНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред
  • рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпреВрдПрдирдУ рдХреЛ рдИрдПрд╕рдкреА рдХреЗ рд╕рд╛рде рд╕рдВрд╡рд╛рдж рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рдереА, рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдпреВрдПрдирдУ 5 рд╡реА рдФрд░ рдИрдПрд╕рдкреА 3 рд╡реА рд╕реЗ рд╕рдВрдЪрд╛рд▓рд┐рдд рдерд╛ред

ESP8266-01 рдХреЗ рд╕рд╛рде рдХрдИ рдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рдмрд╛рдж, рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ ESPs GPIO0 рдФрд░ GPIO2 рд╕реЗ рдЬреБрдбрд╝реЗ рд╡реЛрд▓реНрдЯреЗрдЬ рдХреЗ рд▓рд┐рдП рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рд╣реИрдВред рд▓реЙрдиреНрдЪ рдХреЗ рд╕рдордп, рдЙрдиреНрд╣реЗрдВ рдХрд┐рд╕реА рднреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рдореЛрдб рдореЗрдВ рд╢реБрд░реВ рдХрд░рдиреЗ рдХрд╛ рдЗрд░рд╛рджрд╛ рд░рдЦрддреЗ рд╣реИрдВред рдпрд╣рд╛рдВ рдорд╛рдЗрдХреНрд░реЛрдХрдВрдЯреНрд░реЛрд▓рд░ рдХреА рд╢реБрд░реБрдЖрдд рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА ред рдореБрдЭреЗ рдпрд╣ рдирд╣реАрдВ рдкрддрд╛ рдерд╛ рдФрд░ рдореБрдЭреЗ рд╕рд░реНрдХрд┐рдЯ рдХреЛ рдереЛрдбрд╝рд╛ рдмрджрд▓рдирд╛ рдкрдбрд╝рд╛, рдХреНрдпреЛрдВрдХрд┐ рдИрдПрд╕рдкреА -01 рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ, рдХреЗрд╡рд▓ рдпреЗ 2 рдкрд┐рди рдореМрдЬреВрдж рд╣реИрдВ рдФрд░ рджреЛрдиреЛрдВ рдореЗрд░реЗ рд╕рд░реНрдХрд┐рдЯ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред

рдФрд░ рдпрд╣рд╛рдБ рдИрдПрд╕рдкреА рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрдХреНрд░рдо рд╕реНрд╡рдпрдВ рд╣реИ:

рдХреЛрдб рджрд┐рдЦрд╛рдПрдВ
#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <ESP8266WebServer.h>
#include <ESP8266mDNS.h>
#include <ESP8266HTTPClient.h>
extern "C" { //         initVariant
  #include "user_interface.h"
}

const char* ssid = "WIFISSID"; //  WiFi
const char* password = "***************"; //  WiFi
const String self_token = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"; //     
const String serv_token = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"; //     
const String name = "IOT_lamp"; //  ,  
const String serverIP = "192.168.1.111"; //  IP WEB  
bool lamp_on =  false;
bool can_toggle = false;
int button_state;

ESP8266WebServer server(80); //  
HTTPClient http; //  

const int lamp = 2; //    GPIO2
const int button = 0; // ""   GPIO0

//    
void handleRoot() { 
  server.send(200, "text/plain", "Hello! I am " + name);
}

//    
void handleNotFound(){
  String message = "not found";
  server.send(404, "text/plain", message);
}

//   
void turnOnLamp(){
  digitalWrite(lamp, LOW);
  lamp_on = true;
}

//   
void turnOffLamp(){
  digitalWrite(lamp, HIGH);
  lamp_on = false;
}

//     ./.
void sendServer(bool state){
  http.begin("http://"+serverIP+"/iapi/setstate");
  String post = "token="+self_token+"&state="+(state?"on":"off"); //         
  http.addHeader("Content-Type", "application/x-www-form-urlencoded");
  int httpCode = http.POST(post);
  http.end();  
}

//   
void toggleLamp(){
  if(lamp_on == true) {
    turnOffLamp();
    sendServer(false);
  } else {
    turnOnLamp();
    sendServer(true);
  }
}

//     
void handleOn(){
  String token = server.arg("token");
  if(serv_token != token) {
    String message = "access denied";
    server.send(401, "text/plain", message);
    return;
  }
  turnOnLamp();
  String message = "success";
  server.send(200, "text/plain", message);
}

//     
void handleOff(){
  String token = server.arg("token");
  if(serv_token != token) {
    String message = "access denied";
    server.send(401, "text/plain", message);
    return;
  }
  turnOffLamp();
  String message = "success";
  server.send(200, "text/plain", message);
}

//  MAC    IP
void initVariant() {
  uint8_t mac[6] = {0x00, 0xA3, 0xA0, 0x1C, 0x8C, 0x45};
  wifi_set_macaddr(STATION_IF, &mac[0]);
}

void setup(void){
  pinMode(lamp, OUTPUT);
  pinMode(button, INPUT_PULLUP); //   INPUT_PULLUP
  turnOffLamp();
  WiFi.hostname(name);
  WiFi.begin(ssid, password);

  //     WiFi
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
  }

  //    
  server.on("/", handleRoot);
  server.on("/on",  HTTP_POST, handleOn);
  server.on("/off", HTTP_POST, handleOff);
  server.onNotFound(handleNotFound);

  //  
  server.begin();
}

void loop(void){
  server.handleClient();

  //   
  button_state = digitalRead(button);
  if (button_state == HIGH && can_toggle) {
    toggleLamp();
    can_toggle = false;
    delay(500);
  } else if(button_state == LOW){
    can_toggle = true;
  }
}


рдХреЛрдб рдкрд░ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреА рдПрдХ рдЬреЛрдбрд╝реА:
  • рдкрд┐рди GPIO0 рдХреЛ рдкрд┐рдирдХреЛрдб (рдмрдЯрди, INPUT_PULLUP ) рдХреЗ рд░реВрдк рдореЗрдВ рдШреЛрд╖рд┐рдд рдХрд░рдирд╛ рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ , рдХреНрдпреЛрдВрдХрд┐ рд╕рд░реНрдХрд┐рдЯ рдореЗрдВ рд╣рдо рдЗрд╕ рдмрдЯрди рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд╡рд░реЛрдзрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдФрд░ рдИрдПрд╕рдкреА рдХреЗ рдкрд╛рд╕ рдЗрди рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдкрдирд╛ "рд╕рд┐рд▓рдирд╛" рд╣реИред
  • .

WEB


рдпрд╣рд╛рдВ рдЖрдк рдЕрдкрдиреА рдХрд▓реНрдкрдирд╛ рдХреЛ рд╣рд╡рд╛ рджреЗ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХрд┐рд╕реА рднреА рдЙрдкрд▓рдмреНрдз рд╕рд╛рдзрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рдПрдХ рд╕реЗрд╡рд╛ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рд╕реНрд╡рд┐рдЪ рджреНрд╡рд╛рд░рд╛ рднреЗрдЬреЗ рдЧрдП рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░реЗрдЧрд╛ рдФрд░ рдСрди / рдСрдл рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рднреЗрдЬреЗрдЧрд╛ред

рдореИрдВрдиреЗ рдЗрд╕ рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд▓рд┐рдП Yii рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ ред рдореИрдВрдиреЗ рдХрдИ рдХрд╛рд░рдгреЛрдВ рд╕реЗ рдЗрд╕ рдврд╛рдВрдЪреЗ рдХреЛ рдЪреБрдирд╛, рдореБрдЭреЗ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА (рдЪреВрдВрдХрд┐ рдкреЛрд░реНрдЯрд▓ рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реИ) рдФрд░ рднреВрдорд┐рдХрд╛ рдкреНрд░рдмрдВрдзрди (рднрд╡рд┐рд╖реНрдп рдХреЗ рдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП), рдФрд░ рдореБрдЭреЗ рдпрд╣ рдкрд╕рдВрдж рд╣реИред рдФрд░ рдЕрдм рдореЗрд░рд╛ рдкреНрд░рдмрдВрдзрди рдкреЛрд░реНрдЯрд▓ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:



рдиреЗрдЯрд╡рд░реНрдХ рдкрд╣реБрдВрдЪ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдкреНрд░рдХрд╛рд╢ рдмрд▓реНрдм рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдИрдПрд╕рдкреА рдкрд░ рд╕рд░реНрд╡рд░ рд╣реА рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛрдЧрд╛ред рд▓реЗрдХрд┐рди рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд▓реЙрдЧ, рд▓реЙрдЬрд┐рдХ рдФрд░ рдЕрдиреНрдп рдбрд┐рд╡рд╛рдЗрд╕ рд░рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рд╕рд░реНрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред

рдпрд╣ рд╕рдм рдкреЛрд░реНрдЯрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрдкрдХреЗ рдХреЛрдИ рдкреНрд░рд╢реНрди рд╣реИрдВ, рддреЛ рдореИрдВ рдЙрдиреНрд╣реЗрдВ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдЦреБрд╢реА рд╕реЗ рдЬрд╡рд╛рдм рджреВрдВрдЧрд╛ред

рдПрдХ рдирд┐рд╖реНрдХрд░реНрд╖ рдХреЗ рдмрдЬрд╛рдп


рдзрдиреНрдпрд╡рд╛рдж рдЕрдЧрд░ рдЖрдкрдиреЗ рд▓реЗрдЦ рдХреЛ рдЕрдВрдд рддрдХ рдкрдврд╝рд╛ рдФрд░, рд╢рд╛рдпрдж, рдЗрд╕рдореЗрдВ рдЕрдкрдиреЗ рд▓рд┐рдП рдХреБрдЫ рдЙрдкрдпреЛрдЧреА рдкрд╛рдпрд╛ред рдореБрдЭреЗ рд╕рд▓рд╛рд╣ рдФрд░ рдЖрд▓реЛрдЪрдирд╛ рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдпрд╣ рдЕрднреА рднреА рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рд░реНрдХрд┐рдЯ рдореЗрдВ рдЕрдбрд╝рдЪрди 5V рдПрдбрд╛рдкреНрдЯрд░ рд╣реИ рдФрд░ рдореБрдЭреЗ рдЦреБрд╢реА рд╣реЛрдЧреА рдпрджрд┐ рдЖрдк рдЗрд╕ рддрд░рд╣ рдХреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдЕрдкрдирд╛ рдЕрдиреБрднрд╡ рд╕рд╛рдЭрд╛ рдХрд░рддреЗ рд╣реИрдВред ESP8266-01 рдХреЗ рд░реВрдк рдореЗрдВ, рдЕрдм рддрдХ рдЗрд╕рдиреЗ GPIO рдкрд┐рди рдХреЗ рд╡рд┐рд╢реЗрд╖ рдЙрдкрдпреЛрдЧ рдХреЛ рдЫреЛрдбрд╝рдХрд░ рдореБрдЭрд╕реЗ рдХреЛрдИ рд╢рд┐рдХрд╛рдпрдд рдирд╣реАрдВ рдХреА рд╣реИред рдпрд╣ рджреВрд╕рд░реЗ рд╕рдкреНрддрд╛рд╣ рдХреЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рд╕рдлрд▓рддрд╛ред

Source: https://habr.com/ru/post/hi393497/


All Articles