рдИрдерд░рдиреЗрдЯ рд░рд┐рд▓реЗ рдирд╛рдордХ рдЙрдкрдХрд░рдгреЛрдВ рдХреА рдПрдХ рдкреВрд░реА рд╢реНрд░реЗрдгреА рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрдиреЗрдХреНрдЯреЗрдб рд▓реЛрдб рдХреЛ рджреВрд░рд╕реНрде рд░реВрдк рд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред рдЙрдирдореЗрдВ рд╕реЗ рдЬреНрдпрд╛рджрд╛рддрд░ рдХрд╛рдлреА рдорд╣рдВрдЧреЗ рд╣реИрдВ - $ 100 рдХреЗ рдХрд░реАрдм, рдФрд░ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдореВрд▓реНрдп рдФрд░ рд▓рдЪреАрд▓реЗрдкрди рд╕реЗ рд╣реАрди рд╣реИрдВ, рдХрд╣рддреЗ рд╣реИрдВ, рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ +
рдкрд╛рдИрдлреЗрд╕ ред рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рдХрд╛рд░реНрдп рдХреЗрд╡рд▓ рд▓реЛрдб рдЪрд╛рд▓реВ / рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рдмрд╣рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░рд╡рд╛рд╣ рдХреЛ рдорд╛рдкрдиреЗ рдХреЗ рд▓рд┐рдП рднреА рд╣реИ? рдЗрд╕рдХреЗ рд▓рд┐рдП рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕реЗрдВрд╕рд░ (рдПрдХ рд╢рдВрдЯ рдпрд╛ рд╣реЙрд▓ рдкреНрд░рднрд╛рд╡ рдкрд░) рдФрд░ рдПрдХ рдПрдбреАрд╕реА (рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдореЗрдВ рдПрдХ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдПрдбреАрд╕реА рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИ) рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рд╕реЗрдВрд╕рд░ рдХреЗ рд░реВрдк рдореЗрдВ, рдЖрдк рдПрдХ рд╕рд╕реНрддреА ACS712 рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ ADC рдХреЗ рд░реВрдк рдореЗрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,
ADC-Pi ред
рдореБрдЭреЗ рджреЛ рдХрд╛рд░рдгреЛрдВ рд╕реЗ ADC-Pi рдкрд╕рдВрдж рдирд╣реАрдВ рдЖрдпрд╛:
- рдорд╛рдк рдЖрд╡реГрддреНрддрд┐ рдкрд░ рдЬреЛ рдиреЗрдЯрд╡рд░реНрдХ рдореЗрдВ рдкреНрд░рддреНрдпрд╛рд╡рд░реНрддреА рдзрд╛рд░рд╛ рдХреА рддрд╛рдХрдд рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдпрд╣ рдПрдбреАрд╕реА рдПрдХ рдмрд╣реБрдд рдмрдбрд╝реА рддреНрд░реБрдЯрд┐ рджреЗрддрд╛ рд╣реИ (рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдореИрдВ рд░рдЬрд┐рд╕реНрдЯрд░реЛрдВ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдордЭ рдирд╣реАрдВ рдкрд╛рдпрд╛)
- рд▓рд┐рдирдХреНрд╕ рдХреЗ рддрд╣рдд рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдХреЗ рд╕рдВрдпреЛрдЬрди рдореЗрдВ рдЗрд╕ рдПрдбреАрд╕реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛, рдорд╛рдк рдЕрд╡рдзрд┐ рдХреА рдЖрд╡рд╢реНрдпрдХ рд╕реНрдерд┐рд░рддрд╛ рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИред рдХреЗрд╡рд▓ рдЗрд╕ рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП RTOS Linux рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рдореБрдЭреЗ рдмрд╣реБрдд рдЬрдЯрд┐рд▓ рд▓рдЧрд╛, рдЦрд╛рд╕рдХрд░ рдЬрдм рд╕реЗ рдПрдХ рд╕рд░рд▓ рдФрд░ рдЕрдзрд┐рдХ рд╕рд┐рджреНрдз рд╕рдорд╛рдзрд╛рди рд╣реИ: Arinoino
рд╕рднреА Arduino рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ ADC (8-рдмрд┐рдЯ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ), Arduino рдХреЗ рд▓рд┐рдП рд╕реНрдХреЗрдЪ рдЖрд╡рд╢реНрдпрдХ рд╕реНрдерд┐рд░рддрд╛ рдХреЗ рд╕рд╛рде рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдХреЗ рд╕рд╛рде рд╕рдВрд╡рд╛рдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рднрд┐рдиреНрди рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рдПрдХ рдпреВрдПрд╕рдмреА рдХреЗрдмрд▓ рд╣реИред рдФрд░ рд╣рд╛рдВ, рдПрдХ рдЖрдХрд░реНрд╖рдХ рдХреАрдорддред
рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдмрдВрдбрд▓ рдХреЛ рдЪрд┐рддреНрд░ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред

рд╡рд░реНрддрдорд╛рди рддрд╛рдХрдд рдХреЛ рдорд╛рдкрдирд╛ рдПрдХ рд╕рд░рд▓ рдХрд╛рд░реНрдп рд╣реИ, рдпрджрд┐ рдПрдХ "рд▓реЗрдХрд┐рди" рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИ: рднреМрддрд┐рдХ рд╕реЗрдВрд╕рд░ "рд╢реЛрд░" рд╣реИрдВред рдЖрдВрдХрдбрд╝рд╛ 512 рд▓рдЧрд╛рддрд╛рд░ рдорд╛рдк рдХреЗ рд╕рд╛рде рдореЗрд░реЗ рд╕рд░реНрдХрд┐рдЯ рдХреЗ рд▓рд┐рдП рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдФрд░ рдЧрдгрдирд╛ рдХреА рдЧрдИ рд╡рд░реНрддрдорд╛рди рд╕рдВрдХреЗрддрдХреЛрдВ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджрд┐рдЦрд╛рддрд╛ рд╣реИред

рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдкреНрд░рддреНрдпрд╛рд╡рд░реНрддреА рдзрд╛рд░рд╛ рдХреЛ рдорд╛рдкрдиреЗ рдХрд╛ рдХрд╛рд░реНрдп рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЕрдиреБрдкрд╛рдд рд╡рд╛рд▓реЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдорд╛рдк рдХреЗ рд╕реЗрдЯ рд╕реЗ рд╕рд╛рдЗрди рд▓рд╣рд░ рдХреЗ рдЖрдпрд╛рдо рдХреА рдЧрдгрдирд╛ рдХрд░рдирд╛ рд╣реИред
рдирдВрдмрд░ рдПрдХ рдХреА рдХреЛрд╢рд┐рд╢
рдПрд╕реА рдлрд╛рд░реНрдореВрд▓рд╛ (рдЬреЛ рднреВрд▓ рдЧрдП -
рд╡рд┐рдХреА рджреЗрдЦреЗрдВ)
i = рдЗрдо рдкрд╛рдк (+t + ╧И)
рдЬрд╣рд╛рдВ:
Im - рдЕрдзрд┐рдХрддрдо рд╡рд░реНрддрдорд╛рди рдореВрд▓реНрдп
ular рдХреЛрдгреАрдп рдЖрд╡реГрддреНрддрд┐ рд╣реИ
рдкрд░рд┐рд╡рд░реНрддрди рдХрд╛ рд╕рдордп (рдХреНрд░рдо рд╕рдВрдЦреНрдпрд╛)
phase рд╡рд░реНрддрдорд╛рди рдХрд╛ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЪрд░рдг рд╣реИ
рдЖрдк рд╡рд┐рд╢реНрд▓реЗрд╖рдгрд╛рддреНрдордХ рдЙрдкрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрд╡рд╢реНрдпрдХ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдЦреЛрдЬрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдФрд░ рдпрд╣рд╛рдВ рд╣рдореЗрдВ рдПрдХ рд╕реБрдЦрдж рдЖрд╢реНрдЪрд░реНрдп рд╣реИ: рдЖрдЦрд┐рд░реА рдЧрд┐рд░рд╛рд╡рдЯ (2013), рд╡реЛрд▓реНрдлреНрд░реИрдо рдиреЗ
рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдЕрджреНрднреБрдд
рдЧрдгрд┐рддрдЬреНрдЮ рдкреИрдХреЗрдЬ рдХрд╛ рдПрдХ рд╕рдВрд╕реНрдХрд░рдг рдЬрд╛рд░реА рдХрд┐рдпрд╛ред рдирд┐: рд╢реБрд▓реНрдХ (рдШрд░реЗрд▓реВ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП)ред рдФрд░ рд╣рдо рд╕реЗрдВрд╕рд░ рд╕реЗ рдкрдврд╝реЗ рдЧрдП рдбреЗрдЯрд╛ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рд░рд╛рд╕реНрдкрдмреЗрд░реА рдкрд╛рдИ рдореЗрдВ рдПрдХ рдЧрдгрдирд╛ рдкреИрдХреЗрдЬ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг:
pi@raspi ~ $ wolfram -script calc_current.wl datafile=/tmp/data.csv
рдЦреБрдж calc_current.wl рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдиреАрдЪреЗ рдЯрд┐рдкреНрдкрдгреА рдХреЗ рд╕рд╛рде:
рдПрдХ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдбреЗрдЯрд╛ рдкрдврд╝реЗрдВред рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░рдкрддреНрд░ рдХреА рдкрдВрдХреНрддрд┐рдпрд╛рдБ рд╣реЛрддреА рд╣реИрдВ <рдЖрдпрд╛рдо рд╕рдВрдЦреНрдпрд╛>, <рдорд╛рди>ред
data=Import[$CommandLine[[4]]]
рдПрдХ рдмрд╛рд░ рдбреЗрдЯрд╛ рдкрдврд╝рдиреЗ рдХреЗ рдмрд╛рдж, рдПрдХ рдореМрдЬреВрджрд╛ рдирдореВрдиреЗ рдореЗрдВ рд▓рдЧрднрдЧ рд╕рд╛рдЗрдирд╕реЛрдЗрдбрд▓ рдЪрдХреНрд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдлрд╛рд╕реНрдЯ рдлреВрд░рд┐рдпрд░ рдЯреНрд░рд╛рдВрд╕рдлреЙрд░реНрдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╡рд░реНрддрдорд╛рди рддрд╛рдХрдд рдХреА рд╕рдордп рдирд┐рд░реНрднрд░рддрд╛ nonlinear рд╣реИ, рдФрд░ рдПрдлрдПрдлрдЯреА рджреНрд╡рд╛рд░рд╛ рдЧрдгрдирд╛ рдХреА рдЧрдИ рдЕрдиреБрдорд╛рдирд┐рдд рдХреЛрдг рдФрд░ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдореВрд▓реНрдп рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░реЗрд╖рд┐рдд рддреЗрдЬреА рд╕реЗ рд╕рд╣реА sinusoid рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдЪреБрдирдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдореЗрдВ рддреЗрдЬреА рд╕реЗ рд╡реГрджреНрдзрд┐ рд╣реЛрдЧреАред
fourier=Take[Abs[Fourier[data[[All,2]]]],{2,256}]
рдпрджрд┐ рдирдореВрдирд╛ рдХреЗ рд▓рд┐рдП рдФрд╕рдд рд╕реЗ рдЕрдзрд┐рдХрддрдо FFT рдореВрд▓реНрдп рднрд┐рдиреНрди рдирд╣реАрдВ рд╣реИ, рддреЛ рд╣рдо рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреЛрдИ рд╕реНрдкрд╖реНрдЯ рд╕рд╛рдЗрдирд╕реЙрдЗрдб рдирд╣реАрдВ рд╣реИ, рд╕рднреА рд╕рдВрдХреЗрддрдХ "рд╢реЛрд░" рд╣реИрдВ, рдФрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡рд░реНрддрдорд╛рди рддрд╛рдХрдд рд╢реВрдиреНрдп рд╣реИред
topcycle=Ordering[fourier,-1]
avg=Mean[fourier]
top=fourier[[topcycle[[1]]]]
If[top < 10 * avg, Print["No AC"]; Exit[]]
рдпрджрд┐ рдПрдХ рдЙрдЪреНрдЪрд╛рд░рдг рд╕рд╛рдЗрдирд╕реЙрдЗрдб рдкрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЖрдк рдХреЛрдгреАрдп рд╡реЗрдЧ рдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдореВрд▓реНрдп рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рд╕реНрдкрд╖реНрдЯ рдЪрдХреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдЪреБрдирдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
nlm=NonlinearModelFit[data, a Sin[bx + c]+d, {a,{b, 2 Pi * topcycle[[1]] / 512}, c, d},x]
рдПрдбреАрд╕реА рдХреА рднреМрддрд┐рдХ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ (рдЖрдпрд╛рдо 1024, рдмреЗрд╕ рд╡реЛрд▓реНрдЯреЗрдЬ 5 рд╡реА) рдФрд░ рд╕реЗрдВрд╕рд░ (рдореЗрд░реЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ 0.185 рд╡реА / рдП) рдХреЛ рдЬрд╛рдирдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рдкреНрд░рднрд╛рд╡реА рд╡рд░реНрддрдорд╛рди рдХреА рдЧрдгрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
imax=Abs[nlm["BestFitParameters"][[1]][[2]]] / (1024 / 5 * 0.185)
Print["Imax=", imax]
iefc=imax / Sqrt[2]
Print["Iefc=", iefc]
Print["Power=", iefc * 230]
рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╡рд┐рдзрд┐ рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдХрд╛рдо рдХрд░рддреА рд╣реИред рдЬрдм рдиреЙрдирд▓рд╛рдЗрдирдореЛрдбреЗрд▓рдлрд┐рдЯ рдорд╛рдк рдХреА рд╕рдВрдЦреНрдпрд╛ рдареАрдХ рд╕реЗ рд╕рд╛рдЗрди рд╡реЗрд╡ рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рдереА, рддреЛ рдпрд╣ рд▓рдЧрднрдЧ 5 рдкреНрд░рддрд┐рд╢рдд рдереАред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдкреНрд░рддреНрдпреЗрдХ рдорд╛рдк рдореЗрдВ рдмрд╣реБрдд рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ - рдореЗрд░реЗ рдкрд╛рд╕ рдФрд╕рддрди 5 рд╕реЗрдХрдВрдб рд╣реИ - рд╡реБрд▓реНрдлреНрд░рд╛рдо рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдПред рдЗрд╕рд▓рд┐рдП ...
рдирдВрдмрд░ рджреЛ рдХрд╛ рдкреНрд░рдпрд╛рд╕
рдЪреВрдВрдХрд┐ рдиреЗрдЯрд╡рд░реНрдХ рдореЗрдВ рдкреНрд░рддреНрдпрд╛рд╡рд░реНрддреА рдзрд╛рд░рд╛ рдХреА рдЖрд╡реГрддреНрддрд┐ рд╕реНрдерд┐рд░ рд╣реИ рдФрд░ (рд░реВрд╕ рдореЗрдВ) 50 рд╣рд░реНрдЯреНрдЬ рд╣реИ, рдХреЛрдгреАрдп рд╡реЗрдЧ рдХреА рдЧрдгрдирд╛ рдкрд╣рд▓реЗ рд╕реЗ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ рдФрд░ рдЧреИрд░-рд░реИрдЦрд┐рдХ рдкреНрд░рддрд┐рдЧрдорди рдХреЗ рдмрдЬрд╛рдп, рдПрдХ рд░реИрдЦрд┐рдХ рдкреНрд░рддрд┐рдЧрдорди рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ

рдпрд╛

рдПрдХреНрд╕ рдФрд░ рд╡рд╛рдИ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдЕрдВрддрд░, рд╣рдо рд░реИрдЦрд┐рдХ рд╕рдореАрдХрд░рдгреЛрдВ рдХреА рдПрдХ рдкреНрд░рдгрд╛рд▓реА рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ:

рдХреНрд░реЗрдорд░ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдкреНрд░рдгрд╛рд▓реА рдХреЛ рд╣рд▓ рдХрд░рддреЗ рд╣реБрдП, рд╣рдо рдЧреБрдгрд╛рдВрдХ рдХреЗ рдорд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ:

рдлрд┐рд░, рдкрд╛рдЗрдерд╛рдЧреЛрд░рд╕ рдкреНрд░рдореЗрдп рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдЕрдзрд┐рдХрддрдо рд╡рд░реНрддрдорд╛рди рдореВрд▓реНрдп рд╣реЛрдЧрд╛:

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