PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : مقادیر متغیر adc برای سنسورهای مختلف



ehsanta
17-03-2013, 12:50
با سلام خدمت مهندسین عزیز
من زمانی که مقادیر سنسور دما و رطوبت رو از adc می گیرم مرتب مقادیرش تغییر میکنه داخل تاپیکهای مختلف مطالب مختلفی وجود داره که ضد و نقیضه مشکل از سنسورها نیست
یکی میگه مقاومت و خازن براش بزار
یکی میگه کریستال خارجی میخاد
و...
توی برنامه نویسی 500 تا نمونه با بازه 50 میلی ثانیه میگیرم ولی مقادیر دما رو از 2 درجه تا 35 درجه میده هر بار یه عدد؟؟؟؟؟؟؟؟؟؟
فکر کنم بخاطر تنظیمات avr هست!!!!!!! چطور ولتاژ مرجع رو تنظیم کنم؟؟؟
مثلا ماکزیمم روی یه ولتاژ قرار بدم؟؟

چطور میشه دمای واقعی رو بدست آورد؟
من از avr16a استفاده میکنم با lm35 ؟ ولتاژ ورودی سنسور دما رو 12 ولت هم دادم درست نشد؟؟
هردو سنسور همین مشکلو داره هم دما هم رطوبت !!!!!!!!!!!!!!!!!!!!!!

Ma3ood
17-03-2013, 13:31
من احتمال میدم تغذیه بردتون صاف و رگوله نیست . شما در مورد بردتون و نحوه تغذیه و قطعاتی که روی اون هست بیشتر توضیح بدهید.
چون تغییرات زیاد سنسور ها اینطوری که شما توضیح دادید فقط برای تغییرات ولتاژی زیاد هست
در ضمن شما برای تغذیه انالوگ از فیلتر lc استفاده کرده اید.

ehsanta
17-03-2013, 21:12
مهندس فیلتر lc نمیدونم چیه!!! اگه میشه بیشتر توضیح بدید
مدار روی برد بورد نصبه فکر نکنم به خاطر این باشه!!
برای تغذیه مدار از رگولاتور 7805 استفاده کردم و قطعه خاصی روی برد نیست سنسور مستقیم به میکرو متصله و با همین مدار به تغذیه وصله
میتونه از ولتاژ مرجع باشه؟؟ توی تاپیکهای دیگه که نگاه میکردم خیلیها مشکلی نداشتن
خود میکرو تنظیمات خاصی برای فیوزها یا بصورت نرم افزاری چیزی داره که تنظیم کنم ؟؟؟؟؟؟؟؟؟؟

Ma3ood
17-03-2013, 22:54
قبل ای سی رگولاتور 7805 ورودیت چیه ؟ چند ولته ؟ توی مدارت یه خازن با مقدار حداقل 470 میکرو بعد از رگولاتور قرار بده ولتاژ مرجعتو با ولتمتر دی سی چک کن ببین ثابته یا تغییرات داره ؟ اینا رو شما بررسی کن

Doloop
17-03-2013, 23:09
اگه برنامه رو هم قرار میدادی بهتر بود چون ممکنه مشکل از برنامه هم باشه :wink:

ehsanta
18-03-2013, 23:43
خسته نباشی مهندس تشکر
مدار تغذیه اینه ولی ولتاژ که اندازه گرفتم در حد صدم ولتاژ تغییر میکنه یعنی ممکنه از این باشه؟؟؟
باید چیکار کنم؟؟؟
برنامه هم اینه !!
For I = 1 To 800


Tmp_adc = Getadc(0)
T = Tmp_adc / 4
Tmp = Tmp + T
Waitms 40
Next I
Tmp = Tmp / 800

'For J = 1 To 30
Rbt = Getadc(1)
' Tm = Rbt - 380
' Rbt = Tm / 31
' Tmpr = Tmpr + Rbt
' Waitms 20

'Next J
'Rbt = Tmpr / 30

خود میکرو تنظیم خاصی نداره ؟؟ نویز کنسلر چیه؟؟
You can see links before reply

REZA1373
19-03-2013, 01:00
مشکل در اینجاس که شما بعد از انجام محاسبات حافظه temp برابر صفر نمیشود و دوباره در همان حافظه با همان اطلاعات قبلی محاسبات دوباره انجام میشود باید به صورت زیر باشد
محاسبات شما نیز اشتباه هست اگه درست گفته باشم که خودم اصلاح کردم زمان تاخیر هم خیلی زیاد هست که به اندازه 4 میلی تغییرداده شد


dim Tmp_asli as word,temp_adc as word
dim temp as word
For I = 1 To 800
Tmp_adc = Getadc(0)
Tmp = Tmp_adc /2. 4
Waitms 4
Next for
Tmp_asli =Tmp / 800
Tmp=0

ehsanta
20-03-2013, 18:26
سال نو بر همه مهندسان ایران میکرو مبارک !!!!
مرسی مهندس برنامه فکر کنم درسته
کاملش اینه !!

Do
Tmp = 0
Tmpr = 0
For I = 1 To 800


Tmp_adc = Getadc(0)
T = Tmp_adc / 4
Tmp = Tmp + T
Waitms 40
Next I
Tmp = Tmp / 800

'For J = 1 To 30
Rbt = Getadc(1)
' Tm = Rbt - 380
' Rbt = Tm / 31
' Tmpr = Tmpr + Rbt
' Waitms 20

'Next J
'Rbt = Tmpr / 30

If Tmp < Mn Then
Mn = Tmp
End If
If Tmp > Mx Then
Mx = Tmp
End If 'use adc in 8bit mode

Portd = Tmp

Cls



Home
Lcd "T=" ; Fusing(tmp , "#.#") ; "C R=" ; Rbt ; "%"

Locate 2 , 1

Lcd "Min=" ; Fusing(mn , "#.#") ; " Max=" ; Fusing(mx , "#.#")

Waitms 80

Loop


مهندس من هیچ کاری برای ثابت شدن مقدار سنسور انجام ندادم ممکنه بخاطر تغییر بسیار اندک ولتاژ باشه ؟؟؟
میترسم اگه مداری سر راهش قرار بگیره دقتش بیاد پایین
امکان داره با دو تا خازن برا سنسور مشکلش حل بشه؟؟؟
مهندس چه راه حلهایی به ذهنتون میرسه؟؟؟ تشکر

1nafar
21-03-2013, 08:33
من از avr16a استفاده میکنم با lm35 ؟ ولتاژ ورودی سنسور دما رو 12 ولت هم دادم درست نشد؟؟
سلام
تا اونجا که یادمه حداکثر تغذیه ی lm35 برابر با 5 ولت بود ...:wink:

ehsanta
21-03-2013, 11:28
مرسی مهندس
ولتاژ 12 مستقیم از ترانس سوئیچ 2 امپر وصل کردم که باز همونطور بود!!!!!!!!

اگه کسی با سنسورها کار کرده اگه لطف کنه یه توضیح کلی بده متوجه میشمایرادم از کجاست !!!!:hi:

Ma3ood
21-03-2013, 13:06
سلام
تا اونجا که یادمه حداکثر تغذیه ی lm35 برابر با 5 ولت بود ...:wink:

مهندس جان تغذیه lm35 از 4 تا 20 ولت DC هستش :0013:

ehsanta
21-03-2013, 17:09
مهندس اگه امکان داره میشه یه توضیح در مورد کار با سنسورها توضیح بدید؟؟
منظورم اصول کارش هست؟
چه چیزهایی میتونه روی نتیجه اثر بزاره؟؟
داخل دیتاشیت lm35 مدارای مختلفی برای این سنسور هست از کدومش باید استفاده کرد؟؟؟

Ma3ood
21-03-2013, 20:21
سنسور دمای lm35 سنسوری انالوگ هست که به ازای هر درجه تغییر 10 میلی ولت به ولتاژ خروجی اون اضافه میشه در پکیج های مختلفی عرضه میشه ومحدوده دمایی متفاوتی داره در مورد شکل مداری شما اگه میخوای دما بر حسب سانتی گراد باشه کافیه یه تغذیه 5 ولت اتصال بدهید و با adc میکرو مقدار انالوگ ورودی را بخونید و در نتیجه دما را داشته باشید مدارات دیتا شیت برای کاربردهای مختلفی هست مثلا ارتباط دو سیمه ، تبدیل ولتاژ خروجی سنسور به جریان برای مدارات صنعتی و فواصل دور ، مدار برای داشتن دما بر حسب فارینهایت و....

safavism
21-03-2013, 22:04
با سلام
من با سنسور lm35 کارکردم تغذیه اون 5 ولت ...برای محاسبه دما باید مقدارgetadc را بر 10.23 تقسیم کرد چون بازای 1 درجه تغییرات دما خروجی سنسور 10 میلی ولت تغییر میکنه .باید چند نمونه گفت و معدل اون گرفت تا یه مقدار ثابتی رو صفحه نمایش دیده بشه

REZA1373
21-03-2013, 23:43
lm 35 ولتاژ کاریش30 ولت هست و هیچ مشکلی برای تغذیه نیست
Operates from 4 to 30 volts
خوب شما برای اتصال سنسور به مدار چیکار کردی فلت گزاشتی؟ اگه گزاشتی یا نزاشتی من همیشه برای برطرف کردن نویز lm35 یه خازن 1uf تو خروجیش نسبت به زمین میزارم و یکی برای تغذیش حتما اینارو بزار

javad naderi
22-03-2013, 03:57
با سلام خدمت مهندسین عزیز
من زمانی که مقادیر سنسور دما و رطوبت رو از adc می گیرم مرتب مقادیرش تغییر میکنه داخل تاپیکهای مختلف مطالب مختلفی وجود داره که ضد و نقیضه مشکل از سنسورها نیست
یکی میگه مقاومت و خازن براش بزار
یکی میگه کریستال خارجی میخاد
و...
توی برنامه نویسی 500 تا نمونه با بازه 50 میلی ثانیه میگیرم ولی مقادیر دما رو از 2 درجه تا 35 درجه میده هر بار یه عدد؟؟؟؟؟؟؟؟؟؟
فکر کنم بخاطر تنظیمات avr هست!!!!!!! چطور ولتاژ مرجع رو تنظیم کنم؟؟؟
مثلا ماکزیمم روی یه ولتاژ قرار بدم؟؟

چطور میشه دمای واقعی رو بدست آورد؟
من از avr16a استفاده میکنم با lm35 ؟ ولتاژ ورودی سنسور دما رو 12 ولت هم دادم درست نشد؟؟
هردو سنسور همین مشکلو داره هم دما هم رطوبت !!!!!!!!!!!!!!!!!!!!!!
سلام
شما قسمت سلف و خازن و ولتاژ avcc رو به میکرو وصل کردی؟
چون تو برنامه adc ولتاژ رفرنس میخاد که باید مشخص بشه اگه خارجی نوشتی باید مدارشو ببندی.

javad naderi
22-03-2013, 04:02
این مدارشه

shahrivar88
23-03-2013, 23:56
منم این مشکلو داشتم و از مد sleep استفاده کردم مشکل حل شد دیگه مقدار نمی پره! ثابته.

shahrivar88
24-03-2013, 00:06
اینم فایل سورس کدویژن و پروتیوس که رو برد هم تست کردم مشکلی نداشت.
خروجی lm35 را به pa0 وصل کن و lc هم به avcc , حله دیگه

coloop
24-03-2013, 12:43
خدا بگم این LM35 رو چیکار کنه :o
منم پارسال اومدم یه دماسنج زپرتی درست کنم سه بار ساختمش از برد بورد گرفته تا PCB.دائما پرش های عجیب غریب داشتم.
تا به این نتیجه رسیدم که بجای اینکه از LM35 استفاده کنم از یه سنسور دیجیتال استفاده کنیم و از شر اینگونه مسائل خلاص شویم.
مثلا در حال حاضر تفاوت قیمت LM35 با نمونه DSP حدود 1000 تومنه.ولی بنظر شخصی بنده ارزشش رو داره.

shahrivar88
24-03-2013, 19:32
مشکل از lm35 نیست مشکل خوندن آنالوگه من نه به خاطر دماسنج بلکه برای راهنداری قسمت آنالوگ مجبور شدم به نتیحه برسونم چون حتی وقتی ورودی آنالوگ رو به 5ولت یا زمین میزدم بازم پرش داشت!!!!!

ehsanta
26-03-2013, 12:12
سلام و خسته نباشید خدمت مهندسین
ولتاژ avcc رو وصل کردم خیلی بهتر شد ولی قطعات دقیقش نداشتم، امتحان میکنم جواب داد به دوستان هم اطلاع میدم.
کریستال خارجی هم میتونه نقش داشته باشه؟؟؟
دیگه چه چیزایی جز ولتاژ مرجع میتونه نقش داشته باشه؟؟؟؟

shahrivar88
27-03-2013, 20:59
کریستال خارجی نه چندان!

بهتره وقتی مقدارو میخونی میکرو تو خاب باشه!! مد اسلیپ. برا اینکه نویز سی پی یو نیفته رو آنالوگ بعد با وقفه پابان تبدیل آنـــــالوگ بیدار شه.