flex sensor

 

العناصر المطلوبة :

حساس المرونة
أردوينو أونو
ليد ضوئي
مقاومات
محرك سيرفو

ما هو حساس المرونة كيف يعمل وكيف يمكن ربطه مع لوحة التطوير الالكترونية الاردوينو ؟

حساس المرونة:

جهاز يقيس مقدار الانطواء أو الانحراف الزاوي يطلق عليه أحيانا بحساس الليونة، يتكون حساس المرونة من سطوح مقاومة بحيث تتغير قيمة المقاومة تبعا لدرجة الانطواء يبلغ طول الحساس 8 سم وعرضه 0.6 سم.

على اعتبار هذا الحساس مقاومة فله طرفين اثنين تبلغ قيمة مقاومته بالحالة الطبيعية دون أي طي حوالي 60 كيلو اوم تزداد قيمة المقاومة مع ازدياد زاوية الطي، عند زاوية تقارب 45 درجة تبلغ قيمة مقاومته حوالي 65 كيلو اوم اما عند الزاوية 90 تصبح المقاومة 70 كيلو اوم وكلما اقتربنا من ال 180 درجة يصبح 75 كيلو اوم و يثبت  عند هذه القيمة .

ربط حساس المرونة مع الاردوينو

.نظرا لاعتباره مقاومة فإن حساس المرونة يوضع بدارة مقسم جهد مؤلفة منه ومن  مقاومة عشرة كيلو اوم على التسلسل

التحكم بتشغيل الليد  تبعا لدرجة الانطواء

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

const int flexPin = A0;

const int ledPin = 7;

void setup()

{

Serial.begin(9600);

pinMode(ledPin,OUTPUT);

}

void loop()

{

int flexValue;

flexValue = analogRead(flexPin);

Serial.print(“sensor: “);

Serial.println(flexValue);

if(flexValue>890)

digitalWrite(ledPin,HIGH);

else

digitalWrite(ledPin,LOW);

delay(20);

}

التحكم بمحرك سيرفو تبعا لحساس المرونة 

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

#include <Servo.h>

Servo myServo;

const int flexPin = A0;

void setup()

{

myServo.attach(11);

}

void loop()

{

int flexValue;

int servoPosition;

flexValue = analogRead(flexPin);

servoPosition = map(flexValue, 800, 900, 0, 180);

servoPosition = constrain(servoPosition, 0, 180);

myServo.write(servoPosition);

delay(20);

}

 

 

المصدر

Interfacing Flex Sensor with Arduino – Hookup Guide and Servo Control

إعداد: علي العلي

Leave a Reply

Your email address will not be published. Required fields are marked *