در اين بخش مي‌توانيد آموزش و مثال‌های مرتبط با میکروکنترلرهای AVR را مشاهده بفرمایید
Colonel II

Colonel II



نماد کاربر
پست ها

6616

تشکر کرده: 1670 مرتبه
تشکر شده: 8151 مرتبه
تاريخ عضويت

سه شنبه 26 آذر 1387 16:20

آرشيو سپاس: 11653 مرتبه در 2024 پست

امپر گیری با ایسی ACS712

توسط sinaset » سه شنبه 4 خرداد 1395 09:47

بنام خدا
با سلام

امپر گیری با ایسی ACS712


ایسی acs 712 یک ایسی معروف در اندازه گیری جریان یا آمپرهای الکتریکی می باشد . این المان الکتریکی، به کمک نیرومغناطیسی امپر در حال گذر را می خواند و سپس ،نسبت به ولتاژ در حال گذر، در خروجی خود، ولتاژ را نمایش میدهد (به مانند دماسنج مثل LM35 اما سطح ولتاژ ان با دماسنج lm35 متفاوت می باشد)

از برترهای این ایسی نسبت به دیگر المان و روش ها اندازه گیری ، کم درد سر بودن و تلفات حرارتی بسیار پایین آن می باشد.

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

اما از معایب این ایسی، دقت پایین تر ان نسبت به روش مقاومتی می باشد !



ماژول این ایسی. که خازن 104 برای حذف نویز و خازن 1 نانو (برای تایین فرکاسن کاری) و یک LED برای روشن بودن و .. اضافه شده
این ایسی در سه نوع معروف وجود دارد :
5   آمپری
20 آمپری
30 آمپری
و به ترتیب هر چقدر توانایی اندازه گیری جریان در این ایسی بیشتر باشد، دقت ان نیز کاهش پیدا می کند.

آزمایش با سه مدل از این ایسی ها :
همانجور که در تصویر می ببینید،سه ایسی( مدل 5 و 20 و 30 امپری) به میکرو وصل می باشند و به انها 100 میلی امپر جریان داده شده، همانجور که می ببینید مدل 5 امپری ، دقت بهتری دارد، و نزدیک به امپر دریافت را نشان داده.
---
اما در آزمایش دیگر ،با ایسی ها 1 امپر داده میشود، که همانجور که می ببینید،ایسی ها چندان دقیق ،دقیق نیست،ولی خوب بد هم نیست و دقت قابل قبولی نیز دارد.


به طور کلی این ایسی برای اندازه گیری جریان ها زیادی خوب و کار راه انداز می باشد ..


در ادامه پست بعدی،کد و شبیه ساز معرفی می شود

باتشکر.
"قرآن"(کلام خدا) ...راه سعادت و خوشبختی.

Colonel II

Colonel II



نماد کاربر
پست ها

6616

تشکر کرده: 1670 مرتبه
تشکر شده: 8151 مرتبه
تاريخ عضويت

سه شنبه 26 آذر 1387 16:20

آرشيو سپاس: 11653 مرتبه در 2024 پست

Re: امپر گیری با ایسی ACS712

توسط sinaset » جمعه 7 خرداد 1395 09:25

با سلام

اما برنامه نویسی و شبیه ساز

بعد از انکه سخت افزار مدار را طبق مداری که در بالا قرار داده ایم ساختید.باید پایه خروجی v -out را به یکی از پایه ها ADC بدهید، تا بتوانید ولتاژ را اندازه بگیرید.

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

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

ACS712-05A عدد معرفی شده 185 میلی امپر
ACS712-20A عدد معرفی شده 100 میلی امپر
ACS712-30A عدد معرفی شده 66  میلی امپر

در برنامه نویسی

، ابتدا  میزان واحد ADC را که از ایسی دریافت کرده ایم را مستقیم ضربدر 0.00488 می کنیم.(برای بدست اوردن ولتاژ) سپس ان را -2.5 ولت می کنیم( تا 2.5 ولت که همیشه ثابت است را لحاظ نکنیم) ، در انتها عدد بدست اورده شده را تقسیم بر عدد معرفی شده ایسی می کنیم

یعنی:
کد: انتخاب همه
 لينکها براي کاربران مهمان قابل دسترسي نيست، براي مشاهده ي لينکها لطفا ثبت نام کرده و وارد شويد 

و بعد بسته به نوع ایسی:
کد: انتخاب همه
 لينکها براي کاربران مهمان قابل دسترسي نيست، براي مشاهده ي لينکها لطفا ثبت نام کرده و وارد شويد 


سپس می توانید امپر در حال مصرف،را بدست آورید،به همین راحتی.!

کل کدها:
کد: انتخاب همه
 لينکها براي کاربران مهمان قابل دسترسي نيست، براي مشاهده ي لينکها لطفا ثبت نام کرده و وارد شويد 


 لينکها براي کاربران مهمان قابل دسترسي نيست، براي مشاهده ي لينکها لطفا ثبت نام کرده و وارد شويد سورس و شبیه ساز
( لينکها براي کاربران مهمان قابل دسترسي نيست، براي مشاهده ي لينکها لطفا ثبت نام کرده و وارد شويد کتابخانه منبع تغذیه متغیر)
باتشکر.
"قرآن"(کلام خدا) ...راه سعادت و خوشبختی.

New Member



no avatar
پست ها

1

تشکر کرده: 0 مرتبه
تشکر شده: 0 مرتبه
تاريخ عضويت

پنج شنبه 20 خرداد 1395 08:42

آرشيو سپاس: 0 مرتبه در 0 پست

Re: امپر گیری با ایسی ACS712

توسط javadian2 » چهارشنبه 26 خرداد 1395 16:06

سلام دوست عزیز برای من همیشه مقدار a=2f  نمایش داده می شود

Colonel II

Colonel II



نماد کاربر
پست ها

6616

تشکر کرده: 1670 مرتبه
تشکر شده: 8151 مرتبه
تاريخ عضويت

سه شنبه 26 آذر 1387 16:20

آرشيو سپاس: 11653 مرتبه در 2024 پست

Re: امپر گیری با ایسی ACS712

توسط sinaset » چهارشنبه 26 خرداد 1395 16:26

سلام بر شما

از فایل که در بالا گذاشته ام استفاده کردیده اید؟! (و نسخه کدویژن شما 3.12 می باشد؟)

این مشکل مربوط به sprintf می باشد. همانجور که نمی دانم مستحضر باشید. این تابع به صورت دیفالت متغیرهای int را می شناسد،ولی زمانی که ما از float استفاده می کنیم،باید به صورت دستی وضعیت ان را تغیر دهیم (*لازم به ذکر است،استفاده از این قابلیت حجم برنامه را زیاد می کند)

برای حل این مشکل،به سربرگ project بروید و روی گزینه configure کلیک کنید،سپس به سربرگ c compiler بروید.در انجا زیر گزینه sprintf منوی وجود دارد،ان را باز کنید و روی گزینه float تنظیم کنید. انشالله مشکلتان حل خواهد شد.

باتشکر.
"قرآن"(کلام خدا) ...راه سعادت و خوشبختی.


 


  • موضوعات مشابه
    پاسخ ها
    بازديدها
    آخرين پست

چه کسي حاضر است ؟

کاربران حاضر در اين انجمن: بدون كاربران آنلاين و 0 مهمان