آردوینو آموزش آردوینو جاوا اسکریپت Javascript نرم افزار

شروع برنامه نویسی به زبان جاوا اسکریپت Javascript در آردوینو led blink

Arduino-javascript-with-Johnny-five-led-blink-tutorial-digispark
نوشته شده توسط اروند طباطبایی

توسعه دهنده‌گان با زبان‌های مختلف برنامه نویسی، پیشرفت‌هایی را هر روز بوجود می‌آورند. یکی از زبان‌های سریع و مقیاس پذیر در زمینه رباتیک و اینترنت اشیاء IoT جاوا اسکریپت Javascript می‌باشد. پیش از این در مورد آردوینو بارها صحبت کردیم و راجع به قدرت این برد در اجرای انواع کدهای مختلف هم اشاره کرده‌ایم. اما در این آموزش با زبان برنامه نویسی قدرتمند جاوا اسکریپت Javascript به برد آردوینو Arduino فرمان می‌دهیم. لازم است بدانید که برای شروع به Node js نیاز داریم. به مرور کارهای بسیار جذابی را با این نرم افزار آموزش خواهم داد. در ادامه این آموزش با مرجع تخصصی آردوینو به زبان فارسی، دیجی اسپارک همراه باشید.

Node.js_logo-digispark

 

شروع کار با Node js

شاید برای خیلیها عجیب باشد که در مورد شیء گرایی با جاوا اسکریپت متنی بخوانند. واقعیت این است که جاوا اسکریپت ساختارهای شیء گرایی با قابلیتهای بسیار بالایی دارد اما به دلیل تفاوت این شیء گرایی با شیء گرایی های معمول در زبان های شبه C، این ساختارها برای برنامه نویسانی که از ابتدا با Java، C و … کار کرده اند کمی عجیب است. همه از فواید شیء گرایی و ماهیت آن اطلاع داریم بنابراین از شرح شیء گرایی می گذریم. در اینجا می خواهیم با نوع خاصی از شیء گرایی آشنا شویم که به عنوان prototyping شناخته می شود.

برنامه نویسی بر مبنای Prototype نوع خاصی از برنامه نویسی به سبک شیء گرایی است که در آن از کلاس خبری نیست! تنها چیزی هایی که داریم اشیاء هستند. به عبارت بهتر کلاس ها مشخصاً به عنوان ماهیتی مجزا از اشیاء تعریف نمی‌شوند. خصوصیاتی نظیر ارث بری با دستکاری اشیاء موجود یا به عبارت دیگر prototype ها به وجود می‌آیند.

 

برنامه نویسی شیء گرا

اشیاء اصلی جاوا اسکریپت

جاوا اسکریپت در هسته خود چند شیء از پیش تعریف شده دارد: Array ، Object،Boolean، String، Math، Number، RegExp، Date و Function. همه این اشیاء از شیء Object ساخته شده اند.

تعریف اشیاء

در زبان های شبه C، اشیاء از روی کلاس ها ایجاد می شوند. همانطور که گفته شد در جاوا اسکریپت statement ای به عنوان Class وجود ندارد. اما راه هایی برای تعریف اشیاء جدید پیش روست.

استفاده از Object

گفتیم تمام اشیاء از Object ساخته شده اند. ما هم می توانیم برای ایجاد اشیاء جدید از آن استفاده کنیم. برگرفته از وب سایت Nodejs.ir

 

چهارچوب جاوا اسکریپت در رباتیک

وقتی صحبت از Framework یا همان چهار چوب می‌کنیم، منظور بستری با قوانین مشخص برای توسعه می‌باشد. در راستای به کار گیری زبان برنامه نویسی جاوا اسکریپت در رباتیک Robotic و اینترنت اشیاء IoT از چهار چوب Johnny-Five استفاده می‌کنیم. بستر Johnny-Five اوپن سورس و منحصرا برای توسعه رباتیک بوجود آمده است. جامعه کاربری Johnny-Five بسیار روبه رشد و سرعت حرکتی فراتر از تصور را دارد. تا به اینجا ما در ایران از پلتفرم‌ها و چهارچوب‌های غیر بومی استفاده کرده‌ایم. تلاش بنده و همکارانم در دیجی اسپارک ایجاد بسترهای بومی با تکیه بر دانش جوانان ایران است. بنابراین خواهشا از هر مطلبی که در دیجی اسپارک مطالعه می‌کنید، نهایت استفاده را ببرید و ایده‌هایتان را تا عملی شدن به کار بگیرید. من و همکارانم در این راستا کنار شما خواهیم بود.

پلتفرم برنامه نویسی رباتیک Johnny five - دیجی اسپارک

 

پروژه LED Blink با Javascript

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

 

نصب Node js در ویندوز

برای نصب Node js به چند روش می‌توان اقدام کرد. ساده‌ترین حالت دانلود فایل installer ویندوز از سایت Node js می‌باشد. یا اینکه از مخازن دیجی اسپارک نرم افزار node-v8.11.3-x64 را دانلود و نصب کنید. مراحل نصب بسیار ساده است. اگر با مشکل مواجه شدید از طریق نظرات همین آموزش سوالتان را مطرح کنید. پس از نصب لازم است که فایل Node.js command prompt را اجرا کنید. در ادامه دستورات لازم را توضیح خواهم داد.

 

تنظیمات نرم افزار Arduino IDE

قبل از اقدام به نوشتن برنامه تحت زبان جاوا اسکریپت روی آردوینو Arduino Javascript نیاز به انجام تنظیماتی در نرم افزار قدرتمند آردوینو Arduino IDE می‌باشد. من از برد آردوینو Uno استفاده کرده‌ام. نرم افزار آردوینو IDE را باز کنید. از مسیر Tools>Port پورت صحیح که آردوینو از طریق آن شناسایی شده است، را انتخاب کنید. بعد از اینکار از طریق مسیر File > Examples > Firmata گزینه StandardFirmata را انتخاب کنید. سپس یک پنجره جدید آردوینو باز خواهد شد. گزینه آپلود کدها روی آردوینو را کلیک کنید. منتظر بمانید تا کدها آپلود شوند. از اینجا دیگر به نرم افزار Arduino IDE نیازی نداریم. می‌توانید نرم افزار را با خیال راحت ببندید.

تنظیمات نرم افزار آردوینو برای برنامه نویسی جاوا اسکریپت - دیجی اسپارک

 

اتصال LED به آردوینو

پیش از اقدام لازم است ترتیب پایه‌های LED را بدانید. هر ال ای دی معمولی دارای دو پایه می‌باشد. پایه کوتاه‌تر منفی و پایه بلندتر مثبت است. پیشنهاد می‌شود برای کار کرد بلند مدت، هر ال ای دی با یک مقاومت در حدود ۲۲۰ اهم به برد آردوینو متصل شود. ولی اجباری به استفاده هم وجود ندارد. اگر مقاومت در دسترس ندارید، می‌توانید این پروژه را همانطور که من اجرا کردم، پیش ببرید. یک نگاه به پایه‌های برد آردوینو Uno بیاندازید. پایه ۱۳ و GND کنار هم هستند. بنابراین ال ای دی را به این دو پایه اتصال می‌دهیم.

  • پایه کوتاه LED به GND آردوینو
  • پایه بلند LED به پین ۱۳ آردوینو

 

جاوا اسکریپت آردوینو Johnny-Five

var five = require('johnny-five');
var board = new five.Board();
 
board.on('ready', function() {
  var led = new five.Led(13); // pin 13
  led.blink(500); // 500ms interval
});

 

اجرا کد جاوا اسکریپت آردوینو

برای اجرای کدها نرم افزارهای مختلفی وجود دارد. پیشنهاد بنده استفاده از Notepad++ می‌باشد. این نرم افزار به صورت پیشفرض روی ویندوز قرار دارد. کدها را کپی کرده و در notepad++ وارد کنید. حال لازم است که فایل را در مسیر C:\users\yourpc ذخیره کنید. من به اسم led.js در مسیر C:\Users\Arvand ذخیره کردم. حال وارد Node.js command prompt شده و دستور زیر را وارد کنید.

node led

برنامه نویسی جاوا اسکریپت در آردوینو با Johnny five - دیجی اسپارک

 

همانطور که مشاهده می‌کنید به علت شناسایی ۳ پورت و انتخاب پورت غلط، نرم افزار ارور می‌دهد. در این حالت ال ای دی آردوینو هیچ تغییری نمی‌کند. در قسمت قبلی از طریق نرم افزار آردوینو پورت متصل شده را شناسایی کردیم. حال کافیست در داخل کدهای Notepad++ یک خط دیگر اضافه کرده و پورت صحیح را وارد کنیم. به کدهای زیر توجه کنید.

var five = require('johnny-five');
var board = new five.Board(

   {
	port: "com4"
   }
);
 
board.on('ready', function() {
  var led = new five.Led(13); // pin 13
  led.blink(500); // 500ms interval
});

به سطر ۵ دقت کنید. به صورت انحصاری اعلام شده است که از پورت Com4 استفاده شود. سپس این فایل را ذخیره و مجددا دستور node led را اجرا می‌کنیم. به تصویر زیر دقت کنید. سپس مشاهد خواهید کرد که ال ای دی روی برد آردوینو توسط کدهای جاوا اسکریپت شروع به چشمک زدن می‌کند.

اجرا دستور node برای کد جاوا اسکریپت آردوینو با Johnny-five - دیجی اسپارک

 

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

 

پروژه

طی چند قسمت قبلی که طرح پروژه را پیاده سازی کردیم، با استقبال شما کاربران مواجه شدیم. در این سری برای اینکه گستره بیشتری از افراد بتوانند فرصت استفاده از بن خرید را داشته باشند؛ روال دیگری را در پیش گرفتیم. در این روش تصمیم گرفته‌ایم به ۱۰ نفر از کاربران بن خرید ارایه شود. برای دریافت بن خرید از دانشجو کیت، کاربران بایستی با استفاده از وسایل این آموزش، پروژه را اجرا کرده و بسته به خلاقیت، مدار جدیدی ایجاد کنید. سپس از اجرای کار فیلم گرفته و در شبکه‌های اجتماعی از جمله آپارات و اینستگرام، با هشتگ‌های دیجی_اسپارک و دانشجوکیت  و digispark و daneshjookit منتشر کنند. سپس از طریق بخش نظرات در ادامه همین آموزش، جهت دریافت بن خرید ارسال رایگان به ارزش ۱۰۳۰۰ تومان از دانشجو کیت، لینک را زیر همین پست ارسال کنید.

 

در پایان نظرات و پیشنهادات خود را با ما درمیان بگذارید و با اشتراک گذاری این آموزش در شبکه های اجتماعی , از وبسایت دیجی اسپارک حمایت کنید.

 

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

اروند طباطبایی

بنیانگذار دیجی اسپارک: اولین مرجع تخصصی امبدد سیستم به زبان فارسی / کارشناس سئو و تولید محتوا

هرچه می آموزم میبینم که خیلی کم آموختم. علاقه به رباتیک و تکنولوژی دارم. امیدوارم بتونم دانشی را که آموخته‌ام، به روش‌های مختلفی به کاربران علاقمند منتقل کنم.

تبادل نظر و رفع عیب با ثبت دیدگاه

۱۰ دیدگاه