اطلاعیه

Collapse
No announcement yet.

سوال در مورد راه اندازی سنسور رطوبت و دمای SHT75

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

    سوال در مورد راه اندازی سنسور رطوبت و دمای SHT75

    سلام
    من دنبال یه سنسور رطوبت و دمای مطمئن و خیلی دقیق می گشتم که یکی از دوستان سنسور SHT75 رو به من معرفی کرد. ولی خودش اون رو راه اندازی نکرده بود!! حالا من این سنسور رو گرفتم ولی نمیدونم باید چیکار کنم. دوتا برنامه از این سایت گرفتم و متناسب با مدارم تغییرشون دادم ولی نتیجه ی درستی روی ال سی دی ندیدم. همش یا صفر بود یا اعداد بی معنی دیگه. اگه لطف بفرمایید یه برنامه ی تست شده برای Codevision بذارید ازتون خیلی ممنون میشم. ضمنا اگه خود ماهیگیری رو هم بهم یاد بدید ممنون تر میشم!! (یعنی چه طوری واسه یه آی سی I2C که تازه از دماغ فیل افتاده از روی دیتاشیتش برنامه بنویسم.
    قبلا از همکاری شما خیلی خیلی ممنونم
    °oOo° اگر دروغ بگويي خداوند مهري بر پيشاني ات بزند که هيچ دستار و عمامه اي آن را نپوشاند °oOo°

    #2
    پاسخ : سوال در مورد راه اندازی سنسور رطوبت و دمای SHT75

    دوست عزیز اشتباه نکن،این سنسور I2c نیست ، از یه پروتکلی استفاده می کنه که شبیه I2c هست.
    با کدویژن کار نکردم ولی با بیسکام برنامشو نوشتم
    دیتاشیت رو کامل بخون.مخصوصا قسمت فرمول ها رو.

    دیدگاه


      #3
      پاسخ : سوال در مورد راه اندازی سنسور رطوبت و دمای SHT75

      خب من با بیسکامم کار کردم اگه لطف کنید برنامتون رو بذارید خیلی ممنون میشم بدجوری گیرشم. ضمنا اگه بیشتر توضیح بدید که چه طوری باید یه چنین قطعه ی مرتبط با AVR به صورت سنکرون رو خودم برنامه ش رو بنویسم ممنون میشم. هیچ پیش زمینه ی ذهنی ای ندارم که آیا باید از وقفه ها استفاده کنم یا کدوم قابلیت دیگه ی AVR هر کاری که بلدم تجربی بوده تازه دارم تو درسا بهش برخورد میکنم!
      فکر نمی کنم تبدیل بیسکام به کدویژن برام کار سختی باشه؟ شما نظر بدین. من قبلا بیشتر با بیسکام می نوشتم حالا با کدویژن از این که برنامه تون رو در اختیارم میذارید ممنون :wow:
      °oOo° اگر دروغ بگويي خداوند مهري بر پيشاني ات بزند که هيچ دستار و عمامه اي آن را نپوشاند °oOo°

      دیدگاه


        #4
        پاسخ : سوال در مورد راه اندازی سنسور رطوبت و دمای SHT75

        دوست عزیز .این سنسور چیز خاصی نداره پایه کلاک و دیتا رو به دوتا از پین هات وصل کن. و زمان بندی هایی که تو دیتا شیت هست رو به ترتیب اجرا کن.
        نمونه برنامه اش هم توی اینترنت زیاده(البته SHT11 , SHT15) هم با بسکام و هم با کد ویژن.سرچ کنی حتما پیدا می کنی.
        یا حق.
        می بینیم و نادیده می گیریم!

        دیدگاه


          #5
          پاسخ : سوال در مورد راه اندازی سنسور رطوبت و دمای SHT75

          ممنون
          من خودم توی اینترنت سرچ کردم چیزایی که پیدا کردم واسه نرم افزار keil بود واسه کدویژن نبود چون دفعه اولمه همچین قطعه ای رو راه اندازی می کنم دقیق متوجه نمیشم چه اتفاقی میفته . دو تا برنامه از همین سایت گرفتم نتونستم نتیجه بگیرم. در ضمن نمیدونم برنامه واسه SHT1x روی SHT75 جواب میده یا نه
          اگه کمکم کنید ممنون میشم
          لحظه به لحظه refresh می کنم
          خیلی منتظر یاری سبزتان هستم!!
          °oOo° اگر دروغ بگويي خداوند مهري بر پيشاني ات بزند که هيچ دستار و عمامه اي آن را نپوشاند °oOo°

          دیدگاه


            #6
            پاسخ : سوال در مورد راه اندازی سنسور رطوبت و دمای SHT75

            90 درصد برنامه ها برای سری SHTxx یکیه ولی چون دقت سری SHT1x با SHT7x متفاوته، فرمول های به دست آوردن مقادیر دما و رطوبت یه مقدار فرق می کنه
            به سایت بیسکام برو یه نمونه برنامه گذاشته

            دیدگاه


              #7
              پاسخ : سوال در مورد راه اندازی سنسور رطوبت و دمای SHT75

              اگه منظورتون mcselec.com بود من گشتم چیزی پیدا نکردم
              اگه کسی میتونه در مورد برنامه نویسی این ماژول با کدویژن راهنماییم کنه یا کد بذاره ممنون میشم
              °oOo° اگر دروغ بگويي خداوند مهري بر پيشاني ات بزند که هيچ دستار و عمامه اي آن را نپوشاند °oOo°

              دیدگاه


                #8
                پاسخ : سوال در مورد راه اندازی سنسور رطوبت و دمای SHT75

                نوشته اصلی توسط Shrek
                اگه منظورتون mcselec.com بود من گشتم چیزی پیدا نکردم
                اگه کسی میتونه در مورد برنامه نویسی این ماژول با کدویژن راهنماییم کنه یا کد بذاره ممنون میشم
                http://www.mcselec.com/index.php?option=com_content&task=view&id= 80&Itemid=57
                این برنامه مال بسکامه(شاید به دردتون بخوره)
                می بینیم و نادیده می گیریم!

                دیدگاه


                  #9
                  پاسخ : سوال در مورد راه اندازی سنسور رطوبت و دمای SHT75

                  بابت کد بیسیک خیلی ممنون
                  انگار من نفر اولم که میخوام با کدویژن از این سنسور جواب بگیرم!!!
                  بابا یعنی یکی پیدا نمیشه SHT75 رو راه اندازی کرده باشه؟
                  هر چی پیدا می کنم مربوط به مدل SHT1x هست
                  نمیدونم اصلا جواب میده یانه
                  کاملا گیج شدم

                  °oOo° اگر دروغ بگويي خداوند مهري بر پيشاني ات بزند که هيچ دستار و عمامه اي آن را نپوشاند °oOo°

                  دیدگاه


                    #10
                    پاسخ : سوال در مورد راه اندازی سنسور رطوبت و دمای SHT75

                    دوست عزیز همون طور که گفتم روش ارتیاط با سنسور یکسانه ، فقط فرمول فرق می کنه که اونم تو دیتاشیت نوشته
                    شما برنامه SHT1x رو استفاده کن فقط قسمت فرمول به دست آوردن دما و رطوبتش رو عوض کن

                    دیدگاه


                      #11
                      پاسخ : سوال در مورد راه اندازی سنسور رطوبت و دمای SHT75

                      من قبلا که می خواستم این سنسور رو راه اندازی کنم تو اینترنت سرچ زدم که کلی برنامه برای SHT1X با C دیدم.یه سرچ دیگه اما تو سایت های غیر فارسی بزن.
                      موفق باشی
                      می بینیم و نادیده می گیریم!

                      دیدگاه


                        #12
                        پاسخ : سوال در مورد راه اندازی سنسور رطوبت و دمای SHT75

                        پس این طور که شما می فرمایید اگه من این برنامه رو استفاده کنم جواب می گیرم ولی شاید اصلا عدد درستی نباشه. درسته؟ یا این که ممکنه عدد خیلی کوچیک یا خیلی بزرگ بده؟ میخوام بدونم تا چه حد باید انتظار جواب دقیق داشته باشم قبل از این که مقادیر رو عوض کنم. فردا امتحانم رو بدم دست به کار میشم.
                        بازم ممنون از راهنماییتون
                        هنوز اگه کسی که خودش با کدویژن این سنسور رو راه اندازی کرده کدش رو بذاره ممنون میشم
                        °oOo° اگر دروغ بگويي خداوند مهري بر پيشاني ات بزند که هيچ دستار و عمامه اي آن را نپوشاند °oOo°

                        دیدگاه


                          #13
                          پاسخ : سوال در مورد راه اندازی سنسور رطوبت و دمای SHT75

                          راستش مداری که من ساختم رطوبتش دقیقه ولی تو پروتئوس رطوبت چند درصد خطا داره
                          عملی هم نشد مقایسه کنم ، رطوبت سنج نداشتم

                          دیدگاه


                            #14
                            پاسخ : سوال در مورد راه اندازی سنسور رطوبت و دمای SHT75

                            دوستان خیلی خیلی مممممنون از راهنمایی هاتون :job:
                            من همین الان یعنی ساعت 3 بامداد هفتم خرداد از کد بیسکام جواب گرفتم دارم روی ال سی دی می بینم :applause: :wow:
                            فقط نمیدونم دقت چقدره فعلا که داره دمای اتاق رو 28.3 درجه نشون میده

                            میکرو: atmega32
                            ال سی دی : 20*4
                            کلاک میکرو : 2 مگاهرتز

                            کد موجود در سایت mcselec.com به همراه تغییرات اعمال شده :
                            [code=vb]'Routine to read the SHT11 Humidity sensor chip
                            'By Stuart Leslie
                            'Contact stu@4sightinc.com with any questions
                            'Uses BascomAVR
                            'a .01 uf capacitor across VCC and Ground on the SHT11 really cleans up the data
                            'a pullup is required on "data" pin as shown in the data sheet
                            $regfile = "m32def.dat"
                            $crystal = 2000000

                            Dim Ctr As Byte
                            Dim Dataword As Word
                            Dim Command As Byte
                            Dim Dis As String * 20

                            Dim Calc As Single
                            Dim Calc2 As Single
                            Dim Rhlinear As Single
                            Dim Rhlintemp As Single
                            Dim Tempc As Single
                            Dim Tempf As Single

                            Const C1 = -4
                            Const C2 = 0.0405
                            Const C3 = -0.0000028
                            Const T1c = .01
                            Const T2 = .00008
                            Const T1f = .018

                            Config Lcd = 20 * 4
                            Config Lcdpin = Pin , Db4 = Portd.4 , Db5 = Portd.5 , Db6 = Portd.6 , Db7 = Portd.7 , E = Portd.2 , Rs = Portd.0
                            Cursor Off

                            Sck Alias Portb.0
                            Dataout Alias Portb.1
                            Datain Alias Pinb.1
                            Redled Alias Portb.2

                            Declare Sub Getit()

                            Ddrb = &B11111111 'all port b are output
                            Config Pinb.0 = Output 'sck
                            Config Pinb.1 = Output 'datain

                            'reset the serial communications first, it is easily confused!
                            Set Dataout
                            For Ctr = 1 To 12
                            Set Sck
                            Waitus 2
                            Reset Sck
                            Waitus 2
                            Next Ctr


                            Do 'continually read the tempfature and humidity

                            Command = &B00000011
                            Call Getit 'Get the temperature, puts result in "dataword" for us
                            '
                            Tempf = T1f * Dataword
                            Tempf = Tempf - 40

                            Tempc = T1c * Dataword 'get celcius for later calculations and for "the rest of the world"
                            Tempc = Tempc - 40

                            Dis = Fusing(tempc , "###.##&quot
                            Cls
                            Lcd "Temperature = " ; Dis

                            Command = &B00000101
                            Call Getit 'get the humidity
                            Calc = C2 * Dataword
                            Calc2 = Dataword * Dataword 'that "2" in the datasheet sure looked like a footnote for a couple days, nope it means "squared"!
                            Calc2 = C3 * Calc2
                            Calc = Calc + C1
                            Rhlinear = Calc + Calc2

                            'Dis = Fusing(rhlinear , "##.##&quot
                            'Print "Humidity adjusted for linear = " ; Dis


                            Calc = T2 * Dataword
                            Calc = Calc + T1c
                            Calc2 = Tempc - 25
                            Calc = Calc2 * Calc
                            Rhlintemp = Calc + Rhlinear

                            Dis = Fusing(rhlintemp , "##.##&quot
                            'Lcd "Humidity adjusted for temperature = " ;
                            Lowerline
                            Lcd "Humidity = " ; Dis
                            'Wait 2
                            'Print

                            Wait 1
                            Loop


                            Sub Getit()

                            Local Datavalue As Word
                            Local Databyte As Byte

                            'start with "transmission start"
                            Set Sck
                            Reset Dataout
                            Reset Sck
                            Set Sck
                            Set Dataout
                            Reset Sck


                            'now send the command
                            Shiftout Dataout , Sck , Command , 1

                            Ddrb = &B11111101 'datain is now input
                            Config Pinb.1 = Input 'datain
                            Set Sck 'click one more off
                            Reset Sck
                            Waitus 10 'no idea why, but it doesn't work without it!
                            Bitwait Pinb.1 , Reset 'wait for the chip to have data ready

                            Shiftin Datain , Sck , Databyte , 1 'get the MSB
                            Datavalue = Databyte

                            Ddrb = &B11111111
                            Config Pinb.1 = Output

                            Reset Dataout 'this is the tricky part- Lot's of hair pulling- have to tick the ack!
                            Set Sck
                            Reset Sck

                            Ddrb = &B11111101 'datain is now input
                            Config Pinb.1 = Input

                            Shiftin Datain , Sck , Databyte , 1 'get the LSB
                            Shift Datavalue , Left , 8
                            Datavalue = Datavalue Or Databyte
                            'don't tick the clock or ack since we don't need the CRC value, leave it hanging!
                            Dataword = Datavalue

                            Ddrb = &B11111111
                            Config Pinb.1 = Output

                            Reset Dataout
                            Set Sck
                            Reset Sck

                            Ddrb = &B11111101 'datain is now input
                            Config Pinb.1 = Input

                            Shiftin Datain , Sck , Databyte , 1 'not using the CRC value for now- can't figure it out! Anybody know how to impliment?
                            'Print "CRC value was - " ; Databyte

                            Ddrb = &B11111111
                            Config Pinb.1 = Output

                            Set Dataout
                            Set Sck
                            Reset Sck
                            End Sub

                            End
                            [/code]
                            °oOo° اگر دروغ بگويي خداوند مهري بر پيشاني ات بزند که هيچ دستار و عمامه اي آن را نپوشاند °oOo°

                            دیدگاه


                              #15
                              پاسخ : سوال در مورد راه اندازی سنسور رطوبت و دمای SHT75

                              شناتیکشو نداری بذاری ما هم استفاده کنیم
                              { خلاف قوانین - پاک شد }

                              دیدگاه

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