تحقيق ماشين واسط انساني HMI يا Human Machine Interface سخت افزار اين پروژه به طور كلي از يك ميكروكنترلر Atmega16

۱۳ بازديد
تحقيق ماشين واسط انساني HMI يا Human Machine Interface

سخت افزار اين پروژه به طور كلي از يك ميكروكنترلر Atmega16 از شركت ATMEL و يك LCD 4*20 جهت نمايش عملكرد و 4 رله در خروجي و چند قطعه ديگر جهت كارهاي جانبي و تنظيمات سخت افزاري تشكيل شده است اين پروژه جهت كنترل 4 موتور مجزا با تنظيمات مجزا مي باشد كه توسط برنامۀ Bascom و به زبان Basic طراحي شده است

دانلود تحقيق ماشين واسط انساني HMI يا Human Machine Interface

تحقيق Hmi
دسته بندي كامپيوتر و IT
فرمت فايل doc
حجم فايل 132 كيلو بايت
تعداد صفحات فايل 41

چكيده :
سخت افزار اين پروژه به طور كلي از يك ميكروكنترلر Atmega16 از شركت ATMEL و يك LCD 4*20 جهت نمايش عملكرد و 4 رله در خروجي و چند قطعه ديگر جهت كارهاي جانبي و تنظيمات سخت افزاري تشكيل شده است .
اين پروژه جهت كنترل 4 موتور مجزا با تنظيمات مجزا مي باشد كه توسط برنامۀ Bascom و به زبان Basic طراحي شده است .
جهت شناسايي اين كه كدام موتور بايد روشن شود به صورت مقايسه اي برنامۀ ساعت نوشته شده است كه هر لحظه تنظيمات 4 موتور با ساعت چك مي شود و هر كدام كه با ساعت Set شود بدين ترتيب است كه اگر ثانيه با ثانيه ساعت برابر شد برنامه به قسمت دقيقه مي رود و اگر دقيقه برابر شد به قسمت ساعت رفته و آن را نيز مانند بقيه چك ميكند و در صورت برابر شدن هر كدام آن موتور را روشن و يا خاموش مي كند .

نام اين پروژه HMI است كه مخفف سه كلمۀ
Human Machine Interface
به معني ماشين واسط انساني است .

مقدمه :
امروزه با توجه به پيشرفت علم الكترونيك از ميكروكنترلرها استفاده بيشتري مي شود كه اين ميكروكنترلرها دو مزيت بزرگ دارند : 1 سادگي مدار از نظر سخت افزاري 2 ارزان تمام شدن مدار .
ميكروكنترلرها انواع مختلف و با زبان هاي برنامه نويسي مختلف از جمله Basic و C و...
مي باشند كه هر يك مزيتها و معايبي را دارند .
در اين پروژه كه جهت كنترل زمان روشن و خاموش شدن 4 موتور در خروجي يا به طور كلي 4 خروجي از ميكروكنترلر AVR از نوع ATmega16 شركت ATmel و توسط زبان Basic و در محيط Bascom طراحي شده است .

مختصري راجع به AVR
زبانهاي سطح بالا يا همان (HIGH LEVEL LANGUAGES) HLL به سرعت در حال تبديل شدن به زبان برنامه نويسي استاندارد براي ميكرو كنترلرها (MCU) حتي براي ميكروهاي 8 بيتي كوچك هستند . زبان برنامه نويسي BASIC و C بيشترين استفاده را در برنامه نويسي ميكروها دارند ولي در اكثر كاربردها كدهاي بيشتري را نسبت به زبان برنامه نويسي اسمبلي توليد مي كنند . ATMEL ايجاد تحولي در معماري ، جهت كاهش كد به مقدار مينيمم را درك كرد كه نتيجه اين تحول ميكرو كنترلرهاي AVR هستند كه علاوه بر كاهش و بهينه سازي مقدار كدها به طور واقع عمليات را تنها در يك كلاك سيكل توسط معماري ( REDUCED RISC INSTRUCTION SET COMPUTER) انجام مي دهند و از 32 ريجيستر همه منظوره (ACCUMULATORS) استفاده مي كنند كه باعث شده 4 تا 12 بار سريعتر از ميكروهاي موزد استفاده كنوني باشند .
تكنولوژي حافظه كم مصرف غير فرّار شركت ATMEL براي برنامه ريزي AVR ها مورد استفاده قرار گرفته است در نتيجه حافظه هاي FLASH و EEPROM در داخل مدار قابل برنامه ريزي (ISP) هستند . ميكروكنترلرهاي اوليه AVR داراي 1 ، 2 ، 8 كييوبايت حافظه FLASH و به صورت كلمات 16 بيتي سازماندهي شده بودند .
AVR ها به عنوان ميكروهاي RISC با دستورات فراوان طراحي شده اند كه باعث ميشود حجم كد توليد شده كم و سرعت بالاتري به دست آيد .

عمليات تك سيكل :
با انجام تك سيكل دستورات ، كلاك اسيلاتور با كلاك داخلط سيستم يكي مي شود . هيچ تقسيم كننده اي در داخل AVR قرار ندارد كه ايجاد اختلاف فاز كلاك كند . اكثر ميكروها كلاك اسيلاتور به سيستم را با نسبت 1:4 يا 1:12 تقسيم مي كنند كه
خود باعث كاهش سرعت مي شود . بنابراين AVR ها 4 تا 12 بار سريعتر و مصرف
آنها نيز 4-12 بار نسبت به ميكروكنترلرهاي مصرفي كنوني كمتر است زيرا در تكنولژي CMOS استفاده شده در ميكروهاي AVR ، مصرف توان سطح منطقي متناسب با فركانس است .
نمودار زير افزايش (MILLION INSSTRUCTION PER SECONDS) MIPS را به علت انجام عمليات تك سيكل AVR (نسبت 1:1 ) در مقايسه با نسبتهاي 1:4 و 1:12 دي ديگر ميكروها را نشان مي دهد .
نمودار مقايسه افزايش
MIPS/POWER Consumption در AVR با ديگر ميكرو كنترلرها .

طراحي براي زبان هاي BASIC و C
زبان هاي BASIC و C بيشترين استفاده را در دنياي امروز بعنوان زبان هاي HLL دارند. تا امروزه معماري بيشتر ميكروها براي زبان اسمبلي طراحي شده و كمتر از زبانهاي HLL حمايت كرده اند .
هدف ATMEL طراحي معماري بود كه هم براي زبان اسمبلي و هم زبان هاي HLL مفيد باشد . به طور مثال در زبانهاي C و BASIC مي توان يك متغيير محلي به جاي متغيير سراسري در داخل زيربرنامه تعريف كرد ، در اين صورت فقط در زمان اجرا زير برنامه مكاني از حافظه RAM براي متغيير اشغال مي شود در صورتي كه اگر متغييري به عنوان سراسري تعريف گردد در تمام وقت مكاني از حافظه FLASH ROM را اشغال كرده است .

 

انتهاي تحقيق

ديگر كاربردهاي پورت C

Alternate functions

Port pin

RXD(UART INPUT LINE)

PD0

TXD(UART OUTPUT LINE)

PD1

INT 0(EXTERNAL INTERRUPT 0 INPUT)

PD2

INT1(EXTERNAL INTERRUPT 1 INPUT)

PD3

OC1B (T/C 1 OUTPUT COMPARE MATCH OUTOUT )

PD4

OC1A (T/C 1 OUTPUT COMPARE MATCH OUTOUT )

PD5

ICP (T/C1 INPUT CAPTURE PIN)

PD6

OC2 (T/C2) OUTPUT COMPARE MATCH OUTPUT

PD7

PORTD.7-OC2

OC2 : خروچي مد مقايسه اي تايمر/ كانتر PD7.2 با يك شدن DDD7 مي تواند به عنوان پايه ي خروجي مُد مقايسه اي Timer/counter2 شكل دهي شود . اين پايه همچنين براي خروجي PWM تايمر استفاده مي شود .

PORTD.6-ICP

ICP : PD6 مي تواند به عنوان پايه ورودي CAPTURE تايمر كانتر 1 عمل كند .

PORTD.5-OC1A

OC1A : خروجي مُد مقايسه اي Timer/Counter1. پايه PD5 با يك شدن DDD5 مي تواند براي خروجي مُد مقايسه اي Timer/counter1 شكل دهي شود . اين پايه همچنين براي خروجي PWM تايمر1 استفاده مي شود .

PORTD.4-OC1B

OC1B : خروجي مُد مقايسه اي  Timer/ Counter1

پايه PD4 با يك شدن DDD4 مي تواند براي خروجي مُد مقايسه اي Timer/counter1 شكل دهي شود اين پايه همچنين براي خروجي PWM تايمر استفاده مي شود .

PORTD.3-INT1

INT1 : منبع وقفه خارجي يك .

پايه PD3 مي تواند بعنوان منبع وقفه براي ميكرو استفاده شود .

 

PORTD.2-INT0

INT. : منبع وقفه خارجي صفر .

پايه PD3 مي تواند بعنوان منبع وقفه براي ميكرو استفاده شود.

PORTD.1-TXD

TXD  :  ارسال داده (پايه ورودي داده براي USART)

زمانيكه ارسال USART فعال مي شود پايه با توجه يه DDD1 به عنوان خروجي شكل دهي مي شود .

 

 

منابع و مأخذ

  • ميكروكنترلرهاي AVR نوشته مهندس علي كاهه
  • Search از سايت www. DataSheet 4u .com

 

دانلود تحقيق ماشين واسط انساني HMI يا Human Machine Interface

تا كنون نظري ثبت نشده است
ارسال نظر آزاد است، اما اگر قبلا در رویا بلاگ ثبت نام کرده اید می توانید ابتدا وارد شوید.