اطلاعیه

Collapse
No announcement yet.

مشکل با سنسور LM35 با میکرو

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    مشکل با سنسور LM35 با میکرو

    با میکرو Atmega 16 و ADC یک سنسور LM35 رو وصل کردم و این برنامه رو نوشتم ولی دمای نمایش داده شده درست نیست و دائما پرش دارد
    مثلا دمای اتاق 24 درجه هستش ولی سنسور بین 36 تا 44 پرش داره
    چند تا سنسور هم تست کردم

    // read LM35 temperature on ADC (1)
    temp35=read_adc(1);
    sprintf(lcd_buffer," %i.%u\xdfC",temp35*2,abs(temp35%10));
    // display the data on LCD
    lcd_clear();
    lcd_puts(lcd_buffer);
    delay_ms(500);

    #2
    پاسخ : مشکل با سنسور LM35 با میکرو

    سلام.
    برای تنظیم ورودی شما باید پایه Aref را کنترل و تنظیم کنید (با یه پتانسیومتر).
    برای پرش , توی ADC های خارجی هم این اتفاق میافته.
    برای رفع این مشکل شما باید میانگین بگیرید.
    به این صورت که مثلا 10 بار مقدار ورودی رو با هم جمع کنید, بعد نتیجه را تقسیم بر 10 کنید و نمایش بدید.
    فقط یادتون باشه که از متغیر int استفاده کنید که توی جمع اشتباه نشه.
    -------------------
    این به نظر من میومد اما اگر راه بهتری هم هست دوستان راهنمایی کنند.
    الهم عجل لولیک الفرج

    دیدگاه


      #3
      پاسخ : مشکل با سنسور LM35 با میکرو

      سلام دوست عزیز
      آقا من یه برنامه برای دماسنج تو این تاپیک گذاشتم، با همین سنسور هم هست ببین به دردت می خوره.
      http://www.eca.ir/forum2/index.php/topic,5607.15.html

      دیدگاه


        #4
        پاسخ : مشکل با سنسور LM35 با میکرو

        نوشته اصلی توسط Iran-PC
        برای رفع این مشکل شما باید میانگین بگیرید.
        به این صورت که مثلا 10 بار مقدار ورودی رو با هم جمع کنید, بعد نتیجه را تقسیم بر 10 کنید و نمایش بدید.
        سلام
        از خازن و سلفهایی که تو دیتاشیت گفته برای پایه AVCC , AREF استفاده کن،میتونی یه خازن هم بین خروجی سنسور و زمین بذاری
        و این میانگین گیری هم که iran pc عزیز گفت هم خیلی کمک میکنه
        در دیر مغان آمد یارم قدحی در دست
        مست از می می خواران از نرگس مستش مست

        دیدگاه


          #5
          پاسخ : مشکل با سنسور LM35 با میکرو

          آقا بدون همه این کارا درست شد فقط nosie Canceler رو فعال کردم

          دیدگاه


            #6
            پاسخ : مشکل با سنسور LM35 با میکرو

            نوشته اصلی توسط iman4web
            آقا بدون همه این کارا درست شد فقط nosie Canceler رو فعال کردم
            سلام به همه دوستان
            ببخشید این nosie Canceler چیه و چطور فعالش کردید .
            من هم این مشکل را دارم چطور باید فعالش کنم ؟؟؟
            ممنون میشم اگه راهنمایی کنید
            موفق باشید
            [left][move][b][color=green][size=11pt]ما می توانیم .
            ، همین ... *. * * *. * * * [color=re

            دیدگاه


              #7
              پاسخ : مشکل با سنسور LM35 با میکرو

              آقا تو CodeWizard وقتی Intrupt رو فعال کنی یک گزینه به نام Noise canceler میاد

              دیدگاه


                #8
                پاسخ : مشکل با سنسور LM35 با میکرو

                آقا تو bascom چه جوری باید فعالش کنیم؟؟؟؟
                یه سوال دیگه.من میخوام با lm35 دمای هوا رو اندازه گیری کنم ولی تو یه تاپیک خوندم که lm35 به درد اندازه گیری دمای هوا نمی خوره.شما باش کار کردین؟مثلا اگه دمای اتاق رفت بالا بعد چه مدت سنس میکنه و با چه دقتی؟
                اگر انسان از همه خطر ها پرهيز کند ، هرگز راه به جائي نخواهد برد...

                دیدگاه


                  #9
                  پاسخ : مشکل با سنسور LM35 با میکرو

                  تو بسکام نمیدونم
                  با LM35 و LM75 مدار بستم جفتشون دقیق هستن و سریع دماشون بالا میره دقت جفتشون هم 0.5 درجه است

                  دیدگاه


                    #10
                    پاسخ : مشکل با سنسور LM35 با میکرو

                    من برنامه ای نوشتم میاد عدد رو از adc می خونه.تقسیم بر 2 میکنه و میشه دما
                    یعنی 1 درجه دقت داره.الگوریتم برنامه شما چه جوریه.یعنی دما رو با چه فرمولی اندازه گیری میکنید.
                    این دما رو در چه فاصله ای سنس میکنه،با گذاشتن دست روش یا با فاصله؟
                    اگر انسان از همه خطر ها پرهيز کند ، هرگز راه به جائي نخواهد برد...

                    دیدگاه


                      #11
                      پاسخ : مشکل با سنسور LM35 با میکرو

                      برنامه که بالا هست
                      با دستم میگیرمش دما بالا میره

                      دیدگاه


                        #12
                        پاسخ : مشکل با سنسور LM35 با میکرو

                        آقا این قسمت چه کاری انجام می ده؟
                        Cols_d = Cols Mod 2
                        If Cols_d > 0 Then
                        Lcd Chr 5
                        Cols = Cols + 2
                        Else
                        Cols = Cols + 1
                        End If
                        اولشو میفهمم که اگه عدد فرد بود یه نصفه خط اضافه میکنه ولی اونجا که به cols 1 یا 2 اضافه میکنه رو نفهمیدم.
                        اگر انسان از همه خطر ها پرهيز کند ، هرگز راه به جائي نخواهد برد...

                        دیدگاه


                          #13
                          پاسخ : مشکل با سنسور LM35 با میکرو

                          نوشته اصلی توسط iman4web
                          تو بسکام نمیدونم
                          با LM35 و LM75 مدار بستم جفتشون دقیق هستن و سریع دماشون بالا میره دقت جفتشون هم 0.5 درجه است
                          لطف میکنید نقشه اتصال LM75 با Atmega32 رو بزارید؟

                          دیدگاه


                            #14
                            پاسخ : مشکل با سنسور LM35 با میکرو

                            سلام
                            من یه ترموستات دارم که با atmega8 و lm35 کار میکنه.
                            مشکلم اینه که در حدود 1 درجه نوسان دارم. یعنی اصلا حالت ثابت نداره دائما نوسان میکنه و به همین خاطر دائما رله قطع و وصل میشه. شاید در دقیقه 20 بار رله قطع و وصل میشه.
                            به نظر شما از چه سنسوری استفاده کنم که این مشکل حل بشه؟
                            الان lm35dz گذاشتم.
                            اگه ds1820 بزارم باید برنامه را تغییر بدم؟
                            سری lm هم چند مدل داره کدوم مدل بگیرم؟

                            دیدگاه


                              #15
                              پاسخ : مشکل با سنسور LM35 با میکرو

                              شما نمی تونی دقیقا مقدار حرارت رو درست روی یه مقدار ست بکنی
                              این قضیه دقیقا شبیه به مشکلیه که توی کار با مقایسه کننده ها با اپ امپ وجود داره اونجا هم از اشمیت تریگر استفاده می کنند
                              شما همون حالت رو با تعیین یه دمای حد بالا و پائین می تونی حل بکنی توی وسط این قسمت سیستم خاموشه
                              ولی بازهم مشکلتون زیاد حل نمیشه چون کافیه حرارت چند لحظه ما بین یکی از این مرزها ثابت بمونه اونوقت سیستم ات نوسان می کنه و هی رله روشن و خاموش میشه
                              واسه حل این مشکلتتون می تونی از pid ها استفاده بکنی البته اگه کارت ساده است از pid انالوگ ولی در غیر اینصورت از pid دیجیتالی

                              موفق باشی

                              دیدگاه

                              لطفا صبر کنید...
                              X