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

آموزش کنترل شدت نور LED (دیمر) از طریق اینترنت و Node.js (پروژه اینترنت اشیا)

سلام. آموزش کنترل شدت نور LED (دیمر) از طریق اینترنت (پروژه اینترنت اشیا IoT) را آماده کرده ایم.

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

ما قبلا در سایت آیرنکس نمونه های بی شماری از پروژه های چشمک زن و دیمر ال ای دی با میکروکنترلر های مختلف ساخته ایم. در این پروژه اینترنت اشیا ما با استفاده از چهارچوب محبوب جاوا اسکریپت Node.js یک دیمر ال ای دی متصل به برد آردوینو میسازیم. ما برای کنترل میزان روشنایی LED از یک صفحه وب استفاده خواهیم کرد. با انجام چند ترفند ساده این پروژه ، به یک پروژه IoT تبدیل میشود که با آن میتوانیم میزان نور ال ای دی را از هر نقطه دنیا کنترل کنیم. فیلم نحوه عملکرد مدار در انتهای مطلب قرار داده شده است میتوانید مشاهده کنید تا به طور کامل با این پروژه اینترنت اشیا آشنا شوید.

مدار پروژه دیمر اینترنتی

شماتیک مدار پروژه دیمر اینترنت اشیا بسیار ساده است و ما فقط باید ال ای دی را توسط یک مقاومت به برد آردوینو متصل کنیم.

قطعات مورد نیاز پروژه

  1. برد آردوینو Uno
  2. LED

مدار پروژه دیمر اینترنتی

 

Node.js چیست؟

Node.js یک چارچوب مبتنی بر جاوا اسکریپت است که بر روی JavaScript V8 Engine Google Chrome ساخته شده و در توسعه برنامه های وب فشرده I/O مانند برنامه های یک صفحه ای ، سایت های پخش ویدئو و … کاربرد دارد.

آموزش پیکربندی فریم ورک Node.js برای پروژه اینترنت اشیا

در این قسمت به طور کامل با نحوه پیکربندی فریمورک Node.js برای پروژه های IoT آشنا میشویم. این مراحل را دنبال کنید.

  1. آموزش نصب فریم ورک Node.js
  2. آموزش نصب کتابخانه Johnny-Five 

1. آموزش نصب فریم ورک Node.js

قبل از شروع برنامه نویسی، Node.js باید بارگیری و تنظیم شود. برای بارگیری Node.js فقط مراحل ساده زیر را دنبال کنید.

مرحله 1 : پرونده .exe Node.js را از وب سایت رسمی آن بارگیری کنید (برای ورود به سایت رسمی Node.js کلیک کنید).

مرحله 2 : .exe را اجرا کنید و فایل را نصب کنید.

آموزش پیکربندی فریم ورک Node.js برای پروژه اینترنت اشیا

مرحله 3 : پس از نصب رایانه خود را راه اندازی مجدد کنید.

مرحله 4 : برای بررسی اینکه نصب شده است، Command Prompt را باز کنید و Node –v را تایپ کنید.

آموزش نصب فریم ورک Node.js

اگر در مورد این مطلب سوالی داشتید در انتهای صفحه در قسمت نظرات بپرسید.

مرحله 5 : نسخه Node.js نمایش داده می شود که نشان می دهد Node.js نصب شده است.

2. آموزش نصب کتابخانه Johnny-Five 

اکنون پس از بارگیری Node.js، یک پوشه جدید با نام “LED_Control” را در Document ها ایجاد کنید تا تمام پرونده های پروژه در یک مکان نگهداری شوند. اکنون کتابخانه Johnny-Five را در پوشه “LED_Control” فرار دهید. برای بارگیری ، مراحل زیر را دنبال کنید :

مرحله 1: CMD را باز کنید.

مرحله 2: با دنبال کردن دستور “cd” به پوشه “LED_Control” بروید.

مرحله 3: دستور  را اجرا کنید.

آموزش نصب کتابخانه Johnny-Five 

مرحله 4: این همه وابستگی های جانی-پنج را نصب می کند.

مرحله 5: همچنین کتابخانه های لازم در این آموزش برای کنترل روشنایی LED را نصب کنید. در اینجا سه ​​کتابخانه استفاده شده است. دستورات زیر را یک به یک انجام دهید تا این سه کتابخانه نصب شود.

npm install express
npm install socket.io
npm install serialport

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

  1. ساخت چشمک زن آردوینو با LED
  2. کنترل روشنایی ال ای دی با استفاده آردوینو و Node.js از طریق اینترنت
حتما ببینید :  ساخت شارژر باتری 12 ولت با LM358 و LM317 (منبع تغذیه 12v)

ساخت چشمک زن با Arduino و Node.js

تنظیم آردوینو UNO برای پروژه چراغ چشمک زن :

برای اینکه آردوینو UNO فرمان لپتاپ برای کنترل ال ای دی را بپذیرد ، سیستم عامل Firmata باید وارد Arduino UNO شود. برای باگذاری سیستم عامل Firmata ، فقط مراحل زیر را دنبال کنید:

  1. Arduino UNO را با استفاده از کابل USB متصل کنید
  2. Arduino IDE را باز کنید و برد Arduino UNO را از Tools -> Boards انتخاب کنید.
  3. پورت COM مربوط به Arduino UNO را انتخاب کنید.
  4. اکنون Firmata Sketch را با استفاده از Menu -> File -> Examples -> Firmata -> StandardFirmata پیدا کنید.
  5. طرح “StandardFirmata” را با رفتن به File -> Upload باز کنید.

این طرح Firmata را روی Arduino UNO بارگذاری می کند و اکنون Arduino UNO آماده پذیرش هرگونه دستور از رایانه است.

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

نوشتن برنامه Node.js برای چراغ چشمک زن:

برای نوشتن برنامه Node.js ، از هر ویرایشگر متن (مثل Notepad و …) میتوانید استفاده کنید و کد ضمیمه شده در انتهای این آموزش را در آن قرار دهید و آن را با پسوند .js مثلا : blink_led.js در پوشه LED_Control که قبلا ایجاد کرده بودید ذخیره کنید.

در این قسمت به طور کامل کد این قسمت را توضیح میدهیم.

در ابتدای این کد ما پین میکروکنترلر را که LED به آن متصل شده است را انتخاب میکنیم. در اینجا ما از پین 5 آردوینو Uno استفاده کرده ایم.

var led_pin=5;

ما باید ماژول Johnny-five که پیشتر نصب کردیم را فراخوانی کنیم و برد آردوینو را نی زمعرفی کنیم.

var johnny_five=require("johnny-five"); 
var arduino_board=new johnny_five.Board(); 

جمله console.log مشابه دستور پرینت است و پیام را نمایش میدهد. پین LED روی حالت خروجی تنظیم شده و تأخیر تعریف شده به چراغ چشمک زن داده می شود.

console.log("LED has Started Blinking!");  
var led = new johnny_five.Led(led_pin);  
led.blink(100); 

اکنون برای اجرای برنامه مراحل زیر را دنبال کنید:

  1. CMD را باز کنید.
  2. پوشه “LED_Control” را با تایپ دستور “cd” پیدا کنید
  3. دستور “Node led_blink.js” را اجرا کنید. اگر با موفقیت اجرا شود، پیام “” مانند تصویر زیر نمایش داده میشود. نوشتن برنامه Node.js برای چراغ چشمک زن
  4. سپس ال ای دی در پین 5 شروع به چشمک زدن خواهد کرد.

کنترل میزان روشنایی LED با استفاده از Arduino و وب سرور Node.js

در این بخش نیز آردوینو Uno را تنظیم میکنیم و سپس رابط وب را ایجاد میکنیم و برنامه Node.Js را مینویسیم.

تنظیم Arduino UNO برای کنترل روشنایی LED

برای راه اندازی Arduino UNO، به سادگی طرح “arduino_control.ino” را در برد Arduino UNO بارگذاری کنید. این فایل که حاوی کد آردوینو است در فایل دانلودی قرار داده شده است. در اینجا کد Arduino این پروژه را توضیح میدهیم.

در ابتدا نرخ باود را 9600 تعیین میکنیم.

Serial.begin(9600);

پورت سریال همیشه به دنبال بایت های دریافتی است و برای Pin 5 که یک پین PWM است تعریف شده است.

while(!Serial.available());
analogWrite(5, Serial.read());

با این کار Arduino می تواند بایت را به پین ​​PWM فرستاده و باعث تغییر درخشندگی LED شود.

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

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

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

مرحله 1: یک پوشه جدید با نام “public” را در داخل پوشه “LED_Control” ایجاد کنید.

مرحله 2: اکنون پرونده های “index.html” و “style.css” را بارگیری کرده و هر دو پرونده را در پوشه “Public” ایجاد شده در مرحله اول بالا قرار دهید. پرونده ها را می توانید در انتهای مطلب دانلود کنید.

با این کار یک اسلایدر در صفحه وب ایجاد می شود تا میزان روشنایی LED را با استفاده از Node.js و Arduino کنترل کند.

راه اندازی رابط وب برای کنترل میزان نور LED

نوشتن برنامه Node.js برای کنترل روشنایی LED

مرحله بعدی نوشتن طرح “brightness_control.js” با استفاده از Node.js و اجرای کد است.

برای نوشتن برنامه Node.js ، ویرایشگر متن را (Notepad ، Notepad ++ یا …) باز کنید و کد “brightness_control” ضمیمه شده در انتهای این مطلب را در آن جایگذاری کنید و آن را با پسوند “.js” یعنی (brightness_control.js) ذخیره کنید.

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

در این بخش از ماژول ها (کتابخانه) استفاده خواهیم کرد. ماژول “Express” ، “http” و “PortSerial” را وارد کنید.

var express = require('express');
app = express();
server = require('http').createServer(app);
io = require('socket.io').listen(server);
var SerialPort = require("serialport")//.SerialPort

اکنون پورت COM را تنظیم کرده و baudrate را وارد کنید. توجه داشته باشید که در ویندوز، همیشه COM با پسوند شماره (COM6 ، COM4 ، COM24 و غیره) خواهد بود.

var serialPort = new SerialPort("/COM4", { baudRate: 9600 });

در ابتدا میزان روشنایی را در 0 تنظیم کنید. سپس داده های روشنایی را به IO با ماژول sockets انجام دهید. داده ها با استفاده از پروتکل سوکت توسط Web Interface دریافت می شوند.

io.sockets.on('connection', function (socket) {
socket.on('led', function (data) {
brightness = data.value;
var buf = new Buffer(1);
buf.writeUInt8(brightness, 0);
serialPort.write(buf);

اکنون مقدار روشنایی LED را از سوکت به پین ​​LED منتقل کنید.

io.sockets.emit('led', {value: brightness});   
});
socket.emit('led', {value: brightness});
});

اکنون با دنبال کردن مراحل زیر برنامه را اجرا کنید:

  1. CMD را باز کنید.
  2. پوشه “LED_Control” را با وارد کردن دستور “cd” پیدا کنید.
  3. فرمان “Node brightness_control.js” را اجرا کنید. اگر موفقیت آمیز باشد پیام “Web Server Started go to “http://localhost:8080″ in your Browser.” نمایش داده میشود مانند تصویر زیر
  4. اکنون به مرورگر خود بروید و در آدرس اینترنتی “localhost: 8080” تایپ کنید.
  5. سپس برای تغییر روشنایی ، فقط گردی روی خط را حرکت دهید.آموزش ساخت دیمر ال ای دی کنترل شونده به صورت آنلاین

فیلم عملکرد پروژه کنترل ال ای دی با اینترنت

فیلم زیر به شما در درک نحوه کار این پروژه کمک میکند.

فیلم عملکرد مدار : کلیک کنید !

موارد موجود در فایل : شماتیک کامل مدار ، سورس کامل

[post_shop]

دانلود فایل های پروژه

[/post_shop] [lrm_form default_tab=”register” logged_in_message=””]

نظرتان را در مورد این مطلب با ستاره دادن اعلام کنید امیدوارم این مطلب برای شما مفید بوده باشد. نظرات ، مشکلات و پیشنهادات خود را در پایین صفحه اعلام کنید
برچسب ها

محمد رحیمی

محمد رحیمی هستم. سعی میکنم در آیرنکس مطالب مفید را قرار دهم.

2 نظر

  1. سلام خدمت دوست عزیز،من فایل پروژه رو دانلود کردم ولی کد ها ناقض هستن یعنی این که فایلی که با فرمت ino هست باز میکنم 5ا6 خط بیشتر کد نیست و داخل هیچکدوم ازکد ها اشاره ای به دوتا فایلی که فرمتشون JS اشاره ای نکرده و همینطور به پوشه PUBLIC
    لطفا راهنمایی کنید

    1. سلام هاتف عزیز. فایل ها چک شد و صحیح هستند. طبق آموزش پیش برید، این پروژه کد آردوینوی پیچیده ای ندارد و اکثر کار ها در فایل های .js انجام شده است. تمام فایل را در یک پوشه اکسترکت کنید.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا
بستن
بستن