- مطلوبہ مواد:
- سرکٹ ڈایاگرام:
- HC-SR04 ماڈیول دراصل کیسے کام کرتا ہے:
- دو الٹراسونک سینسر (HC-SR04) کے درمیان فاصلے کی پیمائش:
- ٹرانسمیٹر سینسر کے لئے پروگرام:
- وصول کنندہ سینسر کے لئے پروگرام:
- کام کرنا:
- بہتر نظر - ایک مشہور فاصلہ استعمال کرکے سینسر کیلیبریٹنگ۔
الٹراسونک سینسر (HC-SR04) عام طور پر کسی خاص مقام سے کسی شے کے فاصلے کو تلاش کرنے کے لئے استعمال ہوتا ہے۔ اردوینو کے ساتھ ایسا کرنا کافی آسان رہا ہے اور کوڈ بھی بہت آسان ہے۔ لیکن اس مضمون میں ہم ان مشہور HC-SR04 سینسروں کے ساتھ کچھ مختلف کرنے کی کوشش کرنے جارہے ہیں۔ ہم دو الٹراسونک سینسروں کے مابین فاصلے کا حساب لگانے کی کوشش کریں گے ، یعنی ہم ایک سینسر کو ٹرانسمیٹر کے طور پر کام کرنے کے ل and اور دوسرے سینسر کو وصول کنندہ کے طور پر کام کرنے کے ل. بنائیں گے۔ ایسا کرنے سے ہم بہت سارے الٹراسونک ریسیورز کا استعمال کرتے ہوئے ایک ٹرانسمیٹر کے مقام کا سراغ لگاسکتے ہیں اس ٹریکنگ کو ٹرائینگولیشن کہا جاتا ہے اور یہ خود کار طریقے سے ڈاکنگ روبوٹ سامان کے پیروکاروں اور اسی طرح کی دوسری ایپلی کیشن کے لئے استعمال کیا جاسکتا ہے۔ دو امریکی سینسر کے مابین فاصلہ تلاش کرنا یہ کافی آسان کام ہوگا لیکن مجھے کچھ چیلنجوں کا سامنا کرنا پڑا جس پر اس منصوبے میں تبادلہ خیال کیا گیا ہے۔
اس مضمون میں جس تکنیک پر تبادلہ خیال کیا گیا ہے وہ بالکل درست نہیں ہے اور ممکن ہے کہ کسی بھی حقیقی نظام میں ترمیم کے بغیر وہ کارآمد نہ ہو۔ اس دستاویزات کے وقت میں مجھے کسی کے پاس اپنے نتائج کے قریب نہیں مل پایا تھا لہذا میں نے ابھی اپنے خیالات شیئر کیے ہیں کہ مجھے یہ کام کرنے کا طریقہ کیسے مل گیا ہے تاکہ جو لوگ کوشش کر رہے ہیں وہ پہیے کی دوبارہ ایجاد نہ کریں۔
مطلوبہ مواد:
- ارڈینو (2 نمبر) - کوئی بھی ماڈل
- HCSR04 ماڈیول (2 نمبر)
سرکٹ ڈایاگرام:
اگرچہ ہم ایک امریکی (الٹراسونک) سینسر بنانے کے لئے ٹرانسمیٹر کے طور پر کام کرنے کے لئے جا رہے ہیں اور دوسرا وصول کنندہ کے طور پر ، یہ لازمی ہے کہ سینسر کے چاروں پنوں کو اردوینو سے جوڑیں۔ ہم کیوں کریں؟ اس کے بارے میں مزید تبادلہ خیال بعد میں کیا جائے گا ، لیکن ابھی کے لئے سرکٹ ڈایاگرام مندرجہ ذیل ہوگا
جیسا کہ آپ دیکھ سکتے ہیں کہ ٹرانسمیٹر اور وصول کنندہ دونوں کے لئے سرکٹ ڈایاگرام دونوں ایک جیسے ہیں۔ یہ بھی چیک کریں: ارڈینو الٹراسونک سینسر انٹرفیسنگ
HC-SR04 ماڈیول دراصل کیسے کام کرتا ہے:
اس سے پہلے کہ ہم آگے بڑھیں ، ہمیں یہ سمجھنے دو کہ HC-SR04 سینسر کس طرح کام کرتا ہے ۔ نیچے دی گئی ٹائم ڈایاگرام سے ہمیں کام کو سمجھنے میں مدد ملے گی۔
سینسر میں دو پن ٹرگر اور ایکو ہیں جو فاصلے کی پیمائش کرنے کے لئے استعمال ہوتے ہیں جیسا کہ وقت کے آراگرام میں دکھایا گیا ہے۔ پیمائش شروع کرنے کے لئے سب سے پہلے ہمیں ٹرانسمیٹر سے الٹراسونک لہر بھیجنی چاہئے ، یہ 10uS کے لئے ٹرگر پن اون مرتب کرکے کیا جاسکتا ہے۔ جیسے ہی یہ ہوجائے گا ، ٹرانسمیٹر پن امریکی لہروں کے 8 صوتی پھٹ بھیجے گا۔ یہ امریکی لہر کسی چیز کو اچھال دے گی اور وصول کنندہ اسے وصول کرے گا۔
یہاں ٹائمنگ ڈایاگرام سے پتہ چلتا ہے کہ ایک بار جب وصول کنندہ کو لہر مل جاتی ہے تو وہ ایکو پن کو وقتا for فوقتا for اونچائی پر لے جاتا ہے جو لہر کو امریکی سینسر سے سفر کرنے اور سینسر تک واپس پہنچنے کے ل taken وقت کے برابر ہوتا ہے۔ یہ ٹائمنگ آریگ درست نہیں لگتا ہے ۔
میں نے اپنے سینسر کے Tx (ٹرانسمیٹر) حصے کا احاطہ کیا اور جانچ پڑتال کی کہ اگر ایکو پلس اونچی ہے تو ، اور ہاں یہ اونچی ہے۔ اس کا مطلب یہ ہے کہ ایکو نبض امریکی (الٹراسونک) لہر کے وصول ہونے کا انتظار نہیں کرتی ہے۔ ایک بار جب یہ امریکی لہر کو منتقل کرتا ہے تو وہ اونچائی میں جاتا ہے اور جب تک وہ لہر واپس نہیں آتی تب تک اونچی رہتی ہے لہذا صحیح وقت کا آراء کچھ اس طرح کا ہونا چاہئے جو ذیل میں دکھایا گیا ہے (لکھنے کی ناقص صلاحیتوں پر معذرت)
صرف ٹرانسمیٹر کے بطور کام کرنے کے لئے اپنے HC-SR04 بنانا:
صرف ٹرانسمیٹر کے طور پر کام کرنے کے لئے HC-SR04 بنانا کافی سیدھا آگے ہے۔ جیسا کہ ٹائمنگ آریگرام میں دکھایا گیا ہے ، آپ کو ٹرگر پن کو آؤٹ پٹ پن قرار دینا ہے اور اسے 10 مائیکرو سیکنڈ کے لئے اعلی بنانا ہے۔ یہ الٹراسونک لہر پھٹنا شروع کردے گا۔ لہذا جب بھی ہم لہر کو منتقل کرنا چاہتے ہیں ہمیں صرف ٹرانسمیٹر سینسر کے ٹرگر پن کو قابو کرنا ہوتا ہے ، جس کے لئے کوڈ ذیل میں دیا گیا ہے۔
صرف وصول کنندہ کے بطور کام کرنے کے لئے اپنا HC-SR04 بنانا:
جیسا کہ ٹائمنگ آریگرام میں دکھایا گیا ہے ہم ایکو پن کے عروج کو کنٹرول نہیں کرسکتے ہیں کیونکہ اس کا تعلق ٹرگر پن سے ہے۔ لہذا ایسا کوئی طریقہ نہیں ہے کہ ہم HC-SR04 کو صرف وصول کنندہ کے طور پر کام کرسکیں۔ لیکن ہم صرف ایک ہیک استعمال کرسکتے ہیں ، صرف سینسر کے ٹرانسمیٹر حصے کو ٹیپ سے ڈھانپ کر (جیسا کہ نیچے کی تصویر میں دکھایا گیا ہے) یا ٹوپی پر امریکی لہر اپنے ٹرانسمیٹر کیسنگ سے باہر نہیں بچ سکتی اور اس امریکی لہر سے ایکو پن متاثر نہیں ہوگا۔
اب بازگشت پن کو اونچا بنانے کے ل we ہمیں صرف 10 مائیکرو سیکنڈوں کے لئے اس ڈمی ٹرگر پن کو کھینچنا ہوگا۔ ایک بار جب یہ وصول کنندہ سینسر ٹرانسمیٹر سینسر کے ذریعہ امریکی لہر منتقل ہوتا ہے تو اس کی بازگشت پن کم ہوجائے گی۔
دو الٹراسونک سینسر (HC-SR04) کے درمیان فاصلے کی پیمائش:
اب تک ہم سمجھ چکے ہیں کہ کس طرح ایک سینسر کو ٹرانسمیٹر کے طور پر کام کرنا ہے اور دوسرا سینسر وصول کنندہ کے طور پر کام کرنا ہے۔ اب ، ہم نے ٹرانسمیٹر سینسر سے الٹراسونک لہر منتقل کرنا ہے اور اسے وصول کنندہ سینسر کے ساتھ وصول کرنا ہے اور لہر کے لئے ٹرانسمیٹر سے وصول کرنے والے کے ل travel سفر کرنے میں لگے ہوئے وقت کو چیک کرنا آسان ہے۔؟ لیکن افسوس کہ ، ہمیں یہاں ایک مسئلہ درپیش ہے اور یہ کام نہیں کرے گا۔
ٹرانسمیٹر ماڈیول اور وصول کرنے والا ماڈیول بہت دور ہے اور جب وصول کنندہ ماڈیول ٹرانسمیٹر ماڈیول سے امریکی لہر وصول کرتا ہے تو پتہ نہیں چلتا ہے کہ ٹرانسمیٹر نے یہ خاص لہر کب بھیجی ہے۔ شروعاتی وقت کو جانے بغیر ہم لگے ہوئے وقت اور اس طرح فاصلے کا حساب نہیں لگا سکتے ہیں۔ اس مسئلے کو حل کرنے کے ل the وصول کنندہ ماڈیول کی ایکو نبض کو بالکل اسی وقت اونچائی سے جانا چاہئے جب ٹرانسمیٹر ماڈیول نے امریکی لہر منتقل کردی۔ دوسرے الفاظ میں ، ٹرانسمیٹر ماڈیول اور وصول کنندہ ماڈیول کو ایک ہی وقت میں متحرک ہونا چاہئے۔ یہ مندرجہ ذیل طریقہ سے حاصل کیا جاسکتا ہے۔
مذکورہ آریگرام میں ، Tx ٹرانسمیٹر سینسر کی نمائندگی کرتا ہے اور Rx وصول کنندہ سینسر کی نمائندگی کرتا ہے۔ جیسا کہ دکھایا گیا ہے کہ وقتا known فوقتا delay تاخیر پر امریکی لہروں کو منتقل کرنے کے لئے ٹرانسمیٹر سینسر بنایا جائے گا۔
وصول کرنے والے سینسر میں ہمیں ٹرگر پن کو کسی حد تک اونچی بنانا پڑتا ہے جب ٹرانسمیٹر پن اونچا جاتا ہے۔ لہذا شروع میں ہم تصادفی طور پر وصول کرنے والے ٹرگر کو اونچائی تک پہنچاتے ہیں جو ایکو پن کم ہونے تک اونچی رہے گی۔ یہ بازگشت پن صرف اس وقت کم ہوگا جب اسے ٹرانسمیٹر سے امریکی لہر موصول ہوگی۔ لہذا جیسے ہی یہ کم ہوتا ہے ہم فرض کر سکتے ہیں کہ ٹرانسمیٹر سینسر ابھی متحرک ہوگیا ہے۔ اب ، اس گمان کے ساتھ جیسے ہی گونج کم ہوتا ہے ہم معلوم تاخیر کا انتظار کرسکتے ہیں اور پھر وصول کنندگان کو متحرک کرسکتے ہیں۔ یہ جزوی طور پر ٹرانسمیٹر اور وصول کنندہ دونوں کے محرک کو مطابقت پذیر بنائے گا لہذا آپ پلس ان () کا استعمال کرتے ہوئے فوری گونج پلس کی مدت پڑھ سکتے ہیں اور فاصلے کا حساب لگاسکتے ہیں۔
ٹرانسمیٹر سینسر کے لئے پروگرام:
ٹرانسمیٹر ماڈیول کے لئے مکمل پروگرام صفحے کے نیچے پایا جا سکتا ہے۔ یہ وقتا فوقتا ٹرانسمیٹر سینسر کو متحرک کرنے کے علاوہ کچھ نہیں کرتا ہے۔
ڈیجیٹل رائٹ (ٹرگ پن ، ہائی)؛ تاخیرمیکرو سیکنڈ (10)؛ ڈیجیٹل رائٹ (ٹرگ پن ، LOW)؛
ایک سینسر کو متحرک کرنے کے ل we ہمیں 10uS تک بلند رہنے کیلئے ٹرگر پن بنانا ہوگا۔ ایسا کرنے کا کوڈ اوپر دکھایا گیا ہے
وصول کنندہ سینسر کے لئے پروگرام:
رسیور سینسر میں ہم نے سینسر کی ٹرانسمیٹر آنکھ کا احاطہ کیا ہے تاکہ اس کو جعلی بنایا جاسکے۔ اب ہم دو سینسروں کے مابین فاصلہ طے کرنے کے لئے مذکورہ بالا تکنیک استعمال کرسکتے ہیں۔ مکمل پروگرام اس صفحے کے نیچے دیا گیا ہے۔ ذیل میں کچھ اہم لائنوں کی وضاحت کی گئی ہے
ٹرگر_ یو ایس ()؛ جبکہ (ڈیجیٹل ریڈ (ایکو پن) == ہائی)؛ تاخیرمیکرو سیکنڈ (10)؛ ٹرگر_ یو ایس ()؛ دورانیہ = پلس ان (ایکو پن ، ہائی)؛
ابتدائی طور پر ہم فن ٹریگر_ یو ایس () کا استعمال کرکے امریکی سینسر کو متحرک کرتے ہیں اور پھر جب تک لوپ کا استعمال کرتے ہوئے گونج پن اونچی نہ رہے تب تک انتظار کریں۔ ایک بار جب یہ کم ہوجاتا ہے تو ہم پہلے سے طے شدہ مدت کا انتظار کرتے ہیں ، یہ مدت 10 سے 30 مائیکرو سیکنڈ کے درمیان ہونا چاہئے جس کا تعی.ن اور غلطی کا استعمال کرتے ہوئے طے کیا جاسکتا ہے (یا آپ ذیل میں دیئے گئے امپروائزڈ آئیڈیا کو استعمال کرسکتے ہیں)۔ اس تاخیر کے بعد اسی فعل کا استعمال کرتے ہوئے امریکہ کو دوبارہ متحرک کریں اور پھر لہر کی مدت کا حساب لگانے کے لئے پلس ان () فنکشن کا استعمال کریں۔
اب وہی پرانے فارمولے استعمال کرکے ہم نیچے کی طرح فاصلے کا حساب لگاسکتے ہیں
فاصلہ = دورانیہ * 0.034؛
کام کرنا:
جیسا کہ پروگرام میں بیان ہوا ہے روابط بنائیں۔ جیسا کہ تصویر میں دکھایا گیا ہے ، وصول کنندہ سینسر کے Tx حصے کا احاطہ کریں۔ پھر ٹرانسمیٹر کوڈ اور وصول کنندہ کوڈ اپ لوڈ کریں جو ذیل میں ٹرانسمیٹر اور وصول کنندہ اردوینو کو دیا گیا ہے۔ وصول کنندہ ماڈیول کا سیریل مانیٹر کھولیں اور آپ کو نیچے دیئے گئے ویڈیو میں دکھائے جانے کے مطابق دو ماڈیولز کے درمیان فاصلہ دیکھنا چاہئے۔
نوٹ: یہ طریقہ صرف ایک نظریہ ہے اور ہوسکتا ہے کہ یہ درست یا اطمینان بخش نہ ہو۔ تاہم بہتر نتائج حاصل کرنے کے ل you آپ ذیل میں دیئے گئے نظریے کو آزما سکتے ہیں۔
بہتر نظر - ایک مشہور فاصلہ استعمال کرکے سینسر کیلیبریٹنگ۔
جو طریقہ اب تک عجیب طور پر بیان کیا گیا تھا وہ اطمینان بخش معلوم ہوتا ہے ، پھر بھی یہ میرے پروجیکٹ کے لئے کافی تھا۔ تاہم ، میں اس طریقہ کار کی خرابیوں اور ان پر قابو پانے کا ایک طریقہ بھی بتانا چاہتا ہوں۔ اس طریقہ کار کی ایک بڑی خرابی یہ ہے کہ ہم فرض کرتے ہیں کہ ٹرانسمیٹر سینسر کے امریکی لہر کو منتقل کرنے کے فورا بعد ہی وصول کنندہ کا ایکو پن کم ہوجاتا ہے جو درست نہیں ہے کیونکہ لہر ٹرانسمیٹر سے وصول کرنے میں کچھ وقت لگے گی۔ لہذا ٹرانسمیٹر کا محرک اور وصول کنندہ کا محرک مطابقت پذیر نہیں ہوگا۔
اس پر قابو پانے کے لئے ہم ابتدائی طور پر جاننے کا فاصلہ استعمال کرکے سینسر کیلیبریٹ کرسکتے ہیں۔ اگر فاصلہ معلوم ہے تو ہمیں معلوم ہوگا کہ امریکی لہر کے لئے ٹرانسمیٹر سے وصول کنندہ تک پہنچنے میں کیا وقت لگتا ہے۔ آئیے اس وقت کو ڈیل (ڈی) کے طور پر لیا گیا ہے جیسا کہ ذیل میں دکھایا گیا ہے۔
اب ہم بالکل جان لیں گے کہ ٹرانسمیٹر کے محرک کے ساتھ مطابقت پذیر ہونے کے ل we ہمیں وصول کنندہ کے ٹرگر پن کو اونچائی تک بنانا چاہئے۔ اس مدت کا حساب معلوم تاخیر (ٹی) - ڈیل (ڈی) کے ذریعہ لگایا جاسکتا ہے۔ میں وقت کی حدود کی وجہ سے اس خیال کی جانچ نہیں کرسکا تھا لہذا مجھے یقین نہیں ہے کہ یہ کس حد تک درست کام کرے گا۔ لہذا اگر آپ کوشش کرنے کی کوشش کرتے ہیں تو مجھے کمنٹ سیکشن کے ذریعے نتائج سے آگاہ کریں۔