مشخصات این فایل
عنوان: طراحی و ساخت برد کنترل جهت اضافه بار و اندازه گیری وزن
فرمت فایل : word( قابل ویرایش)
تعداد صفحات: 36
این مقاله درمورد طراحی و ساخت برد کنترل جهت اضافه بار و اندازه گیری وزن می باشد.
خلاصه آنچه در مقاله طراحی و ساخت برد کنترل جهت اضافه بار و اندازه گیری وزن می خوانید :
فصل 3 :
نرم افزار تهیه شده برای برد دیجیتال کنترل بار
مقدمه:
در فصلهای قبلی به معرفی و چگونگی ساخت برد کنترلی پرداخته شده و برای راه اندازی سیستم و اجزای برد کنترلی نیاز به نرم افزار راه انداز اجزاء بر روی میکروکنترلر میباشد. در این فصل ابتدا به توضیح کلی عملکرد برنامه میپردازیم، که برای این کار نیاز به توضیح نحوة عملکرد دستگاه، تنظیم- راهاندازی و عکسالعمل برد در برابر وزنهای مختلف میباشد.
2-2-1- عملکرد دستگاه
در این سیستم مورد نظر که هدف اصلی آن کنترل بار آسانسور میباشد نیاز به اندازهگیری و تنظیم چندین پارامتر می باشد. تنظیمات مورد نظر توسط کاربر با استفاده از Key board انجام میشود. در ابتدا وزن کابین آسانسور بدون مسافر را به عنوان OffSET در نظر میگیریم سپس برای بدست آوردن وزن واحدی مشخصی را با وزن متوسط وارد کابین کرده و وزن اندازهگیری شده را به عنوان person در نظر میگیریم با در دست داشتن دو مقدار offset و person میتوان وزن واحد مورد نظر را از رابطة زیر بدست آورد:
حال کاربر می تواند عدد دلخواهی را به عنوان ظرفیت قابل قبول برای استفاده کنندگان آسانسور در نظر بگیرد که آن را به عنوان capacity در نظر میگیریم.
با دست بودن این مقادیر در صورت تکمیل بودن ظرفیت فرمان Full load و در صورت داشتن اضافه بار فرمان over load صادر میشود. و چراغهای هشدار دهنده و آلارم مورد نظر به صدا در خواهد آمد. که این امر باعث می شود همواره آسانسور بار قابل تحملی و مجازی را جابجا کند.
در روند برنامهنویسی به دلیل استفاده از تایمرها و وقفههای موجود ابتدا به معرفی و توضیح دلایل استفاده از آنها میپردازیم.
تایمر
8051 دارای دو شمارنده / تایمر است. آنها میتوانند به عنوان تایمر (زمان سنج) برای تولید یک تأخیر زمانی یا شمارنده برای شمارش وقایع رخداده در خارج میکروکنترلر بکار میروند. این دو تایمر، تایمر دو تایمر 1 نام دارند و 16 بیت عرض دارند. ون 8051 ساختار 8 بیتی دارد، هر تایمر شانزده بیتی با دو ثبات مختلف بایت پایین و بایت بالا دستیابی میشود.
ثبات 16 بیتی تایمر 5 بصورت بایت بالا و پایین دستیابی می شوند. ثبات بایت پایین را Tlo و ثبات بایت بالا را THO می خوانند . این ثبات مانند دیگر ثباتها قابل خواندن هم هستند.
ثبات تایمر 0
تایمر 1 هم 16 بیتی است و 16 بیت آن هم به صورت دو بایت به دو نیم شده است که هر یک را TL1 و مینامند. این ثباتها به روشی مشابه با ثباتهای تایمر 0 قابل دستیابی اند.
هر دو تایمر 0 و 1 از یک ثبات به نام TMOD برای تنظیم انواع مدهای عملیاتی تایمر استفاده میکنند. TnoD یک ثبات 8 بیتی است که در آن 4 بیت پایینتر برای تایرم 0 4 بیت بالاتر برای تایمر 1 کنار نهاده شده است. در هر حال، در بیت پایینتر برای تنظیم تایمر دو بیت بالاتر برای مشخص کردن عملیات بکار میروند.
GATE : وقتی 1 شود کنترل تایمر شدن فعال میشود. تایمر / شمارنده فقط هنگامی فعال میشود که پایه INTX بالا و پایه کنترل TRX برابر 1 شود. هر وقت پاک شود، تایمر هنگامی فعال می شود که بیت کنترل TRX برابر 1 گردد.
C/T : هر وقت 0 باشد تایمر انتخاب میگردد، این بیت برای عملیات شمارش باید 1 باشد.
M1: بیت مد 1
Mo : بیت مد 0
مد عملیات:
مد تایمر 13 بیتی
مد تایمر 16 بیت
هر تایمر 8 بیتی با بار شدن خودکار
مد دو نیم کردن تایمر
M1, M0:
M1 , M0 برای انتخاب مد تایمر است. همانطور که دیده میشود ، سه مد 0 ، 1 ، 2 وجود دارد. در 5 یک تایمر 13 بیت ، مد 1 تایمر 10 بیت و مد 2 یک تایمر 8 بیت است. که عمدتاً بر مدهای 1 و 2 تأکید خواهد شد.
C/T: این بیت در ثبات TMOD برای تصمیم گیری انتخاب تایمر به عنوان مولد تأخیر و یا شمارنده وقایع بکار میرود. اگر e/t=0 باشد از آن به عنوان تایمر برای تولید زمان تأخیر استفاده میشود. منبع ساعت برای تأخیر فرکانس کریستال 8051 است.
GATE: بیت دیگر ثبات TMOD ، بیت GATE است. هر دو تایمر 0 و 1 از ثبات TMOD ، دارای بیت گیت هستند. هر تایمری آغاز و توقفی دارد. بعضی آن را نرم افزاری، برخی سختافزاری و بعضی دیگر با هر دو کنترل سختافزاری و نرم افزاری انجام میدهند. تایمرهای 8051 هر دو نوع را دارا هستند. هر دو توقف تایمر به صورت نرم افزاری بوسیله بیتهای TRO و TR1 از TR انجام میشوند. این کار بوسیله دستورات SET Te1 و CLR TR1 برای تایمر 1 SET TR0 و CLR TRO برای تایمر 0 صورت میگیرد. دستور SETB آن را شروع می کند ولی بوسیله دستور CLR متوقف میگردد. این دستورات مادامی در ثبات TMOD ، CATE=0 است این کار را انجام میدهند. راه سختافزاری شروع و توقف تایمرها، به وسیله یک منبع بیرونی است که با CATE=1 در ثبات TMOD امکان پذیر است. کاربرد پرچمهای Tro و TR1 در روشن و خاموش کردن تایمرها را ملاحظه کردیم این بیتها بخشی از ثباتی 8 بیتی به نام TQM است. چهار بیت بالا برای ذخیره بیتهای TF و TR در دو تایمر و 0 و 1 بکار رفتهاند. چهار بیت پایینتر برای کنترل بیت های وقفه اختصاص یافته که در مورد آنها صحبت خواهیم کرد. ثبات TCON یک ثبات آدرس پذیر بیتی است.
2-3-2- وقفه
وقفه پدیدهای درونی یا بیرونی است که میکروکنترلر را از نیاز یک وسیله به نوعی سرویس ، مطلع میسازد بازای هر وقفه، باید روال سرویس وقفه (ISR) یا اداره کننده وقفهای وقفه را اجرا میکند. بازاء هر وقفه باید مکان ثابتی در حافظه تعریف شود تا آدرس ISR را نگهدارد مجموعه حافظههای کنار گذاشته شده برای نگهداری آدرس های IDR ، جدول بردار وقفه نام دارد.
مراحل اجرای یک وقفه: بعد از فعال شدن وقفه، میکروکنترلر وارد مراحل زیر می شود.
1- اجرای دستور جاری را پایان میدهد و آدرس دستور بعدی (PC) را در پشت ذخیره می کند.
2- وضعیت جاری همه وقفههای درونی را نیز ذخیره مینماید.
3- به مکان معینی از حافظه بنام جدول بردار وقفه که آدرس روال سرویس وقفه را نگه میدارد پرش میکند
4- میکروکنترلر آدرس ISR را از جدول بدار وقفه بدست آورده و به آن پرش می نماید. آنگاه شروع به اجرای زیر روال سرویس وقفه میکند تا به آخرین دستور که RETI است برسد.
5- پس از اجرای دستور RETI ، میکروکنترلر به مکانی که در آن وقفه را دریافت کرده بود باز می گردد ابتدا، آدرس شمارنده برنامه را از پشته با برداشت از دو بایت بالای رشته بازیافت میکند و به P.C میفرستد. سپس شروع به اجرای برنامه از آن آدرس مینماید.
وقفههای موجود در 8051 :
1- بازشنانی. وقتی که پایه بازشناسی فعال شود، 8051 به آدرس 0000 پرش می کند.
2- دو وقفه برای تایمر ها کنار گذاشته شده است: یکی برای تایمر و دیگر برای تایمر 1
3- دو وقفه برای وقفههای سخت افزار بیرونی کنار گذاشته شدهاند.
4- تبادل داده سیال دارای وقفهای است که متعلق به ارسال و دریافت می باشد.
جدول بردار وقفه برای 8150
فعال سازی و غیر فعال سازی و قضا
پس از بازشناسی همه وقفهها غیر فعال می شود، این معنی که اگر هر کدام فعال شوند هیچیک بوسیله میکروکنترلر پاسخ داده نمیشوند. برای اینکه میکروکنترلر به آنها پاسخ دهد، باید وقفهها را با نرم افزار فعال کرد. ثباتی بنام فعال ساز وقفه ، IE ، مسئول این تواناسازی و ناتوان کردن وقفههاست. ثبات IE یک ثبات آدرس پذیر بیتی است
توجه شود که بیت D-1 در ثبات IE ، EA (تمام فعال ساز) خوانده میشود. برای فعال شدن بقیه ثبات ، این بیت پایه 1 شود.
مراحل فعالسازی یک وقفه
برای فعال کردن یک وقفه، مراحل زیر اجرا میگردد.
1- بیت D7 از ثبات IE باید به سطح بالا برده شود تا بقیه ثبات فعال گردد.
2- ارگ EA=1 باشد، وقفه ها فعال شده و هنگامی که بیتهای مربوطه به هر وقفه در IE فعلا گردد به آن وقفه پاسخ داده خواهد شد. اگر ER=0 باشد، به هیچ وقفهای پاسخ داده نمیشوند.
- زیر پایه ها و ISR های مورد استفاده
1) برنامه شناسایی کلیه فشرده شده \Scan key
صفحه کلید انتخاب شده به صورت یک ماتریس 4*6 متصل به پورت میباشد اگر کلید فشرده نشود، خواندن پورت ، 1/1 برای همه ستونها نتیجه می دهد. زیرا همه آنها به ولتاژ سطح بالا (Vcc) متصل میباشند. اگر همه سطرها به زمین وصل شوند و کلیدی فشرده شود، یکی از ستونها خواهد شد زیرا کلید فشرده شده مسیری را به زمین ایجاد می کند. این به عهده میکروکنترلر است که صفحه کلید را دائما بر ی تشخیص و شناسایی کلید فشرده شده پویش کند.
برای تشخیص کلید فشرده شده، میکروکنترلر همه سطرهای را با تهیه ؟؟؟؟ خروجی به زمین وصل می کند، و سپس ستون را می خواند، اگر داده خوانده شده از ستون p0.3-p0.0=1111 کلیدی فشرده نشده است و فرآیند تا تشخیص کلید فشرده شدهای اداه خواهد داشت. کدهای مربوط به کلیدهای مختلف به صورت زیر میباشد:
در این زیر برنامه از فرمول زیر برای تشخیص کد مربوط به کلید فشرده شده استفاده میشود،
Key number = Row – number 4 + Cromn- number,
2) Dday1 M , Delay:
برای ایجاد تأخیرهای 200Ms و 1s در برنامه مورد استفاده قرار گرفتهاند. برای ایجاد این تأخیر ها از روش حلقههای تو در تو استفاده شده است.
3) ISR-INTO
همانگونه که در بخش سختافزار توضیح داده شد- پایة INT خروجی A/D به ورودی INT میکرو متصل میباشد هر گاه A/D مقداری برای ارائه به میکرو آماده کند این پایه را فعال میکند . در این حالت IDR مربوط به INTO فعال میشد تا مدار مربوطه را که نشان دهندة وزن فعلی تشخیص داده شده توسط سنسور است خوانده ذخیره نماید. این کار توسط ارسال طرفین مناسب روی پایة Read تراشه A/D تراشة A/D و ذخیره مقدار مربوطه در متغیر Sensor انجام میگیرد.
4) ISR- To
نمونه برداری از سنسور در هر Soms انجام میگیرد برای تنظیم این زمان از تایمر صفر در حالت اینتراپت استفاده می کنیم. در ISR این تایمر مقادیر THO و TLO تنظیم شده و نیز فرامین مناسب روی پایة تراشة A/D ارسال می شود.
5) ISRT1:
برای نمایش مقادیر مناسب روی 7-sag دو رقمی لازم است از روش رفرش کردن استفاده کنیم. برای این منظور در هر دو 20 ms یک بار هر یک از ارقام را مجدداً به Display ارسال میکنیم. تنظیم زمانهای 20 ms توسط تایمر 1 که در حالت اینتراپت راه اندازی می شود انجام میگیرد.
بخشی از فهرست مطالب مقاله طراحی و ساخت برد کنترل جهت اضافه بار و اندازه گیری وزن
مرفی سنسور strain Gauge
معیارهای انتخاب سنسورها S-G
نمونهای از سنسورهای S-G و المانهای میکانیکی
روش نصب سنسور روی المان مکانیکی
طراحی و ساخت برد دیجیتال کنترل بار
میکروکنترلر
مشخصات میکروکنترلر 8qc51:
بررسی پایههای 8051
درگاه دوم (PORT2)
درگاه سوم (PORT3):
نحوة اتصالات میکروکنترلر
تبدیل کننده آنالوگ به دیجیتال
روش اتصال ADC 804
صفحه کلید (Key board)
صفحه نمایش
نحوة اتصال صفحه نمایش
تقویت کننده
نحوة اتصال تقویت کننده
برد خروجی به تابلوی کنترل آسانسور
نرم افزار تهیه شده برای برد دیجیتال کنترل بار
عملکرد دستگاه
ثبات تایمر
فعال سازی و غیر فعال سازی و قضا
دانلود مقاله طراحی و ساخت برد کنترل جهت اضافه بار و اندازه گیری وزن