مواجهة حساس القوة مع أردوينو Interfacing Force Sensitive Resistor to Arduino اكتب تعليقُا

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

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

  • حساس القوة (FSR) هو مستشعر يسمح لك بقياس الضغط الفيزيائي والوزن.
  • حساس القوة (FSR) في الأساس هو عبارة عن مقاومة تتغير قيمتها اعتمادًا على مدى الضغط المطبق عليها.
  • هذا الحساس ذو تكلفة منخفضة نسبيًا وسهل الاستخدام ولكنه غالبًا ما يكون غير دقيق (ليس خيارًا جيدًا لقياس الوزن المضبوط بالباوندات على سبيل المثال).
  • في هذا المشروع، سنستخدم حساس القوة لتغيير سطوع الدايود المشع (LED) وفق القوة المطبقة عليه.

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

  • 9V Maxell Alkaline Battery بطارية قلوية: عدد 1
  • موصل بطارية 9 فولت + مقبس تيار مستمر (غطاء موصل البطارية) Battery snap connector: عدد 1
  • اردوينو اونو مع سلك توصيل Arduino Uno: عدد 1
  • حساس القوة FSR402: عدد 1
  • أسلاك توصيل ذكر لذكر 40 قطعة 20 سم Male to Male jumper wires
  • أسلاك توصيل من ذكر إلى أنثى 40 دبوس 20 سم wires 40pcs Male to Female
  • ليد احمر Red LED: عدد 1
  • مقاومة 10 كيلو اوم Ohm Resistor: عدد 1
  • لوح تجارب 400 نقطة لون ابيض Solderless Breadboard: عدد 1

مخطط المشروع

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

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

/* FSR testing sketch.
Connect one end of FSR to 5V, the other end to Analog 0.
Then connect one end of a 10K resistor from Analog 0 to ground
Connect LED from pin 13 through a resistor to ground

int fsrAnalogPin = 0; // FSR is connected to analog 0
int LEDpin = 11; // connect Red LED to pin 11 (PWM pin)
int fsrReading; // the analog reading from the FSR resistor divider
int LEDbrightness;

void setup(void) {
Serial.begin(9600); // We’ll send debugging information via the Serial monitor
pinMode(LEDpin, OUTPUT);
}

void loop(void) {
fsrReading = analogRead(fsrAnalogPin);
Serial.print(“Analog reading = “);
Serial.println(fsrReading);

// we’ll need to change the range from the analog reading (0-1023) down to the range
// used by analogWrite (0-255) with map!
LEDbrightness = map(fsrReading, 0, 1023, 0, 255);
// LED gets brighter the harder you press
analogWrite(LEDpin, LEDbrightness);

delay(100);
}

اترك تعليقاً

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