ЁЯМРЁЯФе рд╡рд╛рдИрдлрд╛рдИ рдкрд░ рдЕрдкрдиреЗ рдореЛрдЯрд░реНрд╕ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рд╕реЗ рдЖрдк рдЙрдиреНрд╣реЗрдВ рдХрд┐рд╕реА рднреА рдлреЛрди рдпрд╛ рдкреАрд╕реА рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕реЗ рд╕рдВрдЪрд╛рд▓рд┐рдд рдХрд░ рд╕рдХреЗрдВрдЧреЗ, рдЬреЛ рд╡рд╛рдпрд░рд▓реЗрд╕ рд░реЛрдмреЛрдЯ рдпрд╛ рд░рд┐рдореЛрдЯ рдХрдВрдЯреНрд░реЛрд▓ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рдПрдХрджрдо рд╕рд╣реА рд╣реИ! ЁЯЪА


ЁЯФ╣ рдпреЛрдЬрдирд╛: рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИ

1я╕ПтГг рдж Arduino R4 рд╡рд╛рдИрдлрд╝рд╛рдИ рдПрдХ рдмрдирд╛рддрд╛ рд╣реИ рд╡реЗрдм рд╕рд░реНрд╡рд░.
2я╕ПтГг рдПрдХ рд╕рд░рд▓ рд╡реЗрдмрдкреЗрдЬ (рдмрдЯрди/рд╕реНрд▓рд╛рдЗрдбрд░реНрд╕ рдХреЗ рд╕рд╛рде) рдореЛрдЯрд░реЛрдВ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИред
3я╕ПтГг рдж рдЖрд░реНрдбреБрдЗрдиреЛ рдмрдЯрди рджрдмрд╛рдиреЗ рдкрд░ рдЬрд╛рдирдХрд╛рд░реА рдкрдврд╝рддрд╛ рд╣реИ рдФрд░ рд▓реЗ рдЬрд╛рддрд╛ рд╣реИ рд╕рд░реНрд╡реЛ + рд╕реНрдЯреЗрдкрд░ рдореЛрдЯрд░реНрд╕ рддрджрдиреБрд╕рд╛рд░ред


ЁЯФ╣ рдЖрд╡рд╢реНрдпрдХ рдШрдЯрдХ

тЬЕ Arduino R4 рд╡рд╛рдИрдлрд╝рд╛рдИ
тЬЕ SG90 рд╕рд░реНрд╡реЛ
тЬЕ 28BYJ-48 рд╕реНрдЯреЗрдкрд░ + ULN2003 рдбреНрд░рд╛рдЗрд╡рд░
тЬЕ рд╡рд╛рдИ-рдлрд╛рдИ рдиреЗрдЯрд╡рд░реНрдХ (рд░рд╛рдЙрдЯрд░ рдпрд╛ рд╣реЙрдЯрд╕реНрдкреЙрдЯ)


ЁЯФ╣ рдЪрд░рдг 1: рдореЛрдЯрд░реНрд╕ рдХреЛ Arduino рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ

ЁЯФ╕ SG90 рд╕рд░реНрд╡реЛ

рдЗрдорджрд╛рджреА PinArduino Pin
VCC (рд▓рд╛рд▓)5V
GND (рдХрд╛рд▓реА)GND
рд╕рд┐рдЧреНрдирд▓ (рдирд╛рд░рдВрдЧреА)Pin 6

ЁЯФ╕ 28BYJ-48 рд╕реНрдЯреЗрдкрд░ (ULN2003 рдбреНрд░рд╛рдЗрд╡рд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ)

рдпреВрдПрд▓рдПрди2003 PinArduino Pin
IN18
IN29
IN310
IN411
VCC5V
GNDGND

ЁЯФ╣ рдЪрд░рдг 2: Arduino рдХреЛрдб (рд╡рд╛рдИрдлрд╝рд╛рдИ рд╡реЗрдм рд╕рд░реНрд╡рд░)

рдпрд╣ рдХреЛрдб рдПрдХ рд╕реЗрдЯ рдЕрдк рдХрд░рддрд╛ рд╣реИ рд╡реЗрдмрдкреЗрдЬ рджреЛрдиреЛрдВ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдЯрди рдХреЗ рд╕рд╛рде рд╕рд░реНрд╡реЛ рдФрд░ рд╕реНрдЯреЗрдкрд░ рдореЛрдЯрд░.

#include <WiFiS3.h>
#include <Servo.h>
#include <Stepper.h>

const char* ssid = "YOUR_WIFI_NAME";      // Change to your WiFi
const char* password = "YOUR_WIFI_PASS";  // Change to your WiFi password

WiFiServer server(80);  // Start web server on port 80

Servo myServo;
const int stepsPerRevolution = 2048;
Stepper myStepper(stepsPerRevolution, 8, 10, 9, 11);

void setup() {
    Serial.begin(115200);
    myServo.attach(6);
    myStepper.setSpeed(10);

    // Connect to WiFi
    WiFi.begin(ssid, password);
    while (WiFi.status() != WL_CONNECTED) {
        delay(500);
        Serial.print(".");
    }
    Serial.println("Connected to WiFi!");
    Serial.println(WiFi.localIP()); // Print IP Address

    server.begin(); // Start web server
}

void loop() {
    WiFiClient client = server.available();  
    if (client) {
        String request = client.readStringUntil('\r');
        client.flush();
        
        if (request.indexOf("/servo_up") != -1) {
            myServo.write(180);  // Move Servo UP
        } else if (request.indexOf("/servo_down") != -1) {
            myServo.write(0);  // Move Servo DOWN
        } else if (request.indexOf("/stepper_left") != -1) {
            myStepper.step(-50);  // Stepper Left
        } else if (request.indexOf("/stepper_right") != -1) {
            myStepper.step(50);  // Stepper Right
        }

        // HTML Webpage
        client.println("HTTP/1.1 200 OK");
        client.println("Content-type:text/html");
        client.println();
        client.println("<html><body>");
        client.println("<h2>Motor Control</h2>");
        client.println("<button onclick=\"fetch('/servo_up')\">Servo Up</button>");
        client.println("<button onclick=\"fetch('/servo_down')\">Servo Down</button>");
        client.println("<br><br>");
        client.println("<button onclick=\"fetch('/stepper_left')\">Stepper Left</button>");
        client.println("<button onclick=\"fetch('/stepper_right')\">Stepper Right</button>");
        client.println("</body></html>");
        client.println();
        delay(100);
    }
}

ЁЯФ╣ рдЪрд░рдг 3: рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВ

1я╕ПтГг рдХреЛрдб рдЕрдкрд▓реЛрдб рдХрд░реЗрдВ рдЕрдкрдиреЗ Arduino R4 рд╡рд╛рдИрдлрд╝рд╛рдИ рдХреЗ рд▓рд┐рдП.
2я╕ПтГг рд╕реАрд░рд┐рдпрд▓ рдореЙрдирд┐рдЯрд░ рдЦреЛрд▓реЗрдВ тЖТ рдпрд╣ рдЖрдкрдХреЛ рджрд┐рдЦрд╛рдПрдЧрд╛ рдЖрдИрдкреА тАЛтАЛрдкрддреЗ (рдЬреИрд╕реЗ, 192.168.1.100).
3я╕ПтГг рдЕрдкрдиреЗ рдлрд╝реЛрди рдпрд╛ PC рдкрд░рд╡реЗрдм рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЦреЛрд▓реЗрдВ рдФрд░ рдпрд╣рд╛рдВ рдЬрд╛рдПрдВ:
ЁЯСЙ http://YOUR_IP_ADDRESS/
4я╕ПтГг рдмрдЯрди рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡реЛ рдФрд░ рд╕реНрдЯреЗрдкрд░ рд╡рд╛рдпрд░рд▓реЗрд╕ рддрд░реАрдХреЗ рд╕реЗ! ЁЯОотЬи


ЁЯФ╣ рдЕрдЧрд▓реЗ рдЪрд░рдг рдФрд░ рдЙрдиреНрдирдпрди

ЁЯФе рд╕реНрд▓рд╛рдЗрдбрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рд╕рд░реНрд╡реЛ рдХреЛрдг рдХреЛ рд╕реБрдЪрд╛рд░реВ рд░реВрдк рд╕реЗ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред
ЁЯФе рдЬреЙрдпрд╕реНрдЯрд┐рдХ рдЬреИрд╕реЗ рдмрдЯрди рдЬреЛрдбрд╝реЗрдВ рд╕реНрдЯреЗрдкрд░ рдЧрддрд┐ рдирд┐рдпрдВрддреНрд░рдг рдХреЗ рд▓рд┐рдП.
ЁЯФе рдмреЗрд╣рддрд░ рдбрд┐рдЬрд╝рд╛рдЗрди рд╡рд╛рд▓рд╛ рд╡реЗрдмрдкреЗрдЬ рд╣реЛрд╕реНрдЯ рдХрд░реЗрдВ рдореЛрдмрд╛рдЗрд▓-рдЕрдиреБрдХреВрд▓ рдпреВрдЖрдИ рдХреЗ рд╕рд╛рдеред


ЁЯУб рд╕рд┐рдЧреНрдирд▓ рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд░реЗрдВ - рдХрдиреЗрдХреНрд╢рди рдХреЛ рдмрдврд╝рд╛рдПрдБред

рдПрдХ рдЬрд╡рд╛рдм рд▓рд┐рдЦреЗрдВ