ارڈینو آئ آر ریموٹ کنٹرول سرکٹ

مسائل کو ختم کرنے کے لئے ہمارے آلے کو آزمائیں





اس پوسٹ میں ہم ایک تخصیص بخش آرڈینوو پر مبنی IR (اورکت) پر مبنی وائرلیس ریموٹ کنٹرول سوئچ تعمیر کرنے جارہے ہیں ، جس میں IR ریموٹ اور ایک وصول کنندہ ہوتا ہے ، آپ اپنی ضروریات کے مطابق ترمیم کرسکتے ہیں۔ مضمون کے بعد کے حصے میں ہم ایک IR ریموٹ کنٹرول کے اپ گریڈ فول پروف ورژن کے بارے میں جانتے ہیں جو صرف انفرادی طور پر تفویض کردہ تعدد کا جواب دے گا۔

اگر آپ ابتدائی سطح سے اوپر ہیں تو آپ اسے آسانی کے ساتھ پورا کرسکتے ہیں۔ یہاں پیش کردہ مجوزہ سرکٹ میں ریموٹ پر صرف 3 کنٹرول ہیں اور وصول کنندہ کے اختتام پر 3 رلی ہیں۔ آپ اپنی ضروریات کو پورا کرنے کے لئے کوڈ اور سرکٹ ڈایاگرام میں ترمیم کرسکتے ہیں۔



آپ کو دو ارڈینو بورڈز کی ضرورت ہوگی ، جو دور دراز کا کام کرتے ہیں اور دوسرا وصول کنندہ کے طور پر کام کرتے ہیں۔ میں اس پروجیکٹ کے لئے اردوینو پرو منی کی سفارش کروں گا ، کیونکہ ان کے سائز بہت چھوٹے ہیں اور دور دراز کا مجموعی سائز چھوٹا جاسکتا ہے۔

آپ ریموٹ کے لئے 3.3V پر مبنی آرڈینو پرو پرو منی کا استعمال کرسکتے ہیں ، تاکہ آپ کو اپنی ضروریات کے مطابق دو بٹن سیل یا دو AA سائز کی بیٹریاں فراہم کی جاسکیں۔



IR ٹرانسمیٹر سرکٹ میں بٹنوں پر 3 دباؤ اور وصول کنندہ کو کمانڈ بھیجنے کے لئے IR LED ہے۔ ہر بٹن نے منفرد ہیکساڈیسمل کوڈ کے ساتھ پروگرام کیا ہے ، اسی ہیکساڈیسیمل کوڈ کو رسیور سائیڈ پر بھی پروگرام کیا گیا ہے۔

جب ایک بٹن افسردہ ہو جاتا ہے تو IR ایل ای ڈی ہیکساڈیسمل کوڈ وصول کرنے والے کو بھیجتا ہے ، وصول کنندہ پہچان لے گا کہ کون سا بٹن دب گیا ہے اور وہ اسی ریلے کو آن / آف پر سوئچ کرتا ہے۔

مجوزہ ریموٹ RC5 پروٹوکول کو وصول کنندہ سے بات چیت کرنے کے لئے استعمال کرتا ہے آپ کوڈ میں ترمیم کرکے ہر چیز کو تبدیل کرسکتے ہیں۔

اگر آپ آرڈینو میں ابھی ابتدائی ہیں تو ، آپ اب بھی اسے پورا کرسکتے ہیں صرف آریھ کی پیروی کریں اور کوڈ کو بغیر ترمیم کیے اپلوڈ کریں۔

سرکٹ اور پروگرام:

ایردوینو ریموٹ ٹرانسمیٹر:

فول پروف IR ریموٹ کنٹرول سرکٹ

مذکورہ بالا سرکٹ وضاحت کرتا ہے کہ کس طرح اریڈینو آئ آر ریموٹ ٹرانسمیٹر کی تعمیر کی جائے۔

تین 10 کے ریزسٹرس مستشار چارج کی وجہ سے ریموٹ کے حادثاتی محرکات کو روکنے والے مزاحم کاروں کو نیچے اتار رہے ہیں ، اور آئی آر ایل ای ڈی کے لئے 220 ہیم کا حالیہ لیمٹنگ ریزٹر لگایا ہوا ہے۔

ریموٹ ٹرانسمیٹر کے لئے پروگرام:

//---------Program developed by R.Girish--------//
#include
IRsend irsend
const int button1 = 4
const int button2 = 5
const int button3 = 6
void setup() {
pinMode(button1, INPUT)
pinMode(button2, INPUT)
pinMode(button3, INPUT)
}
void loop()
{
if (digitalRead(button1) == HIGH)
{
delay(50)
irsend.sendRC5(0x80C, 32)
delay(200)
}
if (digitalRead(button2) == HIGH)
{
delay(50)
irsend.sendRC5(0x821, 32)
delay(200)
}
if (digitalRead(button3) == HIGH)
{
delay(50)
irsend.sendRC5(0x820, 32)
delay(200)
}
}
//---------Program developed by R.Girish--------//

اردوینو وصول کنندہ:

جیسا کہ اوپر دکھایا گیا ہے IR آرڈینوو وصول کنندہ سرکٹ پر مشتمل ہے TSOP1738 سینسر کچھ ٹرانجسٹر ، موجودہ ریزی کنڈلی سے ہائی ولٹیج اسپائک جذب کرنے کے ل trans ٹرانجسٹر ، ریلے اور ڈایڈڈ کے ل res مزاحمت کار

سرکٹ ڈایاگرام خود وضاحتی ہے۔

ارڈینوو وصول کنندہ کے لئے پروگرام:

//-----------------Program developed by R.Girish-----------//
#include
int input = 11
int op1 = 8
int op2 = 9
int op3 = 10
int intitial1
int intitial2
int intitial3
IRrecv irrecv(input)
decode_results dec
#define output1 0x80C // code received from button A
#define output2 0x821 // code received from button B
#define output3 0x820 // code received from button C
void setup()
{
irrecv.enableIRIn()
pinMode(op1,1)
pinMode(op2,1)
pinMode(op3,1)
}
void loop() {
if (irrecv.decode(&dec)) {
unsigned int value = dec.value
switch(value) {
case output1:
if(intitial1 == 1) {
digitalWrite(op1, LOW)
intitial1 = 0
} else {
digitalWrite(op1, HIGH)
intitial1 = 1
}
break
case output2:
if(intitial2 == 1) {
digitalWrite(op2, LOW)
intitial2 = 0
} else {
digitalWrite(op2, HIGH)
intitial2 = 1
}
break
case output3:
if(intitial3 == 1) {
digitalWrite(op3, LOW)
intitial3 = 0
} else {
digitalWrite(op3, HIGH)
intitial3 = 1
}
break
}
irrecv.resume()
}
}
//--------------Program developed by R.Girish-----------//

مندرجہ بالا وضاحتوں پر عمل کرتے ہوئے آپ تین کنٹرول حاصل کرسکتے ہیں ، اگر آپ مزید کنٹرول شامل کرنا چاہتے ہیں تو آپ کو کوڈ اور سرکٹ ڈایاگرام میں ترمیم کرنے کی ضرورت ہے۔

آپ پروگرام میں رسیور اور ریموٹ میں غیر استعمال شدہ پنوں کے لئے آؤٹ پٹ اور ان پٹ تفویض کرسکتے ہیں اور رسیور میں متعلقہ پنوں کے لئے ٹرانجسٹر اور ریلے کی تعداد کو مربوط کرسکتے ہیں اور اسی طرح سوئچز کی تعداد کو جوڑ سکتے ہیں اور ریموٹ میں ریزٹر نیچے کھینچ سکتے ہیں۔

آپ بٹنوں کی زیادہ تعداد تفویض کرنے کے لئے بے ترتیب ہیکساڈسیسمل کوڈ استعمال کرسکتے ہیں۔

مثال کے طور پر: 0xA235 ، 0xFFFF ، 0xBA556 وغیرہ۔ اور رسیور کوڈ میں بھی اسی طرح کی ہیکساڈیسمل قدر شامل کریں۔ مثال کے طور پر: # ڈیفائن آؤٹ پٹ 0 0 ایکس اے 235 ، # ڈیفائن آؤٹ آؤٹ 5 0 ایکس ایف ایف ایف ایف اور اسی طرح کی۔

منفرد تعدد کے ساتھ IR ریموٹ کنٹرول بنانا

مذکورہ بالا حصوں میں ہم نے ایک آسان IR ریموٹ کنٹرول کے بارے میں سیکھا جو کسی بھی IR ریموٹ ٹرانسمیٹر کے ساتھ کام کرے گا۔
اگلے مضمون میں ہم سیکھیں گے کہ کس طرح گھریلو ایپلائینسز کے فول پروف کنٹرول کے ل control مذکورہ تصور کا اپ گریڈ ورژن تیار کیا جائے ، جو ایک منفرد تعدد کے ساتھ کام کرے گا اور عام IR ہینڈسیٹ کے ساتھ کبھی کام نہیں کرے گا۔

فول پروف IR ریموٹ کنٹرول

یہ سرکٹ ٹی وی ریموٹ کے غیر استعمال شدہ بٹنوں یا کسی دوسرے غیر استعمال شدہ ریموٹ کا استعمال کرتے ہوئے آپ کے گیجٹ کو آن / آف کر سکتا ہے جو عمروں سے آپ کے جنک باکس میں پڑے رہ سکتے ہیں۔

اس پروجیکٹ کا مقصد جسمانی طور پر معذور افراد کی مدد کرنا ، اور ان کو گھریلو ایپلائینسز جیسے پنکھے یا لائٹس جیسے آزادانہ طور پر آن / آف سوئچنگ تک رسائی حاصل کرنے میں مدد کرنا ہے۔

دوسرا مقصد صارف کو اپنے موجودہ مقام سے ہٹائے بغیر 'باس کی طرح' گیجٹ کو کنٹرول کرنے کے قابل بنانا ہے۔

سرکٹ ٹرانسمیٹر اور وصول کنندہ کے مابین روایتی IR پر مبنی مواصلات کو استعمال کرتا ہے۔

یہ سرکٹ دیگر IR ریموٹ ، اور دیگر IR ذرائع اور غلطیوں کا امکان کم ہونے کی وجہ سے فیصد فیصد بے وقوف ہے۔

غیر مائکرو کنٹرولر پر مبنی بڑا مسئلہ IR ریموٹ کنٹرول سرکٹ ، جو انٹرنیٹ کے ارد گرد پایا جاتا ہے ، وہ یہ ہے کہ یہ کسی بھی IR پر مبنی ریموٹ کے ساتھ آن / آف ہوسکتا ہے اور صرف ایک آلہ پر فوری طور پر کنٹرول کرسکتا ہے اور غلطیوں کا بھی زیادہ شکار ہے۔

اس سرکٹ نے اوپر بیان کردہ امور پر قابو پالیا ، اور ہم کر سکتے ہیں ایک ریموٹ پر متعدد گیجٹ کنٹرول کریں اور مخصوص گیجٹ کیلئے کلیدیں تفویض کریں۔

اس پروجیکٹ کو آگے بڑھنے سے پہلے آپ کو آرڈینو کے لئے لائبریری کی فائلوں کو ڈاؤن لوڈ کرنے کی ضرورت ہے اور یہ نیچے دیئے گئے ہدایات پر عمل کریں: github.com/z3t0/Ardino-IRremote

ہدایات:

1) دیئے گئے لنک کی تشکیل والے 'کلون یا ڈاؤن لوڈ' بٹن پر کلیک کریں اور 'ڈپ کو ڈاؤن لوڈ کریں' کو دبائیں۔

2) فائل نکالیں اور 'IRremote' فولڈر کو ارڈینو کے اپنے لائبریری فولڈر میں منتقل کریں۔

3) اپنی ارڈینو لائبریری سے 'روبوٹیریموٹ' فولڈر کو حذف کریں۔ 'روبوٹیریموٹ' میں 'آئ ریموٹ' لائبریری کی بھی ایسی ہی تعریف ہے جو تصادم کرتے ہیں اور کوڈ کو اردوینو پر اپ لوڈ نہیں کرسکتے ہیں لہذا ، حذف کرنا / ہٹانا لازمی ہے۔

مندرجہ بالا ہدایات کی نقل تیار کرکے آپ کا آردوینو IDE سافٹ ویئر کسی بھی / بیشتر IR پر منحصر منصوبوں کے لئے تیار ہے۔

ریموٹ کے لئے چابیاں تفویض کریں:

ہمارے ٹی وی ریموٹ میں ہر کلید کا انوکھا ہیکساڈسمل کوڈ ہوتا ہے ، جو اس کی شناخت کے لئے استعمال ہوتا ہے کہ آپریشن کے لئے کون سا بٹن دبائی جاتی ہے۔ ایردوینو میں حتمی کوڈ اپ لوڈ کرنے سے پہلے ، آپ کو یہ معلوم کرنا ہوگا کہ آپ کی چابیاں کے لئے ہیکساڈیسیمل کوڈ کیا ہیں۔

اس کے لئے روٹی بورڈ میں درج ذیل سرکٹ تعمیر کریں اور ہدایات پر عمل کریں۔

1) آرڈینوو IDE کھولیں اور مثال کے طور پر کوڈ 'IRrecv ڈیمو' اپ لوڈ کریں

2) سیریل مانیٹر کھولیں اور ریموٹ پر موجود کلید کو دبائیں جو آپ استعمال کرنا چاہتے ہیں۔

کلید کو دباتے ہی آپ کو ہیکساڈیسمل کوڈ پاپ اپ نظر آئے گا۔ یہی خاص کلید کا ہیکساڈیسمل کوڈ ہے۔

3) دیگر دو چابیاں کے لئے بھی ایسا ہی کریں (3 پروجیکٹ میں 3 ڈیوائسز کو کنٹرول کرنے کے لئے 3 چابیاں دی گئی ہیں)

· ہم مرکزی پروگرام میں یہ ہیکساڈیسیمل کوڈ استعمال کرنے اور آرڈینو کو اپ لوڈ کرنے جارہے ہیں۔

پروگرام:
//-----------------Program developed by R.Girish-----------//
#include
int input = 11
int op1 = 8
int op2 = 9
int op3 = 10
int intitial1
int intitial2
int intitial3
IRrecv irrecv(input)
decode_results dec
#define output1 0x111 // place your code received from button A
#define output2 0x112 // place your code received from button B
#define output3 0x113 // place your code received from button C
void setup()
{
irrecv.enableIRIn()
pinMode(op1,1)
pinMode(op2,1)
pinMode(op3,1)
}
void loop() {
if (irrecv.decode(&dec)) {
unsigned int value = dec.value
switch(value) {
case output1:
if(intitial1 == 1) {
digitalWrite(op1, LOW)
intitial1 = 0
} else {
digitalWrite(op1, HIGH)
intitial1 = 1
}
break
case output2:
if(intitial2 == 1) {
digitalWrite(op2, LOW)
intitial2 = 0
} else {
digitalWrite(op2, HIGH)
intitial2 = 1
}
break
case output3:
if(intitial3 == 1) {
digitalWrite(op3, LOW)
intitial3 = 0
} else {
digitalWrite(op3, HIGH)
intitial3 = 1
}
break
}
irrecv.resume()
}
}
//--------------Program developed by R.Girish-----------//

نوٹ:

پروگرام میں:

# وضاحتی آؤٹ پٹ 1 0 ایکس 111 // اپنے کوڈ کو بٹن A سے حاصل کریں

# وضاحتی آؤٹ پٹ 2 0 ایکس 111 // اپنے کوڈ کو بٹن B سے حاصل کریں

# وضاحتی آؤٹ پٹ 3 0x111 // اپنے کوڈ کو بٹن سی سے موصول کریں

remote اپنے دور دراز سے اپنے 3 انوکھے کوڈ 111 ، 112 ، اور 113 کی جگہ پر رکھیں اور کوڈ اپ لوڈ کریں۔ ہیکساڈیسمل کوڈ 0 سے 9 اور A سے F تک ہوں گے ، مثال کے طور پر: 20156 ، 26FE789 ، FFFFFF۔

your اپنے کوڈ کو '0x' (صفر ایکس) کے ساتھ رکھیں۔

سرکٹ ڈایاگرام:

key کلید دبانے سے ریلے کو آگے بڑھ جاتا ہے اور دوبارہ دبانے سے یہ ریلے کو بند کردے گا۔




پچھلا: قدرتی مچھر اخترشک اونٹ واٹ ریسسٹٹر کا استعمال کرتے ہوئے اگلا: گہری مٹی کی دھات کا پتہ لگانے والا سرکٹ - گراؤنڈ سکینر