امروز برابر است با :28 ژانویه, 2021

پروژه الکترونیک ESP8266

معرفی کوتاه Esp8266 wifi

  • این ماژول یک میکروکنترلر ۳۲ بیتی داره که حافظه فلش اون ۴ تا ۳۲ مگابیت داره و دارای حداکثر فرکانس ۸۰مگاهرتزه !
  • این سری از ماژول ها بیش از ۱۰ نوع در بازار وجود دارن و برد های توسعه خاصی از اون ها هم مثل nodemcu ، Witty cloud و  .. وجود داره. (پروژه الکترونیک Esp8266)
  • این ماژول مثل یک میکروکنترلر قابلیت برنامه نویسی داره
  • ماژول ESP8266 هم در مد Station و هم در مد Access Point قابلیت پیکربندی داره و …

برد ESP8266 ماژول Wifi

می‌توان گفت ESP8266 یک ماژول WIFI کامل به همراه تمام بخش های نرم افزاری و پشته پروتکل داخلی TCP/IP می باشد که با قیمت بسیار پایین در بازار ایران یافت می‌شود و می‌توان با پروتکل سریال به راحتی با آن ارتباط برقرار نمود و توسط دستورات AT COMMAND آن را کنترل نمود.ماژول ESP8266 در دو حالت قابل استفاده می‌باشد. (پروژه الکترونیک Esp8266)

حالت Station: که از آن برای اینترنت اشیا استفاده می‌شود ، که ماژول پس از تظیمات لازم به طور خودکار مودم ADSL را پیدا می‌کند و به اینترنت متصل می‌شود و اقدام به تبادل داده می‌نماید.

حالت Access Point: در این حالت می‌توان با استفاده از کامپیوتر ، تبلت یا موبایل ماژول را جست و جو کرد و به آن متصل شد و به عنوان ریموت بدون نیاز  به اینترنت از آن استفاده نمود.

در قسمت اول قصد داریم با استفاده از سریال مانیتور  AT Command های این ماژول ، اقدام به کنترل ماژول و جست و جو در شبکه‌های‌ وای فای بپردازیم.برای اتنقال AT Command ها به ماژول می‌توان بدون هیچ نیازی به آردوینو عمل کرد و فقط با یک عدد مبدل USB به سریال و نرم افزار Termite ( نرم افزاری برای انتقال  AT Command ها به ماژول و ساخت افزارهای جانبی) استفاده کرد. دانلود نرم افزار Termite ولی در ما در این آموزش از مبدل USB به سریال و همچنین نرم افزار Termite استفاده نکرده‌ایم و به جای آن بر روی آردوینو برنامه‌ی نوشته‌ایم که خود این عملیات را انجام می‌دهد نیاز به مبدیل USB به سریال و نرم‌افزار ذکر شده نمی‌باشد. کد زیر را در آردوینو Uno خود آپلود کنید

اتصال ESP8266 به ربات تلگرام (ایجاد ربات تلگرام)

ربات تلگرام چیست؟

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

برخی از ویژگی‌ها و محدودیت‌های ربات تلگرام:

  • ربات‌ها معمولاً فضای محدودی برای ذخیره‌سازی پیام‌های شما دارند و معمولاً پیام‌های پردازش‌شده پاک می‌شوند.
  • ربات‌ها نمی‌توانند شروع‌کننده‌ی مکالمه باشند و باید حتماً از سمت شما درخواستی برای پردازش به آن‌ها ارسال شده باشد.
  • در انتهای نام کاربری هر ربات باید کلمه bot وجود داشته باشد که مشخص‌کننده‌ی ربات بودن آن حساب کاربری است.
  • ربات‌های تلگرام هرگز خسته و غیرفعال نمی‌شود ولی شما به‌راحتی می‌توانید آن‌ها را برای خود غیرفعال کنید.
  • ربات‌ها با اضافه شدن به گروه‌ها و کانال‌ها قادر به خواندن پیام‌ها نیستند مگر آن‌که تنظیمات آن را تغییر داده باشید.
  • ربات‌ها تعداد محدودی پیام در روز می‌توانند ارسال کنند.
  • ربات‌ها زمان آخرین بازدید را ندارند و به جای آن Bot نمایش داده می‌شود.

ربات تلگرام چه کارهایی را می‌تواند انجام دهد؟

وقتی می‌پرسیم که با آردوینو چه کارهایی می‌توان انجام داد، باید بگوییم که هیچ محدودیتی وجود ندارد؛ تنها محدودیتِ موجود میزان خلاقیت شماست. ربات تلگرام نیز هیچ محدودیتی در پیاده‌سازی ایده‌ها و کاربردها ندارد و هر آنچه که برای آن پیاده‌سازی شده باشد را قادر است انجام دهد. (پروژه الکترونیک Esp8266)

چگونه یک ربات تلگرام بسازم؟

همان‌طور که در عکس فوق هم مشخص است برای ساخت یک ربات جدید باید دستور زیر را به ربات پدرخوانده بفرستیم:C++

۱ /newbot

ربات پدر‌خوانده با دریافت دستور newbot از شما نام کاربری ربات موردنظر را سؤال می‌کند. دقت داشته باشید نام کاربری با نام ربات فرق دارد و نام کاربری ربات شما حتماً در انتها باید دارای bot باشد. اگر نام کاربری را بدون bot در انتها وارد کنید، ربات پدرخوانده پیام زیر را نمایش می‌دهد:

ربات تلگرام چطور کار می کند؟

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

وقتی‌که شخصی به ربات شما پیام ارسال می‌کند، پیام کاربر درون سرور تلگرام ذخیره می‌شود و تلگرام بسته به متد مورد‌استفاده‌ی شما (Web Hook یا Long Polling) برای برقراری ارتباط با سرور تلگرام، پیام کاربر را در قالب خاصی برای شما ارسال می‌کند و شما بعد از پردازش داده‌های ارسالی، پاسخ خود را در قالب مشخصی برای سرور تلگرام ارسال می‌کنید و تلگرام داده‌های دریافتی را برای کاربر ارسال می‌کند.

(پروژه الکترونیک Esp8266)

سرورهای تلگرام به‌عنوان واسط بین کاربر و هسته‌ی پردازشی ربات قرار می‌گیرند. این باعث می‌شود که هسته‌ی پردازشی، آدرس آی پی کاربر را نداشته باشد و امنیت ارتباط بالا برود.

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

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

اشتراک گذاری

پاسخی بگذارید

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