آموزش ARM

آموزش ARM : راهنمای عمومی Cortex-M3

به نام خدا

در کتاب آموزش ARM که در ضمیمه این مطلب گذاشته شده است به تفصیل در مورد موارد زیر شرح داده است است:

  1. پردازنده Cortex-M3 و قابلیت ها
  2. نحوه پروگرام کردن پردازنده، مدل حافظه، رسیدگی به خطاهای و مدیریت توان
  3. دستورات پردازنده (دستورات اسمبلی ARM) و برخی توابع CMSIS مععادل دستورات
  4. اطلاعاتی در مورد واحد های جانبی Cortex-M3
  5. در ضمیمه این کتاب آموزش ARM اطلاعاتی در مورد پیاده سازی پردازنده و پیکره بندی برخی امکانات ذکر شده است.

این کتاب آموزش ARM توسط شرکت ARM.com ارائه شده است.

همچنین جهت برنامه نویسی حرفه ای ARM می توانید از دوره آموزش ARM که توسط شرکت نوین تراشه برگزار می شود استفاده نمایید.

  آموزش ARM (1٫3 MiB, 835 hits)

Raspberry-Pi-3-aa-03

آموزش FPGA-جلسه سوم-تاریخچه FPGA و سیستم های دیجیتال

آموزش FPGA-جلسه سوم-تاریخچه FPGA و سیستم های دیجیتال

Raspberry-Pi-3-aa-03شکل 1-4: برد Raspberry PI مبتنی بر سیستم عامل Linux

NXP_Cortex-M3شکل 1-5:میکرو کنترلر ARM از شرکت NXP

ArduinoMega

ArduinoUno1

 شکل 1-6 : برد  میکرو کنترلر Mega 2560 محصول  Arduino     شکل 1-7 : برد  میکرو کنترلر UNO محصول Arduino

سومین جلسه از مجموعه آموزش های FPGA شرکت نوین تراشه البرز را با بررسی میکروکنترلر ها (Microcontrollers) ادامه می دهیم. در دومین جلسه از آموزش FPGA، در مورد استفاده از هسته های ARM مبتنی بر سیستم عامل در داخل FPGA ها و تحت عنوان تکنولوژی SOC (به جلسه دوم آموزش FPGA رجوع کنید.) صحبت شد. از جمله مهمترین بردهای مطرح در این زمینه مبتی بر سیستم عامل می ­توان به Arduino Yun، Beagle bone Black، Intel Galileo و Raspberry Pi اشاره نمود. هر کدام یک از این بردها، دارای توانایی و قابلیت ­های متفاوتی هستند که متناسب با نوع نیاز کاربر و تنوع پروژه­ ها طراحی و ساخته شده ­اند. در شکل 1-4 برد  Raspberry Pi به عنوان یک نمونه از این برد های سیستم عاملی نشان داده شده است. وجود سیستم عامل هایی مثل Linux در حقیقت این برد ها را به یک کامپیوتر کوچک تیدیل کرده است. شاید بتوان گفت ابزار هایی مثل تبلت، تلفن های هوشمند و .. نتیجه ظهور تراشه های  ARM مبتنی بر سیستم عامل هستند. دوستانی که علاقه مند به دانستن اطلاعات بیشتر در این زمینه هستند، می توانند، به بخش مطالب آموزش و قسمت دوره آموزشی Embedded System در سایت شرکت نوین تراشه البرز مراجعه نمایند.

در شکل 1-5، یک تراشه ARM از شرکت NXP نشان داده شده است. در این گروه از تراشه های ARM، سیستم عامل دیگر نقش چندان مهمی نداشته و این تراشه ها با اهدافی متمایز وارد بازار الکترونیک شده اند. برای مثال، LPC4088 میکروکنترلری با مدرن ترین هسته ARM  است که با بهره گیری از این هسته پرقدرت یعنی CORTEX-M4  به گزینه قدرتمند، سریع و البته کاملاً اقتصادی برای کارهای پردازش سیگنال تبدیل شده است. این هسته پرسرعت به دلیل دارا بودن واحد FPU، مخفف سه کلمه Floating Point Unit، می تواند عملیات پردازشی را با سرعت بسیار زیادتری نسبت به هسته های فاقد FPU انجام دهد. همان گونه که در ابتدای جلسه سوم آموزش FPGA  گفته شد هدف اصلی این بخش بررسی ساختار میکرو کنترلر ها و جایگاه آنان می باشد. در عصر حاضر، علم و خلاقیت دو فاکتور تاثیر گذار در پیشبرد تکنولوژی محسوب می شوند. Arduino در حقیقت یک تفکر زیبا بر مبنای میکرو کنترلر های شرکت Atmel است. در ادامه سومین جلسه آموزش FPGA، قصد داریم به بررسی اجمالی این تفکر زیبا بپردازیم. در شکل های 1-6 و 1-7 دو نموه از برد های معروف و پر کاربرد Arduino نشان داده شده است. برد MEGA 2560، از تراشه Mega 2560 شرکت Atmel استفاده نموده است. وجود 256 کیلو بایت حافظه فلش، شش عد تایمر / کانتر، 100 پایه ورودی/خروجی و …، برد Mega 2560 را به یک برد عملیاتی برای بسیاری از کار ها تبدیل کرده است. معجزه Arduino، در حقیقت زبان برنامه نویسی آن محسوب می شود. به دلیل ساختار Open Source این تفکر، حجم گسترده ای از اطلاعات به همراه پروژه ها برای آن موجود است.

در ادامه قصد داریم به یک جمع بندی از بخش اول آموزش FPGA بپردازیم. در جلسه اول آموزش FPGA، ساختار الکرونیک دیجیتال (تراشه های TTL و CMOS ) و علت به وجود آمدن FPGA ها بررسی شد. در جلسه دوم آموزش FPGA، تکنولوژی SOPC و SOC بررسی شد. در جلسه سوم آموزش FPGA، یک نگاه اجمالی و سریع بر روی میکرو کنترلر ها انجام شد. در حقیقت میکرو کنترلر ها در قالب دو گروه مبتنی بر سیستم عامل (مانند Raspberry Pi) و مبتنی بر رجیستر (LPC4088 و Mega 2560) دسته بندی شدند. با توجه به مطالب بیان شده در سه بخش ابتدایی آموزش FPGA، در بخش دوم  آموزش FPGA به بررسی الکترونیک دیجیتال کاربردی به همراه ساختار داخلی  FPGA ها خواهیم پرداخت.

منابع:

ARM architecture – Wikipedia, the free encyclopedia

Arduino.com

Arduino.ir

alt-wr-01

آموزش FPGA-جلسه دوم-تاریخچه FPGA و سیستم های دیجیتال

آموزش FPGA-جلسه دوم-تاریخچه FPGA و سیستم های دیجیتال

کاربرد میکروپروسسورها در FPGA

       شکل 1-2: FPGA ها با ساختار  SOPC.

P2-SOC

 شکل 1-3: FPGA ها با ساختار  SOC.

دومین جلسه  از مجموعه آموزش FPGA را با هدف بررسی تاریخچه سیستم های دیجیتال به ویژه تاریخچه FPGA ادامه می دهیم. همان گونه که در جلسه اول آموزش FPGA گفته شد، از سال 2005 به بعد، ایده طراحی سیستم ­های تعبیه شده(ٍEmbedded System) به صورت قابل توجهی تغییر کرد و این امکان به وجود آمد تا طراحی از سطح گیت و HDL به طراحی در سطح سیستم برسد. همین جهش تکنولوژی عامل اصلی ایجاد پروسسورهای سی و دو بیتی نرم ­افزاری  NIOSII توسط شرکت ALTERA و MicroBlaze توسط شرکت XILINX شد. Altera و Xilinx دو شرکت  بزرگ تولید کننده FPGA در سطح دنیا هستند.  در حال حاضر، توسعه نرم­ افزاری و ایجاد تکنولوژی­ هایی مانند SOPC و یا SOC که به ترتیب  این لغات اختصار واژه های  (System on a Programmable Chip)  و (System on Chip) هستند. این سیستم ها این امکان را در اختیار کاربر قرار می­­ دهند تا کاربر بتواند با زبان­ های سطح بالا مانند C، جاوا (JAVA) و یا برمبنای سیستم عامل ­هایی مانند Linux، میکرو C برای FPGA ها برنامه ­ریزی کنند. در شکل های 1-2  و 1-3 این ساختار های جدید  نشان داده شده است. شکل 1-2 نمایی کلی از یک تکنولوژی SOPC را نشان داده است.

شعار اصلی این تکنولوژی، طراحی یک سیستم در مدت زمان چند دقیقه است و از ویژگی­ های منحصربه­ فرد آن می ­توان به طراحی نسبتا آسان و سریع اشاره کرد. کاربر در این سیستم قادر خواهد بود در مدت زمان اندکی واحدهای مختلفی همچون USB، PIO،SDRAM،FIFO و … براحتی در کنار هم قرار داده و سیستم مورد نیاز خود را طراحی نماید. شکل 1-2 ، نمایی از درون یک سیستم با تکنولوژی SOPC را نشان داده است. آن چیزی که در این سیستم بسیار مهم است باس(BUS) هوشمندی تحت عنوان باس  Avalon می ­باشد. این باس، این قدرت را دارد تا یک واحد هشت بیتی را به راحتی به یک واحد سی ­و دو بیتی متصل نماید و این در حالی است که در گذشته این امر با مشکلات و زحمت بسیار زیادی انجام می ­شد.

با توجه به جهش روز افزون هسته ­های ARMو قابلیت­هایی که این سیستم­ ها در اختیار کاربران خود قرار می ­دهند استفاده از این سیستم­ ها به امری مهم و اجتناب­ ناپذیر در صنعت الکترونیک تبدیل شده  است. در حقیقت، این تکنولوژی این قابلیت را به کاربران خود می­دهد تا با خرید یک آی­سی، علاوه بر داشتن تمام امکانات قبلی، از تمامی مزیت­ های ARM نیز در پروژه­ های خود استفاده نمایند. در تکنولوژی SOC، عمدتا هدف اصلی، به کارگیری  سیستم عامل بر روی آی­ سی می ­باشد که این امکان را به کاربر می ­­دهد تا از یک کامپیوتر کوچک در پروژه­ های خود بهرمند شود. همان­گونه که در شکل 1-3 نشان داده شده است، آرایه­ های منطقی برنامه پذیر مبتنی بر تکنولوژی SOC از هسته های ARM در کنار هسته ­های سی و دو بیتی خود استفاده می­ کنند. دوستان گرامی که علاقه مند می توانند ادامه مطلب را در جلسه سوم آموزش FPGA مطالعه نمایند.

منابع:

  (Springer)Rapid prototyping of digital systems

https://en.wikipedia.org/wiki/Field-programmable_gate_array

 

 

 

Di

آموزش FPGA-جلسه اول-تاریخچه FPGA و سیستم های دیجیتال

آموزش FPGA-جلسه اول-تاریخچه FPGA و سیستم های دیجیتال

Di

شکل 1-1: ساختار سیستم دیجیتال.

ّFPGAها همواره به عنوان یک ابزار ارزشمند در مجامع علمی و صنعتی مورد استفاده و توجه قرار می گیرند. با توجه به گستردگی موضوع در حوزه آموزش FPGAها و نبود یک منبع جامع و تخصصی در آموزش FPGA، شرکت نوین تراشه البرز به عنوان یک شرکت صنعتی و پیشگام در این زمینه اقدام به آموزش رایگان FPGA در قالب مطالب آموزشی نموده است. هدف اصلی بخش نشر مطالب علمی و کاربردی برای دوستان و علاقه مندان به FPGA  و طراحی دیجیتال کاربردی می باشد. برای شروع آموزش FPGA می بایست از تاریخچه سیستم های دیجیتال شروع کرد.واژه سیستم­های تعبیه شده (Embedded System) یا توکار به سیستم­هایی اطلاق می شود که از کنار هم قرار دادن اجزای کوچکتر ساخته شده ­اند. مطابق با شکل 1، در مهندسی الکترونیک و کامپیوتر منظور از سیستمهای تعبیه شده تراشه ها((Integrated circuits (ICs) و ادوات الکترونیکی مانند آرایه ­های منطقی برنامه­ پذیر(FPGA) یا (Field Programmable Gate Array) و یا تراشه های میکروبیس(Micro-base) هستند که این قابلیت را در اختیار مهندسین قرار می ­دهند تا طرح ­ها و ایده­ های خود را در کم­ترین زمان ممکن و متناسب با حجم و ابعاد کار خود بر روی آن­ها پیاده ­سازی کنند. 

همان­گونه که در شکل 1 -1 نشان داده شده، دانش الکترونیک دیجیتال با به وجود آمدن تراشه های سری TTL و CMOS جهش قابل توجهی را در اوایل دهه 1970 شاهد بود. با گسترش حجم و ابعاد کار، زمانی پیش آمد که دیگر این تراشه ها به تنهایی قادر به پاسخ­گویی نیاز بازار مصرف نبودند بردها و مدارات چاپی در آن زمان از حجم و ابعاد بزرگی برخوردار بوده و تراشه ها استفاده شده در آن­ها با محدودیت­ های بسیاری روبرو بودند. محدودیت­های موجود و نیاز بازار مصرف سبب شد که تکنولوژی موسوم به آرایه­ های منطقی برنامه ­پذیر (FPGA) پا به عرصه وجود بگذارند. هدف اصلی این تکنولوژی پوشش نقاط ضعف تکنولوژی قبل و کاهش حجم مدارات طراحی شده در آن زمان بود. نقطه قوت این تکنولوژی جدید طراحی نسبتا آسان در مدت زمان کم بود ولی از آنجا که این سیستم­ها با هدف طراحی سخت­ افزار توسط زبان­ های سخت افزاری((Hardware Design Languages (HDLs)) مانند VHDL  یا(Very High Speed Hardware Design Language)و Verilog و یا (Verification of Digital Circuits at the Register-Transfer Level ) ایجاد شده بودند لذا، ابزاری مناسب جهت پیاده­ سازی الگوریتم­ های نرم ­افزاری محسوب نمی­ شدند، ولی این بدین معنا نبود که این ادوات قابلیت پشتیبانی برای پیاده ­سازی الگوریتم را ندارند. از سال 2005 به بعد، ایده طراحی سیستم­های تعبیه شده به صورت قابل توجهی تغییر کرد و این امکان به وجود آمد تا طراحی از سطح گیت و HDL به طراحی در سطح سیستم برسد. لطفا ادامه مطلب را در بخش آموزش FPGA-جلسه دوم مطالعه فرمایید.

تفاوت ماژول های بلوتوث

تفاوت ماژول های بلوتوث

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

در مقاله ای که در انتهای این مطلب قابل دانلود می باشد، به طور جامع در مورد تفاوت ماژول های بلوتوث بازار صحبت و بررسی شده است.

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

 (HC-03, HC-04, HC-5, HC-06, HC-07, HC-08, HC-09)

7-5-2015 12-29-41 PM

ماژول های بلوتوث در پارامترهای زیر با هم متفاوت هستند.

  • نرم افزار (Firmware) داخلی
  • نرخ تبادل دیتای پیش فرض
  • جریان مصرفی
  • رنج ولتاژ تغذیه ماژول
  • چینش پایه ها
  • سطح کاری

 

  • نرم افزار (Firmware) داخلی

هر ماژول بلوتوث دارای نرم افزار یا فرم ور مخصوص خود میباشد که این نرم افزار master یا slave بودن ماژول و در نهایت دستورات AT قابل پشتیبانی ماژول را تعیین میکند. ماژول های بلوتوث HC-05 و HC-03 دارای Firmware کامل است به این معنا که این دو ماژول مدهای کاری master و slave را پشتیبانی میکند و تمام دستورات AT توسط این دو ماژول قابل پذیرش است. ماژول های HC-06 و HC-04  بر اساس نرم افزار داخلی خود تنها میتوانند تنها یکی از نقش های master یا slave را داشته باشند و طبیعتاً تنها دستورات AT مد کاری خود (master یا slave) را پشتیبانی میکنند. نرم افزار ماژول HC-09 مشابه HC-07 و HC-06 میباشد.

 

 

 

برای دانلود مقاله کامل روی لینک زیر کلیک کنید

  Bluetooth_Module_Differences.pdf (291٫7 KiB, 1,112 hits)

بررسی واحد SD Card Interface

بررسی واحد SD Card Interface

به نام خدا

در این متن که پیش رو دارید، قصد بررسی واحد SD Card Interface را داریم.

در میکروکنترلر های 8 بیتی از قبیل AVR ها واحدی به عنوان SDIO یا همان SD Card Interface وجود نداشت. (البته شاید میکرو خاصی را شرکتی تولید کرده باشد که این واحد در آن باشد مانند AVR USB) لذا برای راه اندازی کارت های حافظه از قبیل MMC و SDC از مد SPI که یک پروتکل سریال می باشد استفاده می شد.

با رونق گرفتن میکرو های ARM شرکت های تولید کننده این میکروکنترلرها روز به روز به قابلیت های این میکروکنترلر ها اضافه کردند. تاجایی که در برخی از میکرو های امروزه واحد هایی که روزی روئیایی به نظر می رسیدند اضافه گردیده و با قیمتی اندک در اختیار کاربران قرار دارد. واحد هایی از قبیل LCD Controller, External Memory Controller , Camera Interface , Ethernet ,SDIO و … نمونه ای از این واحد ها می باشند.

در مقاله های قبلی به توضیح ویژگی های این بلاک ها پرداخته ایم ، در ادامه قصد داریم تا اطلاعاتی در مورد واحد SDIO یا همان SD Card Interface ارائه دهیم.

ویژگی های مهم این واحد:

  • توانایی خواندن و نوشتن با سرعت بالا
    • در مد SPI ما تنها یک خط برای نوشتن و یک خط برای خواندن اطلاعات داریم ،اما در این حالت خواندن و نوشتن روی 4 خط می باشد. یعنی حداقل سرعت مد SDIO چهار برابر مد SPI است.
  • می تواند به عنوان BUS برای MMC و یا به عنوان BUS برای SDC استفاده گردد.
    • یعنی می توان چندین MMC و یا یک SDC را به این BUS متصل کرد.
  • پشتیبانی از DMA
    • چیپ هایی که دارای واحد SDIO می باشند، معمولا از DMA هم پشتیبانی می کنند. DMA یک بلاک دسترسی مستقیم به حافظه می باشد که بدون دخالت CPU انتقال اطلاعات را انجام می دهد. واین عمل موجب افزایش سرعت نقل و انتقال اطلاعات می گردد.

 

میکروکنترلر LPC1788 از جمله چیپ هایی می باشد که دارای واحد SD Card Interface است. و شما با راه اندازی این واحد به سادگی می توانید با کارت های حافظه SDC و MMC ارتباط برقرار کرده و روی آن ها دیتا بنویسید و یا از آن های دیتا بخوانید.

تفاوت NAND Flash با NOR Flash

تفاوت NAND Flash با NOR Flash ها چیست؟

به نام خدا

شاید این سوال برای شما هم زیاد پیش آمده باشد که واقعا ” تفاوت NAND Flash با NOR Flash ها چیست؟ ” یا ” در چه جاهایی از NAND Flash استفاده می شود و چه جاهایی NOR Flash ؟ ”

در مقاله ای که برای دانلود برای شما قرار داده ایم سعی کردیم در یک جدول کاربرد اصلی و تفاوت های مهم این حافظه ها را دسته بندی و بیان کنیم.

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

البته توجه داشته باشید تفاوت های اساسی تراشه های NAND Flash و NOR Flash ثابت خواهند بود اما تفاوت هایی از قبیل حجم و سرعت خواندن و نوشتن در این تراشه ها ممکن است تغییر کند.

برای دانلود مقاله ” تفاوت NAND Flash با NOR Flash ها چیست؟ ” روی کلیک زیر کنید.

  NOR_Flash_Vs_NAND_Flash.pdf (83٫9 KiB, 1,045 hits)

کاربرد سافت روپروسسورها در FPGA

کاربرد سافت پروسسورها در FPGA

امروزه با وسعت پیدا کردن فناوری و اهمیت سرعت در طراحی در FPGA ها سبب گردیده تا شرکت های تولید کننده FPGA  شکل جدیدی از نگرش در طراحی را در FPGA ها لحاظ  کنند و آن استفاده از پرسسورها در FPGAها است. اساس طراحی در FPGAها  بطور کلی صرف نظر از بحث در ساختار تکنولوژی یک طراحی با ساختار دیجیتال می باشد؛ یعنی طراحی شمارنده ها و جمع کننده ها و… که قرار است با کنار هم قرار دادن اجزا در کنار هم به یک ساختار دیجیتال با پیچیدگی بالا  تبدیل شود. بنابراین اگر قرار باشد شخص برای طراحی یک پردازنده، آن هم بصورت مورد نیاز وقت صرف کند باید ساعت ها ، حتی ماه ها وقت صرف کند تا به ساختار مشخص با ویژگی های مطلوب دست پیدا کند. در اینجا اهمیت استفاده از قالبهای میکروبیس بطور آماده که آن هم بتوان آن را با نیازهای کاربر تنظیم کرد بیشتر نمود پیدا می­کند.(هر چند طراحی دیجیتال با ساختارهایی نظیر VHDL ،  Mega Functionها و… جایگاه خود درطراحی را دارد.)

niosII_arch_block_dia

 یک نمونه از پروسسورهای مورد استفاده در FPGAها  استفاده از  Soft Processor ها می­ باشد، که از این دست می­توان به Nios در FPGAهای شرکت Altera اشاره نمود. در اینجا این سوال مطرح است که مزیت این ساختار بر میکرو های سخت افزاری موجود در بازار در چیست؟ در پاسخ باید گفت که اولا  این ساختار از انعطاف پذیری بالایی برخوردار است، یعنی مثلاً هسته کار شما می تواند یک پروسسور Nios  باشد  به همراه یک تایمر و یک Uart ،…و یا یک طراحی پیچیده ، ثانیاً براحتی  Core پروسسوری طراح با سایر بخشها یعنی IPCore که توسط شخص طراحی گردیده در ارتباط باشد و این یعنی کاهش هزینه در طراحی طرحهای پیچیده که می توند نیاز به چندین چیپ را مرتفع می سازد.

کاربرد میکروپروسسورها در FPGA

تنظیم ماژول بلوتوث HC-05 با AT-COMMAND

تنظیم ماژول بلوتوث HC-05 با AT-COMMAND

در آموزش قبل طریقه راه اندازی ساده ماژول و برقراری ارتباط با گوشی هوشمند رو توضیح دادیم. زمانی که ماژول رو تهیه میکنید تنظیمات پیش فرضی داخلش انجام شده، تنظیمات اولیه و لازمی از قبیل، نام دستگاه بلوتوث، رمز دسترسی به دستگاه “1234” ، نرخ تبادل داده (بادریت) 38400 و تظیم مد slave و تنظیمات دیگر. این تنظیمات برای وصل شدن به ماژول به کافی است، همونطور که در قسمت قبل ارتباط با گوشی هوشمند رو بدون تنظیمات خاص پیش بردیم. در این آموزش میخواهیم دستورات تتنظیم ماژول بلوتوث HC-05 با AT-COMMAND رو مطرح کنیم.

پیش از هرچیز برای تنظیم ماژول باید پایه 34 اونرو به 3.3 ولت وصل  و سپس یکبار تغذیه ماژول را قطع و وصل کنیم تا ماژول وارد حالت تنظیم شود.

برای اطمینان از وارد شدن ماژول به حالت تنظیم دستور AT را از ترمینال سریال وارد میکنیم. در صورت ارتباط فیزیکی صحیح ، ماژول کاراکترهای OK را برمیگرداند. در غیر این صورت ماژول ممکن است ERROR برگرداند یا اصلا چیزی پاسخ ندهد که این نشان از عدم اتصال صحیح ماژول به کامپیوتر ما خواهد بود. خوب بعد از اطمینان به صحت ارتباط با ماژول وارد دستورات تنظیمی دیگر را پی میگیریم.

 

دستورات تنظیم

عملکرد دستور پاسخ ماژول
?AT+NAME استعلام نام ماژول > HC-05
AT+NAME=hc-05 تنظیم نام برای ماژول OK
?AT+PSWD استعلام پسورد دسترسی ماژول 1234
AT+PSWS=1234 تنظیم پسورد دسترسی به ماژول OK
?AT+UART استعلام نرخ بادریت 38400
AT+UART=9600 تنظیم مقدار بادریت OK
?AT+ROLE استعلام master یا slave بودن ماژول 1 یا 2 یا 3
AT+ROLE=0 تنظیم ماژول روی حالت slave OK
AT+ROLE=1 تنظیم ماژول روی حالت master

OK

موفق باشید.

ultra00

معرفی و راه اندازی التراسونیک-Ultrasonic

به نام خدا

در مقاله ای که پیش رو دارید قصد داریم به معرفی و راه اندازی التراسونیک-Ultrasonic بپردازیم و اندکی با التراسونیک (Ultrasonic) آشنا شویم. فرکانس کاری التراسونیک خارج از محدوده شنوایی انسان می باشد و یعنی فرکانس الترا سونیک ها از 20Khz تا چند مگاهرتز می باشد که با توجه به نوع کاربرد از التراسونیک با فرکانس کاری خاصی استفاده می شود.

اصول کار التراسونیک (Ultrasonic) بر چه اساس است؟

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

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

  • صنایع رباتیک
  • پزشکی
  • تشخیص وجود شیء
  • شمارنده (مانند شمارنده های کلا ها ی عبور کننده از نوار نقاله)
  • تشخیص موقعیت
  • اندازه گیری حجم
  • تشخیص اشخاص
  • اندازه گیری فاصله
  • صنایع جوش
  • صنایع نانو
  • صنایع شیمی
  • خودروسازی

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

در ادامه مقاله سعی بر آن داریم تا در مورد یکی از کاربرد های التراسونیک یعنی اندازگیری فاصله صحبت کنیم.

برای این کاربرد از رایج ترین ماژول های التراسونیک موجود در بازار ماژول SRF04 و SRF05 می باشد.

ابتدا تفاوت بین این دو ماژول رو بشناسیم:

ماژول SRF05 نسخه تکامل یافته SRF04 می باشد. این نسخه جدید دو مد کاری را پشتیبانی می کند و 5 پایه جهت کار با با ماژول را در اختیار قرار می دهد. اما ماژول SRF04 دارای 4 پایه می باشد و تنها یک مد کاری را پشتیبانی می کند.

حال بپردازیم به نحوه راه اندازی و استفاده از این ماژول ها.

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

ultra01

البته در بعضی از ماژول ها پایه “Do not Connect” وجود ندارد. ولتاژ تغذیه این ماژول ها ،همانطور که در شکل مشخص شده است 5 ولت می باشد.

برای راه اندازی ماژول SRF04 باید دیاگرام زیر پیاده شود:

ultra02

همان طور که در دیاگرام مشخص شده است برای تریگ ماژول ابتدا باید یک پالس با عرض حداقل 10 میکرو ثانیه به پایه Trigger اعمال کنیم. سپس فرستنده الترا سونیک 8 پالس ارسال می کند، و سپس ما باید عرض پالسی که روی پایه Echo دریافت می کنیم را بدست آوریم تا از روی این عرض پالس به تشخیص مسافت دست یابیم.

نکته ای در مورد عرض پالس وجود دارد این است که باید عرض پالس بین 100us تا 18ms باشد. اگر بیش از این مقدار باشد تشخیص فاصله با دقت صحیحی نیست و اگر حدود 36ms باشد ،یعنی مانعی را تشخیص نداده است.

اما ماژول SRF05 ،این ماژول معمولا دارای 5 پایه است، که در مد اول پایه ها به شرح زیر می باشند:

ultra03

 

این مد دقیقا مشابه مد SRF04 است و تایمینگ دیاگرام آن ها مشابه است ، تنها تفاوت در عرض پالس روی پایه Echo می باشد.

در ماژول SRF05 عرض پالس روی پایه Echo بین 100us تا 25ms می باشد، یعنی مسافت طولانی تری را می تواند اندازگیری کند و اگر عرض پالس 30ms دریافت کند یعنی مانعی را تشخیص نداده است.

اما راه اندازی ماژول SRF05 در مد دوم، در این مد چیدمان پایه ها به فرم زیر است:

ultra04

در این حالت برخلاف حالت قبل که پایه Mode را بدون اتصال رها می کردیم، باید پایه Mode را صفر کنیم. و تغییر دیگر آنکه پایه Trigger و Echo یکی می باشد.

برای کار کردن در این مد به دیاگرام زیر دقت نمایید:

ultra05

همانطور که در دیاگرام مشخص شده است، بعد از این که پالس تریگر را با عرض بیش از 10us اعمال کردیم، باید منتظر دریافت عرض پالس برگشتی روی همان پایه باشیم.

بعد از این که عرض پالس را بدست آوردیم نوبت به استخراج فاصله از روی عرض پالس می رسد.

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

Time(us)/58 = distance(cm)

Time(us)/148 = distance(inch)

دو رابطه فوق برای ماژول های ذکر شده و در همه حالت ها یکسان می باشد.