09120786892
atrinelectronic@gmail.com تهران پاساژ امجد طبقه1 واحد 16
اجرا برنامه کنسول NET Core 2.0 در Windows 10 IoT Core Raspberry Pi 3

اجرا برنامه کنسول NET Core 2.0 در Windows 10 IoT Core Raspberry Pi 3

2018-08-02 20:49:39

در مطلب قبلی با نحوه نصب .net core 2 runtime بر روی رزبری آشنا شدیم و در این پست قصد داریم تا  اولین پروژه کنسول خودمون که با دات نت کور نوشته شده رو بر روی رزبری پای اجرا کنیم.

برای اینکار ابتدا بر روی کامپیوتر خودتون ( نه رزبری) که sdk .net core  هم نصب هست یه پوشه دلخواه بسازید مثلا میتونید اسم پوشه را بذارید simple .net core 2 for ubuntu


حالا به پوشه مورد نظر برید.

در بخش لازمه تا CMD  را اجرا کنید. برای اجرا cmd  در همین پوشه simple .net core 2 for ubuntu در نوارد ادرس بالا عبارت CMD  را تایپ کنید.

با باز شدن cmd دستور زیر را تایپ کنید

dotnet new console -n coreiot

حالا میبینید یه پوشه به نام coreiot ایجاد شده ، CMD  فعلی رو ببندید و به پوشه coreiot  برید و فایل coreiot.csproj رو باز کنید. در این فایل خط <TargetFramework>netcoreapp2.0</TargetFramework> رو پیدا کنید و عبارت های زیر رو بهش اضافه کنید تا فایل نهایی شما به صورت زیر شود البته برای مقدار RuntimeFrameworkVersion بستگی داره چه نسخه از net core runtime  روی سیستم شما نصب باشه که چون روی سیستم من نسخه ۲٫۰٫۹ نصب بود منم عبارت ۲٫۰٫۹ رو نوشتم ، البته در کل باید نسخه ۲٫۰٫۰ به بعد روی سیستم شما نصب باشه.

<Project Sdk=”Microsoft.NET.Sdk”>

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp2.0</TargetFramework>
<RuntimeFrameworkVersion>2.0.9</RuntimeFrameworkVersion>
<RuntimeIdentifiers>win8-arm;ubuntu.14.04-arm;ubuntu.16.04-arm</RuntimeIdentifiers>
</PropertyGroup>

</Project>

در دستورات بالا در جلو RuntimeIdentifiers عبارت win8-arm  برای اینه که برنامه شما روی win10 iot core  قابل اجرا باشه و عبارت های ubuntu.14.04-arm;ubuntu.16.04-arm برای اینه که برنامه شما در رزبری با سیستم عامل ابنتو قابل اجرا باشه. فایل coreiot.csproj  رو ذخیره کنید و در همین پوشه coreiot که هستید cmd را طبق آموزش ابتدای پست اجرا کنید و دستور زیر را بزنید.

dotnet restore

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

در صورتی که میخواین برنامه شما برای روی نسخه ویندوز  windows 10 iot core  اجرا بشه  دستور زیر را بزنید

dotnet publish -r win8-arm

در صورتی که میخواین برنامه شما بر روی  ۱۶٫۰۴ ubuntu  در رزبری اجرا بشه  دستور زیر را بزنید

dotnet publish -r ubuntu.16.04-arm

در این مرحله اگه به پوشه simple .net core 2 for ubuntu\coreiot\bin\Debug\netcoreapp2.0 برید ۲ فولدر جدید به نام های ubuntu.16.04-arm و win8-arm میبینید که در هر کدوم فایل ها این پروژه مربوط به سیستم عامل مورد نظر قرار داره.به عنوان مثال ما میخوایم برنامه مورد نظر را در  Windows 10 IoT Core اجرا کنیم پس به پوشه \coreiot\bin\Debug\netcoreapp2.0\win8-arm\publish میریم و فایل ها داخل این پوشه رو کپی مکنیم

همونطور که میدونید یکی از راههای ارتباطی با  windows 10 iot core  استفاده از نرم افزار  Microsoft IoT Dashboard هست ، برای ارسال فایل های پروژه مون نرم افزار  Microsoft IoT Dashboard رو باز میکنیم

همینطور که در عکس بالا هم مشاهده میکنید لیست دیوایس های موجود به همراه نوع سیستم عامل ، نوع دیوایس و آی پی اون رو مشاهده میکنید همینطور که در عکس بالا هم معلومه ای پی دستگاه ما ۱۹۲٫۱۶۸٫۱٫۱۱۱ هست که البته ممکنه برای شما متفاوت باشه ، برای انتقال فایل ها به رزبری ۲ راه هست یکی باز کردن ادرس زیر که شامل ادرس آی پی دستگاه هست در Windows Explorer  ویندوز به صورت زبر

\\۱۹۲٫۱۶۸٫۱٫۱۱۱\c$

یا این که براحتی میتونیم رو ردیف دستگاهمون راست کلیک کنیم و گزینه Open Network Share رو انتخاب کنیم .

با انجام اینکار درایور c  دستگاه رزبری ما باز میشه ، برای ادامه کار یه پوشه به نام دلخواه میسازم مثلا به نام CoreApplications  و داخل اینه پوشه یه پوشه دیگه به نام coreiot  میسازیم. در عکس زیر در سمت چپ میتونید پوشه publish  پروژه رو مشاهده کنید و در سمت چپ پوشه جدید ایجاد شده در رزبری 
خوب حالا فایل های موجوود در پوشه publish  که در پوشه win8-arm  وجود داره و برای نسخه ویندوز رزبری هست رو به دستگاه رزبری و در پوشه coreit  کپی میکنیم.

حالا نوبت به اجرا برنامه ما در دستگاه رزبری میرسه که از ابزار ها متفاوتی مثل power shell  و  putty  میتونیم استفاده کنیم که در این بخش باز نرم افزار Microsoft IoT Dashboard رو باز میکنیم و روی دستگاه خودمون راست کلیک کرده و گزینه  lunch power shell رو انتخاب میکنیم.

در این مرحله پاورشل اجرا شده و از ما رمز دستگاه رو یخواد که رمز عبور ساخته شده پیش فرض رو وارد میکنیم . رمز عبور پیش فرض برای سیستم عامل windows 10 iot core  عبارت p@ssw0rd هست .بعد از وارد کردن رمز باید چند ثانیه ای ( ممکنه تا ۳۰ ثانیه) منتظر بمونیم تا ارتباط برقرار بشه و صفحه پاورشل برای ما نشون داده بشه 

حالا باید به پوشه ای که قبلا ساختیم و فایل های برنامه رو داخل اون کپی کردیم بریم که میشه پوشه C:\CoreApplications\coreiot برای این کار در پاور شل عبارت روبرو رو تایپ میکنیم تا به پوشه مورد  نظر بریم

PS C:\Data\Users\administrator\Document> Set-Location -Path C:\CoreApplications\coreiot

و باید برنامه خودمون رو که به نام ./coreiot.exe رو ران کنیم که مشابه عکس زیر میشود

در صورتیکه همه چی درست اجرا شده باشه عبارت Hello Word!  رو باید ببینیم.( منبع انگلیسی مطلب)

به سبد خرید اضافه شد.
سبد خرید
Item removed. بازگرداندن