NOTICE توجه: این یک موضوع قدیمی است که آخرین پست ارسالی آن مربوط به 3947 روز قبل است . لطفا فقط پاسخ ها ، سوالات و درخواست های 100 درصد مرتبط را به آن ارسال کنید و برای درخواست ها و سوالات جدید موضوع جدیدی را ایجاد کنید
نمایش نتایج: از 1 به 6 از 6

موضوع: استفاده از جدول"lookup" در بسکام

  1. #1
    کاربر فعال
    تاریخ عضویت
    Jul 2011
    نوشته ها
    198
    تشکر
    234
    تشکر شده 70 بار در 45 پست

    پیش فرض استفاده از جدول"lookup" در بسکام

    سلام دوستان

    من 2سنسور دماسنج دارم که اختلاف دمای این 2 سنسور رو باید بدست بیارم و با توجه به یه جدول ؛؛ رطوبت نسبی رو بکشم بیرون . به عنوان مثال 5=36-31 که با توجه به جدول ،ف رطوبت میشه 70 .

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

    اینم یه نمونه جدول .
    http://s4.picofile.com/file/7836801284/1111.jpg

  2. # ADS
    Circuit advertisement
    تاریخ عضویت
    Always
    نوشته ها
    Many
     

  3. #2
    مدیرکل انجمنها Doloop آواتار ها
    تاریخ عضویت
    Aug 2011
    نام
    حسين
    نوشته ها
    1,964
    تشکر
    3,312
    تشکر شده 3,086 بار در 1,371 پست

    پیش فرض

    خوب اصول کار این lookup اینه که بهش بگی دیتای چندم رو برو بخون و اونم میره اون دیتا رو میخونه

    [PHP]


    I = Lookup(m , Dta) ' print 1000

    Print I

    End

    Dta:

    Data 2 , 9 , 15 , 30 , 60 , 70

    [/PHP]

    فرض کن تو مثال بالا متغیر m حاوی مقدار اختلاف دما هست
    اگر اختلاف دما 0 باشه این دستور میاد دیتای اول یعنی 2 رو میخونه و توی I ذخیره میکنه

    اگر اختلاف دما 3 باشه این دستور میاد دیتای چهارم یعنی 30 رو میخونه و توی I ذخیره میکنه

    اگر اختلاف دما 5 باشه این دستور میاد دیتای ششم یعنی 70 رو میخونه و توی I ذخیره میکنه

    به همین ترتیب مقادیر رطوبت رو تو خونه های درست قرار بدی حله
    *** اللّهم عجّل لولیک الفرج ***

  4. تشکرها از این نوشته :


  5. #3
    کاربر فعال
    تاریخ عضویت
    Jul 2011
    نوشته ها
    198
    تشکر
    234
    تشکر شده 70 بار در 45 پست

    پیش فرض

    نقل قول نوشته اصلی توسط doloop نمایش پست ها
    خوب اصول کار این lookup اینه که بهش بگی دیتای چندم رو برو بخون و اونم میره اون دیتا رو میخونه

    [php]


    i = lookup(m , dta) ' print 1000

    print i

    end

    dta:

    Data 2 , 9 , 15 , 78 , 60 , 70

    [/php]فرض کن تو مثال بالا متغیر m حاوی مقدار اختلاف دما هست
    اگر اختلاف دما 0 باشه این دستور میاد دیتای اول یعنی 2 رو میخونه و توی i ذخیره میکنه

    اگر اختلاف دما 3 باشه این دستور میاد دیتای چهارم یعنی 78 رو میخونه و توی i ذخیره میکنه

    اگر اختلاف دما 5 باشه این دستور میاد دیتای ششم یعنی 70 رو میخونه و توی i ذخیره میکنه

    به همین ترتیب مقادیر رطوبت رو تو خونه های درست قرار بدی حله
    سلام
    از بابت همراهیتون ممنونم .
    مشکل من با جدول lookup نیست مشکل من با جدول رطوبت هست .براتون اینجوری توضیح بدم


    اگر 3=25-28
    بنابراین m=3 که جدول look میاد دیتا چهارم یعنی 78 رو میشکه بیرون .که درصد رطوبت 78برای این رنج دمای درسته .تا اینجا ok?

    اگر 3=21-24
    که m=3 که جدول look میاد دیتا چهارم یعنی 78 رو میکشه بیرون .در صورتیکه رطوبت برای این رنج دما 76 هست .ولی چون اختلاف درجه 3 بوده . دیتای چهارم رو کشیده بیرون

    .مشکل من با اینه .

    من اعداد 0 تا 100 رو دارم که رطوبت برای هر رنج دما متغییر هست .
    اگر 5=42-47 هست این 5 مقدار رطوبتش با 5=59-64 نیست .چونکه یکی از 5 ها برای رنج دمای بین 47-42 هست .یکی از 5 ها برای رنج دمای 64-59. ولی چون m=5 شده فقط دیتای ششم رو دریافت میکنه .

    اگر به جدولی که در بالا پیوست کردم یه نگاهی بندازید منظورمو متوجه میشید که چی میگم ./

  6. #4
    مدیرکل انجمنها Doloop آواتار ها
    تاریخ عضویت
    Aug 2011
    نام
    حسين
    نوشته ها
    1,964
    تشکر
    3,312
    تشکر شده 3,086 بار در 1,371 پست

    پیش فرض

    الان متوجه شدم , اون جدول رو ندیده بودم پس با این حساب برای هر رنج یک lookup میزاری تا تفکیک بشن

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

  7. تشکرها از این نوشته :


  8. #5
    کاربر فعال
    تاریخ عضویت
    Jul 2011
    نوشته ها
    198
    تشکر
    234
    تشکر شده 70 بار در 45 پست

    پیش فرض

    نقل قول نوشته اصلی توسط doloop نمایش پست ها
    الان متوجه شدم , اون جدول رو ندیده بودم پس با این حساب برای هر رنج یک lookup میزاری تا تفکیک بشن

    اول اختلاف دما که بدست اومد چندتا شرط میزاری که ببینه دما تو کدوم یکی از این رنج ها هست بعد از اینکه وارد شرط درست شد حالا یه lookup برای اون شرط میزاری و نمایش میدی حالا تشخیص میده رنج دما چقدره و توی اون رنج محاسبات رو انجام میده ...
    اینجوری که برنامه شلوغ و خیلی وقت گیر میشه .نزدیک به 700-800 عدد هست .

    راه حل دیگه ای نیست ؟؟

  9. #6
    مدیرکل انجمنها
    تاریخ عضویت
    May 2011
    نام
    احسان صفامنش
    نوشته ها
    1,763
    تشکر
    919
    تشکر شده 2,261 بار در 1,056 پست

    پیش فرض

    ببینید اگه منطقی داره و با محاسبه بدست میاد از اون راه برید.
    یا اینکه تمام شرط هایی که یک جدول مشابه دارن رو با هم or کنید

  10. تشکرها از این نوشته :


موضوعات مشابه

  1. پاسخ: 56
    آخرين نوشته: 12-04-2014, 21:57
  2. نیازمند "فایل pcb" آمپلی فایر با کیفیت بالا و تست شده
    توسط sobhan537 در انجمن مباحث کار و کاریابی/تبلیغات/بازارچه
    پاسخ: 4
    آخرين نوشته: 10-12-2013, 18:07
  3. نیازمند طراح و برنامه نویس "سایت"
    توسط sobhan537 در انجمن مباحث کار و کاریابی/تبلیغات/بازارچه
    پاسخ: 0
    آخرين نوشته: 02-12-2013, 02:23
  4. "پورت سریال، printf ، retarget" و دیگر هیچ!
    توسط arasbaran در انجمن LPC series (NXP)
    پاسخ: 7
    آخرين نوشته: 04-11-2013, 23:01
  5. ریشه ضرب المثل " دسته گل به آب دادن "
    توسط arsalan681 در انجمن گفت و گوي آزاد
    پاسخ: 0
    آخرين نوشته: 21-06-2010, 13:09

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •