دوره آموزشی اینترنت اشیاء با محوریت آردوینو

اینترنت اشیاء چیست؟

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

اینترنت اشیاء مفهومی در دنیای فناوری است که بر مبنای آن دستگاه‌ها و اجزاء زندگی انسان، به طور هوشمندانه و بدون دخالت انسان اطلاعات موردنیاز برای فعالیت بهتر را از دستگاه‌های دیگر در شبکه دریافت کرده و با آن‌ها به اشتراک می‌گذارد.

آردوینو چیست؟

امروزه برنامه‌نویسی برای کامپیوتر فعالیتی بسیار شیرین است و دلیل آن این است که هر فرد مشتاقی می‌تواند با زبان‌ها و محیط‌های توسعه نرم‌افزار مختلف به سرعت برنامه‌ای نوشته و اجرا کند؛ اما اوضاع در دنیای الکترونیک متفاوت است.

اجرای یک برنامه روی سخت‌افزار ابتدا نیازمند انتخاب و خرید قطعاتی مانند پردازنده، صرف زمان برای ساخت مدار الکترونیکی و سپس برنامه‌نویسی با زبان مشخص آن پردازنده است.

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

بُردهای الکترونیکی آردوینو از پردازنده‌های مختلفی استفاده می‌کنند (به طور مثال بُردهای ارزان قیمت از پردازنده AVR و بُردهای قدرتمند از ARM استفاده می‌کنند)، اما برنامه‌نویسی روی همگی آن‌ها از طریق زبان واحدی انجام می‌شود و امکان اجرای برنامه‌ی واحد روی تمامی آ‌ن‌ها وجود دارد. علاوه بر این، ثبت برنامه‌ها روی پردازنده دیگر نیازمند خرید دستگاه‌های پروگرمر نیست و این فرایند به سادگی توسط خودِ آردوینو انجام می‌گردد.

شروع به یادگیری، ساخت و توسعه ایده‌ها و حتی ساخت دستگاه‌های تجاری با آردوینو بسیار شیرین‌تر است 🙂

از آنجایی که آردوینو پروژه‌ای آزاد است، هر کسی می‌تواند آردوینو را به دلخواه خودش سفارشی‌سازی کرده و یا حتی آردوینوی خودش را بسازد! آردوینو در حال حاضر پرطرفدارترین بُرد توسعه‌ی الکترونیکی دنیاست و میلیون‌ها کاربر از سراسر دنیا از استفاده‌ی آن لذت می‌برند و از نظر سخت‌افزاری و نرم‌افزاری آن را توسعه می‌دهند.

چرا این دوره آموزشی را طراحی کردم؟

بیش از 7 سال از شروع فعالیت من در دنیای الکترونیک می‌گذرد. در طی این سال‌ها پروژه‌های مختلفی را برای مشتریان طراحی کردم و نسخه پیش‌تولید (پروتوتایپ) بعضی از آن‌ها را در وب‌سایتم برای شما به اشتراک گذاشته‌ام. یادگیری من در این سال‌ها از طریق منابع مختلف و معتبری مانند Adafruit و Sparkfun انجام شده و در حین ساخت پروژه‌ها تجربیات زیادی را هنگام بروزرسانی و ارتقای دستگاه‌هایم کسب کردم.

بسیاری از دوستان را دیده‌ام که قصد شروع یادگیری الکترونیک با آردوینو را دارند یا دنبال منبع آموزشی‌ای هستند تا دانش خود را در رابطه با اینترنت اشیاء و انواع روش‌های ساخت این دستگاه‌ها افزایش دهند. این افراد از نبود منبعی مطمئن و جامع برای یادگیری اینترنت اشیاء و آردوینو در بین منابع فارسی گله دارند. این مسئله باعث شد تا در طی یک سال گذشته تجربیات خودم را در یک مجموعه آموزشی 20 قسمتی با عنوان «مجموعه آموزشی اینترنت اشیاء با محوریت آردوینو» آماده و به شما دوستان عرضه کنم:

ثبت‌نام دوره‌ی آموزشی 💡

سرفصل‌های دوره

در این دوره موضوعات زیر را با یکدیگر بررسی کرده و پس از یادگیری مفاهیم، برای هریک مثال‌هایی از ساخت یک دستگاه آردوینویی با آن‌ها را قدم به قدم طراحی می‌کنیم:

  1. آشنایی با اینترنت اشیاء و کاربردهای آن
  2. آشنایی با آردوینو و مزایای آن
  3. شروع به کار با آردوینو: خروجی دیجیتال و آنالوگ
  4. شروع به کار با آردوینو: ورودی دیجیتال و آنالوگ
  5. شروع به کار با آردوینو: سریال مانیتور (ارتباطات سریال)
  6. نمایش اطلاعات روی نمایشگرهای کاراکتری
  7. نمایش اطلاعات روی نمایشگرهای گرافیکی (نمایشگر نوکیا 5110)
  8. نمایش تصاویر بیت‌مپ و فارسی نویسی روی نمایشگر
  9. نمایش اطلاعات روی نمایشگرهای OLED با ارتباط I2C
  10. اتصال به حسگر دما و رطوبت و دریافت اطلاعات
  11. اتصال به حسگر گاز
  12. کنترل ولتاژهای بالا با رله و ساخت پریز کنترلی
  13. طراحی دستگاه‌های کارتخوان با تگ‌های RFID
  14. انتقال اطلاعات بی‌سیم به کمک ارتباط بلوتوث
  15. آشنایی با ESP32 و اتصال به اینترنت وای‌فای
  16. ساخت نقطه اتصال وای‌فای با ESP32
  17. برقراری تماس با ماژول سیم‌کارت (sim800)
  18. ارتباط پیامکی با ماژول سیم‌کارت
  19. اتصال به اینترنت و انتقال اطلاعات با ماژول سیم‌کارت
  20. پیاده‌سازی پروژه نهایی، دستگاه پایشگر و کنترل‌کننده اینترنتیِ گلخانه (همراه با برنامه‌نویسی وب)

مزایای دوره

دوره آموزشی اینترنت اشیاء با محوریت آردوینو طی 20 قسمت از مفاهیم پایه‌ای برای درک اینترنت اشیاء و آردوینو شروع شده و تا طراحی و اجرای یک دستگاه واقعی پیش می‌رود.

این دوره آموزشی در همین نقطه متوقف نخواهد شد و قسمت‌های دیگری نیز برای یادگیری بیشتر به تدریج به این 20 قسمت اضافه می‌گردد و برای خریداران دوره به صورت رایگان در دسترس خواهد بود. قسمت‌هایی که تا این لحظه اضافه شده‌اند:

  1. ارسال کد USSD با sim800
  2. ارسال پیامک فارسی با sim800

افرادی که پیش‌تر آموزش‌های سایت‌های فارسی‌زبان را دیده باشند می‌دانند که بعضی از موارد آموزشی در این دوره به راحتی در منابع دیگر پیدا نمی‌شوند و یا با هزینه‌ای بسیار بیشتر برای فروش قرار داده شده‌اند.

با مطالعه و یادگیری مطالب این آموزش به خوبی از پس طراحی پروژه‌های مختلف آردوینو بر خواهید آمد و این دوره سکوی پرش شما به مراحل بالاتر خواهد شد؛ ان‌شاء‌الله.

 

📚 مطالب این دوره در قالب یک «کتاب+» آماده شده است. هر مجموعه‌ی کتاب+ علاوه بر متن و عکس در هر مطلب، شامل محتواهای بیشترِ چندرسانه‌ای است به درک بیشتر مطالب کمک می‌کند.

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

 

تهیه دوره آموزشی

برای تهیه دوره آموزشی اینترنت اشیاء با محوریت آردوینو، وارد این صفحه شده و به سادگی ثبت‌نام کنید. با ایجاد حساب کاربری و فعالسازی دوره، مطالب دوره برای شما فعال خواهد شد و از طریق منوی کتاب+ (در بالای صفحه) به آن دسترسی خواهید داشت.

منیرا تکست – نمایش زنده ادعیه، سریع و آسان!

لوگوی منیرا تکست

منیرا تکست، نرم افزار نمایش زنده ادعیه و قرآن کریم می تواند یکی از پرکاربردترین ابزار های پخش ادعیه در مراسمات مذهبی باشد.

همه چیز در منیرا بسیار ساده و روان است. در ابتدای شروع برنامه لیستی از دعا هایی که از قبل داشته اید قابل مشاهده و انتخاب است تا به سرعت یکی را اجرا کنید و فراز های مختلف دعا را نمایش دهید. هر دعا در یک پرونده ویژه با پسوند .DOA در پوشه texts قرار دارد و شما می‌توانید آن ها را اضافه، حذف و یا جابجا نمایید. به طور پیش‌فرض سه دعای تعقیبات نماز ظهر، دعای سلامتی و دعای فرج امام زمان (عج) در این پوشه قرار داده شده است.

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

Go.AbrLab.ir/monira

طراحی دستگاه اعلام حضور مشتری

دستگاه به سفارش یکی از دوستان طراحی و نصب شد؛ احتیاج داشتند تا با عبور مشتری از درب اصلی، دستگاه زنگ را که در فاصله ۶-۷ متری از مکان اصلی قرار دارد را به صدا در بیاورد تا مشتری برای باز شدن درب داخلی معطل نشود.

نمای کلی

جنس بدنه دستگاه

شکن – نسخه ویندوز (غیررسمی)

اگر مقداری درگیر فعالیت های کامپیوتری شده باشید (غیر از بازی کردن! 😂) نیازی به گفتن نیست که بسیاری از سرویس های مطرح اینترنتی و یا وبسایت های آنها اجازه ی ورود به ما نمی دهند و به اصطلاح تحریممان کرده اند! بعضی سایت ها مانند اوراکل یا ادوبی که حتی زحمت نکشیده اند صفحه ی اعلام عدم اجازه عبور درست کنند و کلا صفحه ی سفید نشانمان می دهند!
خلاصه، برای دور زدن تحریم ها هر کسی کاری می کند؛ یکی سرور خارجی می خرد، یکی چیز پی ان(!)، یکی قند-#شکن! و…
اما جدیدا با سرویسی آشنا شده ام که علاوه بر رایگان بودن، سرعت بسیار بالایی هم دارد انگار که اصلا دور زدنی در کار نیست!


شکن، نام این سرویس جالب ایرانی است که تنها با تنظیم دو آدرس DNS در تمامی دستگاه ها فعال شده و در آدرس های خاصی که از پیش گزارش شده اند تحریم را مثل آب خوردن دور می زند! نکته مثبت آن این است که غیر از تنظیم DNS احتیاج به تنظیم پرا-کسی در نرم افزار های همان سرویس های تحریم کننده ندارد (مثل نرم افزار مدیریت اس دی کی اندروید)…

چند وقتی بود که دنبال ساخت نرم افزاری برای تنظیم و پاک کردن DNS های شکن بودم. هرچند تنظیم DNS کار ساده ایست اما هربار تنظیم و برداشتن آن زمان‌بر است؛ خصوصا که مسیر بسیار بد دستی هم دارد (😅) و میانبری هم با جستجو در استارتِ ویندوز10 بالا نمی‌آید. به همین خاطر دست به کار شدم تا نرم افزاری بسازم که با استفاده از C# و رابط کاربری WPF امکان تغییر DNS را به کاربر بدهد.

در این نرم افزار که به رایگان در گیت هاب منتشر شده است (و می‌تواند برای افرادی که به دنبال کد های تغییر dns در ویندوز به وسیله C# wpf هستند بسیار مفید باشد)، می‌توانید با فشردن یک کلید DNS ویندوز خود را بر روی آدرس های شکن قرار داده با با فشردن دوباره همان کلید آنها را پاک کرده و به حالت اول برگردانید.

دریافت نرم افزار از گیت هاب

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

صفحه ی برنامه در آزمایشگاه ابر

روبی ویتا – برنامه نویسی برای کودکان

روبی ویتا

یادم می آید از زمانی که روی ربات روبی کار می‌کردم به فکر ساخت نسخه ای کودکانه برای آن بودم؛ شایدم هم نه، از قبل تر! زمانی که آقای نیرومند به من گفت:

…خلاصه، می‌خوام بگم اون زحمتی که می‌خوای بکشی شاید کاربرد زیادی نداشته باشه.

اما چیزی که پیشنهاد می‌کنم انجام بدی، طراحی Robi هست که در مطلب اخیر صحبت کردم.

اگر بتونی اون رو در حد یک روبات ۱۰ سانتی متری کوچیکش کنی و چیزی شبیه به عروسک نمادِ آندروید کنی، عالی می‌شه.

به خصوص اگر بتونی حداقل در مراحل بعد یک ماژول Wi-Fi هم روش بذاری که بتونه بی‌سیم دستور بگیره، دیگه فوق‌العاده می‌شه.

ما می‌خواهیم Robi روباتی باشه که از یک خط فرمان، دستوراتی رو که ضمیمه کردم (و منتشرش نکن) دریافت و اجرا کنه.

می‌تونی این پروژه رو پیگیری کنی؟

و من در جوابش فرستاده ام:

برای روبی هم، راستش من خودم برای خودم داشتم روی یه برد ایرانی آردوینویی کار میکردم با یه محیط برنامه نویسی شبیه اسکرچ به نام ماجراجو؛ ولی روبی هم چیز خوبیه و میتونم روش کار کنم.

چند وقتی بود که در فکر ساخت یک محیط برنامه نویسی ساده شده بودم؛ شبیه اسکرچ کودکان؛ با الهام از خط زمانِ برنامه های تدوین فیلم که تکه ها در یک خطر قرار می گیرند و به ترتیب اجرا می شوند. نمونه ی اولیه خیلی افتضاح بود 😀 به قدری که هنوز خط زمان را تکمیل نکرده پاکش کردم!

در حین کار روی نسخه بتای روبی، روی رابط کاربری نسخه ای خاص از محیط برنامه نویسی ماجراجو (محیطی که با سیشارپ برای برنامه نویسی و اجرای دستورات ساده و مخصوص روبی روی آن به وسیله بلوتوث ساخته بودم) که مناسب برای کودکان باشد. با الهام از سادگی دستورات ماجراجو، دستورات ماجراجو کودکان (نسخه پرتقال 😁) هم ساده تنظیم شد و برای آنکه هر دستور برای کودکان به راحتی قابل شناسایی باشند از کلمات در آن استفاده نشد (این اتفاق برای استفاده از بازی در زبان های دیگر هم این مزیت را به بار می آورد).

این طرحی بود که 30 شهریور 96 (یک روز مانده به محرم) موقع تحویل روبی به آقای نیرومند نشان دادم و خوششان آمد:

بعد از اتمام روبی بتا کار روی ساخت نسخه کودکان آن شروع شد؛ برآورد اولیه این بود که بازی تا بهمن ماه به انتشار برسد. طراحی نوار زمانی که چینه ها را روی آن بتوان چید کار سختی بود که تابحال انجام نداده بودم و چالش من در طراحی بازی بود…

ادامه‌ی مطلب