рдпрд╣рд╛рдБ рдЕрдВрдд рдореЗрдВ рд╣рдо рдореЙрдбреНрдпреВрд▓ рд▓реЙрд░реЗрдВрдЯ (рд▓реЙрд░реЗрдВрдЯ) рдХрдВрдкрдиреА рдХрд░реНрдиреЗрд▓рд╢рд┐рдк рдФрд░ рд╣реЛрдо рдСрдЯреЛрдореЗрд╢рди рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдЙрдирдХреЗ рдПрдХреАрдХрд░рдг рдкрд░ рд╣рдорд╛рд░реА рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рддреАрд╕рд░реЗ рднрд╛рдЧ рдХреЗ рд▓рд┐рдП рдорд┐рд▓рд╛ ред рдЖрдк рдкрд╣рд▓реЗ рджреЛ рд▓реЗрдЦ рдпрд╣рд╛рдБ рдФрд░ рдпрд╣рд╛рдБ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ ред рдЙрдиреНрд╣реЛрдВрдиреЗ MajorDoMo , Arduino рдФрд░ Arduino Mega Server рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рд╛рде рд▓реЙрд░реЗрдВрдЯ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдПрдХреАрдХрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХреА ред рдЖрдЬ рд╣рдо рдмрд╛рдд рдХрд░реЗрдВрдЧреЗ рдХрд┐ рдЕрдкрдиреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдХреА рд╕реНрдХреНрд░реАрди рд╕реЗ рд╕реАрдзреЗ рдЗрди рдореЙрдбреНрдпреВрд▓ рдХреЛ рдХреИрд╕реЗ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░реЗрдВ рдФрд░ рдЗрди рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВ ... рдЕрдкрдиреЗ рдмрдЪреНрдЪреЛрдВ рдХреЛ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╕рд┐рдЦрд╛рдПрдВ ред
рд▓реЗрдХрд┐рди рд╕реНрдорд╛рд░реНрдЯ рдШрд░ рдХрд╛ рдХреНрдпрд╛?
рдЗрд╕ рдмрд╛рд░ рд╣рдо рд╕реНрдорд╛рд░реНрдЯ рд╣рд╛рдЙрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬреНрдпрд╛рджрд╛ рдмрд╛рдд рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗ; рд╣рдордиреЗ рдкрд┐рдЫрд▓реЗ рджреЛ рд▓реЗрдЦреЛрдВ рдореЗрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд░реНрдпрд╛рдкреНрдд рдЪрд░реНрдЪрд╛ рдХреА рдереАред рдЗрд╕ рдмрд╛рд░ рд╣рдо рдЦреБрдж рдХреЛ рдереЛрдбрд╝рд╛ рдЖрд░рд╛рдо рдХрд░рдиреЗ рджреЗрдВрдЧреЗ рдФрд░ рд╕рд┐рд░реНрдл рдЕрдкрдиреА рдЦреБрд╢реА рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХрд╛ рдХрд╛рдо рдХрд░реЗрдВрдЧреЗредрдЗрд╕рд▓рд┐рдП, рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рд╣рдо "рд▓реЙрд░реЗрдВрдЯ" рдореЙрдбреНрдпреВрд▓ рдЭреВрда рдмреЛрд▓рддреЗ рд╣реИрдВ рдФрд░ рд╣рдо рдЗрд╕реЗ рдЕрдкрдиреЗ рдХрдВрдкреНрдпреВрдЯрд░ рд╕реЗ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдпрд╣ рдХреИрд╕реЗ рдХрд░рдирд╛ рд╣реИ? рдХрдИ рддрд░реАрдХреЗ рд╣реИрдВ рдФрд░ рд╣рдо рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рдЪрдпрди рдХрд░реЗрдВрдЧреЗ, рдЕрд░реНрдерд╛рддреН, рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдгред рдХреНрдпреЛрдВ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг? рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рд╕рд░рд▓ рдФрд░ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рд╣реИ, рдЦрд╛рд╕рдХрд░ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рджреГрд╢реНрдп рдкреНрд░рд╕реНрддреБрддрд┐ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВред рдЗрд╕ рдкрд░ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд░реЗрдЦрд╛рдЪрд┐рддреНрд░ рдмрд╕ рдХрд▓реНрдкрдирд╛ рдХреЛ рд╡рд┐рд╕реНрдорд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╕рд╛рдзрд╛рд░рдг рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЗ рдмреАрдЪ рднреА рдмрд╣реБрдд, рдмрд╣реБрдд рдЕрдЪреНрдЫреЗ рд╣реИрдВред рд╕рдм рдХреЗ рд╕рдм, рдпрд╣ рдкреНрд░рдпреЛрдЧ рдФрд░ рд╕реАрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╣рд╛рди рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рд╣реИредрдпрд╣ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рднреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдиреЗ рдиреЗрдЯрд╡рд░реНрдХ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╕рдорд░реНрдерди рдФрд░ рд▓реЙрд░реЗрдВрдЯ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рд╛рде рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдЗрдВрдЯрд░реИрдХреНрд╢рди рд╕реЗ рд╣рдореЗрдВ рд╡рд┐рд╢реЗрд╖ рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреАредрд╕реНрдХреЗрдЪ рд▓рд┐рдЦрдирд╛
рдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдЖрдкрдХреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕реНрдерд╛рдкрд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП ред рдпрджрд┐ рдЖрдкрдиреЗ рдЕрднреА рддрдХ рдЗрд╕ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╡рд╛рддрд╛рд╡рд░рдг рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рд╡рд┐рддрд░рдг рдХрд┐рдЯ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдФрд░ рдЗрд╕реЗ рдЕрдкрдиреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╣рдо рдорд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдкрд╣рд▓реЗ рд╣реА рдРрд╕рд╛ рдХрд░ рдЪреБрдХреЗ рд╣реИрдВ рдФрд░ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдкрд░ рд╕рдмрд╕реЗ рд╕рд░рд▓ рд░реЗрдЦрд╛рдЪрд┐рддреНрд░ рд▓рд┐рдЦрдиреЗ рдФрд░ рдЪрд▓рд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИрдВред
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдореЗрдВ рдиреЗрдЯрд╡рд░реНрдХ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рд╕рдорд░реНрдерди рд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдкрдВрдХреНрддрд┐ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:import processing.net.*;
рддреЛ рдлрд┐рд░ рдЪрд▓реЛ рд▓реЙрд░реЗрдВрдЯ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП рдЯреЗрд╕реНрдЯ рдХрдорд╛рдВрдб рдХрд╛ рдкрд░рд┐рдЪрдп рджреЗрдВред рдЗрд╕реЗ рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦреЛрдВ рд╕реЗ рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд░рд┐рд▓реЗ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдХреА рдЖрдЬреНрдЮрд╛ рджреЗрдВред рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдХрдорд╛рдВрдб рдХреЛ рди рднреВрд▓реЗрдВ, рдЗрд╕рдХреЗ рдмрд┐рдирд╛, рдореЙрдбреНрдпреВрд▓ рд╣рдорд╛рд░реЗ рдЖрджреЗрд╢реЛрдВ рдХрд╛ рдЬрд╡рд╛рдм рдирд╣реАрдВ рджреЗрдЧрд╛редString pass = "$KE,PSW,SET,Laurent";
String rele2on = "$KE,REL,2,1";
String rele2off = "$KE,REL,2,0";
рд╣рдореЗрдВ рд╕реЗрд╡рд╛ рдкреНрд░рддреАрдХреЛрдВ рдФрд░ рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬреЛ рд╣рдорд╛рд░реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рд▓реЙрд░реЗрдВрдЯ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░реЗрдВрдЧреЗ рдФрд░ рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рд╣рдо рдЗрд╕ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдХрдорд╛рдВрдб рднреЗрдЬреЗрдВрдЧреЗредbyte CRbyte = 13;
byte LFbyte = 10;
Client myClient;
рдЕрдм рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдЬреЛ рд╕реАрдзреЗ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдХрдВрдЯреНрд░реЛрд▓ рдХрдорд╛рдВрдб рднреЗрдЬреЗрдЧрд╛:void sendCommand(String command, Client cl) {
cl.write(pass);
cl.write(CRbyte);
cl.write(LFbyte);
delay(10);
cl.write(command);
cl.write(CRbyte);
cl.write(LFbyte);
}
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдлрд╝рдВрдХреНрд╢рди рдПрдХ рдкрд╛рд╕рд╡рд░реНрдб рднреЗрдЬрддрд╛ рд╣реИ, рдЬреЛ рдкрд╛рд╕ рдЪрд░ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдпрджрд┐ рдЖрдкрдиреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкрд╛рд╕рд╡рд░реНрдб рдмрджрд▓ рджрд┐рдпрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдЗрд╕ рдЪрд░ рдореЗрдВ рднреА рдкрд╛рд╕рд╡рд░реНрдб рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ), рдлрд┐рд░ рдпрд╣ 10 рдорд┐рд▓реА рд╕реЗрдХрдВрдб рдХреЗ рд▓рд┐рдП рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдПрдХ рдХрдорд╛рдВрдб рднреЗрдЬрддрд╛ рд╣реИред рднреЗрдЬреЗ рдЧрдП рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд┐рд╕ рдмрд╛рдЗрдЯреНрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИредрдЕрдм рдорд╛рдирдХ рд╕реЗрдЯрдЕрдк () рдлрд╝рдВрдХреНрд╢рдиред рдпрд╣ рдлрд╝рдВрдХреНрд╢рди рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдкрд░ рд╕рднреА рд░реЗрдЦрд╛рдЪрд┐рддреНрд░реЛрдВ рдореЗрдВ рдореМрдЬреВрдж рд╣реИ рдФрд░ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдкреНрд░рд╛рд░рдВрдн рдФрд░ рд╕реЗрдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЕрднрд┐рдкреНрд░реЗрдд рд╣реИредvoid setup() {
size(300, 300);
background(255);
myClient = new Client(this, "192.168.2.19", 2424);
}
рдпрд╣рд╛рдВ рд╣рдо рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╡рд┐рдВрдбреЛ рдХрд╛ рдЖрдХрд╛рд░, рд╕рдлреЗрдж рдкреГрд╖реНрдарднреВрдорд┐ рдХрд╛ рд░рдВрдЧ рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╣рдорд╛рд░реЗ рд▓реЙрд░реЗрдВрдЯ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП myClient рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рддреЗ рд╣реИрдВред рдЖрдк рд╢рд╛рдпрдж рдкрд╣рд▓реЗ рд╣реА рд╕рдордЭ рдЧрдП рд╣реИрдВ рдХрд┐ "192.168.2.19" рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЖрдИрдкреА рдкрддрд╛ рд╣реИ (рдЖрдкрдХреЛ рдЗрд╕реЗ рдЕрдкрдиреЗ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрддреЗ рдкрд░ рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛), рдФрд░ 2424 рд╕рднреА рд▓реЙрд░реЗрдВрдЯ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдорд╛рдирдХ рдмрдВрджрд░рдЧрд╛рд╣ рд╣реИ рдФрд░ рдЖрдкрдХреЛ рдЗрд╕реЗ рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИредрдФрд░ рдЕрдВрдд рдореЗрдВ, рдореБрдЦреНрдп рдбреНрд░рд╛ () рдлрд╝рдВрдХреНрд╢рди, рдЬреЛ рд╕реНрдХреЗрдЪ рдХрд╛ рдХрд╛рдо рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдЧрд╛ред рдпрд╣ рдПрдХ рдЕрдВрддрд╣реАрди рдЪрдХреНрд░ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╣рдо рдЕрдкрдиреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░реЗрдВрдЧреЗред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкреНрд░рддреНрдпреЗрдХ рддреАрди рд╕реЗрдХрдВрдб рдореЗрдВ рд▓реМрд░реЗрдВрдЯ рдореЙрдбреНрдпреВрд▓ рдХреЗ рджреВрд╕рд░реЗ рд░рд┐рд▓реЗ рд╕реЗ рдЬреБрдбрд╝реЗ, рджреАрдкрдХ рдХреЛ рдЪрд╛рд▓реВ рдФрд░ рдмрдВрдж рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВредvoid draw() {
sendCommand(rele2on, myClient);
delay(3000);
sendCommand(rele2off, myClient);
delay(3000);
}
рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, rele2on рдХреЛ "$ KE, REL, 2.1" рдХрдорд╛рдВрдб рд╕реЗ рдмрджрд▓рд╛ рдЬрд╛рдПрдЧрд╛, рдФрд░ rele2off рдХреЗ рдмрдЬрд╛рдп, "$ KE, REL, 2.0"редрд╕рд░рд▓, рд╕рд╣реА? рд╣рдо рдПрдХ рдХрдорд╛рдВрдб рднреЗрдЬрддреЗ рд╣реИрдВ рдФрд░ рдПрдХ рдЪрдХреНрд░ рдореЗрдВ рддреАрди рд╕реЗрдХрдВрдб рдФрд░ рдЗрд╕реА рддрд░рд╣ рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддреЗ рд╣реИрдВред рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╕рд░рд▓ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЛрдИ рднреА рдЖрдкрдХреЛ рдкрд░реЗрд╢рд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕ рд▓реЗрдЦ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕рд╛рде рд╕рд╢рд╕реНрддреНрд░ рд░реВрдк рд╕реЗ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдореЙрдбреНрдпреВрд▓ рдирд┐рдпрдВрддреНрд░рдг рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдПред рдФрд░ рдпрд╣ рдордд рднреВрд▓реЛ рдХрд┐ рдореЙрдбреНрдпреВрд▓ рди рдХреЗрд╡рд▓ рдкреНрд░рдХрд╛рд╢ рдХреЛ рдЪрд╛рд▓реВ рдФрд░ рдмрдВрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдмрд▓реНрдХрд┐ рдмрд╣реБрдд рдЕрдзрд┐рдХ рднреА рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдХрд╛рд░реНрдп рдЖрдкрдХрд╛ рд╣реИ, рдЕрдм рдЖрдкрдХреЗ рдкрд╛рд╕ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдкрд░ рд╕реНрдХреЗрдЪ рд╕реЗ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдкрдХрд░рдг рд╣реИредрдпрд╣рд╛рдБ рдкреВрд░рд╛ рд╕реНрдХреЗрдЪ рд╣реИредрдкреВрд░реНрдг рд╕реНрдХреЗрдЪ рдХреЛрдбimport processing.net.*;
byte CRbyte = 13; // HEX 0x0D
byte LFbyte = 10; // HEX 0x0A
// Commands
String pass = "$KE,PSW,SET,Laurent";
String rele2on = "$KE,REL,2,1";
String rele2off = "$KE,REL,2,0";
// Client
Client myClient;
void sendCommand(String command, Client cl) {
cl.write(pass);
cl.write(CRbyte);
cl.write(LFbyte);
delay(10);
cl.write(command);
cl.write(CRbyte);
cl.write(LFbyte);
}
void setup() {
size(300, 300);
background(255);
myClient = new Client(this, ┬л192.168.2.19┬╗, 2424);
}
void draw() {
sendCommand(rele2on, myClient);
delay(3000);
sendCommand(rele2off, myClient);
delay(3000);
}
рдмрдЪреНрдЪреЛрдВ рдХреЛ рдХрд╛рд░реНрдпрдХреНрд░рдо рд╕рд┐рдЦрд╛рдирд╛
рдФрд░ рдЖрдЦрд┐рд░рдХрд╛рд░, рд╣рдореЗрдВ рдмрдЪреНрдЪреЛрдВ рдХреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╕рд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдорд┐рд▓рд╛ред рдпрд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рд╕реНрд╡рдпрдВ рд╕рдордЭрддреЗ рд╣реИрдВ, рдпрд╣ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИ рдФрд░ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдХреНрд╕рд░ рдЗрд╕ рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕рдмрд╕реЗ рд╕рд░рд▓ рдФрд░ рд╕реНрдкрд╖реНрдЯ рд╣реИредрднрд╛рд╖рд╛ рдХреЗ рд░рдЪрдирд╛рдХрд╛рд░реЛрдВ рдиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдзреНрдпрд╛рди рд░рдЦрд╛ рд╣реИ рдФрд░ рдпрдерд╛рд╕рдВрднрд╡ рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЗ рд▓реЗрдЦрди рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдпрд╛ рд╣реИред рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЖрд╕рд╛рди рдФрд░ рд╕рд╕реНрддреА рд╣реИред рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХреЗ рдкрд╣рд▓реЗ рдорд┐рдирдЯреЛрдВ рд╕реЗ, рдЖрдкрдХреЗ рдмрдЪреНрдЪреЗ рди рдХреЗрд╡рд▓ рд╕реНрдХреНрд░реАрди рдкрд░ рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдмрд▓реНрдХрд┐ рд╕рд╛рдзрд╛рд░рдг рдХрд╛рд░реНрдЯреВрди рднреА рдЦреАрдВрдЪ рд╕рдХрддреЗ рд╣реИрдВ рдЬрдм рдЦреАрдВрдЪреЗ рдЧрдП рдЖрдВрдХрдбрд╝реЗ рд╕реНрдХреНрд░реАрди рдкрд░ рдШреВрдорддреЗ рд╣реИрдВ рдФрд░ рдорд╛рдЙрд╕ рдХреА рдЪрд╛рд▓ рдФрд░ рдХреНрд▓рд┐рдХ рдХрд╛ рдЬрд╡рд╛рдм рджреЗрддреЗ рд╣реИрдВред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдмрдЪреНрдЪреЛрдВ рдХреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╕рд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рднрд╛рд╖рд╛ рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░рдирд╛ рдХрдард┐рди рд╣реИредрд╣рдо рд╕реАрдЦрдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдФрд░ рднреА рд░реЛрдЪрдХ рдФрд░ рд░реЛрдорд╛рдВрдЪрдХ рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВрдЧреЗред рдХреИрд╕реЗ? рд╣рдо рдмрдЪреНрдЪреЛрдВ рдХреЛ рд╕реНрдХреНрд░реАрди рдкрд░ рди рдХреЗрд╡рд▓ рд░рдВрдЧреАрди рдЖрдХреГрддрд┐рдпреЛрдВ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рджреЗрдВрдЧреЗ, рдмрд▓реНрдХрд┐ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдкрд░ рдЕрдкрдиреЗ рдкрд╣рд▓реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рд╕реЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рджреБрдирд┐рдпрд╛ рдореЗрдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡рд╕реНрддреБрдУрдВ рдХреЛ рднреА рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░реЗрдВрдЧреЗредрд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рдпрд╣ рдХреИрд╕реЗ рдХрд░рдирд╛ рд╣реИ? рд╣рдо рдПрдХ рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЗрддреЗ рд╣реИрдВ рдЬреЛ рд╕реНрдХреЗрдЪ рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╣реА рд▓рд┐рдЦрд╛ рд╣реИ рдФрд░ рдХреЛрдб рдХреА рдХреБрдЫ рдкрдВрдХреНрддрд┐рдпрд╛рдБ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдЬрд╛рджреБрдИ рдЖрдХреГрддрд┐ рдмрдирд╛рдПрдВ, рдЬрдм рдЖрдк рдЗрд╕реЗ рдПрдХ рдорд╛рдЙрд╕ рд╕реЗ рд╕реНрдкрд░реНрд╢ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рджреБрдирд┐рдпрд╛ рдореЗрдВ рдПрдХ рдШрдЯрдирд╛ рдШрдЯрд┐рдд рд╣реЛрдЧреА, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкреНрд░рдХрд╛рд╢ рдпрд╛ рдкреНрд░рд╢рдВрд╕рдХ рдЪрд╛рд▓реВ рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдпрд╛ рд╕рдВрдЧреАрдд рдпрд╛ рдХреБрдЫ рдФрд░ рдЦреЗрд▓рдирд╛ рд╢реБрд░реВ рд╣реЛ рдЬрд╛рдПрдЧрд╛, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЗ рдкрд╛рд╕ рдкрд░реНрдпрд╛рдкреНрдд рдХрд▓реНрдкрдирд╛ рд╣реИред рдпрд╣ рдЕрдореВрд░реНрдд рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд╕рд╛рде рд╕рд░рд▓ рдЬреЛрдбрд╝рддреЛрдбрд╝ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрдЪреНрдЪреЗ рдкрд░ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдкреНрд░рднрд╛рд╡ рдбрд╛рд▓реЗрдЧрд╛ред
рдЗрд╕рд▓рд┐рдП, рд╣рдо рдПрдХ рдЖрдХреГрддрд┐ рдмрдирд╛рдПрдВрдЧреЗ рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╣рдо рдЗрд╕рдХреЗ рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рдФрд░ рдЖрдХрд╛рд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВрдЧреЗ рдФрд░ рдПрдХ рддрд╛рд░реНрдХрд┐рдХ рдЪрд░ рдкреЗрд╢ рдХрд░реЗрдВрдЧреЗ рдЬрд┐рд╕рдореЗрдВ рд╡рд╕реНрддреБ рдХреА рд╕реНрдерд┐рддрд┐ (рдЕрдм рд╡рд╛рд╕реНрддрд╡рд┐рдХ рджреБрдирд┐рдпрд╛ рдореЗрдВ) рд╣реЛрдЧреАредint x1 = 100;
int y1 = 100;
int dx = 100;
int dy = 100;
boolean state = false;
рдЕрдм рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдВрджреБред рдПрдХ рдмрдЪреНрдЪреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ рдФрд░ рдЙрд╕рдХреЗ рд▓рд┐рдП рдЗрд╕ рддрд░рд╣ рдХреЗ рдирд┐рд░реНрдорд╛рдгреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИsendCommand(rele2on, myClient);
рдЗрд╕рд▓рд┐рдП, рд╣рдореЗрдВ рдпрдерд╛рд╕рдВрднрд╡ рднрд╛рд╖рд╛ рдХреЗ рд╡рд╛рдХреНрдп рд╡рд┐рдиреНрдпрд╛рд╕ рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╣рдо рдЙрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП "рдмрдЪреНрдЪреЛрдВ рдХреЗ" рд░реИрдкрд░ рдХреЛ рдкреЗрд╢ рдХрд░реЗрдВрдЧреЗ рдЬреЛ рд░рд┐рд▓реЗ рдХреЛ рдЪрд╛рд▓реВ рдФрд░ рдмрдВрдж рдХрд░рддрд╛ рд╣реИредvoid on() {
sendCommand(rele2on, myClient);
}
void off() {
sendCommand(rele2off, myClient);
}
рд╕рд╣рдордд, рдкрд░ () рдпрд╛ рдмрдВрдж (рдкрд╣рд▓реЗ рд╕реЗ рд╣реА sendCommand (rele2on, myClient) рд╕реЗ рдмрд╣реБрдд рдмреЗрд╣рддрд░ рд╣реИ)ред рдФрд░ рдмрдЪреНрдЪреЗ рдХреЛ рдРрд╕реА рд╕рдВрд░рдЪрдирд╛рдУрдВ рд╕реЗ рдПрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдмрдирд╛рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИред рдФрд░ рдХреЛрдИ рднреА рдЖрдкрдХреЛ рдХрд▓реНрдкрдирд╛ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реЗрд╢рд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЕрдкрдиреЗ рдмрдЪреНрдЪреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЕрдиреНрдп рд╕рд░рд▓ рдФрд░ рд╕рдордЭрдиреЗ рдпреЛрдЧреНрдп рдирд╛рдо рдХреЗ рд╕рд╛рде рдЖрддрд╛ рд╣реИредрдЕрдм рдореБрдЦреНрдп рдбреНрд░рд╛ () рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдХреЛрдбредvoid draw() {
background(64);
if ((mouseX > x1 && mouseX < x1 + dx) &&
(mouseY > y1 && mouseY < y1 + dy)) {
fill(152,161,247, 100);
background(255);
if (!state) {
on();
}
state = true;
} else {
fill(204,240,152, 100);
if (state) {
off();
}
state = false;
}
rect(x1, y1, dx, dy);
}
рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЪрд░рдг рдореЗрдВ, рдЕрдиреНрдп рднрд╛рд╖рд╛ рдирд┐рд░реНрдорд╛рдг рдЗрд╕ рддрд░рд╣ рд╕реЗ рд▓рдкреЗрдЯреЗ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдмрдЪреНрдЪрд╛ рдмрд╣реБрдд рд╣реА рд╕рд░рд▓ рдмреНрд▓реЙрдХреЛрдВ рд╕реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдмрдирд╛рдПрдЧрд╛ред рд╣реЛрдорд╡рд░реНрдХ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдХреЗ рд░реВрдк рдореЗрдВ, рдЖрдк рд╡рд┐рдЪрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреЗ рдбрд┐рдЬрд╛рдЗрдиреЛрдВ рд╕реЗ рдХреИрд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛рдпрд╛ рдЬрд╛рдП if ((mouseX > x1 && mouseX < x1 + dx) &&
(mouseY > y1 && mouseY < y1 + dy)) {
рдпрд╛ fill(152,161,247, 100);
рдФрд░ рдЙрдиреНрд╣реЗрдВ рдмрдЪреНрдЪреЗ рдХреЗ рд▓рд┐рдП рд╕рд░рд▓ рдФрд░ рд╕рдордЭрдиреЗ рдпреЛрдЧреНрдп рдХреЗ рд╕рд╛рде рдмрджрд▓реЗрдВред
рдкреНрд░рдХрд╛рд╢ рди рдХреЗрд╡рд▓ рдХрдВрдкреНрдпреВрдЯрд░ рд╕реНрдХреНрд░реАрди рдкрд░ рдЖрднрд╛рд╕реА рджреБрдирд┐рдпрд╛ рдореЗрдВ рдЖрдпрд╛, рдмрд▓реНрдХрд┐ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХрдорд░реЗ рдореЗрдВ рднреАред рдФрд░ рдореЙрдбреНрдпреВрд▓ рдкрд░ рддреАрди рдФрд░ рд░рд┐рд▓реЗ рд╣реИрдВ рдЬреЛ рдЖрдкрдХреЗ рд░рдЪрдирд╛рддреНрдордХ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдЕрдЧрд░ рдХреБрдЫ рднреА рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рд╣реИ - рдЕрдкрдиреЗ рдмрдЪреНрдЪреЗ рд╕реЗ рдкреВрдЫреЗрдВ - рд╡рд╣ рд╢рд╛рдпрдж рдЗрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддрд╛ рд╣реИред рдпрд╣рд╛рдВ рдЖрдкрдХреЗ рдкрд╛рд╕ "рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдФрд░ рд░реЛрдмреЛрдЯрд┐рдХреНрд╕ рдореЗрдВ рдкреНрд░рд╢рд┐рдХреНрд╖рдг" рдХреА рд╢реБрд░реБрдЖрдд рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдЬ рднреА рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИредрдпрд╣рд╛рдБ рдкреВрд░рд╛ рд╕реНрдХреЗрдЪ рд╣реИредрдкреВрд░реНрдг рд╕реНрдХреЗрдЪ рдХреЛрдбimport processing.net.*;
int x1 = 100;
int y1 = 100;
int dx = 100;
int dy = 100;
boolean state = false;
byte CRbyte = 13; // HEX 0x0D
byte LFbyte = 10; // HEX 0x0A
// Commands
String pass = "$KE,PSW,SET,Laurent";
String rele2on = "$KE,REL,2,1";
String rele2off = "$KE,REL,2,0";
// Client
Client myClient;
void sendCommand(String command, Client cl) {
cl.write(pass);
cl.write(CRbyte);
cl.write(LFbyte);
delay(10);
cl.write(command);
cl.write(CRbyte);
cl.write(LFbyte);
}
void on() {
sendCommand(rele2on, myClient);
}
void off() {
sendCommand(rele2off, myClient);
}
void setup() {
size(300, 300);
background(255);
myClient = new Client(this, ┬л192.168.2.19┬╗, 2424);
}
void draw() {
background(64);
if ((mouseX > x1 && mouseX < x1 + dx) &&
(mouseY > y1 && mouseY < y1 + dy)) {
fill(152,161,247, 100);
background(255);
if (!state) {on();}
state = true;
} else {
fill(204,240,152, 100);
if (state) {off();}
state = false;
}
rect(x1, y1, dx, dy);
}
рдирд┐рд╖реНрдХрд░реНрд╖
рдЦреИрд░, рд▓реЙрд░реЗрдВрдЯ рдореЙрдбреНрдпреВрд▓ рдХреЛ рд╣реЛрдо рдСрдЯреЛрдореЗрд╢рди рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдкрд░ рдЪрдХреНрд░ рдХрд╛ рддреАрд╕рд░рд╛ рднрд╛рдЧ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдпрд╛ рд╣реИред рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рд╣рдордиреЗ рд╣реЛрдо рдСрдЯреЛрдореЗрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реАрдзреЗ рдмрд╛рдд рдирд╣реАрдВ рдХреА, рд▓реЗрдХрд┐рди рд╕реНрдорд╛рд░реНрдЯ рд╣реЛрдо рдмрдирд╛рдиреЗ рдореЗрдВ рдЖрдкрдХреЛ рдЬреЛ рдЬреНрдЮрд╛рди рдкреНрд░рд╛рдкреНрдд рд╣реБрдЖ рд╣реИ, рдЙрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╕реЗ рдЖрдкрдХреЛ рдХреЛрдИ рдкрд░реЗрд╢рд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рд╢рд╛рдпрдж рдЖрдк рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдкрд░ рдПрдХ рд╕реНрдорд╛рд░реНрдЯ рд╣реЛрдо рдкреНрд░рдмрдВрдзрди рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдмрдирд╛рдПрдВрдЧреЗред рдХреНрдпреЛрдВ рдирд╣реАрдВ? рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдм рдХреБрдЫ рд╣реИ рдФрд░ рдЕрдм рдпрд╣ рднреА рдкрддрд╛ рд╣реИ рдХрд┐ рд▓реЙрд░реЗрдВрдЯ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдХреИрд╕реЗ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПредрд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рд╕рднреА рд▓реЗрдЦреЛрдВ рдХреЛ рдкрдврд╝рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рд▓реЙрд░реЗрдВрдЯ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдЪрд╛рд░ рд▓реЛрдХрдкреНрд░рд┐рдп рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:рдФрд░, рдЗрд╕ рддрд░рд╣ рдХреА рд╡реНрдпрд╛рдкрдХ рдЬрд╛рдирдХрд╛рд░реА рдФрд░ рдЙрдкрдпреЛрдЧ рдХреЗ рдЙрджрд╛рд╣рд░рдг рд╣реЛрдиреЗ рд╕реЗ, рдЖрдкрдХреЗ рд▓рд┐рдП рдЗрди рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП рдЕрдиреНрдп рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдЬрд┐рдирдХреЗ рд╕рд╛рде рдЖрдк рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред