ایجاد سرور محلی برای رفع مشکل اپلیکیشن Blynk

blog
۱۳۹۹-۰۴-۱۹
4 دقیقه

Blynk یک بستر، زیر ساخت و پلت فرم آماده با امکانات فراوان برای توسعه اینترنت اشیاء می‌باشد. در واقع بلینک با عرضه نرم افزار برای گوشی‌های اندروید و ios امکان مدیریت اینترنت اشیاء را با بهترین و پیشرفته‌ترین امکانات در اختیار کاربر قرار می‌دهد. اما متأسفانه در ایران دسترسی به سرور این برنامه رایگان و متن باز، محدود شده است. در این مقاله قصد داریم تا با ایجاد یک سرور محلی یا لوکال سرور (Local Server)، مشکل اپلیکیشن Blynk را برطرف کنیم.

 

معرفی کوتاه پلتفرم Blynk

Blynk یک اپلیکیشن و پلت فرم است که به شما این امکان را می‌دهد تا در کمترین زمان ممکن، یک رابط کاربری برای مشاهده و کنترل پروژه‌های سخت افزاری خود در تلفن هوشمند اندرویدی یا IOS داشته باشید. پس از دانلود اپلیکیشن بلینک، شما قادر خواهید بود تا در آن ثبت نام کنید و سپس یک پروژه جدید در آن ایجاد کنید. شما در این نرم افزار پنل مدیریتی (داشبورد)، دکمه‌های گوناگون، اسلایدر، نمودار، ابزارک و … در اختیار خواهید داشت تا بتوانید برد اینترنت اشیاء خود را مدیریت کنید.

شما به وسیله Blynk می‌توانید برد اینترنت اشیاء (همانند آردوینو و ESP8266) خود را با تلفن هوشمندتان کنترل کنید!

 

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

برای مثال، در تصویر دما و رطوبت دریافت شده از سنسور DHT11 را در نرم افزار اندرویدی می‌بینید:

نمایش دما DHT11 در نرم افزار blynk

 

دانلود نرم افزار Blynk

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

پس از دانلود و نصب نرم افزار، شما می‌بایست در آن ثبت نام کرده و سپس توکن دریافتی را در برنامه آردوینو وارد نمایید. اما نرم افزار به سرور Blynk متصل نمی‌شود و نمی‌توانید ثبت نام خود را تکمیل کنید:

ایجاد سرور محلی برای رفع مشکل اپلیکیشن Blynk

در این مقاله قصد داریم تا نحوه ساخت سرور محلی (لوکال یا خصوصی) بر روی کامپیوتر شخصی برای Blynk را آموزش دهیم.

 

ساخت سرور محلی

نیازمندی ها

هر سیستم عاملی که جاوا را اجرا کند.

نصب داشتن جاوا  11.8

حداقل 30 مگابایت حافظه آزاد رم.

باز بودن پورت 9443 (برای اتصال ایمن نرم افزار و سخت افزار از طریق SSL) یا 8080 برای اتصالات غیر ایمن.

 

راه اندازی

برای راه اندازی سرور، ابتدا خط فرمان سیستم عامل (برای مثال CMD ویندوز) را باز کرده و دستورات زیر را در آن وارد کنید:

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

java -version

خروجی دستور:

java version “11”

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

 

دانلود راه انداز سرور محلی Blynk

ابتدا از آدرس گیت هاب پروژه، فایل آخرین نسخه منتشر شده را (که نامی شبیه به server-0.41.12-java8.jar دارد)، دانلود کنید و در فولدر مناسبی روی کامپیوتر خود ذخیره کنید.  بهتر است این فایل را در درایو C ذخیره نمایید.

 

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

فرض کنید فایل جاوا را در درایو C و در فولدری به نام server ذخیره کرده‌اید. با استفاده از دستور cd به فولدر مورد نظر بروید.

 

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

توضیح پارامتر به پارامتر دستور بالا:

java: یعنی این دستور باید توسط java اجرا گردد.

-jar: این آپشن به جاوا اطلاع می‌دهد که فایل برنامه مورد نظر، از نوع jar می‌باشد.

server-0.41.12.jar: نام فایل راه انداز سروری است که از گیت هاب دانلود کرده‌اید. نکته: با توجه به نسخه دانلودی شما، ممکن است نام ورژن این فایل متفاوت باشد.

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

 

پاسخ CMD برای راه اندازی سرور محلی Blynk با جاوا

 

در صورتی که همه چیز درست باشد، در ادامه پیامی مشابه پیام زیر دریافت خواهید کرد:

این بدان معنی است که سرور محلی با موفقیت راه اندازی شده است و که آی پی سرور محلی (لوکال)، نام کاربری و رمز عبور ورود به نرم افزار بلینک شما را می‌دهد!

 

ورود به نرم افزار

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

ایجاد سرور محلی برای رفع مشکل اپلیکیشن Blynk

اتصال به شبکه خصوصی در blynk

 

مزایا و معایب ایجاد سرور محلی یا لوکال

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

اطلاعات
23
0
لینک و اشتراک
profile

Digi Boy

متخصص الکترونیک

به دانش فزای و به یزدان گرای، که او باد جان تو را رهنمای (فردوسی)

مقالات بیشتر
slide

پالت | بازار خرید و فروش قطعات الکترونیک

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

آیسی | موتور جستجوی قطعات الکترونیک

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

فروشگاه سیسوگ

فروشگاه سیسوگ مجموعه ای متمرکز بر تکنولوژی های مبتنی بر IOT و ماژول های M2M نظیر GSM، GPS، LTE، NB-IOT، WiFi، BT و ... جایی که با تعامل فنی و سازنده، بهترین راهکارها انتخاب می شوند. برو به فروشگاه سیسوگ
family

سیسوگ فروم | محلی برای پاسخ پرسش‌های شما

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

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
خانواده سیسوگ

پالت | بازار خرید و فروش قطعات الکترونیک

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

آیسی | موتور جستجوی قطعات الکترونیک

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

فروشگاه سیسوگ

فروشگاه سیسوگ مجموعه ای متمرکز بر تکنولوژی های مبتنی بر IOT و ماژول های M2M نظیر GSM، GPS، LTE، NB-IOT، WiFi، BT و ... جایی که با تعامل فنی و سازنده، بهترین راهکارها انتخاب می شوند.
family

سیسوگ فروم | محلی برای پاسخ پرسش‌های شما

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

دیدگاه ها

profile
Abolm گفت :
۱۴۰۲-۰۴-۲۲ ۰۶:۳۵

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

profile
Zeus ‌ گفت :
۱۴۰۲-۰۷-۰۷ ۱۲:۴۹

امکان نگهداری همه ریسورس ها رو نداریم

profile
متین گفت :
۱۳۹۹-۰۶-۰۳ ۰۰:۳۴

سلام برای من موقع ساخت سرور ارور زیر رو میده:
unable to access jarfile server
مشکل چیه؟ اخرین نسخه جاوا هم نصب کردم. نمیدونم منظورش از نسخه جاوا یازده کدومه؟!
چون jre جاوا اخرین نسخش 8 و 10عه یازده نداره
ولی jdk تا نسخه 14 اش هم اومده
همشم نصب کردم ولی باز این مشکل هست لطفا راهنمایی کنید

profile
Digi Boy گفت :
۱۳۹۹-۰۷-۰۶ ۱۰:۰۵

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

profile
میثم گفت :
۱۳۹۹-۰۵-۰۹ ۰۱:۲۹

سلام اگر مودم از نوعی باشه که بشه یک اکانت اتصال خصوصی مجازی روش ست کرد کلا دیگه نیاز به سرور لوکال و داستانهای بعدی نیست؟

profile
Digi Boy گفت :
۱۳۹۹-۰۵-۰۹ ۰۹:۰۵

درود بر شما.
اگر منظورتون شبکه guest هست که نه، اون یه بحث دیگه ایه.
اگر قابلیت port forwarding داشته باشه، میتونید.
همین طور اگر آی پی استاتیک ندارید از یک سرویس DDNS میتونید استفاده کنید.

profile
Kian گفت :
۱۳۹۹-۰۴-۲۳ ۰۷:۳۶

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

profile
Digi Boy گفت :
۱۳۹۹-۰۴-۲۴ ۱۰:۲۵

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

profile
هادی گفت :
۱۳۹۹-۰۴-۲۱ ۱۴:۱۴

سلام ممنون میشم درباره لینوکس و آموزشش رو هم بزارین،و این که چه چیز شگفت انگیزی در لینوکس هست که حتی حاضر به مقایسه با ویندوز هم نیستن من و خیلی های دیگه استقبال میکنیم با تشکر

profile
Digi Boy گفت :
۱۳۹۹-۰۴-۲۲ ۱۰:۱۱

درود بر شما، میتونید آموزش های امبدد لینوکس سیسوگ که به تازگی شروع شده اند رو دنبال کنید:
https://sisoog.com/embedded-linux-training-course/

profile
محسن گفت :
۱۳۹۹-۰۴-۲۰ ۲۰:۱۱

دمتون گرم خیلی ممنون از مطلب مفیدتوون واقعا کاربردیه بالاخره موفق شدم رو لبتابم سرور لوکال راه بندازم بلینکم راه افتاد خیلی حال کردم!!! قبلش هر چقدر میخواستم خودم این کارو بکنم نمیتونستم

profile
Digi Boy گفت :
۱۳۹۹-۰۴-۲۱ ۱۰:۱۹

از اینکه آموزش براتون مفید بوده خوش حالم!

profile
سعید گفت :
۱۳۹۹-۰۴-۲۰ ۱۵:۵۱

سلام مهندس
مطلب خیلی خوب و جالبی بود.برای اون مورد آخر که گفتید نمیشه از خارج از شبکه محلی به این سیستم متصل شد یه پیشنهاد دارم که احتمالا حل میکنه این مشکل رو.
به نظرم اگه به جای اینکه از کامپیوتر خونه به عنوان سرور استفاده کنیم از سرورهای رایگان که تو اینترنت هستند استفاده کنیم میتونیم دو تا مشکل رو همزمان حل کنیم.مشکل اول اینکه دسترسی از خارج از شبکه امکان پذیر میشه و مشکل دوم اینکه لازم نیست یه کامپیوتر رو برا یه سرور ساده همیشه روشن نگه داریم.
سرورهایی که من باهاشون کار کردم مثه Portmap.io خیلی ساده میتونن این مشکل رو حل کنن و چون محل این سرورها هم خارج از ایران هستش اون مشکلات احتمالی که میگفتید رو نخواهد داشت.
اون قسمتی هم که گفتید از طریق تنظیمات روتر مشکل دسترسی رو حل کنیم احتمالا منظورتون روش Port Forwarding بوده.این روش برای روترهای خونگی جواب میده ولی اگه شما بخواید از مودم های USB مثلا استفاده کنید امکان این کار رو به احتمال زیاد ندارید (ISP های مخابراتی معمولا اجازه این کار رو نمیدن) و به همین خاطر عملا شاید این روش تو سیستم هایی که قراره قابل حمل باشن اجرایی نیست.

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

profile
Digi Boy گفت :
۱۳۹۹-۰۴-۲۱ ۱۰:۰۳

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

profile
امیر گفت :
۱۳۹۹-۰۴-۲۰ ۱۱:۱۷

سلام
ممنون از توضیحات با جزئیات عالی تون.
من خیلی حسی بهش ندارم، معمولا هم پوست ام کنده میشه خودم ui میزنم برا همه چی.
اما میشه برا استفاده ی صنعتی یا تجاری، یه سرور خیلی ارزون از یه جا مثل “ابر آروان ” اجاره کرد و روش نصب کرد.
اینطوری احتمالا میشه توی چند پروژه هم ازش استفاده کرد. آنلاین و بی دغدغه
مرسی

profile
Digi Boy گفت :
۱۳۹۹-۰۴-۲۱ ۱۰:۰۶

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

profile
محمدرضا گفت :
۱۳۹۹-۰۴-۲۰ ۱۱:۱۶

سلام، با این اپ فقط برد های pi, arduino,, رو میتونیم مدیریت کنیم؟
بردهایی ک خودمون طراحی کردیم رو نمیتونیم

profile
Digi Boy گفت :
۱۳۹۹-۰۴-۲۱ ۱۰:۱۲

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

profile
محمدرضا گفت :
۱۳۹۹-۰۴-۲۲ ۲۱:۳۱

خیلی ممنون از توضیح کاملتون

profile
mm4hdim گفت :
۱۳۹۹-۰۴-۱۹ ۲۰:۲۲

سلام
ممنون بابت اشتراک دانشتون

میشه از طرق ip forwarding و یک قدم جلو تر از طریق dynamic dns با یک دامنه به سرور لوکال کانکت شد

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

profile
Digi Boy گفت :
۱۳۹۹-۰۴-۲۱ ۱۰:۱۶

درود بر شما
فکر می‌کنم برای راه اندازی باید دسترسی خاصی هم به سرورها داشته باشید که این موضوع رو باید روی سرویس مربوطه تست کنید.
متشکرم.

profile
Akam گفت :
۱۳۹۹-۰۴-۱۹ ۱۸:۴۹

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

profile
Digi Boy گفت :
۱۳۹۹-۰۴-۲۱ ۱۰:۱۵

درود بر شما
توی readme گیت هاب توضیحاتی برای لینوکسی ها هم وجود داره که بدنیست اون ها رو هم مطالعه کنید:
https://github.com/blynkkk/blynk-server

become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
become a writer

نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله