- ضروری اجزاء
- ADXL335 ایکسلرومیٹر
- سرکٹ ڈایاگرام
- پیڈومیٹر کس طرح کام کرتا ہے؟
- ارڈینو مرحلہ کاؤنٹر پروگرامنگ
- ارڈینوو پیڈومیٹر کی جانچ کر رہا ہے
فٹنس بینڈ آج کل بہت مشہور ہورہے ہیں ، جو نہ صرف قدموں کی گنتی کرتے ہیں بلکہ آپ کی جل جانے والی کیلوری کو بھی ٹریک کرتے ہیں ، دل کی دھڑکن کی نمائش ، شو ٹائم اور بہت کچھ اور بھی دیکھتے ہیں۔ اور یہ آئی او ٹی ڈیوائسز کلاؤڈ کے ساتھ مطابقت پذیر ہیں تاکہ آپ اسمارٹ فون پر اپنی جسمانی سرگرمی کی سبھی تاریخ آسانی سے حاصل کرسکیں۔ ہم نے IOT پر مبنی مریضوں کی نگرانی کا نظام بھی تیار کیا ہے جہاں سے کہیں سے بھی نگرانی کے لئے اہم اعداد و شمار ThingSpeak کو بھیجے گئے ہیں۔
پیڈومیٹر وہ آلہ ہوتے ہیں جو صرف قدموں کی گنتی کے لئے استعمال ہوتے ہیں۔ تو اس ٹیوٹوریل میں ، ہم آرڈینوو اور ایکسلرومیٹر کا استعمال کرتے ہوئے ایک آسان اور سستا DIY پیڈومیٹر تعمیر کرنے جارہے ہیں ۔ یہ پیڈومیٹر قدموں کی گنتی کرے گا اور اسے 16x2 LCD ماڈیول پر ڈسپلے کرے گا۔ اس پیڈومیٹر کو اس ارڈینو سمارٹ واچ کے ساتھ مربوط کیا جاسکتا ہے۔
ضروری اجزاء
- اردوینو نینو
- ADXL 335 Accelerometer
- 16 * 2 LCD
- LCD I2C ماڈیول
- بیٹری
ADXL335 ایکسلرومیٹر
ADXL335 ایک مکمل 3 محور ینالاگ ایکسیلیومیٹر ہے ، اور یہ کیپسیٹو سینسنگ کے اصول پر کام کرتا ہے۔ یہ ایک چھوٹا ، پتلا ، کم طاقت والا ماڈیول ہے جس میں پولسیلان سطح-مائیکرو مشینیڈ سینسر اور سگنلز کنڈیشنگ سرکٹری ہے۔ ADXL335 ایکسلرومیٹر جامد کے ساتھ ساتھ متحرک سرعت کی پیمائش کرسکتا ہے۔ یہاں یہ Arduino pedometer کے منصوبے میں، ADXL335 accelerometer کے ایک کے طور پر کام کرے گا pedometer کے سینسر.
ایک کشش اس کے متعلقہ متغیر وولٹیج کے لئے کسی بھی سمت میں ایکسلریشن تبدیل کر سکتے ہیں جو ایک آلہ ہے. یہ کاپسیٹرز (امیجری ریلیف) کا استعمال کرکے انجام پایا ہے ، جیسا کہ ایکسل چلتا ہے ، اس کے اندر موجود کاپاکیٹر ، حرکت پر مبنی تبدیلیاں (تصویری تصویری حوالہ) سے بھی گزرے گا ، چونکہ کیپسیٹینس مختلف ہے ، لہذا ایک متغیر وولٹیج بھی حاصل کیا جاسکتا ہے۔
ذیل میں سامنے اور پیچھے کی طرف سے ایکسیلومیٹر کے ل images تصاویر کے ساتھ پن کی تفصیل-
ایکسیلرومیٹر کی پن کی تفصیل:
- وی سی سی- 5 وولٹ کی فراہمی کو اس پن سے جوڑنا چاہئے۔
- X-OUT- یہ پن x سمت میں ینالاگ پیداوار دیتا ہے
- Y-OUT- یہ پن y سمت میں ینالاگ آؤٹ پٹ دیتا ہے
- Z-OUT- یہ پن z سمت میں ینالاگ آؤٹ پٹ دیتا ہے
- GND- گراؤنڈ
- ST- یہ پن سینسر کی حساسیت کے لئے استعمال ہوتا ہے
ہم ایکسلرومیٹر ADXL335 کا استعمال کرتے ہوئے بہت سے پروجیکٹس بناتے ہیں جن میں اشارہ کنٹرول شدہ روبوٹ ، زلزلہ پکڑنے والا الارم ، پنگ پونگ گیم وغیرہ شامل ہیں۔
سرکٹ ڈایاگرام
ارڈینوو ایکسیلیومیٹر مرحلہ کاؤنٹر کیلئے سرکٹ ڈایاگرام ذیل میں دیا گیا ہے۔
اس سرکٹ میں ، ہم ADXL335 ایکسلرومیٹر کے ساتھ ارڈینو نینو میں مداخلت کر رہے ہیں ۔ ایکسلی ، و X ، اور زیڈ پنوں کے ایکسلومیٹر کے ارڈینو نینو کے اینالاگ پن (A1، A2 & A3) کے ساتھ جڑے ہوئے ہیں۔ آرڈینوو کے ساتھ 16x2 LCD ماڈیولز کو انٹرفیس کرنے کے لئے ، ہم I2C ماڈیول استعمال کر رہے ہیں۔ I2C ماڈیول کے ایس سی ایل اور ایس ڈی اے پنوں بالترتیب آرڈینو نینو کے A5 اور A4 پنوں سے جڑے ہوئے ہیں۔ مکمل روابط ذیل ٹیبل میں دیئے گئے ہیں:
اردوینو نینو | ADXL335 |
3.3V | وی سی سی |
GND | GND |
A1 | ایکس |
A2 | Y |
A3 | زیڈ |
اردوینو نینو | LCD I2C ماڈیول |
5V | وی سی سی |
GND | GND |
A4 | ایس ڈی اے |
A5 | ایس سی ایل |
ہم نے سب سے پہلے اس پیڈومیٹر کو بریڈ بورڈ پر آرڈینوو سیٹ اپ کا استعمال کرکے بنایا تھا
اور کامیاب جانچ کے بعد ہم نے پرف بورڈ پر سارے اجزاء سولڈرنگ کرکے اسے پرف بورڈ پر نقل تیار کیا جیسا کہ ذیل میں دکھایا گیا ہے:
پیڈومیٹر کس طرح کام کرتا ہے؟
ایک پیڈومیٹر کسی شخص کے تحرک کے تین اجزاء جو آگے ، عمودی اور پہلو میں ہوتا ہے ان کا استعمال کرتے ہوئے اٹھائے گئے اقدامات کی کل تعداد کا حساب لگاتا ہے۔ پیڈومیٹر سسٹم ان اقدار کو حاصل کرنے کے لئے ایکسلرومیٹر کا استعمال کرتا ہے۔ ایکسیلرومیٹر ہر وضاحت شدہ نمبر کے بعد 3 محور کی تیز رفتار کی زیادہ سے زیادہ اور کم سے کم اقدار کو مسلسل اپ ڈیٹ کرتا ہے۔ نمونے کے. ان 3 محور (اوسطا + من) / 2 کی اوسط قیمت کو متحرک حد کی سطح کہا جاتا ہے ، اور اس حد کی قیمت کو فیصلہ کرنے کے لئے استعمال کیا جاتا ہے کہ یہ قدم اٹھایا گیا ہے یا نہیں۔
چلتے وقت ، پیڈومیٹر کسی بھی سمت میں ہوسکتا ہے ، لہذا پیڈومیٹر محور کے استعمال سے اقدامات کا حساب لگاتا ہے جس کی رفتار میں تبدیلی سب سے زیادہ ہے۔
اب مجھے آپ کی ایک فوری واک تھرو دے یہ Arduino pedometer کے کے کام کاج:
- سب سے پہلے پیڈومیٹر جیسے ہی طاقت چلتا ہے اس سے انشانکن شروع کرتا ہے۔
- پھر باطل لوپ فنکشن میں ، اسے X ، Y ، اور Z-axis سے مسلسل ڈیٹا ملتا ہے۔
- اس کے بعد ، یہ نقط point آغاز سے نقطہ نظر سے کل ایکسلریشن ویکٹر کا حساب لگاتا ہے۔
- ایکسلریشن ویکٹر X ، Y ، اور Z-axis اقدار کا مربع جڑ (x ^ 2 + y ^ 2 + z ^ 2) ہے۔
- اس کے بعد یہ پہلا نمبر گننے کے لئے اوسط ایکسلریشن اقدار کی دہلیز کی قدر کے ساتھ موازنہ کرتا ہے۔
- اگر ایکسلریشن ویکٹر حد کی قیمت کو عبور کرتا ہے ، تو اس سے قدموں کی گنتی میں اضافہ ہوتا ہے۔ بصورت دیگر ، یہ غلط کمپنوں کو ختم کردیتی ہے۔
ارڈینو مرحلہ کاؤنٹر پروگرامنگ
مکمل دستاویز کے آخر میں آردوینو مرحلہ کاؤنٹر کوڈ دیا گیا ہے۔ یہاں ہم اس کوڈ کے کچھ اہم ٹکڑوں کی وضاحت کر رہے ہیں۔
ہمیشہ کی طرح ، تمام مطلوب لائبریریوں کو شامل کرکے کوڈ شروع کریں۔ ADXL335 ایکسلرومیٹر کو کسی لائبریری کی ضرورت نہیں ہے کیونکہ یہ ینالاگ آؤٹ پٹ دیتا ہے۔
# شامل کریں
اس کے بعد ، آرڈینوو پنوں کی وضاحت کریں ، جہاں ایکسلرومیٹر منسلک ہے۔
const int xpin = A1؛ const int ypin = A2؛ const int zpin = A3؛
ایکسلرومیٹر کے لئے حد قیمت کی وضاحت کریں۔ اس دہلیز کی قیمت کا موازنہ قدموں کی تعداد کے حساب سے ایکسلریشن ویکٹر کے ساتھ کیا جائے گا۔
فلوٹ تھریشولڈ = 6؛
باطل سیٹ اپ کے اندر ، فنکشن سسٹم کو کیلیبریٹ کرتا ہے جب یہ پاور ہے۔
کیلیبریٹ ()؛
باطل لوپ فنکشن کے اندر ، یہ 100 ، نمونوں کے لئے X ، Y اور Z-axis کی اقدار کو پڑھے گا۔
(int a = 0؛ a <100؛ a ++) {xaccl = فلوٹ (ینالاگ ریڈ (xpin) - 345)؛ تاخیر (1)؛ yaccl = فلوٹ (ینالاگ ریڈ (ypin) - 346)؛ تاخیر (1)؛ zaccl = فلوٹ (ینالاگ ریڈ (zpin) - 416)؛ تاخیر (1)؛
3 محور کی قیمتیں حاصل کرنے کے بعد ، X ، Y اور Z-axis کی اقدار کی مربع جڑ کو لے کر کل ایکسلریشن ویکٹر کا حساب لگائیں۔
totvect = sqrt (((xaccl - xavg) * (xaccl - xavg)) + ((yaccl - yavg) * (yaccl - yavg)) + ((zval - zavg) * (zval - zavg)))؛
پھر زیادہ سے زیادہ اور کم سے کم ایکسلریشن ویکٹر ویلیوز کی اوسط کا حساب لگائیں۔
ٹوٹاوی = (ٹوٹلٹ + ٹولکٹ) / 2؛
اب اوسط سرعت کو دہلیز کے ساتھ موازنہ کریں۔ اگر اوسط دہلیز سے زیادہ ہے ، تو قدموں کی گنتی میں اضافہ کریں اور جھنڈا بلند کریں۔
اگر (ٹوٹیو> دہلیز اور& پرچم == 0) {اقدامات = اقدامات + 1؛ جھنڈا = 1؛ }
اگر اوسط دہلیز سے زیادہ ہے لیکن جھنڈا بلند ہوا ہے تو کچھ نہ کریں۔
ورنہ اگر (ٹوٹیو> دہلیز اور& پرچم == 1) {// گنتی نہیں Don't
اگر مجموعی اوسط دہلیز سے کم ہے اور جھنڈا اٹھایا گیا ہے ، تو پرچم نیچے رکھیں۔
اگر (ٹوٹاوی <چوک اور & پرچم == 1) {پرچم = 0؛ }
سیریل مانیٹر اور LCD پر اقدامات کی تعداد پرنٹ کریں۔
Serial.println (steps)؛ lcd.print ("اقدامات:")؛ lcd.print (steps)؛
ارڈینوو پیڈومیٹر کی جانچ کر رہا ہے
ایک بار جب آپ کا ہارڈ ویئر اور کوڈ تیار ہوجائے تو ، ارڈینو کو لیپ ٹاپ سے جوڑیں اور کوڈ اپ لوڈ کریں۔ اب اپنے ہاتھوں میں پیڈومیٹر سیٹ اپ لیں اور قدم بہ قدم چلنا شروع کریں ، اسے LCD پر قدموں کی تعداد دکھانی چاہئے۔ بعض اوقات یہ قدموں کی تعداد میں اضافہ کرتا ہے جب پیڈومیٹر بہت تیز یا بہت آہستہ سے کمپن ہوتا ہے۔
ADXL335 پیڈومیٹر ارڈینو کے لئے مکمل کام کرنے والا ویڈیو اور کوڈ ذیل میں دیا گیا ہے۔