#include <Servo.h>
// تعريف 4 محركات سيرفو
Servo servo1;
Servo servo2;
Servo servo3;
Servo servo4;
// تعريف الزوايا (يمكنك تعديلها حسب حركة القفل عندك)
int openAngle = 0; // زاوية الفتح
int closeAngle = 90; // زاوية الإغلاق (قفل)
void setup() {
// ربط المحركات بالدبابيس اللي اخترناها
servo1.attach(9);
servo2.attach(10);
servo3.attach(11);
servo4.attach(6);
// بدء الاتصال مع اللابتوب (بايثون)
Serial.begin(115200);
// وضعية البداية: تكون المصيدة مفتوحة
moveAll(openAngle);
Serial.println("Sayda System Ready. Waiting for Command (C/O)...");
}
void loop() {
// التأكد إذا وصل حرف من البايثون أو الكوماند برومبت
if (Serial.available() > 0) {
char cmd = Serial.read();
if (cmd == 'C' || cmd == 'c') {
Serial.println("Command Received: CLOSE");
moveAll(closeAngle);
}
else if (cmd == 'O' || cmd == 'o') {
Serial.println("Command Received: OPEN");
moveAll(openAngle);
}
}
}
// دالة لتحريك الـ 4 محركات مع بعض
void moveAll(int angle) {
servo1.write(angle);
servo2.write(angle);
servo3.write(angle);
servo4.write(angle);
}