اطلاعیه

Collapse
No announcement yet.

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

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

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

    با سلام
    kasper عزیز ، این منبع اصلی مداریه که ما ساختیم با کمی تغییر . "Remote humidity sensor needs no battery"

    خازن C1 همون سنسور رطوبته و بعنوان تعیین کننده فرکانس اسیلاتور در قسمت RC عمل میکند. با تغییر مقدار سنسور مقدار
    ثابت زمانی تغییر کرده و در نتیجه فرکانس اسیلاتور تغییر خواهد کرد. در مورد ترانزیستور Q2 اگه خواستی میتونی حذفش کنی
    ولی من توضیحش رو بدم بعد خودت تصمیم بگیر . بین دو قسمت یعنی طرف ترانزیستورها و طرف آی سی سیم حلقه شده به
    معنای سیم ارتباطه که طبق گفته طراح بین 10 تا 1000 متر میتونه باشه(سیم از نوع شیلد). برای صرفه جوئی از دو سیم استفاده
    شده. یکی GND و اون یکی سیم دو تا وظیفه داره ، وقتی ترانزیستور Q2 روشنه (با پایین آوردن بیس Q2) از طریق این سیم ولتاژ
    تغذیه به آند D1 اعمال و از این طریق خازن C2 شارژ میشه (البته خیلی سریع ). بعدش باید ترانزیستور Q2 رو باید خاموش کنیم تا
    بتونیم خروجی اسیلاتور رو در نقطه f.ouput که همون کلکتور ترانزیستور Q1 هست ببینیم .
    مدار رو خوب ببین بعد سوالاتت رو اگه خواستی بپرس.
    افتادگی آموز اگر طالب علمی
    هرگز نخورد آب زمینی که بلند است

    دیدگاه


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

      سلام.
      اقای همت زاده ممنونم.
      فقط این که مدار خاصی نیست. این مدار هم تغییرات خازن رو به تغییرات فرکانس تبدیل می کنه که میشه بجاش از یه 555 استفاده کرد. همونطور که تو دیتاشیتش یه چیزایی گفته.
      یه توضیحی بدید ببینم نقش 7404 چیه و چی کار می کنه.
      قسمت بعدی همون خوندن فرکانسه دیگه؟
      جون من نمیشه بر اساس اون ماژولی که من خریدم ( همون HH10D ) پیش بریم ؟
      بالاخره اون 2401 که توش گذاشته هویج که نیست. حتما واسه کالیبره کردن و این جور مسائله.
      مشکل کالیبراسیون هنوز به قوت خودش باقیه. واسه کالیبره کردن چی کار کنم؟
      بازم ممنونم.

      دیدگاه


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

        دوباره سلام.
        من دیتا شیت HS1101 رو خوندم . یه نمونه نشون داده که تغییرات رطوبت به تغییرات ولتاژ تبدیل بشه اما مداری در این رابطه نداده.
        به نظر شما استفاده از تغییرات ولتاژ برای خوندن رطوبت بهتر از استفاده از تغییرات فرکانس نیست؟
        اگه همچین مداری باشه براحتی میشه با یه adc مقدار رطوبت رو خوند.
        این عکس از دیتاشیته:

        دیدگاه


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

          سلام.
          اقای همت زاده یه مشکل دیگه من اینه که اگه بخواهم با همون میکرو mega16 که تو مدار قسمت گیرنده پروژه ام هست مقدار فرکانس رو بخونم برای میکرو و کارهای دیگه ای که می کنه مشکل پیش میاد. چون باید با سرعت بالا سرویس وقفه رو بروز رسانی بکنه و منم از چند تا وقفه از جمله وقفه ارسال و دریافت پورت سریال استفاده کرده ام و توسط ان اطلاعات زیادی رد و بدل میشه و این باعث میشه که نتونم فرکانس رو درست بخونم و از این جور مسائل.( یه چیز تو مایه های هنگ کردن یا کم اوردن.)

          پس با این تفاسیر خواهشا یه مدار ارائه بدید که بتونه تغییرات خازن رو به تغییرات ولتاژ DC تبدیل بکنه.

          به نظر کار سختی میاد. چون تو خود دیتاشیتش این مدار رو نداده و تو سایتش برای این کار یه ماژول گذاشته برای فروش.
          نظر شما چیه؟؟

          دیدگاه


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

            با سلام
            در مورد اسمبلی در هزار جا میتونی جواب سوالتو بگیری(توی اینترنت و کتابها). در مورد آی سی 74hc04 من گفتم
            شما دقت نکردی. این گیت برای ساخت اسیلاتور بکار رفته و از 555 کاربردش بیشتره.
            دوست من ، سنسور اساسا" تغییراتش خازنیه درسته؟ پس باید این تغییرات رو بنوعی بخونی درسته؟ پس حالا باید
            خازن سنج درست کنی درسته؟ اینهم با ساخت اسیلاتور امکان پذیره خوب.خروجی اسیلاتور هم که معلومه فرکانسه.
            حالا اگه شما در این مرحله فرکانس رو بخونی با یه خورده تقریب و خطای زمان اندازه گیری فرکانس به نتیجه میرسی.
            ولی اگه بعد از این مرحله بخوای تبدیل رو ادامه بدی و فرکانس رو به ولتاژ تبدیل کنی خطای تبدیل دو برابر میشه ، پس
            ترجیحا" خواندن فرکانس بهتره و اونقدر ها هم سخت نیست فقط در مواردی که لازم داری فرکانس رو بخون نه همیشه.
            افتادگی آموز اگر طالب علمی
            هرگز نخورد آب زمینی که بلند است

            دیدگاه


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

              سلام.
              مدار خوبی واسه تبدیل به ولتاژ پیدا نکردم.
              کار را با خوندن فرکانس ادامه میدم.
              اقای همت زاده در مورد خوندن فرکانس همونطوری که شما گفتید راهش اینه که برای یک لحظه تغذیه مدار را وصل کرده و فرکانس را بخونیم. مدار شما رو کاملا نگاه کردم و متنش رو خوندم. مدار جالبیه و چند تا چیز ازش یاد گرفتم. از این بابت خیلی ممنونم.
              فقط مشکل دیگه اینه که من باید براساس ماژولی که خریدم پیش برم. این ماژول هم از لحاظ اصول فرقی با بقیه مدارها نداره و فقط یک EEPROM داره از نوع 2401 که توش 3 عدد ذخیره شده ( در خونه های 10 و 12 و 14 ) که اگر ان سه عدد را از EEPROM خونده و با دانستن فرکانس خروجی طبق فرمولی که تو دیتاشیت این ماژول گفته مقدار رطوبت را حساب کنیم در حقیقت کالیبره شده را بدست اورده ایم و این مزیت این ماژوله که میشه گفت کالیبره شده است. ضمنا در این ماژول بجای 555 از 7555 استفاده کرده که فکر نمی کنم فرقی داشته باشند.
              مشکل مداری که شما نشون دادید اینه که مثلا اگه رطوبت 55 درصد باشه طبق دیتاشیت سنسور ظرفیت خازن 180 پیکو فاراد میشه و من هر سه مدار ( یعنی مدار شما و مدار پیشنهادی توسط دیتاشیت HS1101 و مداری که تو دیتا شیت ماژول HH10B قرار داره ) رو بستم و با خازن 180 پیکو فاراد هر مدار یک فرکانس در خروجی میداد که با هم برابر نبودند. اولی 3 کیلو و دومی 5 کیلو و سومی 7 کیلو. که البته این طبیعیه چون مقدار المانها با هم فرق می کنه پس فرمول بدست اوردن رطوبت در هر مدار فرق می کنه. مشکل اینه که مثلا مداری که شما معرفی کردید فرمولی ارائه نداده و نمی توان از فرمولی که تو دیتا شیت HS1101 گذاشته استفاده کرد و مقدار رطوبت را حساب کرد.
              اما ماژولی که من خریدم تو دیتا شیتش نحوه محاسبه مقدار رطوبت رو گفته. خواهشا عکس زیر رو نگاه کنید ( مخصوصا عکس سومی ) و توضیحات قسمت محاسبه رطوبت رو بخونید :







              با این تفاسیر اگه ممکنه تو خوندن فرکانس و خوندن EEPROM به من کمک کنید.

              دیدگاه


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

                سلام.
                اقای همت زاده خروجی این ماژولی که گرفته ام فرکانس میده اما تو قسمت ارتباط با EEPROM مشکل دارم.
                تا بحال با EEPROM کار نکرده بودم. دیروز و امروز خیلی باهاش ور رفتم اما فایده ای نداشت. ضمنا حواسم نبود زدم 5+ ولت ماژول رو به زمینش اتصال کوتاه کردم. اول فکر کردم سوخته. دوباره با اسکوپ گرفتم دیدم فرکانس می داد. یعنی سنسور و 555 سالمن. اما EEPROM رو نمی دونم سالم مونده یا نه ؟
                امروز EEPROM رو امتحان کردم. مثلا از خونه 10 ام اطلاعات رو می گرفتم و روی LCD نشون می دادم. هر بار که تغذیه را قطع و وصل می کردم یه عددی نشون می داد. منتها این اعداد دو رو بر 200 تا 250 هستند. برای تست EEPROM تو یکی از خونه هاش یه عدد ریختم و دوباره خوندم دیدم که عدد خونده شده تقریبا دو باربر عددی هستش که من بهش دادم.
                این EEPROM ها نکته خاصی ندارند ؟ مثلا میکرو رو روی اسیلاتور داخلی تنظیم کردم. مشکلی نداره؟؟

                خواهشا کمکم کنید. :cry2:

                دیدگاه


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

                  با سلام
                  دوست عزیز من kasper ، اگه از برنامه هائی که مثلا" Atmel یا سایتهای معتبر برای eeprom داده اند استفاده کنی نباید
                  نتایج اینطوری بشه. یعنی عدد نوشته شده در یک خانه خاص باید عینا" خوانده بشه نه اینکه دو برابر یا ... . در مورد کالیبره
                  کردن مقدار فرکانس برای 555 یا 74hc14 باید بگم دو تا خازن مرغوب با کمترین نشتی به مقدار 170 پیکو و 200 پیکوفاراد رو
                  به ترتیب به جای سنسور در مدار قرار بده و حد بالا و پایین فرکانس رو اندازه گرفته و مابین این دو محدوده رو بصورت خطی
                  در نظر بگیر.
                  افتادگی آموز اگر طالب علمی
                  هرگز نخورد آب زمینی که بلند است

                  دیدگاه


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

                    ممنون.
                    تو اینترنت گشتم اما چیز بدرد بخوری پیدا نکردم.
                    میشه یه نمونه لینک بدید؟؟

                    دیدگاه


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

                      سلام
                      نوشته اصلی توسط kasper
                      ممنون.
                      تو اینترنت گشتم اما چیز بدرد بخوری پیدا نکردم.
                      میشه یه نمونه لینک بدید؟؟
                      kasper جان با من بودید؟ اگه اینطوریه منظورتون رو نفهمیدم ، پیری و صد درد بی دوا !
                      افتادگی آموز اگر طالب علمی
                      هرگز نخورد آب زمینی که بلند است

                      دیدگاه


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

                        دوباره سلام. منظورم یه نمونه برنامه معتبر بود .

                        راستی من از برنامه ارتباط با EEPROM که یکی از پروژه های مقاله اقای سپاس یار است استفاده کرده ام.
                        در این پروژه فرکانس کاری میکرو در محیط کدویژن و در قسمت Configuration برابر 1 مگاهرتز قرار داده شده است اما در پروتئوس همین پروژه فرکانس میکرو روی 4 مگاهرتز قرار داده شده است و مدار درست عمل می کند.اما وقتی فرکانس میکرو را در پروتئوس مطابق برنامه که 1 مگا است تنظیم می کنم مدار درست عمل نمی کند. :eek:
                        ( اقای سپاسیار یه توضیحی در این مورد می دهید ؟؟ )

                        ببینم مگه i2c نرم افزاری از فرکانس کاری میکرو استفاده می کند ؟؟ و براساس آن تنظیم شده است ؟؟

                        یه سوال دیگه:
                        برای ارتباط با این EEPROM ها حتما باید از I2C نرم افزاری استفاده کرد؟؟؟ نمی توان از I2C سخت افزاری استفاده کرد ؟؟ ( تو محیط کدویژن )

                        دیدگاه


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

                          سلام.
                          این همون برنامه ای هست که ازش استفاده کرده ام:


                          #include<mega16.h>



                          /* the I2C bus is connected to PORTB */
                          /* the SDA signal is bit 3 */
                          /* the SCL signal is bit 4 */

                          #asm

                          .equ __i2c_port=0x18
                          .equ __sda_bit=3
                          .equ __scl_bit=4

                          #endasm

                          /* now you can include the I2C Functions */

                          #include <i2c.h>

                          /*
                          // Alphanumeric LCD Module functions
                          #asm
                          .equ __lcd_port=0x15 ;PORTC
                          #endasm
                          #include <lcd.h>

                          */



                          /* function declaration for delay_ms */
                          #include <delay.h>

                          #define EEPROM_BUS_ADDRESS 0xa2

                          /* read a byte from the EEPROM */
                          unsigned char eeprom_read(unsigned char address)
                          {

                          unsigned char data;
                          i2c_start();
                          i2c_write(EEPROM_BUS_ADDRESS);
                          i2c_write(address);
                          i2c_start();
                          i2c_write(EEPROM_BUS_ADDRESS | 1);
                          data=i2c_read(0);
                          i2c_stop();
                          return data;

                          }


                          /* write a byte to the EEPROM */
                          void eeprom_write(unsigned char address, unsigned char data) {

                          i2c_start();

                          i2c_write(EEPROM_BUS_ADDRESS);

                          i2c_write(address);

                          i2c_write(data);

                          i2c_stop();

                          /* 10ms delay to complete the write operation */
                          delay_ms(10);
                          }



                          void main(void)
                          {

                          unsigned char i;

                          DDRD=0xFF;




                          /* initialize the I2C bus */

                          i2c_init();


                          eeprom_write(0x04,0x55);



                          i=eeprom_read(0x04);



                          PORTD=i;


                          while (1);

                          }

                          ادرس EEPROM_BUS_ADDRESS را براساس سخت افزار ماژول داده ام که چون پایه A0 به VCC متصل است و A1 و A2 زمین شده اند و چهار بیت اول هم باید دنباله ای از صفر و یک ها باشد پس میشه : 0XA2 بر اساس شکل زیر:

                          دیدگاه


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

                            سلام.
                            اقای همت زاده من نتونستم از EEPROM جواب بگیرم. بنظرم سوخته . چون با همون برنامه تونستم از یه EEPROM که مطمئن بودم سالمه بخونم. اصلا بی خیال EEPROM شدم. دیگه وقت زیادی واسه تحویل پروژه ندارم.بعدا میرم دنبال EEPROM
                            اخرشم رسیدم به حرف شما. :mrgreen: ( جونیه و هزارتا خنگ بازی و بی تجربگی )
                            به خاطر این مسائله که میگن پیری هم اونقدر ها بد نیست. ( یه وقت سوء تفاهم نشه. منظورم تجربه هستش.)

                            خب در مورد روشتون که گفتید 2 تا خازن مرغوب بزارم و فرکانس رو اندازه بگیرم باید بگم که تو فایلی که براساس 74HC14 طراحی کرده گفته که تغییرات خازن برای HS1101 تو محدوده 0 تا 100 درصد رطوبت بین 160 تا 200 پیکو فاراده اما شما فرموده اید بین 170 تا 200 پیکو. خب کدومش درستتره ؟

                            برای بدست اوردن حد بالا و حد پایین بجای اینکه این مدار را تو عمل ببندم و دو تا خازن بزارم مداری که تو پست بالایی گذاشتم رو ( بدون قسمت EEPRPOM ش ) تو پروتئوس بستم.( یعنی مدار ماژول HH10D ) اینطوری بهتر نیست ؟
                            و دو تا خازن یکبار 160 پیکو و بار دیگر 200 پیکو گذاشتم و در حالت 160 پیکو فرکانس خروجی تو پروتئوس بین 5.88 تا 6.66 کیلو هرتز تغییر می کرد ( ثابت نبود ) اما با خازن 200 پیکو وضعیت بهتر می شد و مقدار فرکانس در این حالت حدود 5.26 کیلو بود. بی زحمت فایل پروتئوسی که کشیده ام رو دانلود کنید اجراش کنید و مقدار C1 رو تغییر بدهید :
                            http://rapidshare.com/files/165573894/hh10d_circuit.DSN.html

                            با این تفاسیر میشه به پروتئوس اطمینان کرد یا نه؟
                            ضمنا مثلا در حالت 160 پیکو مداری که با 7414 طرح شده خیلی بهتر عمل می کند.( فرکانس خروجیش تقریبا ثابته ) اینم مدار 7414 هستش که با پروتئوس کشیدم. بی زحمت اینم دانلود کنید و یه نگاه بندازید:
                            http://rapidshare.com/files/165574066/7414.DSN.html

                            خب حالا چی کار کنم؟ برای بدست اوردن حد بالا و پایین مدار 7414 رو تو عمل ببندم یا بر اساس همین HH10D ادامه بدم و به پروتئوس اکتفا کنم.
                            مشکل دیگه اینه که اگه بخوام حد بالا و پایین را در عمل با هر کدام از مدارات مثلا HH10D یا همین 7414 بدست بیاورم اون وقت خازن 160 پیکو و 200 پیکو مرغوب تو بازار پیدا میشه ؟ ( فکر کنم هیچ کدوم استاندارد نیستند )

                            دیدگاه


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

                              با سلام
                              دوست من kasper ، چون تغییرات خازنی نسبت به رطوبت تقریبا" خطیه در نتیجه فرکانس اسیلاتور هم بصورت خطی تغییر
                              خواهد کرد. در نتیجه شماهم احتیاج به دو نقطه برای پیدا کردن شیب خط داشتی که منهم 170 و 200 پیکو رو پیشنهاد کردم.
                              با سنسور HS1101 که خودش تو دیتا شیتش هم ذکر کرده شما 5% خطا خواهید داشت. خوب همه اینها یعنی چی؟ یعنی
                              اینکه اگه منحنی یه خورده هم غیر خطی باشه با اون درصد خطائی که خود سازنده گفته نباید انتظار فوق العاده ای از این سنسور
                              داشت.
                              یادم نمیاد توی این تاپیک بود که من روش کالیبره کردن رو با کمک یک رطوبت سنج دقیق گفته بودم یا نه. اگه نه که باید خودتون
                              زحمت بکشید پیداش کنید.
                              افتادگی آموز اگر طالب علمی
                              هرگز نخورد آب زمینی که بلند است

                              دیدگاه


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

                                سلام.
                                اقای همت زاده من فرکانس خروجی مدار رو در رطوبت 100 درصد و صفر درصد اندازه گرفتم اما نتیجه اشتباه بود. یعنی رطوبت اون محیطی که فکر می کردم مقدار صفر را داراست, صفر نبود و هیچ جوری نتونستم رطوبت صفر رو درست کنم. واسه رطوبت 100 درصد هم به مشکل برخوردم.

                                می خواستم از این طریق یه معادله بنویسم. یعنی بجای اینکه طبق گفته شما 2 تا خازن بزارم و یه محدوده خطی بدست بیارم, مقدار رطوبت را افزایش بدم و محدوده خطی بدست بیارم. چون هیچ خازنی تو این محدوده نداشتم تا کاری که شما گفتید رو انجام بدم.

                                فردا خازنها رو می گیرم. سوالم اینه که فرض کنید من دو تا خازن 160 و 200 پیکو را در مدار قرار دادم و دو تا فرکانس بدست اوردم خب حالا چی کار کنم ؟ باید معادله بدست بیارم ( منظورم همون شیبه ) و یه معادله درجه اول بنویسم ؟ میشه یه کوچولو توضیح بدید؟


                                ضمنا من با سری موازی کردن چند تا خازن بی کیفیت این کارو کردم اما در محدوده تغییرات خازن با تقریب خیلی زیاد از 160 تا 200 پیکو تغییرات فرکانس فقط 2 کیلو هرتز بود و به نظرم واسه بدست اوردن شیب این مقدار کمه .

                                دیدگاه

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