Embedded Academy – Telegram
Embedded Academy
3.95K subscribers
798 photos
118 videos
241 files
250 links
📢 All About Embedded in Persian and English

Embedded Systems
IoT
AI
Machie Vision

در سایر شبکه ها:
aparat.com/embedded
instagram.com/embedded_ir
Twitter.com/embedded_ir

Admin: @embeded
Download Telegram
#fpga
سلام، دوستان برقی! گرامی شما یا دانشجو هستین یا دانشجو بودین ، حتما آز معماری کامپیوتر رو گذروندید؟؟!!
خب بهتون چی درس دادن؟؟
فک می کنم دوست داشته باشین اسلاید های درس آزمایشگاه معماری کامپیوتر دانشگاه mit رو ببینید و البته از مطالب آموزشی خوب اون در زمینه آموزش fpga نیز بهره مند بشین...
پس دانلود کنید...
Embedded Academy, [۰۱.۰۳.۱۶ ۲۲:۵۸]
#آموزش #آردوینو - سری آموزش های کوتاه و قدم به قدم آردوینو
قسمت دوم :
❤️💛💚💙💜


نرم افزار آردوینو:
برنامه های نرم افزاری آردوینو طرح(sketch) نامیده می شوند.این طرح ها توسط برنامه Arduino IDE بوجود می آیند.
سخت افزار آردوینو:
سخت افزار آردوینو به طور کلی شامل برد اصلی آردوینو و ماژول های توسعه آردوینو میباشد.یک برد اصلی آردوینو را می توان با افزودن و اضافه کردن ماژول های مختلف به آن برای استفاده های مختلف ازآن آماده کرد به این ترتیب شما می توانید کامپیوتر مورد نظر خودتان را بسازید.
برد آردوینو:
تاکنون برد های آردوینوی متنوعی وارد بازار شده است که در ادامه به بررسی چند نمونه ازآن ها خواهیم پرداخت اما بطور کلی یک برد آردوینو شامل یک میکروپروسسور avr ، یک کریستال ساعت یا اسیلاتور برای ایجاد پالس ساعت ، یک رگولاتور 5 ولت است، متناسب با برد انتخابی شما آردوینو می تواند شامل اجزای دیگری نیز باشد که به آن اشاره خواهیم کرد.
ماژول های آردوینو:
گاه متناسب با نیازتان میخواهید برد آردوینوی شما از امکاناتی نظیر نوشتن و خواندن SD کارت و یا اتصال به اینترنت و شبکه همچنین ازارتباطات wifi ، zigbee ، Bluetooth بهره ببرد و یا بتوانید برد خودتان را به gps مجهز کنید و بتوانید با نصب سیمکارت برد خودتان را با پیامک کنترل کنید و ... برای این کار لازم است متناسب با آن برد خودتان رابا ماژول های متناسب توسعه بدهید. در ادامه به معرفی و بررسی ماژول های پرکاربرد آردوینو خواهیم پرداخت.
کانال " آکادمی سامانه های نهفنته ایران" ، کانالی متفاوت از هرآنچه دیده اید! و مطابق با هر آنچه در راه Embedded Engineer شدن نیاز دارید!
ما متعهد شده ایم تا تبلیغ نگذاریم!
ما را در زیرپانگذاشتن عهدمان یاری کنید... .

دنیای آینده ، دنیای گسترش امبدد ها و اینترنت اشیا خواهد بود!
دنیا به کامتان !
مارا معرفی کنید :
@embedded
#میدانید #نکته_های_مهندسی_سامانه_های_توکار

از اجزای اصلی سامانه های نهفته ، سیستم عامل موجود و سفارشی شده برای آنهاست، در عصر گسترش اینترنت اشیا و نیاز روز افزون به توسعه نرم افزاری سامانه های توکار و سیستم عامل آنها یا همان
Embedded OS
ها ، مایکرو سافت هم دست بکار شده است...
بعد از ارایه نسخه های ویندوزCE و embedded و IoT ، قصد در نفوذ در بازار اینترنت اشیا و امبدد ها دارد.
حال بیاییم با Windows CE بیشتر آشنا شویم:

مایکروسافت ویندوز سی‌ای (به انگلیسی: Microsoft Windows CE) سیستم‌عاملی است که شرکت مایکروسافت برای سامانه‌های توکار توسعه می‌دهد. ویندوز سی‌ای سیستم‌عامل و هسته‌ای جدا از نسخهٔ رومیزی ویندوز است، به جای اینکه نسخهٔ تضعیف شده‌ای از ویندوز رومیزی باشد.

آخرین نسخهٔ ویندوز سی‌ای از معماری اینتل ایکس۸۶، MIPS و ARM پشتیبانی می‌کند.

https://en.m.wikipedia.org/wiki/Windows_CE
آی جی بی تی ( IGBT ) چیست ؟

#آموزش #الکترونیکـمقدماتی #آموزشـالکترونیک #قطعهـشناسی

ترانزیستور دو قطبی با درگاه عایق‌شده یا IGBT (کوتاه شده عبارت انگلیسی Insulated gate bipolar transistor) جز نیمه هادی قدرت بوده و در درجه اول به عنوان یک سوئیچ الکترونیکی استفاده می شود که در دستگاه های جدید برای بازده بالا و سوئیچینگ سریع استفاده میشود. این سوئیچ برق در بسیاری از لوازم مدرن از جمله خودروهای برقی، قطار، یخچال ها، تردمیل، دستگاه های تهویه مطبوع و حتی سیستم های استریو و تقویت کننده هااستفاده میشود. همچنین در ساخت انواع اینورترها،ترانسهای جوش و UPS کاربرد دارد.

در فرکانسهای بالای کلیدزنی از یک ترانزیستور جهت کنترل سطح ولتاژ DC استفاده میشود. با بالا رفتن فرکانس ترانزیستور دیگر خطی عمل نمی‌کند و نویز مخابراتی شدیدی را با توان بالا تولید میکند.به همین سبب در فرکانس کلیدزنی بالا از المان کم مصرف power MOSFET استفاده میشود. اما با بالا رفتن قدرت،تلفات آن نیز زیاد میشود.المان جدیدی به بازار آمده است که تمامی مزایای 2قطعه فوق را دارد و دیگر معایب BJT و POWER MOSFET را ندارد.این قطعه جدید IGBT نام دارد.در طی سالهای اخیر بدلیل ارزانی و مزایای این قطعه از آن استفاده زیادی شده است.

آی جی بی تی IGBT (ترانزیستور دو قطبی با گیت عایق شده) یک نیمه هادی جدید و کاملاً صنعتی است که از ترکیب 2 نوع ترانزیستور BJT و MOSFET ساخته شده است.بطوریکه از دید ورودی شما یک MOSFET را میبینید و از نظر خروجی یک BJT. BJTها و MOSFETها دارای خصوصیاتی هستند که از نقطه نظرهایی یکدیگر را تکمیل میکنند.

بی جی تی BJT ها در حالت روشن(وصل) دارای تلفات هدایتی کمتری هستند درحالیکه زمان سوئیچینگ آنها به خصوص در زمان خاموش شدن طولانی تر است. MOSFETها قادرند که به مراتب سریعتر قطع و وصل کنند بنابراین تلفات هدایت آنها بیشتر است. IGBT یک ترانزیستوری است که مزایای BJT و MOSFET را باهم دارد مثل:

امپدانس ورودی بالا مثل MOSFET
افت ولتاژ و تلفات کم مانند BJT
نظیر BJT دارای ولتاژ حالت روشن(وصل) کوچکی است.

اسامی پایه ها هم از روی همان اسامی قبلی انتخاب شده G از MOSFET و C,E از ترانزیستورهای BJT.در نتیجه با این ترکیب ساده شما المانی را استفاده میکنید دارای امپدانس بالای گیت و قابلیت تحمل ولتاژ بالا است.سرعت سوییچ کردن این نوع دارای محدودیت بوده بطور نمونه 1KHz تا 50KHz که در کل بین دو نوع BJT و MOSFET قرار میگیرد.و بخاطر امپدانس ورودی بسیار بالایی که دارد بسیار حساس می باشد.و بیشتر در کوره های القایی برای تقویت دامنه ولتاژ استفاده میشود. و در کل مورد استفاده این نوع ترانزیستورها بیشتر برای راه اندازی المانهای توان بالا می باشد.مهمترین و تقریباً تنها کارایی IGBT سوییچینگ جریانهای بالا میباشد.

از ویکی‌پدیا، دانشنامهٔ آزاد
#دانلود #کتاب # رادیو_نرم_افزاری : کتاب را دیو نرم افزاری (SDR) و پیاده سازی آن در متلب MATLAB
#آموزش قدم به قدم #آردوینو
#قسمت_سوم_آردوینو_قدم_به_قدم


برنامه نویسی:
1- مقدمات سی
2- آموزش برنامه نویسی آردوینو
اولین قدم برای نوشتن طرح (sketch) خودتان بر روی آردوینو نیاز است ابتدا از منوی file/new پروزه جدید خود را تعریف نمایید پس شروع کنید !
با ایجاد یک پروژه جدید کد های زیر را مشاهده خواهید کرد:
void setup() {
// put your setup code here, to run once:
}
void loop() {
// put your main code here, to run repeatedly:
}
اگر قبلا بازبان برنامه نویسی c آشنا بوده باشید به شباهت بسیار زیاد برنامه نویسی آردوینو با سی پی خواهید برد، همانطور که مشاهده میکنید شما باید برنامه و طرح خودتان را داخل دو تابع setup و loop بنویسید. در اینجا بشرح کارکرد توابع setup و loop میپردازیم:
• Setup
در این قسمت کدهایی که نیاز است تا یکبار اجرا بشوند و همچنین تعریف پین های برد در این قسمت قرار می گیرند.
• Loop
کدهایی از برنامه در این قسمت نوشته میشوند که می بایست دایما در حال تکرار باشند .
البته پیش از این دو تابع هم می توان کدنویسی کرد ؛ فراخوانی توابع کتابخانه ای آردوینو و همچنین تعریف ثابت ها و متغییر ها می تواند پیش از تابع setup() قرار گیرد.

در زیر نمونه ای از برنامه های آردوینو را مشاهده میکنید:

const int ledPin = 13; // LED connected to digital pin 13
// The setup() method runs once, when the sketch starts
void setup()
{
pinMode(ledPin, OUTPUT); // initialize the digital pin as an output
}
// the loop() method runs over and over again,
void loop()
{
digitalWrite(ledPin, HIGH); // turn the LED on
delay(1000); // wait a second
digitalWrite(ledPin, LOW); // turn the LED off
delay(1000); // wait a second
}



البته این را به خاطر داشته باشید که در صورتی که نیاز باشد تا به تابع کتابخانه ای دسترسی داشته باشیم میبایست در ابتدای برنامه با دستور #include تابع مورد نظر را فراخوانی کنیم.
همانطور که در خط اول برنامه مشاهده می نمایید یک مقدار ثابت را تعریف نموده ایم و در ادامه در قسمت setup پین مورد نظر راتعریف کرده ایم و همچنین در قسمت loop نوع عملکرد مورد نظرمان که همان چشمک زدن است را با قرار دادن تاخیر برای فاصله میان روشن و خاموش بودن ال ای دی تعریف نموده ایم.
#WSN
#آشنایی_با_شبکه_های_حسگر_بیسیم
قسمت 1:

شبکه حسگر بی سیم چیست؟
شبکه حسگر متشکل از تعداد زیادی گره‌های حسگر است که در یک محیط به طور گسترده پخش شده و به جمع‌آوری اطلاعات از محیط می‌پردازند. لزوماً مکان قرار گرفتن گره‌های حسگر، از قبل‌تعیین‌شده و مشخص نیست. چنین خصوصیتی این امکان را فراهم می‌آورد که بتوانیم آنها را در مکان‌های خطرناک و یا غیرقابل دسترس رها کنیم.
#WSN
#آشنایی_با_شبکه_های_حسگر_بیسیم

قسمت 2 :

کار برد های شبکه های حسگر بی سیم

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

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

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


• کاربردهای نظامی
- سامانه مانیتورینگ نفوذ
- مانیتورینگ نیروهای خودی و تجهیزات
- مانیتورینگ نقاط حساس عملیاتی
- نظارت و پایش محیط در گیری
- هدف گیری و تشخیص موقعیت دقیق هدف
- تشخیص خسارت جنگی
- کنترل نیروهای انسانی
- ردیابی نیروهای متخاصم
- سامانه ها تشخیص حملات هسته ای ، رادیو اکتیو و شیمیایی
- و...
• کاربردهای کشاورزی و محیط زیست
- Microclimates
- سامانه اعلام و تشخیص حریق جنگل و مراتع
- استفاده در سامانه های هواشناسی
- سامانه اعلام و تشخیص سیل و رخداد های آبی
- سامانه حفاظت از گونه های زیستی
- استفاده های کشاورزی
- و...
• کاربردهای پزشکی و سلامت
-
• کاربردهای خانگی
• کاربردهای تجاری
#WSN
#آشنایی_با_شبکه_های_حسگر_بیسیم

قسمت3:



سیستم عامل های wsn ها:
سیستم*عامل برای گره*های شبکه ارتباطی گیرنده بی سیم به نوعی پیچیدگی اش کمتر از اهداف کلی سیستم*عامل است. هردو به دلیل احتیاجات خاص و درخواست شبکه ارتباطی خاص و به دلیل اضطرار یا تحمیل منبع در پایگاه سخت*افزاری شبکه گیرنده است برای مثال کاربرد استفاده شبکه گیرنده معمولاً همکاری متقابل مثل یک کامپیوتر نیست. به همین علت، سیستم*عامل احتیاجی به پشتیبانی کاربرد ندارد علاوه برآن تحمیل یا اضطرار منبع در دوره حافظه و نقشه حافظه سخت*افزار را پشتیبانی می*کند و ساختمانی می*سازد مثل حافظه مجازی که هردو غیر ضروری و غیر ممکن برای انجام دادن هستند. شبکه ارتباطی گیرنده بی سیم، سخت*افزارهایش فرقی با سیستم*های سنتی تعبیه شده ندارد و بنابراین استفاده از سیستم*عامل تعبیه شده ممکن است مثل ecos یا VC/OS برای گیرنده شبکه ارتباطی و اگرچه مثل سیستم*عامل طراحی شده*اند با خواص بی*درنگ و برخلاف سیستم*عامل تعبیه شده سنتی اگر، سیستم*عامل هدف مخصوص شبکه*های ارتباطی گیرنده است. اغلب پشتیبانی بی*درنگ ندارد. Tiny Os شاید اولین سیستم*عاملی باشد که مخصوصا طراحی شده برای شبکه ارتباطی گیرنده بر خلاف بیشتر سیستم*عامل*های دیگر Tiny Os براساس برنامه کامپیوتری یا فرایندی که هر مرحله اجرا مربوط به تحمیلات خارجی است برنامه نویسی می*کند و مدل را به جای طرح برنامه*ای که بیش از یک مسیر منطقی استفاده می*کند و هر مسیر هم*زمان اجرا می*شود که می*گوییم (multithread).

TinyOs برنامه دستوری که تشکیل شده از گرا و کارهایی که تداوم پیدا می*کند در تکامل معنایی زمانی که پیشامد خارجی رخ می*دهد و مانند وارد شدن اطلاعات و خواندن گیرنده.

TinyOs خبر می*دهد از گرای مناسبی که اتفاقات را شرح می*دهد گرا می*تواند ارسال کند کارهایی را که برنامه ریزی شده با هسته اصلی TinyOs در زمانی عقب*تر. هردوی سیستم TinyOsو برنامه نوشته شده برای TinyOs که آنها نوشته شده*اند با برنامه نویسی C است. Nesc طراحی شده برای یافتن Race-Condition (حالت نا معینی که به هنگام عملکرد هم*زمان دستورالعمل*های دو کامپیوتر به وجود می*آید و امکان شناخت این مسئله که کدام یک از آنها ابتدا تمام خواهد شد وجود ندارد) بین وظایف و گراها.

و همچنین سیستم*های عاملی هستند که اجازه برنامه نویسی در C را می*دهند مثل سیستم*عامل*هایی شامل Contiki و MANTIS و BT nut و SOS و Nano-RK.

Contiki طراحی شده*اند برای پشتیبانی و اندازه*گیری بارگیری در شبکه و پشتیبانی زمان اجرای بارگیری در استاندارد فایلهای ELF. هسته Contiki را برنامه کامپیوتری یا فرایند کامپیوتری است که هر مرحله اجرا مربوطه به عملیات خارجی است Event-driven اما سیستم پشتیبانی می*کنند از (طرح برنامه*ای که بیش از یک مسیر منطقی است و هر سیر هم*زمان اجرا می*شود) Multithread در زمینه پیش درخواست*ها – علاوه بر آن شامل خطوط برجسته*ای که فراهم می*کند خطوطی را که مثل برد برنامه نویسی اما با حافظه خیلی کوچک در بالای سر.

برخلاف Event-driven، هسته Contiki و MANTIS و Nano-RK هسته*هایی که بر اساس قبضه*ای انحصاری Multithread است. با قبضه*ای انحصاری Multithread که کاربرها صراحتاً احتیاجی به ریز پردازنده برای دیگر پردازش*ها ندارند. در عوض هسته زمان را تقسیم می*کند به پردازش*های فعال و تصمیم می*گیرد که کدام پردازش می*تواند کار کند ولی می*تواند استفاده از برنامه نویسی را راحت کند.

شبکه ارتباطی و گیرنده مثل TinyOs و Contiki و SOS و Even-driven سیستم*عاملی است که ترکیب اولی SOS که پشتیبانی برای ظرفیت بارگیری. سیستم*عامل کامل ساخته شده از ظرفیت*های کوچک*تر و سریع SOS همچنین تمرکز در پشتیبانی برای مدیریت حافظه دینامیک است.
#WSN
#آشنایی_با_شبکه_های_حسگر_بیسیم


قسمت 4:
#امنیت WSN
ازجمله مباحث پراهمیت تو این زمینه {از زمینه های امنیت سخت افزاری و امنیت سامانه های نهفته}
توجه به ساختار داخلی wsn ها و ویژگی های خاص مربوط به آنهاست.

از جمله ویژگی های wsn ها بدین شرح اند :
1) Limited Memory and Storage Space | رم و فضای ذخیره سازی محدود :
پس برای داشتن یه مکانیزم دفاعی و امنیتی مناسب نیاز هستش تا
برنامه و کد ها مون بسیار کوتاه و کم حجم باشند.

برای مثال یک نوع از همین سنسورها دارای مشخصات زیر هستش:
-16bit, 8 MHz RISC CPU with only 10K
RAM, 48K program memory, and 1024K flash storage
بنابراین باید الگوریتم و کد امنیتی که نوشته بسیار بسیار کوتاه باید باشد.
که اینجا هنر برنامه نویس آشکار خواهد شد...

نکته : فضای اشغال شده توسطTinyOS سیستم عامل این wsn ها حدود 4k هستش!!
— هسته برنامه 178 بایت است.
#WSN
#آشنایی_با_شبکه_های_حسگر_بیسیم



ویژگی بعدی که باید در زمینه تامین امنیت wsn ها مورد توجه قرا بگیرد :

2) Power Limitation | منابع محدود انرژی

سنسور های بی سیم عمدتا برای استفاده های بیسیم و در فواصل دور و استفاده های طولانی مدت به کار برده می شوند. که می بایست همه این سنسور های در شبکه حسگر بیسیم باهم در ارتباط باشند و در کل به گره مرکزی یا sink متصل بشوند.
بنابر این نیاز به انرژی بالایی برای مصرف دارند و هم چنین بدلیل کوچک بودن امکان استفاده از منبه تغذیه حجیم وجود ندارد وباید تا حد ممکن بسیار کوچک باشد...

اما نکته مورد نطر برای تامین امنیت چیست ؟
— باید توجه داشته باشیم برای در نظر گرفتن الگوریتم خاصی در زمینه رمز نگاری و یا استفاده از پروتکل مشخص امنیتی برای تامین ارتباط بین نود(node) ها مصرف باتری بالا می رود وبا مشکل مواجه خواهیم بود.
پس در طراحی سیتم امنیتی مناسب باید این نکته را مد نظر قرار داد که منابع انرژی محدودند و استفاده از سرویس های مختلف امنیتی نباید نیاز به مصرف انرژی زیادی داشته باشند..
#دانلود #کتاب کاربردهای #WSN