شبیه سازی های درایو های الکتریکی

شبیه سازی های درایو های الکتریکی

در این وبلاگ می توانید شبیه سازی درایو های الکتریکی را دریافت نمایید
شبیه سازی های درایو های الکتریکی

شبیه سازی های درایو های الکتریکی

در این وبلاگ می توانید شبیه سازی درایو های الکتریکی را دریافت نمایید

59 شبیه سازی موتور dc و کنترل دور آن توسط کنترلر های P _ PI _ PID

بمنظور شبیه سازی موتور های DC از چند روش می توان اقدام نمودکه از جمله آنها می توان به روش های زیر اقدام نمود :

1 : بلوک آماده نرم افزار سیمولینک متلب

2 : بلوک آماده نرم افزار PSIM

3 : ترسیم بلوک دیاگرام موتور در محیط سیمولینک نرم افزار متلب

4 : کد نویسی بلوک دیاگرامی در محیط M.FILE نرم افزار متلب

 در این شبیه سازی ما از روش 3 می خواهیم استفاده کنیم :

در این مقاله ضمن ارایه فایل های m.FILE  به دانشجو، یک فایل ورد آموزشی 70 صفحه ای نیز تحویل خواهد شد.

شبیه سازی با نرم افزار متلب

مبلغ : 350,000 R

فایل آموزشی WORD  :

مبلغ : 350,000 R


30 نقشه مداری استفاده از دو کنتور در یک ساختمان

ساختمان 2 طبقه ای را در نظر بگیرید که هر دو واحد توسط یک مجموعه مدیریت می شود.

اداره برق به این ساختمان 2 کنتور اختصاص می دهد.

در صورتیکه یکی از واحد ها مصرف برق چندانی نداشته باشد و واحد دیگر مصرف بیشتری داشته باشد هزینه برق برای واحد پر مصرف تصاعدی می شود.

لذا در این مجموعه ها معمولا برای جلوگیری از تصاعدی شدن این مبلغ می توان 15 روز ابتدایی هر ماه هر دو واحد از یک کنتور برق رسانی شوند و 15 روز دوم از کنتور دیگر

این کار معمولا بصورت دستی و توسط کلید انجام می شود

حال در صورتیکه بخواهیم این کار بصورت اتوماتیک انجام شود می توان از مدار زیر استفاده نمود

تذکر :

توصیه می شود این کار برای ساختمان هایی انجام شود که هر دو فاز مجموعه یکسان باشد. ولی این طرح برای ساختمان های با 2 فاز متفاوت نیز جوابگو هست ولی توصیه نمی شود چون در صورت خطا در سیم کشی می تواند منجر به اتصالی شود.


29 : آموزش تعمیر پنل های سقفی

نمونه پنل سقفی :

در صورت سوختن ریسه این پنل ، الزاما بایستی ریسه و درایور تعویض گردند چون پیدا کردن نمونه مشابه کار سختی است

ریسه مورد استفاده در پنل 18 وات اسمی پنل ها 60 سانتی متر بوده که باید با نمونه مشابه تعویض گردد

نمونه ریسه موجود در بازار :

این نوع ریسه با نمونه های 12 ولت معمولی تفاتوت اساسی دارد در نمونه های 12 ولتی از مقاومت های کاهنده جریان استفاده می شود :

ولی در نمونه ریسه های جریانی از مقاومت خبری نیست

در شکل زیر خط منفی ( خط سبز رنگ ) از ابتدا تا انتهای مسیر عبور داده شده بدون اینکه اتصالی با هر یک از بلوک smd  ها داشته باشد


نقشه سیم کشی داخلی smd  ها را در شکل زیر می توان دید :



با ایجاد ولتاژ حدود 3 ولت بین + های ابتدایی هر بلوک پشت سر هم ، آن بلوک روشن می گردد.

حال هر بلوک با هم سری شده است.

پس بطور مثال برای روشن کردن  2 بلوک نیاز به ولتاژ تقریبی 6 ولت هستیم فقط باید توجه داشته باشید سر + و - انتهای کار را باید به هم متصل کنیم تا بلوک ها روشن شود.


هر بلوک 5 سانتی متر می باشد . برای ایجاد 60 سانتی متر ما نیازمند 12 بلوک خواهیم بود و ولتاژ مناسب برای 12 بلوک برابر خواهد بود با :

3V*12=36V

پس ما به درایورجریان ثابت ولتاژ متغیر با ولتاژ تقریبی 36 ولت نیاز داریم.

درایور 10 وات می تواند برای این ریسه مناسب باشد . اگر وات درایور را بالا ببریم احتمال سوختن ریسه وجود دارد.

جریان تولیدی درایور 10 وات 260 میلی آمپر می باشد. چون بلوک ها سری بسته شده اند، پس از هربلوک 260 میلی آمپر عبور خواهد کرد .

با توجه به اینکه هر بلوک 6 smd  دارد پس از هر smd جریان 43 میلی آمپر عبور خواهد کرد و توان هر smd  برابر خواهد بود با :

0.43A*3V=0.125W

در شکل زیر دو نمونه درایو جهت ریسه خطی 300 میلی آمپر مشاهده می کنید 

درایو 8025 که در پشت آن این عبارت درج نشده و خازن ورودی آن 10 میکرو فاراد است برای یک ریسه 1 متری مناسب می باشد

درایو 1836 که در پشت آن این عبارت درج شده و خازن ورودی آن 15 میکرو فاراد است برای یک ریسه 2 متری مناسب می باشد

درایو 7 وات و smd panel  مربوطه :

خازن ورودی درایو : 6.8 میکرفاراد و 400 ولت

خازن خروجی درایو : 22 میکرفاراد و 50 ولت






درایو 25 وات ( درایو 8025 ) و smd panel  مربوطه ( یاداوری جهت 1 متر ریسه بالا نیز همین درایو مورد استفاده قرار می گرفت ):

خازن ورودی درایو : 10 میکرفاراد و 400 ولت

خازن خروجی درایو : 2.2 میکرفاراد و 400 ولت





نمونه تعمیر شده

در این ریسه ها داریم :

طول ریسه                                                                   درایو 

40  سانتی متر                                                       4 الی 7 وات

50 سانتی متر الی 80 سانتی متر               8 الی 12 وات

1متر الی 2.5 متر                                              12 الی 20 وات


درایور مورد استفاده در هالوژن های پاور 4 تایی استفاده می شود :

V NO LOAD : 16 V

VOUT =12V , I OUT = 230 mA

ویژگی های درایو های جریان ثابت

درایو 3 وات :


درایو 5 وات :

ولتاژ بی باری :18 الی 22 ولت

ولتاژ کار : 15.3 ولت

جریان بارداری :280 میلی آمپر


درایو 7 وات :


درایو 10 وات 12 ولت :

ولتاژ بی باری :13.4 ولت

ولتاژ کار : 9 ولت

جریان بارداری :940 میلی آمپر


درایو 10 وات 30 ولت :

ولتاژ بی باری :؟  ولت

ولتاژ کار : 17.6 ولت

جریان بارداری :300 میلی آمپر


درایو 20 وات :

ولتاژ بی باری :؟  ولت

ولتاژ کار : 31 ولت

جریان بارداری :650 میلی آمپر


درایو 30 وات :

ولتاژ بی باری :47  ولت

ولتاژ کار : 30.5 ولت

جریان بارداری :940 میلی آمپر


به لحاظ کیفیت نور دهی پنل ها لازمست مشخصات آنها با یک معیاری مقایسه گردد لذا اطلاعات چند برند مشهور بصورت زیر می باشد :

پنل گرد توکار 60*60 سانتی متر 80 وات با شار نوری 6400 لومن

پنل گرد روکار 22*22 سانتی متر 42 وات با شار نوری 3150 لومن

پنل گرد روکار 219*19 سانتی متر 22 وات با شار نوری 1540 لومن




58 شبیه سازی و محاسبات پخش بار شبکه 8 باسه طبق استاندارد IEEE در نرم افزار ETAP

شبکه تحت مطالعه در این پروژه شبکه 8 باسه طبق استاندارد IEEE  می باشد :

در این پروژه محاسبات پخش بار با نرم افزار ETAP  انجام می شود و محاسبات با نرم افزار MATLAB  نیز مقایسه می گردد که نتایج تقریبا مشابهی نیز بدست می آید.

نتیجه شبیه سازی در نرم افزار ETAP :


نتیجه شبیه سازی در نرم افزار MATLAB  :

شبیه سازی با نرم افزار متلب و ETAP

مبلغ : 600,000 R

فایل آموزشی PDF  :

مبلغ : 350,000 R


28 : آموزش نمونه IC SWITCHING در منبع ولتاژ 24 ولت

در منابع ولتاژ سوییچینگ از IC SWITCHING  های مختلفی استفاده می شود که در زیر می توانید تعدادی از این IC  ها را مشاهده و دفترچه راهنمای مربوطه را دانلود نمایید:


آی سی سوییچینگ uc3843

UC3843

این IC  در منبع ولتاژ 24 ولت مورد استفاده قرار گرفته است

27 : آموزش معرفی تعدادی IC SWITCHING مدارات روشنایی SMD به همراه کاتالوگ و عکس

در مدارات روشنایی LED OR SMD با توجه به اینکه جریان ثابتی نیاز داریم IC  های سوییچینگ مورد استفاده قرار می گیرند که تعدادی از آنها را به شما معرفی می کنیم:

آی سی سوییچینگ bp3166

BP3166

این IC  در لامپ 5 وات مورد استفاده قرار گرفته است

از سری خازن های مورد استفاده در این مدار می توان به موارد زیر اشاره کرد:

6.8UF 400V

22UF50V


آی سی سوییچینگ ft8350

FT8350

این IC  در لامپ 7 وات مورد استفاده قرار گرفته است

از سری خازن های مورد استفاده در این مدار می توان به موارد زیر اشاره کرد:

10UF 400V

47UF50V


آی سی سوییچینگ jw1792

JW1792

این IC  در لامپ نمنور  9 وات مورد استفاده قرار گرفته است

از سری خازن های مورد استفاده در این مدار می توان به موارد زیر اشاره کرد:

2.8UF 400V

همین طور IC  در لامپ دی سی  9 وات مورد استفاده قرار گرفته است

از سری خازن های مورد استفاده در این مدار می توان به موارد زیر اشاره کرد:

4.7UF400V

1UF50V

1UF250V


ای سی سوییچینگ FT8353

این IC  در درایور لامپ COB PACK 10W مورد استفاده قرار گرفته است

از این درایور می توان در ریسه های SMD  واقع در پنل های سققفی به قطر 21 سانتی متر و با طول ریسه 58 سانتی متر استفاده کرد

از سری خازن های مورد استفاده در این مدار می توان به موارد زیر اشاره کرد:

10UF 400V

47UF 50V


آی سی سوییچینگ bp9916

BP9916

این IC  در لامپ   13 وات مورد استفاده قرار گرفته است

همین طور این ای سی در لامپ 12 وات نم نور استفاده شده

از سری خازن های مورد استفاده در این مدار می توان به موارد زیر اشاره کرد:

4.4UF 400V

2.2UF 400V



 آی سی سوییچینگ bp2836

BP2836

این IC  در لامپ نمنور  18 وات مورد استفاده قرار گرفته است

از سری خازن های مورد استفاده در این مدار می توان به موارد زیر اشاره کرد:

10UF 400V

4.7UF50V

4.7UF400V


آی سی سوییچینگ 72yl

72YL

این IC  در لامپ نورا  20 وات مورد استفاده قرار گرفته است

از سری خازن های مورد استفاده در این مدار می توان به موارد زیر اشاره کرد:

5.6UF 400V

6.8UF400V

5.6UF400V


ای سی سوییچینگ BP3167

BP3167

این IC  جهت درایور لامپ COB PACK 20W مورد استفاده قرار گرفته است

از سری خازن های مورد استفاده در این مدار می توان به موارد زیر اشاره کرد:

22UF 400V

68UF100V



آی سی سوییچینگ ws3442

WS3442

این IC  در لامپ   21 وات مورد استفاده قرار گرفته است

از سری خازن های مورد استفاده در این مدار می توان به موارد زیر اشاره کرد:

10UF 400V

2.2UF50V

4.7UF250V


آی سی سوییچینگ ws9002

WS9002

از سری خازن های مورد استفاده در این مدار می توان به موارد زیر اشاره کرد:

2.2UF 400V

6.8UF 400V


آی سی سوییچینگ ws9445

WS9445

این IC  در لامپ   30 وات مورد استفاده قرار گرفته است

از سری خازن های مورد استفاده در این مدار می توان به موارد زیر اشاره کرد:

22UF 400V

68UF400V

2.2UF50V


آی سی سوییچینگ 1710

1710

این IC  در درایور لامپ   30 وات مورد استفاده قرار گرفته است همراه با این IC  از یک MOSFET CM4N60F  استفاده شده است.


ماسفت cm4n60f

CM4N60F

از سری خازن های مورد استفاده در این مدار می توان به موارد زیر اشاره کرد:

22UF 400V

330UF50V

10UF50V


دانلود دفترچه راهنمای چیلر aux

چیلر های aux  معمولا در دو مدل زیر ارایه می شوند:

ACMH  H65

ACMH H30

که کاتالوگ مربوط به دفترچه راهنما را می توانید از زیر دانلود نمایید:

دانلود کاتالوگ

نکات مهم:

ارور 5 زمانی ایجاد می شود که یکی از فاز ها موجود نباشد و یا جابجایی فاز داشته باشیم

در این حالت ارور 69 نیز ظاهر می گردد

حال پس از رفع ایراد بمنظور ریست شدن و راه اندازی مجدد حتما بایستی ارور های ققبلی پاک شود

ارور 67 و 68 نیز زمانی رخ می دهد که به هر دلیلی سرمایش چیلر بیش از حد شده باشد

می تواند از وجود هوا در مسیر آب در گردش باشد

یا خاموشی پمپ سیرکولاتور

بمنظور جلوگیری از سرمایش بیش از حد لو له های مسی خودکار دستور stop  صادر می شود




کلید واژه نشریه 110

کلید واژه راهنمای تصویری نشریه 110




دانلود بخش رایگان کلید واژه

هزینه دانلود کلیدواژه  20000 تومان

برای تهیه کامل کلید  واژه با شماره بالا تماس بگیرید

سوالات و پاسخنامه آزمون نظام مهندسی برق نظارت ۱۴۰۱

سوالات و پاسخنامه آزمون نظام مهندسی برق نظارت ۱۴۰۱ پارت 1




مبلغ جزوه : 15000 ت

26 : آموزش راه اندازی چیلر تراکمی بصورت آنالوگ



در این مقاله، می خواهیم نقشه راه اندازی یک چیلر بصورت نیمه آنالوگ را نمایش دهیم.

لازمست جهت این کار از یک میکرو کنترلر یا یک مینی PLC  جهت ایجاد تاخیر های لازم استفاده شود

لازم بذکر است در این مدار نیاز به دو شاسی NO یکی جهت استارت و دیگری جهت استوپ می باشد

پس از زدن استارت باید رله خروجی 1 میکرو فعال شود  که منجر به روشن شدن پمپ می شود و پس از 10 ثانیه رله خروجی 2  وارد مدار می شود که منجر به روشن شده کمپرسور مدار می شود

پس از روشن شدن کمپرسور 1 ، بایستی از یک رله تاخیر در وصل استفاده شود که پس از 10 ثانیه کمپرسور 2 را وارد مدار کند.

با زدن شاسی استوپ ، رله خروجی 2 بلافاصله قطع می شود منجر به خاموش شدن کمپرسور ها و فن می شود و پس از گذشت 10 دقیقه باید رله خروجی 1 خاموش شود.

علت این امر این است زمانیکه دمای آب چیلر روی 10 درجه سانتی گراد به پایین قرار گیرد دمای خود گاز بسیار پایین تر است لذا اگر پمپ خاموش شود منجر به یخ زدن آب شده و نهایتا لوله ها ی داخلی ممکن است آسیب جدی ببیند.




25 آموزش راه اندازی lcd کاراکتری با i2c و آردوینو

در این جلسه قصد داریم آموزش راه اندازی lcd کاراکتری با i2c و آردوینو رو آموزش بدیم.

در این آموزش ما فقط با 2 سیم و با کمک ماژول i2c lcd راه اندازی میکنیم و  باید به این نکته اشاره کنم که تابع هایی که استفاده میکنیم با آموزش راه اندازی lcd کاراکتری با آردوینو تفاوتی ندارن (بجز چند مورد که در ادامه توضیح میدم) پس فقط نوع ارتباطمون و کتابخونه مورد استفادمون متفاوته.

کتابخونه راه اندازی lcd کاراکتری با i2c

دانلود کتابخانه


گفتیم که نوع ارتباطمون متفاوته و از I2C استفاده میکنیم پس لازمه که از 2 معرفی زیر استفاده کنیم:

 

#include <Wire.h>

#include <LiquidCrystal_I2C.h>


و برای تعریف سطر و ستون ها در حلقه setup باید از کد زیر استفاده کنیم:

LiquidCrystal_I2C lcd(0x3F,16,2);
البته آدرس ها ممکن است یکی از این دسته باشند :

LiquidCrystal_I2C lcd(0x27,16,2);////////FOR REAL LCD
LiquidCrystal_I2C lcd(0x20,16,2);/////FOR PROTEUS LCD

در آموزش i2c در آردوینو گفتیم میشه روی این 2 خط سیم چند ماژول ، قطعه یا هر وسیله ای که قابلیت ارتباط i2c دارن رو قرار داد.


در پروتکل i2c هر قطعه یک آدرس داره ، عدد اولی که قبل از سطر و ستون (16 ستون و 2 سطر) قرار داره آدرس lcd هست، در ماژولی که من دارم این مقدار 0x3F هستش.

 

ماژول های بازار 2 مدل هستن  PCF8574A که جدید تره و آدرسش 0x3F هست و مدل های قدیمی که PCF8574  بودن و آدرسشون 0x27 بود .


 

اگر هم ماژول رو خودتون درست کردین باید طبق نکته زیر این عدد رو ایجاد کنید


PCF8574 PinOut


تصویر بالا شکل پایه های PCF8574  هستش ، پایه های A0وA1وA2 رو اگر زمین کنین یا به vcc وصل کنین ، طبق جدول زیر میتونین مقدار آدرس اون رو تغییر بدین:(بر حسب high یا low بودن از بخش هگزادسیمال باید عدد رو انتخاب کنین)

 

برای PCF8574

pcf8574 i2c

و برای PCF8574A

pcf8574a i2c


برای هر ال سی دی باید کلاس خودشو تعریف کنین(به همین خاطر میتونین چند تا ال سی دی هم وصل کنین)

 

مثلا :

lcd.init();

و اگر 2 تا lcd داشتین:

lcd1.init();

lcd2.init();

 

چون اینجا نور پس زمینه (backlight) رو هم با ic کنترل میکنیم در نتیجه با دستور های زیر میتونیم خاموش و روشنش کنیم:

lcd.backlight();

lcd.noBacklight();

 

پروژه راه اندازی lcd کاراکتری با i2c و آردوینو

برای انجام پروژه هم طبق آموزش بخش i2c باید از سخت افزار زیر استفاده کنیم:




و اگر پایه های ماژول رو لحیم کنین به این شکل در میاد

پروژه اول:

برای نوشتن یک خط روی ال سی دی از کد زیر استفاده میکنیم:

 

#include <Wire.h>

#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x3F,16,2);

void setup()

{

  lcd.init();

  lcd.backlight();

  lcd.print("Levinic.ir");

  delay(2000);

  lcd.noBacklight();

}

void loop(){}

 

 

 

پروژه 2:

 

و یا برای نمایش متن دریافتی از ارتباط سریال آردوینو میتونیم از پروژه زیر استفاده کنیم: ( هر متنی از طریق ارتباط سریال بفرستین روی ال سی دی نمایش داده میشه!)

#include <Wire.h>

#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x3F, 16, 2);

void setup() {

lcd.begin();

lcd.backlight();

Serial.begin(9600);

}

void loop() {

if (Serial.available()) {

delay(100);

lcd.clear();

while (Serial.available() > 0) {

lcd.write(Serial.read());

}

}

}

 

پروژه 3 :

و پروژه آخر هم برای اتصال 2 تا lcd :

توی این پروژه فقط دقت کنین که آدرس هر lcd باید متفاوت باشه :

 

#include <Wire.h>

#include <LiquidCrystal_I2C.h>

 

LiquidCrystal_I2C lcd1(0x3F,16,2);

LiquidCrystal_I2C lcd2(0x38,16,2);

void setup()

{

  lcd1.init();

  lcd2.init();

 

  lcd1.backlight();

  lcd2.backlight();

  

  lcd1.print("Levinic");

  lcd2.print("Arduino is sweet");

}

void loop(){}

 

 

منبع :

http://levinic.ir/character-lcd-with-i2c-and-arduino/


24 آموزش راه اندازی سنسور VL53L0X

این سنسور در دو مدل تولید می شود :

مدل اول دارای پین های ارسال دیتا از دو طریق   سریال و   i2c می باشد.

مدل دوم فقط از طریق i2c  ارسال دیتا دارد.

ماژول متر لیزری VL53L0X با پرتاب اشعه مادون قرمز و دریافت این امواج پس از برخورد با اجسام ، از طریق محاسبه مدت زمان رفت و برگشت اشعه فاصله را اندازه گیری می کند. این ماژول توانایی اندازه گیری تا فاصله ۲ متر با دقت ۱ میلیمتر در شرایط مطلوب را دارد. ولتاژ کاری این ماژول ۲٫۶ تا ۵٫۵ ولت بوده واز طریق پروتکل I2C با میکروکنترلر ها ارتباط برقرار می کند.

 

شرح پایه های ماژول:

  • پایه GND زمین
  • پایه VCC تغذیه مثبت
  • پایه SCL و SDA ارتباط I2C
  • پایه XSHUT مربوط به Enable ماژول

Description:

The VL53L0X uses ST’s FlightSense technology to precisely measure how long it takes for emitted pulses of infrared laser light to reach the nearest object and to be reflected back to a detector. It can be considered a tiny, self-contained lidar system. This time-of-flight (TOF) measurement enables it to accurately determine the absolute distance to a target without the object’s reflectance influencing the measurement. The sensor can report distances of up to 2 m (6.6 ft) with 1 mm resolution, but its effective range and accuracy (noise) depend heavily on ambient conditions and target characteristics like reflectance and size, as well as the sensor configuration (the sensor’s accuracy is specified to range from ±۳% at best to over ±۱۰% in less optimal conditions).

Ranging measurements are available through the sensor’s I⊃۲;C (TWI) interface, which is also used to configure sensor settings, and the sensor provides two additional pins: a shutdown input and an interrupt output.

The VL53L0X is a great IC, but its small, leadless, LGA package makes it difficult for the casual hobbyist to use. It also operates at a recommended voltage of 2.8 V, which can make interfacing difficult for microcontrollers operating at 3.3 V or 5 V. Our breakout board addresses these issues, making it easier to get started using the sensor, while keeping the overall size as small as possible.

PIN descriptions: VDD: Regulated 2.8 V output. Almost 150 mA is available to power external components (If you want to bypass the internal regulator, you can instead use this pin as a 2.8 V input with VIN disconnected).

VIN: This is the main 2.6 V to 5.5 V power supply connection. The SCL and SDA level shifters pull the I⊃۲;C lines high to this level.

GND: The ground (0 V) connection for your power supply. Your I⊃۲;C control source must also share a common ground with this board.

SDA: Level-shifted I⊃۲;C data line: HIGH is VIN, LOW is 0 V

SCL: Level-shifted I⊃۲;C clock line: HIGH is VIN, LOW is 0 V

XSHUT: This pin is an active-low shutdown input; the board pulls it up to VDD to enable the sensor by default. Driving this pin low puts the sensor into hardware standby. This input is not level-shifted.



 

ادامه مطلب ...

23 آموزش نحوه سیم بندی فن کویل

در این آموزش نحوه سیم کشی داخلی فن کویل به همراه نحوه تشخیص سیم کشی در صورتیکه به نقشه دسترسی نداشته باشیم آموزش داده می شود :

این مدل سیم بندی مربوط به فن کویل آذر نامی بوده و الزامی را برای سایر فن کویل ها ایجاد نمی کند.

مقاومت اهمی قرایت شده :


مقاومت اهمی رنگ سیم
337 سفید آبی
271 قرمز آبی
200 مشکی آبی
70 سفید قرمز
70 مشکی قرمز
143 مشکی سفید


دور موتور رنگ سیم
کند سفید
متوسط قرمز
تند مشکی

بیشترین اهم مربوط به نول - دور کند می باشد

اهم کمتر از مرحله قبل مربوط به نول -  دور متوسط می باشد

اهم کمتر از مرحله قبلی نیز مربوط به نول -  دور تند می باشد

اهم کمتر از مرحله قبلی نیز مربوط به دور متوسط -  دور تند می باشد

70 اهم ، کمترین اهم در دو سیم بندی قرایت شده که در آن  سر مشترک ( قرمز )  سر دور متوسط می باشد.



نکته : بعضا مشاهده شده نول را مشکی نیز می گیرند لذا فقط نول ممکن است در بعضی فن کویل ها آبی و یا مشکی باشد/



56 : شبیه سازی کانتر شمارش پالس توسط آردویینو



در این شبیه سازی از وقفه خارجی INT0  در اردویینو U9 جهت شمارش استفاده شده است

دستور وقفه بفرم زیر است :

attachInterrupt(interrupt, ISR, mode);

 

interrupt : شماره وقفه ای که میخواین ازش استفاده کنید، دو تا وقفه داریم، وقفه ۰ و ۱ (جدول بالا)
mode :
توسط این قسمت نوع تحریک شدن وقفه رو تعیین میکنیم، مثلا به ازای هر تغییر ولتاژی(CHANGE) وقفه رخ بده یا وقتی ولتاژ ۰ منطقی هستش(LOW) یا وقتی که ولتاژ ۱ منطقی هستش(HIGH) یا وقتی که از ۰ منطقی میریم به ۱ منطقی(RISING) و یا برعکس(FALLING)…..این کلمات پر رنگ رو بسته به نیازتون یکیشون و در mode قرار بدید.
ISR :
نام تابع وقفه، این نام اختیاری هستش، فقط شما این نامی که این جا میدید رو باس یه تابع تعریف کنید با این نام و کد هایی که دوس دارید در صورت تحریک شدن وقفه اجرا بشن رو توش قرار بدید.

 

لازم بذکر است که LCD  در این مدار I2C بوده و شکل مداری آن بفرم زیر است :

 


از کد زیر می توان جهت پیدا کردن آدرس تجهیز i2c استفاده کرد :

/*I2C_scanner

  This sketch tests standard 7-bit addresses.

  Devices with higher bit address might not be seen properly.*/

 

#include <Wire.h>

 

void setup() {

  Wire.begin();

 

  Serial.begin(9600);

  while (!Serial);

  Serial.println("\nI2C Scanner");

}

 

void loop() {

  byte error, address;

  int nDevices;

 

  Serial.println("Scanning...");

 

  nDevices = 0;

  for (address = 1; address < 127; address++ ) {

    Wire.beginTransmission(address);

    error = Wire.endTransmission();

 

    if (error == 0) {

      Serial.print("I2C device found at address 0x");

      if (address < 16)

        Serial.print("0");

      Serial.print(address, HEX);

      Serial.println("  !");

 

      nDevices++;

    }

    else if (error == 4) {

      Serial.print("Unknown error at address 0x");

      if (address < 16)

        Serial.print("0");

      Serial.println(address, HEX);

    }

  }

  if (nDevices == 0)

    Serial.println("No I2C devices found\n");

  else

    Serial.println("done\n");

 

  delay(5000);

}



شبیه سازی با نرم افزار PROTEUS & ARDUINO

  قیمت 15000 ت


22 : آموزش رسم منحنی موتور القایی در متلب

رسم منحنی گشتاور سرعت ماشین القایی
به نحوه نگارتش برنامه توجه کافی داشته باشید
حاوی نکات مهم برنامه نویسی پیشرفته متلب

% M-file: torque_speed_curve.m
% M-file create a plot of the torque-speed curve of the
% induction motor of Example 7-5.
% First, initialize the values needed in this program.
r1 = 0.641; % Stator resistance
x1 = 1.106; % Stator reactance
r2 = 0.332; % Rotor resistance
x2 = 0.464; % Rotor reactance
xm = 26.3; % Magnetization branch reactance
v_phase = 460 / sqrt(3); % Phase voltage
n_sync = 1800; % Synchronous speed (r/min)
w_sync = 188.5; % Synchronous speed (rad/s)
% Calculate the Thevenin voltage and impedance from Equations
% 7-41a and 7-43.
v_th = v_phase * ( xm / sqrt(r1^2 + (x1 + xm)^2) );
z_th = ((j*xm) * (r1 + j*x1)) / (r1 + j*(x1 + xm));
r_th = real(z_th);
x_th = imag(z_th);
% Now calculate the torque-speed characteristic for many
% slips between 0 and 1. Note that the first slip value
% is set to 0.001 instead of exactly 0 to avoid divide-
% by-zero problems.
s = (0:1:50) / 50; % Slip
s(1) = 0.001;
nm = (1 - s) * n_sync; % Mechanical speed
% Calculate torque for original rotor resistance
for ii = 1:51
t_ind1(ii) =(3 * v_th^2 * r2)./((w_sync.*s(ii).*((r_th+(r2./s(ii)).^2 + (x_th+x2)^2));
end
% Calculate torque for doubled rotor resistance
% Plot the torque-speed curve
plot(nm,t_ind1,'Color','k','LineWidth',2.0);
hold on;
xlabel('\itn_{m}','Fontweight','Bold');
ylabel('\tau_{ind}','Fontweight','Bold');
title ('Induction Motor Torque-Speed Characteristic','Fontweight','Bold');
legend ('Original R_{2}','Doubled R_{2}');
grid on;
hold off;

21 : آموزش راه اندازی سخت افزاری sim800L

بمنظور راه اندازی ماژول sim800L و ارتباط فیزیکی آن به ماژول آردویینو به مدار ابتدایی نیاز است لذا در این آموزش نحوه اتصال به همراه نحوه رفع عیوب احتمالی شرح داده شده است.



20 آموزش : تحلیل آزمون نظام مهندسی نظارت 95

تحلیل آزمون نظام مهندسی  نظارت 95










55 : پخش بار و شبیه سازی شبکه 4 باسه توسط نرم افزار ETAP

نرم افزار ETAP یکی از نرم افزار های پیشرفته در زیمینه طراحی خطوط  انتقال قدرت بوده که پخش بار یکی از این قابلیت ها می باشد.

در این مقاله یک سیستم سه فاز قدرت 4 باسه توسط این نرم افزار پیاده سازی و سپس ران گیری شده و نتایج حالت های مختلف با هم مقایسه می گردند.

شبکه تحت بررسی :


به همراه این فایل شبیه سازی یک فایل PDF  نیز که حاوی مراحل انجام شبیه سازی می باشد قرار دارد.

شبیه سازی با نرم افزار ETAP

 45000 ت

20 آموزش ساخت ریموت کنترل تلویزیون توسط آردویینو ARDUINO

در بازار ریموت هایی تولید شده که قابلیت کپی کردن ریموت را دارد و بلحاظ کارایی ، جایگاه ویژه ای برای خود در بازار، باز کرده است. نمونه ای از این ریموت ها را در شکل زیر مشاهده می نمایید :

در این آموزش می خواهیم اساس کارکرد این کنترل ها را بررسی نماییم.

دریافت کننده ریموت کنترل

ارتباطات اینفرارد INFRARED ( IR )  به طور گسترده در صنعت کنترل تلویزیون کاربر دارد.توسط گیرنده و فرستنده IR  شما می توانید پروژه های آردویینو را برنامه نویسی و نهایتا آنرا بسازید. قبل از برنامه نویسی لازمست در مورد اینفرارد توضیحاتی بدهیم :

اینفرارد چیست ؟

تابش اینفرارد فرمی از نور است همانند آن نوری که در محیط اطراف ماست.تنها تفاوت بین نور IR و نور مرئی در فرکانس و طول موج است. تابش مادون قرمز خارج از محدوده نور مرئی قرار دارد، بنابراین انسان نمی تواند آن را ببیند

از آنجایی که IR یک نوع نور است، ارتباط IR نیاز به یک خط دید مستقیم از گیرنده به فرستنده دارد. نمی تواند از طریق دیوارها یا سایر مواد مانند WiFi یا بلوتوث منتقل شود.

نحوه عملکرد ریموت ها و گیرنده های IR

یک سیستم ارتباطی معمولی مادون قرمز به یک فرستنده IR و یک گیرنده IR نیاز دارد. فرستنده دقیقاً مانند یک LED استاندارد به نظر می رسد، با این تفاوت که به جای طیف مرئی، نور را در طیف IR تولید می کند. اگر نگاهی به جلوی کنترل از راه دور تلویزیون بیندازید، LED فرستنده IR را خواهید دید:

از همین نوع LED در بردهای شکست فرستنده IR برای آردوینو استفاده می شود. می توانید آن را در جلوی این فرستنده IR Keyes ببینید:

گیرنده IR یک فتودیود و پیش تقویت کننده است که نور مادون قرمز را به سیگنال الکتریکی تبدیل می کند. دیودهای گیرنده IR معمولاً به شکل زیر هستند:

مدولاسیون سیگنال IR

نور مادون قرمز توسط خورشید، لامپ ها و هر چیز دیگری که گرما تولید می کند ساطع می شود. این بدان معناست که نویز نور IR زیادی در اطراف ما وجود دارد. برای جلوگیری از تداخل این نویز با سیگنال IR، از تکنیک مدولاسیون سیگنال استفاده می شود. در مدولاسیون سیگنال IR، یک رمزگذار روی کنترل از راه دور IR یک سیگنال باینری را به یک سیگنال الکتریکی مدوله شده تبدیل می کند. این سیگنال الکتریکی به LED فرستنده ارسال می شود. LED فرستنده سیگنال الکتریکی مدوله شده را به سیگنال نور مادون قرمز مدوله شده تبدیل می کند. سپس گیرنده IR سیگنال نور مادون قرمز را دمدوله می کند و قبل از اینکه اطلاعات را به یک میکروکنترلر ارسال کند، آن را به باینری تبدیل می کند:



سیگنال IR مدوله شده مجموعه ای از پالس های نور مادون قرمز است که با فرکانس بالا به نام فرکانس حامل روشن و خاموش می شوند. فرکانس حامل استفاده شده توسط اکثر فرستنده ها 38 کیلوهرتز است، زیرا در طبیعت نادر است و بنابراین می توان آن را از نویز محیط متمایز کرد. به این ترتیب گیرنده IR متوجه خواهد شد که سیگنال 38 کیلوهرتز از فرستنده ارسال شده و از محیط اطراف دریافت نشده است. دیود گیرنده تمام فرکانس های نور IR را تشخیص می دهد، اما دارای یک فیلتر باند گذر است و فقط در فرکانس 38 کیلوهرتز از IR عبور می کند. سپس سیگنال مدوله شده را با یک پیش تقویت کننده تقویت می کند و قبل از ارسال آن به میکروکنترلر، آن را به سیگنال باینری تبدیل می کند.


پروتکل های انتقال IR

الگویی که در آن سیگنال IR مدوله شده به باینری تبدیل می شود توسط یک پروتکل انتقال تعریف می شود. پروتکل های انتقال IR زیادی وجود دارد. سونی، ماتسوشیتا، NEC و RC5 برخی از پروتکل های رایج هستند. پروتکل NEC نیز رایج ترین نوع در پروژه های آردوینو است، بنابراین من از آن به عنوان مثال استفاده می کنم تا به شما نشان دهم که چگونه گیرنده سیگنال مادون قرمز مدوله شده را به یک باینری تبدیل می کند. «1» منطقی با یک پالس IR به طول 562.5 میکروثانیه با فرکانس IR 38 کیلوهرتز و سپس یک پالس LOW با طول 1687.5 میکرو ثانیه شروع می‌شود. "0" منطقی با یک پالس HIGH 562.5 میکروثانیه و به دنبال یک پالس LOW با طول 562.5 µs ارسال می شود:


به این صورت است که پروتکل NEC داده های باینری را به یک سیگنال مدوله شده رمزگذاری و رمزگشایی می کند. پروتکل های دیگر فقط در مدت زمان تک تک پالس های HIGH و LOW متفاوت هستند. کدهای IR هر بار که دکمه ای را بر روی کنترل از راه دور فشار می دهید، یک کد هگزادسیمال منحصر به فرد ایجاد می شود. این اطلاعاتی است که مدوله شده و از طریق IR به گیرنده ارسال می شود. برای اینکه بفهمد کدام کلید فشرده شده است، میکروکنترلر گیرنده باید بداند کدام کد مربوط به هر کلید روی کنترل از راه دور است. ریموت‌های مختلف کدهای متفاوتی را برای فشار دادن کلیدها ارسال می‌کنند، بنابراین باید کد تولید شده برای هر کلید را روی کنترل از راه دور خاص خود تعیین کنید. اگر می توانید دیتاشیت را پیدا کنید، کدهای کلید IR باید فهرست شوند. اگر نه، یک طرح ساده آردوینو وجود دارد که اکثر کنترل های از راه دور محبوب را می خواند و با فشار دادن یک کلید، کدهای هگزا دسیمال را روی نمایشگر سریال چاپ می کند. من به شما نشان خواهم داد که چگونه آن را در یک دقیقه تنظیم کنید، اما ابتدا باید گیرنده را به آردوینو وصل کنیم… نحوه اتصال گیرنده IR به آردوینو انواع مختلفی از گیرنده های IR وجود دارد، برخی به صورت مستقل هستند و برخی بر روی یک برد شکسته نصب می شوند. برگه اطلاعات گیرنده IR خاص خود را بررسی کنید زیرا ممکن است پین ها متفاوت از گیرنده IR HX1838 و مجموعه راه دوری که من در اینجا استفاده می کنم ترتیب داده شوند.

با این حال، تمام گیرنده های IR دارای سه پایه هستند: سیگنال، زمین و Vcc. بیایید با اتصالات سخت افزاری شروع کنیم. چیدمان پین در اکثر تابلوهای شکست مانند این است:

پین اوت اکثر دیودهای مستقل به شرح زیر است:

برای اتصال گیرنده مادون قرمز برروی برد، آن را به صورت زیر به آردوینو متصل کنید:

برنامه نویسی گیرنده IR هنگامی که گیرنده را وصل کردید، می توانیم کتابخانه آردوینو را نصب کرده و برنامه نویسی را شروع کنیم. در مثال‌های زیر به شما نشان می‌دهم که چگونه کدهای ارسال شده توسط ریموت خود را پیدا کنید، چگونه پروتکل IR مورد استفاده توسط ریموت خود را پیدا کنید، چگونه فشارهای کلیدی را روی نمایشگر سریال یا LCD چاپ کنید و در نهایت، چگونه کنترل کنید. پین های خروجی آردوینو با ریموت. کتابخانه IRremote را نصب کنید ما از کتابخانه IRremote برای همه نمونه کدهای زیر استفاده خواهیم کرد. شما می توانید فایل ZIP کتابخانه را از اینجا دانلود کنید.

برای نصب کتابخانه از فایل ZIP، Arduino IDE را باز کنید، سپس به Sketch > Include Library > Add .ZIP Library بروید، سپس فایل ZIP IRremote را که از لینک بالا دانلود کرده اید انتخاب کنید. کدهای مربوط به ریموت خود را پیدا کنید برای پیدا کردن کدهای کلیدی برای کنترل از راه دور، این کد را در آردوینو خود آپلود کنید و مانیتور سریال را باز کنید:


#include <IRremote.h>

const int RECV_PIN = 7;
IRrecv irrecv(RECV_PIN);
decode_results results;

void setup(){
  Serial.begin(9600);
  irrecv.enableIRIn();
  irrecv.blink13(true);
}

void loop(){
  if (irrecv.decode(&results)){
        Serial.println(results.value, HEX);
        irrecv.resume();
  }
}
حالا هر کلید را روی ریموت فشار دهید و کد هگزادسیمال چاپ شده برای هر کلید را ضبط کنید.

با استفاده از برنامه بالا، جدولی از کلیدها و کدهای مربوط به آنها را از کنترلی که با گیرنده مادون قرمز و مجموعه راه دور HX1838 ارائه شده بود، استخراج کردم. توجه داشته باشید که با فشار دادن مداوم یک کلید، یک کد 0XFFFFFFFF دریافت خواهید کرد.

 Key Code
 CH- 0xFFA25D
 CH 0xFF629D
 CH+ 0xFFE21D
 << 0xFF22DD
 >> 0xFF02FD
 >|| 0xFFC23D
 – 0xFFE01F
 + 0xFFA857
 EQ 0xFF906F
 100+ 0xFF9867
 200+ 0xFFB04F
 0 0XFF6897
 1 0xFF30CF
 2 0xFF18E7
 3 0xFF7A85
 4 0xFF10EF
 5 0xFF38C7
 6 0xFF5AA5
 7 0xFF42BD
 8 0xFF4AB5
 9 0xFF52AD

پروتکل مورد استفاده توسط ریموت خود را پیدا کنید

اگر می‌خواهید روی پروژه‌های پیشرفته‌تری کار کنید، دانستن اینکه ریموت شما از کدام پروتکل استفاده می‌کند می‌تواند مفید باشد. یا ممکن است فقط کنجکاو باشید. برنامه زیر پروتکل مورد استفاده توسط ریموت شما را شناسایی می کند. حتی باید روی اکثر کنترل های از راه دور خانه شما کار کند.

#include <IRremote.h>

const int RECV_PIN = 7;
IRrecv irrecv(RECV_PIN);
decode_results results;

void setup(){
  Serial.begin(9600);
  irrecv.enableIRIn();
  irrecv.blink13(true);
}

void loop(){
  if (irrecv.decode(&results)){
        Serial.println(results.value, HEX);
        switch (results.decode_type){
            case NEC: Serial.println("NEC"); break ;
            case SONY: Serial.println("SONY"); break ;
            case RC5: Serial.println("RC5"); break ;
            case RC6: Serial.println("RC6"); break ;
            case DISH: Serial.println("DISH"); break ;
            case SHARP: Serial.println("SHARP"); break ;
            case JVC: Serial.println("JVC"); break ;
            case SANYO: Serial.println("SANYO"); break ;
            case MITSUBISHI: Serial.println("MITSUBISHI"); break ;
            case SAMSUNG: Serial.println("SAMSUNG"); break ;
            case LG: Serial.println("LG"); break ;
            case WHYNTER: Serial.println("WHYNTER"); break ;
            case AIWA_RC_T501: Serial.println("AIWA_RC_T501"); break ;
            case PANASONIC: Serial.println("PANASONIC"); break ;
            case DENON: Serial.println("DENON"); break ;
          default:
            case UNKNOWN: Serial.println("UNKNOWN"); break ;
          }
        irrecv.resume();
 }
}

کلیدهای مانیتور سریال را چاپ کنید

 من کد بالا را گسترش دادم تا مقدار کلید را به جای کد هگزادسیمال چاپ کنم:

#include <IRremote.h>

const int RECV_PIN = 7;
IRrecv irrecv(RECV_PIN);
decode_results results;
unsigned long key_value = 0;

void setup(){
  Serial.begin(9600);
  irrecv.enableIRIn();
  irrecv.blink13(true);
}

void loop(){
  if (irrecv.decode(&results)){
 
        if (results.value == 0XFFFFFFFF)
          results.value = key_value;

        switch(results.value){
          case 0xFFA25D:
          Serial.println("CH-");
          break;
          case 0xFF629D:
          Serial.println("CH");
          break;
          case 0xFFE21D:
          Serial.println("CH+");
          break;
          case 0xFF22DD:
          Serial.println("|<<");
          break;
          case 0xFF02FD:
          Serial.println(">>|");
          break ;  
          case 0xFFC23D:
          Serial.println(">|");
          break ;               
          case 0xFFE01F:
          Serial.println("-");
          break ;  
          case 0xFFA857:
          Serial.println("+");
          break ;  
          case 0xFF906F:
          Serial.println("EQ");
          break ;  
          case 0xFF6897:
          Serial.println("0");
          break ;  
          case 0xFF9867:
          Serial.println("100+");
          break ;
          case 0xFFB04F:
          Serial.println("200+");
          break ;
          case 0xFF30CF:
          Serial.println("1");
          break ;
          case 0xFF18E7:
          Serial.println("2");
          break ;
          case 0xFF7A85:
          Serial.println("3");
          break ;
          case 0xFF10EF:
          Serial.println("4");
          break ;
          case 0xFF38C7:
          Serial.println("5");
          break ;
          case 0xFF5AA5:
          Serial.println("6");
          break ;
          case 0xFF42BD:
          Serial.println("7");
          break ;
          case 0xFF4AB5:
          Serial.println("8");
          break ;
          case 0xFF52AD:
          Serial.println("9");
          break ;      
        }
        key_value = results.value;
        irrecv.resume(); 
  }
}

اگر ریموت شما کدهای متفاوتی با کدهای جدول بالا ارسال می کند، کافی است کد هگز را در هر خطی که می گوید:

case 0xFFA25D:
Serial.println(“CH-“);
در این خطوط، زمانی که کد هگز 0xFFA25D دریافت می شود، آردوینو "CH-" را چاپ می کند. کد چگونه کار می کند برای هر ارتباط IR با استفاده از کتابخانه IRremote، ابتدا باید یک شی به نام irrecv ایجاد کنیم و شماره پین ​​محل اتصال گیرنده IR را مشخص کنیم (خط 3). این شی از پروتکل و پردازش اطلاعات از گیرنده مراقبت می کند. مرحله بعدی ایجاد یک شی به نام results، از کلاس decode_results است که توسط شی irrecv برای به اشتراک گذاشتن اطلاعات رمزگشایی شده با برنامه ما استفاده می شود (خط 5). در بلوک void setup() ابتدا نرخ باود مانیتور سریال را پیکربندی می کنیم. سپس گیرنده IR را با فراخوانی تابع عضو IRrecv enableIRIn() (خط 10) شروع می کنیم. عملکرد irrecv.blink13 (true) در خط 11 هر بار که گیرنده سیگنالی از کنترل از راه دور دریافت می کند، LED آردوینو را چشمک می زند که برای اشکال زدایی مفید است. در بلوک void loop() تابع irrecv.decode در صورت دریافت کد true برمی گردد و برنامه کد را در دستور if اجرا می کند. کد دریافتی در results.value ذخیره می شود. سپس از یک سوئیچ برای مدیریت هر کد IR و چاپ مقدار کلید مربوطه استفاده کردم. قبل از شروع بلوک سوئیچ یک بلوک شرطی وجود دارد:

if (results.value == 0XFFFFFFFF)
results.value = key_value;

اگر 0XFFFFFFFF را از ریموت دریافت کنیم به معنای تکرار کلید قبلی است. بنابراین برای مدیریت الگوی کلید تکرار، هر بار که یک کد دریافت می‌شود، کد هگز را در یک متغیر جهانی key_value ذخیره می‌کنم: key_value = results.value; هنگامی که یک الگوی تکرار دریافت می کنید، سپس مقدار ذخیره شده قبلی به عنوان فشار کلید فعلی استفاده می شود. در انتهای بخش void loop() irrecv.resume() را فراخوانی می کنیم تا گیرنده ریست شود و برای دریافت کد بعدی آماده شود.


چاپ کلیدهای LCD به جای چاپ مقادیر کلیدی در مانیتور سریال، می توانید اطلاعات را روی LCD نیز نمایش دهید. برای اطلاعات بیشتر در مورد برنامه نویسی LCD، مقاله ما را در مورد راه اندازی و برنامه نویسی LCD در آردوینو بررسی کنید، اما تنظیمات اولیه به این صورت است:
مقاومت روشنایی نور پس زمینه LCD را تنظیم می کند. می تواند از 200 اهم تا حدود 2K اهم باشد. پتانسیومتر کنتراست کاراکتر را تنظیم می کند. من معمولاً از یک پتانسیومتر 10K اهم برای این یکی استفاده می کنم.

پس از اتصال همه چیز، این کد را در آردوینو آپلود کنید:
#include <IRremote.h>
#include <LiquidCrystal.h>

const int RECV_PIN = 7;
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
IRrecv irrecv(RECV_PIN);
decode_results results;
unsigned long key_value = 0;

void setup(){
  Serial.begin(9600);
  irrecv.enableIRIn(); 
  irrecv.blink13(true);
  lcd.begin(16, 2);
}

void loop(){
  if (irrecv.decode(&results)){
 
        if (results.value == 0XFFFFFFFF)
        results.value = key_value;
        lcd.setCursor(0, 0);
        lcd.clear();
        
        switch(results.value){
          case 0xFFA25D:          
          lcd.print("CH-");
          break;
          case 0xFF629D:
          lcd.print("CH");
          break;
          case 0xFFE21D:
          lcd.print("CH+");
          break;
          case 0xFF22DD:
          lcd.print("|<<");
          break;
          case 0xFF02FD:
          lcd.print(">>|");
          break ;  
          case 0xFFC23D:
          lcd.print(">|");
          break ;               
          case 0xFFE01F:
          lcd.print("-");
          break ;  
          case 0xFFA857:
          lcd.print("+");
          break ;  
          case 0xFF906F:
          lcd.print("EQ");
          break ;  
          case 0xFF6897:
          lcd.print("0");
          break ;  
          case 0xFF9867:
          lcd.print("100+");
          break ;
          case 0xFFB04F:
          lcd.print("200+");
          break ;
          case 0xFF30CF:
          lcd.print("1");
          break ;
          case 0xFF18E7:
          lcd.print("2");
          break ;
          case 0xFF7A85:
          lcd.print("3");
          break ;
          case 0xFF10EF:
          lcd.print("4");
          break ;
          case 0xFF38C7:
          lcd.print("5");
          break ;
          case 0xFF5AA5:
          lcd.print("6");
          break ;
          case 0xFF42BD:
          lcd.print("7");
          break ;
          case 0xFF4AB5:
          lcd.print("8");
          break ;
          case 0xFF52AD:
          lcd.print("9");
          break ;                   
        }
        key_value = results.value;
        irrecv.resume(); 
  }
}
مجدداً، اگر کدهای هگزا با کدهای خروجی ریموت شما مطابقت ندارند، کافی است آنها را برای هر کاراکتری که در آن نوشته شده است 0xXXXXXXXXXX; جایگزین کنید.

استفاده از کنترل از راه دور IR برای کنترل چیزها
اکنون به شما یک نمایش ساده از نحوه استفاده از کنترل از راه دور IR برای کنترل پین های خروجی آردوینو را نشان خواهم داد. در این مثال، هنگامی که دکمه خاصی فشار داده می شود، یک LED روشن می کنیم. می توانید به راحتی کد را برای انجام کارهایی مانند کنترل سروو موتورها یا فعال کردن رله ها با فشار دادن هر دکمه از راه دور تغییر دهید.

مدار مثال دارای گیرنده IR متصل به آردوینو است که یک LED قرمز به پایه 10 و یک LED سبز به پایه 11 متصل است:

کد زیر با فشردن دکمه «5» به مدت 2 ثانیه پین دیجیتال 10 HIGH و با فشار دادن دکمه «2» پین دیجیتال 11 HIGH را به مدت 2 ثانیه می نویسد:

#include <IRremote.h>

const int RECV_PIN = 7;
IRrecv irrecv(RECV_PIN);
decode_results results;
const int redPin = 10;
const int greenPin = 11;


void setup(){
  irrecv.enableIRIn();
  irrecv.blink13(true);
  pinMode(redPin, OUTPUT);
  pinMode(greenPin, OUTPUT);
}

void loop(){
    if (irrecv.decode(&results)){

        switch(results.value){
          case 0xFF38C7: //Keypad button "5"
          digitalWrite(redPin, HIGH);
          delay(2000);
          digitalWrite(redPin, LOW);
          }

        switch(results.value){
          case 0xFF18E7: //Keypad button "2"
          digitalWrite(greenPin, HIGH);
          delay(2000);
          digitalWrite(greenPin, LOW);
          }

        irrecv.resume(); 
    }
}
تا اینجا به خواص تابش مادون قرمز و چگونگی ارتباط بین فرستنده و گیرنده پرداختیم. ما دیدیم که چگونه کدهای کلید IR را برای یک کنترل از راه دور مشخص شناسایی کنیم. ما یاد گرفتیم که چگونه فشار دادن کلید را روی مانیتور سریال و روی صفحه LCD نمایش دهیم. در نهایت به شما نشان دادم که چگونه خروجی آردوینو را با ریموت کنترل کنید. از بازی با این لذت ببرید و اگر سوالی دارید یا مشکلی در تنظیم آن دارید حتما در نظرات به ما اطلاع دهید!

منابع :

منبع 1

منبع 2


از سری ای سی های استفاده شده در بازار نصب شده روی  ریموت های تلویزیون و دیگر دستگاه ها می توان به مدل زیر اشاه کرد :

GW6122