مشروع للتذكير بالقيام من وضعية الجلوس لتنشيط الدورة الدموية بشكل دوري اكتب تعليقُا

تم نشر هذا المشروع لجميع الأشخاص المهتمين في مجال تصنيع وابتكار المشاريع الإلكترونية والبرمجية، و نود التنويه أن موقع انا الكتروني يخلي مسؤوليته التامة في حال لم يعمل المشروع لدى العميل أو في حال الاستخدام الخاطئ للمكونات الإلكترونية والكهربائية التي قد تؤدي لحدوث الحرائق أو غيرها لا سمح الله.

شرح فكرة المشروع

  • في هذا المشروع، سيتم تصميم مشروع نظام بسيط للتذكير بالقيام من وضعية الجلوس، وهذا يكون عادة أثناء ساعات العمل الطويلة. وذلك بغرض تنشيط الدورة الدموية باستمرار (في هذا المشروع، تم اختيار مدة 5 دقائق، ولكن يمكن تغييرها حسب الرغبة).
  • إن القيام من وضعية الجلوس بشكل دوري أثناء ساعات العمل الطويلة يساهم في تعزيز الدورة الدموية، ويقلل من خطر الإصابة بأمراض القلب ومرض السكري، كما يخفف الآلام والشد العضلي، ويحسن الحالة المزاجية والتركيز.
  • هذه الممارسة تساعد في تجنب المشاكل الصحية المرتبطة بالجلوس الطويل، مثل التجلطات الدموية والسمنة، وتحسن من الصحة العامة.
  • في هذا النظام، عندما يحين وقت القيام، يتم تنبيه الجالس عن طريق اصدار رنين كل مدة معينة، بالاضافة الى تشغيل الليد الأحمر، كما يتم رفع حاجز السيرفو موتور، وعرض عبارة تذكيرية على شاشة LCD للقيام من الكرسي.
  • بعد ذلك، يتوقف التنبيه الصوتي، ويشتغل الليد الاخضر، كما يتم انزال حاجز السيرفو موتور.
  • وفي الختام، نرجو أن نكون ساهمنا ولو قليلا في التوعية بأهمية القيام والحركة من حين الى اخر، اثناء ساعات العمل الطويلة، لكي نحافظ على صحتنا ونشاط دورتنا الدموية باستمرار.

أدوات المشروع

مخطط المشروع

الكود البرمجي

تنبيه : في حال لم تكن متأكد من قدرتك على تنفيذ خطوات المشروع يرجى استشارة شخص متخصص في هذا المجال.
  • للتعرف على تجهيز لوحة أردوينو للبرمجة قم بزيارة الرابط التالي.
  • للإطلاع على كيفية تحميل وتنصيب المكتبات قم بزيارة الرابط التالي.
  • تحميل مكتبة الشاشة من هنا.
  • تحميل مكتبة السيرفو موتور من هنا.
  • في حال لم يعمل هذا الكود البرمجي، قم بتحميل ملف الكود بالضغط على زر التحميل الموجود في الأسفل.

#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <Servo.h>

// إعداد شاشة LCD مع عنوان I2C 0x27، وأبعاد 16×2
LiquidCrystal_I2C lcd(0x27, 16, 2);

const int buzzerPin = 8; // دبوس المنبه الصوتي
const int redLedPin = 9; // دبوس LED الأحمر
const int greenLedPin = 10; // دبوس LED الأخضر

Servo myServo;
int servoPos = 0;

// تعيين عدد الدقائق كمتغير
int delayMinutes = 5; // عدد الدقائق

// تحويل عدد الدقائق إلى ثوانٍ
int delaySec = delayMinutes * 60;

void setup() {
lcd.init(); // بدء تشغيل شاشة LCD
lcd.backlight(); // تشغيل الإضاءة الخلفية للشاشة
pinMode(buzzerPin, OUTPUT);
pinMode(redLedPin, OUTPUT);
pinMode(greenLedPin, OUTPUT);

// بداية التشغيل: LED الأخضر مضاء والـ LED الأحمر مطفأ
digitalWrite(greenLedPin, HIGH);
digitalWrite(redLedPin, LOW);

lcd.setCursor(0, 0);
lcd.print(“Reminder to Move”);
lcd.setCursor(0, 1);
lcd.print(“from your chair!”);

myServo.attach(11);
myServo.write(0);
}

void loop() {
// شغل LED الأخضر واغلق LED الأحمر في بداية الدورة
digitalWrite(greenLedPin, HIGH);
digitalWrite(redLedPin, LOW);

// انتظر عدد الثواني المقررة
for(int i = 0; i < delaySec; i++) {
delay(1000); // الانتظار لمدة ثانية واحدة
}

// الآن حان وقت التذكير: شغل LED الأحمر واغلق LED الأخضر
digitalWrite(greenLedPin, LOW);
digitalWrite(redLedPin, HIGH);

tone(buzzerPin, 1000); // تشغيل الصوت بتردد 1000 هرتز
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(“Time to move!”);
lcd.setCursor(0, 1);
lcd.print(“Get up from chair!”);
myServo.write(90);

delay(3000);
noTone(buzzerPin); // إيقاف الصوت

// بعد انتهاء التذكير، شغل LED الأخضر مجددًا ليدل على عدم الحاجة للانتظار
digitalWrite(redLedPin, LOW);
digitalWrite(greenLedPin, HIGH);
myServo.write(0);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(“Reminder to Move”);
lcd.setCursor(0, 1);
lcd.print(“from your chair!”);
}

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *