آج ڈیجیٹل میٹر ہر شعبے میں ینالاگ میٹر کی جگہ لے رہے ہیں چاہے اس کا بجلی کا میٹر ہو یا ٹیکسی کا کرایہ میٹر۔ اس کی بنیادی وجہ ینالاگ میٹروں میں میکانی حصے ہوتے ہیں جو طویل عرصے تک استعمال ہوتے وقت پہنتے ہیں اور وہ ڈیجیٹل میٹرز کی طرح درست نہیں ہیں۔
اس کے لئے ایک اچھی مثال ینالاگ اسپیڈومیٹر اور اوڈومیٹر ہے جو سفر کی رفتار اور فاصلے کی پیمائش کے لئے پرانی موٹر بائک میں استعمال ہوتی ہے۔ ان کے پاس ایک خاص حص partsہ ہوتا ہے جسے پینیون اور ریک کا انتظام ہوتا ہے جس میں ایک کیبل اسپیڈومیٹر کے پن کو گھومنے کے ل is استعمال کیا جاتا ہے جب پہیے کو گھمایا جاتا ہے۔ یہ طویل عرصے تک استعمال کرتے وقت ختم ہوجائے گا اور متبادل اور دیکھ بھال کی بھی ضرورت ہوگی۔
ڈیجیٹل میٹر میں ، مکینیکل حصوں کو استعمال کرنے کے بجائے ، کچھ سینسر جیسے آپٹیکل رکاوٹ یا ہال سینسر کا استعمال رفتار اور فاصلے کا حساب کرنے کے لئے کیا جاتا ہے۔ یہ ینالاگ میٹروں سے کہیں زیادہ درست ہے اور طویل عرصے تک اس کی دیکھ بھال کی ضرورت نہیں ہے۔ اس سے قبل ہم نے بہت سارے ڈیجیٹل اسپیڈومیٹر پروجیکٹس مختلف سینسرز کا استعمال کرتے ہوئے بنائے ہیں
- آرڈینوو اور پروسیسنگ اینڈروئیڈ ایپ کا استعمال کرتے ہوئے DIY اسپیڈومیٹر
- PIC مائکروکانٹرولر کا استعمال کرتے ہوئے ڈیجیٹل اسپیڈومیٹر اور اوڈومیٹر سرکٹ
- ایل ایم 393 سینسر (H206) استعمال کرتے ہوئے موبائل روبوٹس کے لئے رفتار ، فاصلہ اور زاویہ پیمائش
آج ، اس ٹیوٹوریل میں ہم ارڈینو کا استعمال کرتے ہوئے ڈیجیٹل ٹیکسی فیر میٹر کا ایک پروٹو ٹائپ بنائیں گے ۔ یہ پروجیکٹ ٹیکسی کے پہیے سے سفر کی رفتار اور فاصلے کا حساب لگاتا ہے اور اسے 16x2 LCD ڈسپلے پر مستقل دکھاتا ہے۔ اور جب ہم پش بٹن دبائیں تب فاصلے پر مبنی یہ کرایہ کی رقم پیدا کرتی ہے۔
تصویر کے نیچے ڈیجیٹل ٹیکسی میٹر پروجیکٹ کا مکمل سیٹ اپ دکھاتا ہے
اس پروٹو ٹائپ میں ایک آر سی کار چیسیس ہے جس میں اسپیڈ سینسر ماڈیول اور ایک انکوڈر وہیل موٹر سے منسلک ہے۔ ایک بار جب رفتار کی پیمائش ہوجائے تو ، ہم طے شدہ فاصلے کی پیمائش کرسکتے ہیں اور پش بٹن دباکر کرایہ کی قیمت کی قیمت تلاش کرسکتے ہیں۔ ہم پوٹینومیٹر کا استعمال کرتے ہوئے پہیے کی رفتار مرتب کرسکتے ہیں۔ ارڈینو کے ساتھ ایل ایم 393 اسپیڈ سینسر ماڈیول استعمال کرنے کے بارے میں مزید معلومات کے ل the ، لنک پر عمل کریں۔ آئیے سپیڈ سینسر ماڈیول کا ایک مختصر تعارف دیکھیں۔
اورکت سلاٹڈ آپٹیکل LM-393 اسپیڈ سینسر ماڈیول
یہ ایک سلاٹ قسم کا ماڈیول ہے جو انکوڈر پہیوں کی گردش کی رفتار کی پیمائش کے لئے استعمال کیا جاسکتا ہے۔ یہ اسپیڈ سینسر ماڈیول سلاٹ قسم آپٹیکل انٹرپرٹر کی بنیاد پر کام کرتا ہے جسے آپٹیکل سورس سینسر بھی کہا جاتا ہے۔ اس ماڈیول میں 3.3V سے 5V کے وولٹیج کی ضرورت ہے اور ڈیجیٹل آؤٹ پٹ تیار کرتا ہے۔ لہذا اس کو کسی بھی مائکرو قابو رکھنے والے کے ساتھ انٹرفیس کیا جاسکتا ہے۔
اورکت روشنی سینسر روشنی ماخذ (IR-LED) اور ایک فوٹو ٹرانسٹسٹر سینسر پر مشتمل ہے۔ دونوں کے درمیان ایک چھوٹا سا فاصلہ رکھا ہوا ہے۔ جب کسی چیز کو آئ آر ایل ای ڈی اور فوٹو ٹرانسٹسٹر کے فرق کے درمیان رکھا جاتا ہے تو یہ روشنی کی روشنی میں خلل ڈالتا ہے جس کی وجہ سے فوٹو ٹرانسٹسٹر موجودہ کو روکنا بند کردے گا۔
اس طرح اس سینسر کے ساتھ ایک سلاٹڈ ڈسک (انکوڈر وہیل) استعمال کی جاتی ہے جسے موٹر سے منسلک کیا جاسکتا ہے اور جب پہی motorا موٹر کے ساتھ گھومتا ہے تو یہ آئی آر ایل ای ڈی اور فوٹو ٹرانسٹسٹر کے مابین لائٹ بیم کو روکتا ہے جو آؤٹ پٹ آن اور آف (دالیں بنانا) بناتا ہے۔
اس طرح یہ ہائی آؤٹ پٹ تیار کرتا ہے جب منبع اور سینسر کے مابین مداخلت ہوتی ہے (جب کوئی چیز درمیان میں رکھی جاتی ہے) اور جب کوئی چیز رکھی جاتی ہے تو کم پیداوار پیدا کرتی ہے۔ ماڈیول میں ہمارے پاس ایک ایل ای ڈی ہے جس کی وجہ آپٹیکل رکاوٹ ہے۔
یہ ماڈیول LM393 Comparator IC کے ساتھ آتا ہے جو OUTPUT میں درست HIGH اور LOW سگنل تیار کرنے کے لئے استعمال ہوتا ہے۔ اس طرح یہ ماڈیول کبھی کبھی LM393 اسپیڈ سینسر کے نام سے پکارا جاتا ہے ۔
رفتار کا فاصلہ طے کرنا اور فاصلے طے کرنا
گردش کی رفتار کی پیمائش کے ل we ہمیں انکوڈر پہیے میں موجود سلاٹوں کی تعداد جاننے کی ضرورت ہے۔ میرے پاس ایک انکوڈر وہیل ہے جس میں 20 سلاٹ ہیں۔ جب وہ ایک مکمل گھماتے ہیں تو آؤٹ پٹ میں ہمارے پاس 20 دالیں ہوتی ہیں۔ لہذا رفتار کا حساب لگانے کے لئے ہمیں فی سیکنڈ میں تیار ہونے والی دالوں کی تعداد کی ضرورت ہے۔
مثال کے طور پر
اگر ایک سیکنڈ میں 40 دالیں ہوں تو
سپیڈ = Noo. دالوں کی / سلاٹ کی تعداد = 40/20 = 2RPS (انقلاب فی سیکنڈ)
RPM میں رفتار کا حساب لگانے کے لئے (انقلابات فی منٹ) 60 سے ضرب کریں۔
RPM = 2 X 60 = 120 RPM میں رفتار (انقلابات فی منٹ)
فاصلہ کی پیمائش
پہیے سے طے شدہ فاصلے کی پیمائش کرنا بہت آسان ہے۔ فاصلے کا حساب لگانے سے پہلے پہیے کا طواف معلوم ہونا چاہئے۔
پہیے کا طواف = π * d
جہاں d وہیل کا قطر ہے۔
π کی قیمت 3.14 ہے۔
میرے پاس ایک پہی (ا (RC کار وہیل) ہے جس کا قطر 6.60 سینٹی میٹر ہے تاکہ فریم (20.7 سینٹی میٹر) ہے۔
چنانچہ طے شدہ فاصلے کا حساب لگانے کے لئے ، صرف دال کی تعداد کو فریم کے ساتھ پائے جانے والے ضرب میں ڈالیں۔
فاصلہ طے شدہ = پہیے کا طواف x (دالوں کی تعداد / سلاٹ کی تعداد)
لہذا جب گردش 20.7 سینٹی میٹر کا ایک پہی 20 20 دالیں لیتا ہے جو انکوڈر پہیے کی ایک گردش ہوتی ہے تو پھر پہیے سے طے شدہ فاصلے کے ذریعہ حساب کتاب کیا جاتا ہے
فاصلہ طے کیا = 20.7 x (20/20) = 20.7 سینٹی میٹر
میٹر میں فاصلے کا حساب لگانے کے لئے فاصلہ 100 سینٹی میٹر قدر میں تقسیم کریں۔
نوٹ: یہ ایک چھوٹا سا RC کار پہیا ہے ، اصل وقت میں کاروں کے پاس اس سے بڑے پہیے ہوتے ہیں۔ تو میں فرض کر رہا ہوں کہ اس سبق میں پہیے کا طواف 230 سینٹی میٹر ہوگا ۔
سفر کیے گئے فاصلے کی بنیاد پر کرایہ کا حساب لگانا
کل کرایہ کی رقم حاصل کرنے کے ل traveled ، فاصلہ طے شدہ فاصلہ (کرایہ / میٹر) کے ساتھ بڑھائیں۔
ٹائمر 1.initialize (1000000)؛ ٹائمر 1.اٹاچ انٹرپروٹ (ٹائمرآسسر)؛
اگلے میں دو بیرونی مداخلتیں منسلک کریں۔ پہلا رکاوٹ ارڈوینو پن 2 کو ایک رکاوٹ پن کے طور پر بناتا ہے اور جب پن میں رسائنگ (ہائی سے کم) کا پتہ چلتا ہے تو اس کو کال کرتا ہے۔ یہ پن 2 اسپیڈ سینسر ماڈیول کی D0 آؤٹ پٹ سے جڑا ہوا ہے۔
اور دوسرا ، اڑڈینو پن 3 کو بطور خلل پن بناتا ہے اور جب پن 3 پر ہائی کا پتہ چلتا ہے تو آئی ایس آر (جنریئر فیئر) پر کال کرتا ہے۔ یہ پن پش بٹن سے ایک پل ڈاؤن مزاحم کے ساتھ منسلک ہے۔
منسلک انٹرپریٹ (ڈیجیٹلپن ٹن انٹریپٹ (2) ، گنتی ، بڑھتی ہوئی)؛ attachInterrupt (digitalPinToInterrupt (3)، generatefare ، اعلی)؛
Next. اگلی آئی ایس آر کے بارے میں دیکھیں کہ ہم یہاں استعمال کرتے ہیں:
ISR1- count () ISR اس وقت کہا جاتا ہے جب پن 2 (اسپیڈ سینسر سے جڑا ہوا) پر RISING (LOW TO HIGH) ہوتا ہے۔
باطل شمار () // رفتار سینسر سے شمار کے لئے ISR { انسداد ++؛ // ایک گھماؤ کے ذریعہ انسداد کی قیمت میں اضافہ ++؛ // ایک تاخیر سے گردش کی قیمت میں اضافہ (10)؛ }
ISR2- timerIsr () ISR کو ہر ایک سیکنڈ میں بلایا جاتا ہے اور ISR کے اندر موجود لائنوں کو عمل میں لاتے ہیں ۔
کالعدم ٹائمر () { ڈیٹاچ انٹرپروٹ (ڈیجیٹل پن ٹٹو انٹریپٹ (2))؛ ٹائمر 1.ڈیٹاچ انٹریپٹ ()؛ lcd.clear ()؛ فلوٹ اسپیڈ = (انسداد / 20.0) * 60.0؛ فلوٹ گردشیں = 230 * (گردش / 20)؛ گردش / گردش / 100؛ lcd.setCursor (0،0)؛ lcd.print ("ڈسٹ (م):")؛ lcd.print (rotationinm)؛ lcd.setCursor (0،1)؛ lcd.print ("اسپیڈ (RPM):")؛ lcd.print (رفتار)؛ انسداد = 0؛ int analogip = analogRead (A0)؛ int موٹرسپیڈ = نقشہ (ینالاگ ، 0،1023،0،255)؛ ینالاگ رائٹ (5 ، موٹرسپیڈ)؛ ٹائمر 1.اٹاچ انٹرپروٹ (ٹائمرآسسر)؛ منسلک انٹرپریٹ (ڈیجیٹلپن ٹن انٹریپٹ (2) ، گنتی ، بڑھتی ہوئی)؛ }
اس فنکشن میں وہ لائنیں شامل ہیں جو دراصل پہلے ٹائمر 1 اور انٹراپٹ پن 2 کو سب سے پہلے الگ کردیتی ہیں کیونکہ ہمارے پاس آئی ایس آر کے اندر ایل سی ڈی پرنٹ بیانات ہیں۔
آر پی ایم میں اسپیڈ کا حساب لگانے کے لئے ہم ذیل میں کوڈ استعمال کرتے ہیں جہاں انکوڈر پہیے میں پیشگی سیٹ 20.0 ہے۔
فلوٹ اسپیڈ = (انسداد / 20.0) * 60.0؛
اور نیچے فاصلے کے حساب کے لئے کوڈ استعمال کیا جاتا ہے:
فلوٹ گردشیں = 230 * (گردش / 20)؛
یہاں پہیے کا طواف 230 سینٹی میٹر سمجھا جاتا ہے (کیونکہ یہ اصل وقت کی کاروں کے لئے عام بات ہے)
اگلا فاصلہ 100 میں تقسیم کرکے میٹر میں تبدیل کریں
گردش / گردش / 100؛
اس کے بعد ہم LCD ڈسپلے پر تیز اور DISTANCE ڈسپلے کرتے ہیں
lcd.setCursor (0،0)؛ lcd.print ("ڈسٹ (م):")؛ lcd.print (rotationinm)؛ lcd.setCursor (0،1)؛ lcd.print ("اسپیڈ (RPM):")؛ lcd.print (رفتار)؛
اہم: ہمیں کاؤنٹر کو 0 پر ری سیٹ کرنا ہوگا کیونکہ ہمیں فی سیکنڈ کے لئے دریافت ہونے والے پلاز کی تعداد حاصل کرنے کی ضرورت ہے لہذا ہم اس لائن کو استعمال کریں۔
انسداد = 0؛
اگلا ینالاگ پن A0 پڑھیں اور اسے ڈیجیٹل ویلیو (0 سے 1023) میں تبدیل کریں اور PWM آؤٹ پٹ (موٹر کی رفتار ترتیب دینا) کے ل those ان اقدار کو 0-255 پر نقشہ بنائیں اور آخر میں ان پیلاوایم اقدار کو ینالاگ رائٹ فنکشن کا استعمال کرتے ہوئے لکھیں جو ULN2003 سے منسلک ہے۔ موٹر آایسی۔
int analogip = analogRead (A0)؛ int موٹرسپیڈ = نقشہ (ینالاگ ، 0،1023،0،255)؛ ینالاگ رائٹ (5 ، موٹرسپیڈ)؛
ISR3: جنریٹ فیئر () ISR کا استعمال سفر کے فاصلے کی بنیاد پر کرایے کی رقم پیدا کرنے کے لئے کیا جاتا ہے۔ جب یہ انٹراپٹ پن 3 کا پتہ چلتا ہے تو یہ ISR کہا جاتا ہے جب ہائی (جب پش بٹن دبایا جاتا ہے)۔ یہ فنکشن رکاوٹ کو پن 2 پر ٹائمر کی مداخلت سے الگ کرتا ہے اور پھر LCD کو صاف کرتا ہے۔
باطل پیدا کرنے والا کام () { detachInterrupt (digitalPinToInterrupt (2))؛ پن پر 2 ٹائمر 1.ڈیٹاچ انٹریپٹ ()؛ lcd.clear ()؛ lcd.setCursor (0،0)؛ lcd.print ("مفت روپے:")؛ فلوٹ روپیہ = گردش * 5؛ lcd.print (روپے)؛ lcd.setCursor (0،1)؛ lcd.print ("5 میٹر فی میٹر")؛ }
اس کے بعد سفر کی مسافت 5 سے بڑھ جاتی ہے (میں نے شرح 5 / میٹر شرح کے لئے 5 استعمال کیا ہے)۔ آپ اپنی خواہش کے مطابق بدل سکتے ہیں۔
فلوٹ روپیہ = روٹیشنیم * 5؛
رقم کی قیمت کا حساب لگانے کے بعد اسے ارڈوینو سے منسلک LCD ڈسپلے پر ڈسپلے کریں۔
lcd.setCursor (0،0)؛ lcd.print ("مفت روپے:")؛ lcd.print (روپے)؛ lcd.setCursor (0،1)؛ lcd.print ("5 میٹر فی میٹر")؛
مکمل کوڈ اور مظاہرہ ویڈیو ذیل میں دیا گیا ہے۔
آپ اس پروٹو ٹائپ کو مزید درستگی ، مضبوطی میں اضافہ اور مزید خصوصیات جیسے اینڈروئیڈ ایپ ، ڈیجیٹل ادائیگی وغیرہ شامل کرکے اور اسے بطور پروڈکٹ تیار کرکے بہتر بنا سکتے ہیں۔