ساخت ولت متر و آمپر متر
در این بخش تیم الکترونیک و برنامه نویسی الکترونیک ۹۸, اقدام به طراحی و انتشار پروژه ای کاربردی و حرفه ای با عنوان, ساخت وات متر و ولت متر و آمپر متر AC و DC با میکروکنترلر AVR, برای شما علاقه مندان به پروژه های میکروکنترلر AVR کرده است. در پروژه قبلی (ولت متر AC با قابلیت اندازه گیری ولتاژ 0 تا 1000 ولت rms) با نحوه اندازه گیری ولتاژ AC توسط میکروکنترلر AVR و ساخت دستگاه ولت متر AC با قدرت اندازه گیری ولتاژ 1000 ولت آشنا شدیم. حال قصد داریم در این پروژه با گسترش پروژه قبلی یک مولتی متر کامل و تمام عیار توسط میکروکنترلر AVR بسازیم.
شرح عملکرد پروژه
همانطور که بیان شد در این پروژه قصد داریم تا با بهرگیری از واحد ADC میکروکنترلر AVR، ولتاژ DC، ولتاژ AC، جریان DC و جریان AC را اندازه گیری نمائیم و بر روی یک LCD کاراکتری در ابعاد 16*2 به کاربران نمایش دهیم. همچنین لازم به ذکر است که در الگوریتم برنامه نویسی این پروژه طبق رابطه P = V*I مقدار توان مصرف کننده (وات متر) نیز اندازه گیری می شود و توسط همان ال سی دی کاراکتری متصل به میکروکنترلر ATmega8 که ولتاژ و جریان را به کاربران نشان می دهد مقدار توان مصرف کننده نیز نشان داده خواهد شد.
نقشه شماتیک پروژه ساخت ولت متر و آمپر متر AC و DC با میکرو AVR
در این مدار از مدار کسینوس فی متر استفاده نشده است. این پروژه از 4 قسمت تشکیل شده است که شامل مدار اندازه گیری ولتاژ، مدار اندازه گیری جریان، یکسوساز ابزار دقیق و کنترل AVR می شود.
سخت افزار پروژه
قسمت اندازه گیری ولتاژ متناوب به صورت بلوک زیر می باشد که ولتاژ AC را دریافت می کند و به ولتاژ DC تبدیل می کند و در صورت افت ولتاژ یا افزایش ولتاژ ورودی مقدار ولتاژ DC تغییر می کند که این ولتاژ به ADC میکروکنترلر AVR متصل شده و همچنین جهت تنظیم کردن ولتاژ خروجی از یک مولتی ترن در خروجی مدار استفاده شده است. توجه داشته باشید که خازن 0.39 میکروفاراد 400 ولت که در مسیر ورودی به پل دیودی قرار دارد حتما از نوع سرامیکی باشد.
در قسمت زیر مقاومت 1.2 اهم 10 وات در مسیر ورودی و خروجی سری شده است که متناسب با عبور جریان بر روی مقاومت افت ولتاژ به وجود می آید. کانتکتور j2 ورودی برق شهر 220 ولت و کانکتور j1 خروجی برق 220 ولت است.
در قسمت زیر مدار یکسوساز با مدار Op-Amp آورده شده است که افت ولتاژ دو سر مقاومت 1.2 اهم را که ولتاژ AC می باشد را به ولتاژ DC تبدیل می کند. از مشخصات اصلی و بارز یکسوساز مبتنی بر تقویت کننده عملیاتی این است که ولتاژه ها با دامنه خیلی کم را می توان یکسو نماید.
برنامه نوشته شده در نرم افزار BASCOM-AVR به زبان بیسیک BASIC
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 |
$regfile = "m8def.dat" $crystal = 8000000 '---------------------------------- $hwstack = 100 $swstack = 200 $framesize = 120 '---------------------------------- Dim A As Byte Dim Adcc As Word Dim Longg As Long Dim Singlee As Single Dim Stringg As String * 10 Dim Volt As Single Dim Amper As Single '---------------------------------- Config Lcd = 16 * 2 Config Lcdpin = Pin , Rs = Pind.5 , E = Pind.4 , Db4 = Pind.3 , Db5 = Pind.2 , Db6 = Pind.1 , Db7 = Pind.0 Cls Cursor Off '---------------------------------- Config Adc = Single , Prescaler = Auto , Reference = Internal Start Adc '---------------------------------- Config Pind.6 = Output Config Pind.7 = Output '---------------------------------- Led_red Alias Portd.7 Led_green Alias Portd.6 '---------------------------------- Cls Led_red = 1 Led_green = 0 '---------------------------------- Locate 1 , 6 Lcd "Hello" Wait 2 '---------------------------------- Led_red = 0 Led_green = 1 '---------------------------------- Cls Main: Longg = 0 For A = 1 To 20 Adcc = Getadc(4) Waitms 10 Longg = Longg + Adcc Next Longg = Longg / 20 Singlee = Longg * 2.44 Singlee = Singlee / 1000 Singlee = Singlee * 222 Longg = Singlee Volt = Singlee Locate 1 , 1 : Lcd "V=" ; Longg ; " " '---------------------------------- Longg = 0 For A = 1 To 20 Adcc = Getadc(3) Waitms 10 Longg = Longg + Adcc Next '---------------------------------- Longg = Longg / 20 Singlee = Longg * 2.44 Singlee = Singlee / 1000 Singlee = Singlee / 2.57 Stringg = Fusing(singlee , "#.###") Amper = Singlee Locate 1 , 8 Lcd "A=" ; Stringg ; " " '---------------------------------- Singlee = Volt * Amper Stringg = Fusing(singlee , "#.#") '---------------------------------- Locate 2 , 1 : Lcd "W=" ; Stringg ; " w " Waitms 600 Goto Main End |
سلام.پروژه رو با میکروکنترلرATmega32 میشه ساخت؟؟؟
سلام دوست عزیز
بله می توانید، اما شاید نیاز باشد در برنامه برخی پایه ها را ویرایش کنید.
سلام ادمین عزیز
امکانش هست اصل نقشه رو داشته باشم؟
با هزینش هم مشکلی ندارم
چون قسمت ac مدار کامل توضیح ندادید
سلام دوست عزیز
در حال حاضر تنها نقشه موجود که در اختیار داریم همین نقشه ای است که در توضیحات پروژه درج شده است.
سلام مهندس خسته نباشید
امکانش هست در مورد دستوراتی که در قسمت بدست آورن ولتاژ و جریان در برنامه نویسی کنجانده شده توضیحاتی بفرمایید که این متغیر ها و اعداد چگونه بدست آمده اند–
سلام با برنامه اردوینو ندارین این برنامه رو؟ آموزش کاملتر دارین؟ چطور مدارو ببندیم ؟
سلام آیا فایل طراحی شده در پروتوس این پروپژه رو دارید؟
سلام دوست عزیز
خیر – فایل طراحی شده این پروژه در نرم افزار Proteus را نداریم.
منظورتان از پروژه پیشرفته تر از این پروژه را متوجه نشدم منظورتان چه قابلیت هایی است؟ پروژه های زیادی در حوزه اندازه گیری ولتاژ و جریان در اینترنت موجود است که هر کدام دارای مدارهای متفاوت با دقت و قدرت اندازه گیری متفاوت هستند.
سلام .همین برنامه با آردوینو رو دارین یا میتونین بنویسید یا راهنمایی کنید ؟
و آموزش بستن یا لحیم کردن مدار رو میتونید تهیه کنید یا اگر دارید دانلود کنبم؟
دانلود نمیشه
با سلام و احترام
فایل پروژه بررسی شد و مشکلی یافت نشد، لطفا در صورت استفاده از ابزار تغییر آی پی آنرا غیرفعال کنید.
سلام وقت شما بخیر. چرا هنگام تعریف پایه های lcd, به جای PORT از PIN استفاده شده, و چرا هنگام کامپایل کردن برنامه 2 خطا به عنوان زیر داریم:
آیا نیازی به تنظیم پورت ها در بخش programmer>Compiler>Lcd
و I2C, SPI, 1WIRE هست؟
من پروگرمر رو روی USBASP گذاشتم و چیپ رو ma8 انتخاب کردم, از بخش programmer chip هم write buffer to chip رو زدم و انجام شد. ایا برنامه رو میکرو ریخته شده؟ ممنون… .
با سلام و احترام
برای ویرایش برنامه لطفا از نرم افزار بسکام ورژن 1.11.9.0 استفاده کنید و برنامه را تغییر ندهید.
برای پروگرام کردن صحیح به راهنمای پروگرامر خود مراجعه کنید چراکه با پروگرامر USBASP تا به حال کار نکردم.
سلام اگه امکانش هست یه عکس از فیوز بیت ها هم بزارید ممنون
سلام خسته نباشید
محدوده ولتاژش 60 ولته یا 1000 ولت؟
به خروجی 220 ولت، بار(مثلا لامپ) وصل میشه؟؟
الان پروژه رو ببندیم جواب میده؟
فایل شبیه سازی داشت خیلی خوب میشد، که بشه اجراش کرد..
ممنون