{"product_id":"smart-2d-digital-spirit-level-kit-using-arduino-nano-mpu6050","title":"Smart 2D Digital Spirit Level Kit using Arduino Nano \u0026 MPU6050","description":"\u003cp style=\"text-align: right;\"\u003e\u003cb\u003eمشروع الميزان الإلكتروني الذكي (Smart 2D Digital Spirit Level Kit)\u003c\/b\u003e هو طقم إلكتروني متكامل يعتمد على متحكم الأردوينو نانو وحساس الحركة الدقيق (MPU6050) لتحديد درجة استواء الأسطح على المحورين (X و Y) فوراً وبكل سهولة.\u003c\/p\u003e\n\u003cp style=\"text-align: left;\"\u003e\u003cb\u003eأبرز المميزات:\u003c\/b\u003e\u003c\/p\u003e\n\u003cul\u003e\n\u003cli style=\"text-align: left;\"\u003e\n\u003cp\u003e\u003cb\u003eقياس وتحديد استواء دقيق:\u003c\/b\u003e يعتمد على وحدة MPU6050 (حساس التسارع والدوران) لكشف أقل زوايا الميلان في الأسطح.\u003c\/p\u003e\n\u003c\/li\u003e\n\u003cli style=\"text-align: left;\"\u003e\n\u003cp\u003e\u003cb\u003eمؤشرات ملونة وصوتية:\u003c\/b\u003e مزود بـ 6 ليدات اتجاهية ملونة مع جرس تنبيه (Buzzer) يصدر صوتاً فور وصول السطح للانتصاب والاستواء التام.\u003c\/p\u003e\n\u003c\/li\u003e\n\u003cli style=\"text-align: left;\"\u003e\n\u003cp\u003e\u003cb\u003eمثالي لمنتجات الروبوتكس والتعليم:\u003c\/b\u003e خيار ممتاز كـ مشروع تعليمي لطلاب الهندسة والتقنية وهواة DIY وتطبيقات الروبوت.\u003c\/p\u003e\n\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cp style=\"text-align: left;\"\u003e \u003c\/p\u003e\n\u003cp\u003eThe \u003cb\u003eSmart 2D Digital Spirit Level Kit using Arduino Nano \u0026amp; MPU6050\u003c\/b\u003e is an interactive, precision-sensing electronics kit designed to measure surface levelness and tilt angles across both X and Y axes in real-time.\u003c\/p\u003e\n\u003cp\u003e\u003cb\u003eKey Features:\u003c\/b\u003e\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cb\u003eHigh Precision Tilt Detection:\u003c\/b\u003e Powered by the MPU6050 6-axis gyro\/accelerometer sensor to catch even the slightest surface inclination.\u003c\/p\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cb\u003eVisual \u0026amp; Audio Alert System:\u003c\/b\u003e Features 6 directional LEDs and an integrated buzzer that alerts you when the surface is completely level.\u003c\/p\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cb\u003eIdeal for Robotics \u0026amp; STEM:\u003c\/b\u003e A complete hands-on project suited for engineering students, robotics enthusiasts, and DIY makers.\u003c\/p\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cb\u003ePortable \u0026amp; Flexible Powering:\u003c\/b\u003e Uses Arduino Nano (Type-C) for easy programming and battery supply options.\u003c\/p\u003e\n\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp style=\"text-align: right;\"\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eالكود البرمجي\u003c\/strong\u003e\u003c\/span\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e\n\u003cspan\u003e#include\u003c\/span\u003e\u003cspan\u003e \u003c\/span\u003e\u003cspan\u003e\u0026lt;Adafruit_MPU6050.h\u0026gt;\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e#include\u003c\/span\u003e\u003cspan\u003e \u003c\/span\u003e\u003cspan\u003e\u0026lt;Adafruit_Sensor.h\u0026gt;\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e#include\u003c\/span\u003e\u003cspan\u003e \u003c\/span\u003e\u003cspan\u003e\u0026lt;Wire.h\u0026gt;\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\u003cspan\u003eAdafruit_MPU6050 mpu;\u003c\/span\u003e\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\u003cspan\u003e\/\/ --- 1. مجموعة (يمين \/ يسار - المحور Y) ---\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003econst\u003c\/span\u003e\u003cspan\u003e \u003c\/span\u003e\u003cspan\u003eint\u003c\/span\u003e\u003cspan\u003e LED_GREEN_Y = \u003c\/span\u003e\u003cspan\u003e3\u003c\/span\u003e\u003cspan\u003e;\u003c\/span\u003e\u003cspan\u003e \/\/ استواء Y\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003econst\u003c\/span\u003e\u003cspan\u003e \u003c\/span\u003e\u003cspan\u003eint\u003c\/span\u003e\u003cspan\u003e LED_LEFT    = \u003c\/span\u003e\u003cspan\u003e2\u003c\/span\u003e\u003cspan\u003e;\u003c\/span\u003e\u003cspan\u003e \/\/ يسار\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003econst\u003c\/span\u003e\u003cspan\u003e \u003c\/span\u003e\u003cspan\u003eint\u003c\/span\u003e\u003cspan\u003e LED_RIGHT   = \u003c\/span\u003e\u003cspan\u003e4\u003c\/span\u003e\u003cspan\u003e;\u003c\/span\u003e\u003cspan\u003e \/\/ يمين\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\u003cspan\u003e\/\/ --- 2. مجموعة (أمام \/ خلف - المحور X) ---\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003econst\u003c\/span\u003e\u003cspan\u003e \u003c\/span\u003e\u003cspan\u003eint\u003c\/span\u003e\u003cspan\u003e LED_GREEN_X = \u003c\/span\u003e\u003cspan\u003e6\u003c\/span\u003e\u003cspan\u003e;\u003c\/span\u003e\u003cspan\u003e \/\/ استواء X\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003econst\u003c\/span\u003e\u003cspan\u003e \u003c\/span\u003e\u003cspan\u003eint\u003c\/span\u003e\u003cspan\u003e LED_FORWARD = \u003c\/span\u003e\u003cspan\u003e5\u003c\/span\u003e\u003cspan\u003e;\u003c\/span\u003e\u003cspan\u003e \/\/ أمام\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003econst\u003c\/span\u003e\u003cspan\u003e \u003c\/span\u003e\u003cspan\u003eint\u003c\/span\u003e\u003cspan\u003e LED_BACK    = \u003c\/span\u003e\u003cspan\u003e7\u003c\/span\u003e\u003cspan\u003e;\u003c\/span\u003e\u003cspan\u003e \/\/ خلف\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\u003cspan\u003e\/\/ --- 3. البزر ---\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003econst\u003c\/span\u003e\u003cspan\u003e \u003c\/span\u003e\u003cspan\u003eint\u003c\/span\u003e\u003cspan\u003e BUZZER      = \u003c\/span\u003e\u003cspan\u003e8\u003c\/span\u003e\u003cspan\u003e;\u003c\/span\u003e\u003cspan\u003e \/\/ Buzzer\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\n\u003cspan\u003evoid\u003c\/span\u003e\u003cspan\u003e \u003c\/span\u003e\u003cspan\u003esetup\u003c\/span\u003e\u003cspan\u003e() {\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003eSerial\u003c\/span\u003e\u003cspan\u003e.\u003c\/span\u003e\u003cspan\u003ebegin\u003c\/span\u003e\u003cspan\u003e(\u003c\/span\u003e\u003cspan\u003e9600\u003c\/span\u003e\u003cspan\u003e);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003epinMode\u003c\/span\u003e\u003cspan\u003e(LED_GREEN_Y, OUTPUT);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003epinMode\u003c\/span\u003e\u003cspan\u003e(LED_LEFT, OUTPUT);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003epinMode\u003c\/span\u003e\u003cspan\u003e(LED_RIGHT, OUTPUT);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003epinMode\u003c\/span\u003e\u003cspan\u003e(LED_GREEN_X, OUTPUT);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003epinMode\u003c\/span\u003e\u003cspan\u003e(LED_FORWARD, OUTPUT);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003epinMode\u003c\/span\u003e\u003cspan\u003e(LED_BACK, OUTPUT);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003epinMode\u003c\/span\u003e\u003cspan\u003e(BUZZER, OUTPUT);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\u003cspan\u003e  \/\/ Wire.begin() تلقائياً يستخدم A4 (SDA) و A5 (SCL) في النانو\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003eWire\u003c\/span\u003e\u003cspan\u003e.\u003c\/span\u003e\u003cspan\u003ebegin\u003c\/span\u003e\u003cspan\u003e();\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003eif\u003c\/span\u003e\u003cspan\u003e (!\u003c\/span\u003e\u003cspan\u003empu\u003c\/span\u003e\u003cspan\u003e.\u003c\/span\u003e\u003cspan\u003ebegin\u003c\/span\u003e\u003cspan\u003e()) {\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e    \u003c\/span\u003e\u003cspan\u003eSerial\u003c\/span\u003e\u003cspan\u003e.\u003c\/span\u003e\u003cspan\u003eprintln\u003c\/span\u003e\u003cspan\u003e(\u003c\/span\u003e\u003cspan\u003e\"❌ خطأ: لم يتم العثور على MPU6050!\"\u003c\/span\u003e\u003cspan\u003e);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e    \u003c\/span\u003e\u003cspan\u003ewhile\u003c\/span\u003e\u003cspan\u003e (\u003c\/span\u003e\u003cspan\u003e1\u003c\/span\u003e\u003cspan\u003e) { \u003c\/span\u003e\u003cspan\u003edelay\u003c\/span\u003e\u003cspan\u003e(\u003c\/span\u003e\u003cspan\u003e10\u003c\/span\u003e\u003cspan\u003e); }\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003cspan\u003e  }\u003c\/span\u003e\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003empu\u003c\/span\u003e\u003cspan\u003e.\u003c\/span\u003e\u003cspan\u003esetAccelerometerRange\u003c\/span\u003e\u003cspan\u003e(MPU6050_RANGE_8_G);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003empu\u003c\/span\u003e\u003cspan\u003e.\u003c\/span\u003e\u003cspan\u003esetFilterBandwidth\u003c\/span\u003e\u003cspan\u003e(MPU6050_BAND_21_HZ);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003cspan\u003e}\u003c\/span\u003e\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\n\u003cspan\u003evoid\u003c\/span\u003e\u003cspan\u003e \u003c\/span\u003e\u003cspan\u003eloop\u003c\/span\u003e\u003cspan\u003e() {\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003esensors_event_t\u003c\/span\u003e\u003cspan\u003e a, g, temp;\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003empu\u003c\/span\u003e\u003cspan\u003e.\u003c\/span\u003e\u003cspan\u003egetEvent\u003c\/span\u003e\u003cspan\u003e(\u0026amp;a, \u0026amp;g, \u0026amp;temp);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\u003cspan\u003e  \/\/ حساب زوايا الإمالة\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003efloat\u003c\/span\u003e\u003cspan\u003e angleY = \u003c\/span\u003e\u003cspan\u003eatan2\u003c\/span\u003e\u003cspan\u003e(\u003c\/span\u003e\u003cspan\u003ea\u003c\/span\u003e\u003cspan\u003e.\u003c\/span\u003e\u003cspan\u003eacceleration\u003c\/span\u003e\u003cspan\u003e.\u003c\/span\u003e\u003cspan\u003ey\u003c\/span\u003e\u003cspan\u003e, \u003c\/span\u003e\u003cspan\u003ea\u003c\/span\u003e\u003cspan\u003e.\u003c\/span\u003e\u003cspan\u003eacceleration\u003c\/span\u003e\u003cspan\u003e.\u003c\/span\u003e\u003cspan\u003ez\u003c\/span\u003e\u003cspan\u003e) * \u003c\/span\u003e\u003cspan\u003e180.0\u003c\/span\u003e\u003cspan\u003e \/ PI;\u003c\/span\u003e\u003cspan\u003e \/\/ يمين \/ يسار\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003efloat\u003c\/span\u003e\u003cspan\u003e angleX = \u003c\/span\u003e\u003cspan\u003eatan2\u003c\/span\u003e\u003cspan\u003e(\u003c\/span\u003e\u003cspan\u003ea\u003c\/span\u003e\u003cspan\u003e.\u003c\/span\u003e\u003cspan\u003eacceleration\u003c\/span\u003e\u003cspan\u003e.\u003c\/span\u003e\u003cspan\u003ex\u003c\/span\u003e\u003cspan\u003e, \u003c\/span\u003e\u003cspan\u003ea\u003c\/span\u003e\u003cspan\u003e.\u003c\/span\u003e\u003cspan\u003eacceleration\u003c\/span\u003e\u003cspan\u003e.\u003c\/span\u003e\u003cspan\u003ez\u003c\/span\u003e\u003cspan\u003e) * \u003c\/span\u003e\u003cspan\u003e180.0\u003c\/span\u003e\u003cspan\u003e \/ PI;\u003c\/span\u003e\u003cspan\u003e \/\/ أمام \/ خلف\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003eclearAll\u003c\/span\u003e\u003cspan\u003e();\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003ebool\u003c\/span\u003e\u003cspan\u003e isLevelY = \u003c\/span\u003e\u003cspan\u003efalse\u003c\/span\u003e\u003cspan\u003e;\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003ebool\u003c\/span\u003e\u003cspan\u003e isLevelX = \u003c\/span\u003e\u003cspan\u003efalse\u003c\/span\u003e\u003cspan\u003e;\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\u003cspan\u003e  \/\/ --- فحص اتجاه يمين \/ يسار ---\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003eif\u003c\/span\u003e\u003cspan\u003e (angleY \u0026lt; -\u003c\/span\u003e\u003cspan\u003e10.0\u003c\/span\u003e\u003cspan\u003e) {\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e    \u003c\/span\u003e\u003cspan\u003edigitalWrite\u003c\/span\u003e\u003cspan\u003e(LED_LEFT, HIGH);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003cspan\u003e  } \u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003eelse\u003c\/span\u003e\u003cspan\u003e \u003c\/span\u003e\u003cspan\u003eif\u003c\/span\u003e\u003cspan\u003e (angleY \u0026gt; \u003c\/span\u003e\u003cspan\u003e10.0\u003c\/span\u003e\u003cspan\u003e) {\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e    \u003c\/span\u003e\u003cspan\u003edigitalWrite\u003c\/span\u003e\u003cspan\u003e(LED_RIGHT, HIGH);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003cspan\u003e  } \u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003eelse\u003c\/span\u003e\u003cspan\u003e {\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e    \u003c\/span\u003e\u003cspan\u003edigitalWrite\u003c\/span\u003e\u003cspan\u003e(LED_GREEN_Y, HIGH);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e    isLevelY = \u003c\/span\u003e\u003cspan\u003etrue\u003c\/span\u003e\u003cspan\u003e;\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003cspan\u003e  }\u003c\/span\u003e\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\u003cspan\u003e  \/\/ --- فحص اتجاه أمام \/ خلف ---\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003eif\u003c\/span\u003e\u003cspan\u003e (angleX \u0026lt; -\u003c\/span\u003e\u003cspan\u003e10.0\u003c\/span\u003e\u003cspan\u003e) {\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e    \u003c\/span\u003e\u003cspan\u003edigitalWrite\u003c\/span\u003e\u003cspan\u003e(LED_FORWARD, HIGH);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003cspan\u003e  } \u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003eelse\u003c\/span\u003e\u003cspan\u003e \u003c\/span\u003e\u003cspan\u003eif\u003c\/span\u003e\u003cspan\u003e (angleX \u0026gt; \u003c\/span\u003e\u003cspan\u003e10.0\u003c\/span\u003e\u003cspan\u003e) {\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e    \u003c\/span\u003e\u003cspan\u003edigitalWrite\u003c\/span\u003e\u003cspan\u003e(LED_BACK, HIGH);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003cspan\u003e  } \u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003eelse\u003c\/span\u003e\u003cspan\u003e {\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e    \u003c\/span\u003e\u003cspan\u003edigitalWrite\u003c\/span\u003e\u003cspan\u003e(LED_GREEN_X, HIGH);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e    isLevelX = \u003c\/span\u003e\u003cspan\u003etrue\u003c\/span\u003e\u003cspan\u003e;\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003cspan\u003e  }\u003c\/span\u003e\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\u003cspan\u003e  \/\/ --- التحكم بالبزر ---\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003eif\u003c\/span\u003e\u003cspan\u003e (isLevelY \u0026amp;\u0026amp; isLevelX) {\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e    \u003c\/span\u003e\u003cspan\u003edigitalWrite\u003c\/span\u003e\u003cspan\u003e(BUZZER, LOW);\u003c\/span\u003e\u003cspan\u003e  \/\/ ينطفئ عند الاستواء التام\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  } \u003c\/span\u003e\u003cspan\u003eelse\u003c\/span\u003e\u003cspan\u003e {\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e    \u003c\/span\u003e\u003cspan\u003edigitalWrite\u003c\/span\u003e\u003cspan\u003e(BUZZER, HIGH);\u003c\/span\u003e\u003cspan\u003e \/\/ يشتغل عند وجود أي ميلان\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003cspan\u003e  }\u003c\/span\u003e\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003edelay\u003c\/span\u003e\u003cspan\u003e(\u003c\/span\u003e\u003cspan\u003e50\u003c\/span\u003e\u003cspan\u003e);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\u003cspan\u003e}\u003c\/span\u003e\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\n\u003cspan\u003evoid\u003c\/span\u003e\u003cspan\u003e \u003c\/span\u003e\u003cspan\u003eclearAll\u003c\/span\u003e\u003cspan\u003e() {\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003edigitalWrite\u003c\/span\u003e\u003cspan\u003e(LED_GREEN_Y, LOW);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003edigitalWrite\u003c\/span\u003e\u003cspan\u003e(LED_LEFT, LOW);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003edigitalWrite\u003c\/span\u003e\u003cspan\u003e(LED_RIGHT, LOW);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003edigitalWrite\u003c\/span\u003e\u003cspan\u003e(LED_GREEN_X, LOW);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003edigitalWrite\u003c\/span\u003e\u003cspan\u003e(LED_FORWARD, LOW);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003edigitalWrite\u003c\/span\u003e\u003cspan\u003e(LED_BACK, LOW);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\n\u003cdiv\u003e\n\u003cspan\u003e  \u003c\/span\u003e\u003cspan\u003edigitalWrite\u003c\/span\u003e\u003cspan\u003e(BUZZER, LOW);\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv style=\"text-align: right;\"\u003e\u003cspan\u003e}\u003cbr\u003e\u003cbr\u003e\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv style=\"text-align: right;\"\u003e\u003cspan\u003e:رابط فديو الشرح\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv style=\"text-align: right;\"\u003e\u003cspan\u003e\u003c\/span\u003e\u003c\/div\u003e\n\u003cdiv style=\"text-align: right;\"\u003e\u003cspan\u003ehttps:\/\/youtube.com\/shorts\/CMzF_4Elh54?si=phLDAzu7E3N9hJ15\u003c\/span\u003e\u003c\/div\u003e\n\u003c\/div\u003e","brand":"SkyTech","offers":[{"title":"Default Title","offer_id":48382102634649,"sku":null,"price":90000.0,"currency_code":"IQD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0708\/8131\/2921\/files\/photo_2026-07-29_11-13-09.jpg?v=1785312829","url":"https:\/\/skyteches.com\/ar\/products\/smart-2d-digital-spirit-level-kit-using-arduino-nano-mpu6050","provider":"SkyTech","version":"1.0","type":"link"}