اطلاعیه

Collapse
No announcement yet.

تاچ خازنی Capacitive Touch

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

    تاچ خازنی Capacitive Touch

    سلام به همه
    من میخوام توی این تاپیک کلید تاچ خازنی رو برای AVR و با Codevision راه اندازی کنم
    البته هدف آموزش مراحل کاره که بعدا با هر میکرویی بشه اینو پیاده کرد
    خب همینطور که توی عکس میبینید ما به همچین مداری نیاز داریم


    اینطوری کار میکنه که با میکرو پین Send رو 1 میکنیم و منتظر میشیم که پین Receive یک بشه و باید این زمان رو اندازه بگیریم
    مقدار مقاومت میتونه بین 100 کیلو اهم تا 50 مگا اهم تغییر کنه
    هرچی مقاومت بیشتر شه حساسیت مدار افزایش پیدا میکنه ولی عملکرد مدار کند تر میشه ( بهترین انتخاب 1 مگا اهمه )
    برای بهتر شدن عملکرد مدار بهتره خازن حدود 100 پیکو فاراد رو از پین Receive به زمین وصل کنیم
    و میشه یه خازن بین 10 تا 400 پیکو رو به موازات بدن انسان قرار داد ( از قسمت فویل تا زمین )
    همانطور که میدونید بعد از یک شدن پایه Send با ثابت زمانی R*C پایه Receive یک میشه که ما هدفمون اندازه گیری این زمان در حالت لمس شده و حالتی هست که فویل لمس نمیشه
    نکته دیگه ای که خیلی مفیده اینه که میشه فقط از یک پایه Send استفاده کرد و چندین Receive داشت


    مشکل اصل من برنامه نویسی برای این مداره که دقیقا نمیدونم چطور این کارو بکنم
    همانطور که توی لینک زیر میبینید کتابخونه تاچ خازنی برای Arduino نوشته شده که من بیشتر اینجا هدفم نوشتن یه لایبرری کامل برای این تاچ هست
    از همه کسایی که میتونن تو نوشتن این برنامه کمک کنن دعوت میکنم که بیان و همکاری کنن تا تاچ خازنی رو راه بندازیم

    اینو ببینید :

    Capacitive Touch Sensing with AVR

    و این فیلما رو :

    فیلم 1

    فیلم 2

    فیلم 3



    منبع : Capacitive Sensing
    درایور شبکه و nRF24L01
    کاتالوگ محصولات
    کنترلر CNC شش محوره براي پرينتر 3D و Pick n Place
    شبيه ساز تک تيرانداز و سيبل ديجيتال با پردازش تصوير
    فروش اسيلوسکوپ GWinstek GOS-630FC

    #2
    پاسخ : تاچ خازنی Capacitive Touch

    من خیلی وقت میخواستم رو این مورد تحقیق کنم . ولی اگه ما با آرایه ای از سلول خازنی سرو کار داشته باشیم مثلا برا تشخیص 255 *255 نقطه در صفحه تاچ خوب این میشه 256*256 تا سلول . اگر به روش جاروب کار کنیم که نسبتا کند است و اینکه شما میگی برا هر سلول هم دوتا پین نیاز داریم در اینورت ما به 1024 پین نیاز داریم ؟
    حالا تکلیف چیه ؟
    تنها موردي كه همه آدما يقين دارن خدا در حقش زیاد لطف کرده
    داشتن عقله زيادتر از دیگر آدم ها است

    دیدگاه


      #3
      پاسخ : تاچ خازنی Capacitive Touch

      صفحات خازنی درایور های خودشون را دارن که از نظر فنی خیلی پیشرفته تر از درایور ها و روش های درایو کردن صفحات مقاومتی. به نظر من درایو کردن این صفحات به طور مستقیم با میکرو اصلا کار معقولانه ای نیست.
      Weakness of attitude becomes weakness of character
      Albert Einstein

      دیدگاه


        #4
        پاسخ : تاچ خازنی Capacitive Touch

        یادمه پسر عموم وقتی تازه گوشی Xperia اومده بود یکیشو خریده بود و هی پیش ما پز میداد. نزدیکای ظهر بود رفت بیرون و گوشی رو گذاشت زیر کولر و برگشت. هر کاری میکرد این تاچ خازنیش کار نمی کرد! ما هم با سوت و کل و دست زدن ایشون رو به بیرون بدرقه کردیم(تا دیگه پز نده). :mrgreen:
        و اما در مورد مزایا و معایب تکنولوژی تاچ ها باید بگم که ما چند نوع تاچ داریم که فعلا دو نوعش مدنظر هستش و بیشتر مورد استفاده قرار میگیره. مقاومتی و خازنی.

        تاچ مقاومتی:

        کاربرد: کارخانه ها، بیمارستان ها و رستوران ها با توجه به مقاومت بالا به مایعات و آلاینده ها

        مزایا:

        1- قیمت کم (از جمله مزایای عمده)
        2- با توجه به اینکه برای سنس کردن فقط نیاز به فشار هستش پس میشه از هر چیز دیگه ای برای لمس کردن استفاده کرد(به جای انگشت)(قلم و در و دیوار و چوب و... :mrgreen.

        معایب:
        1- نیاز به فشار برای سنس
        2- خطر آسیب از جانب اشیاء نوک تیز
        3- رنج از کنتراست کم! با توجه به لایه های زیاد و اضافی و بازتاب نور توسط این لایه ها، کنتراست کم میشه.

        تاچ خازنی:

        کاربرد: فعلا توی چیزهای ظریف مثل گوشی موبایل و تبلت و از این جور چیزا

        مزایا:

        1- با لمس شدن سنس میکنه و دیگه نیاز نیست فشار بدید
        2- دیگه خطر آسیب با توجه به فشاری نبودن رو نداره.
        3- کنتراست رو هم زیاد خراب نمیکنه

        معایب:

        1- نمی تونید دستکش دستتون باشه و یا بخواهید از یه چیز معادل برای سنس کردن استفاده کنید(مثل قلم و ...)(البته اگه مثلا قلم خازنی یا دستش خازنی و از این جور چیزا باشه می تونید ازش استفاده کنید).
        2- هوای سرد بسیار روش تاثیر میذاره(توی هوای سرد نمی تونید ازش استفاده کنید).

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

        دیدگاه


          #5
          پاسخ : تاچ خازنی Capacitive Touch

          نوشته اصلی توسط aliila
          من خیلی وقت میخواستم رو این مورد تحقیق کنم . ولی اگه ما با آرایه ای از سلول خازنی سرو کار داشته باشیم مثلا برا تشخیص 255 *255 نقطه در صفحه تاچ خوب این میشه 256*256 تا سلول . اگر به روش جاروب کار کنیم که نسبتا کند است و اینکه شما میگی برا هر سلول هم دوتا پین نیاز داریم در اینورت ما به 1024 پین نیاز داریم ؟
          حالا تکلیف چیه ؟
          نه ببین این اصلا برای این تعداد نیست و این که من گفتم برای مثلا 5 تا نیاز به 6 تا پین داریم ، یکی برای Send به همه و به تعداد دکمه ها Receive
          اما کار شما چیز دیگه ای هست ، این چیز دیگه
          این برای تعداد کم خوبه حتی نه در حد ماشین حساب یا کی پدهای 4*4


          نوشته اصلی توسط ;(while(1
          صفحات خازنی درایور های خودشون را دارن که از نظر فنی خیلی پیشرفته تر از درایور ها و روش های درایو کردن صفحات مقاومتی. به نظر من درایو کردن این صفحات به طور مستقیم با میکرو اصلا کار معقولانه ای نیست.
          عزیز شما کلا برنامه رو سرو ته گرفتی ، کدوم صفحه خازنی؟! کدوم درایور پیشرفته؟!
          دارم میگم فقط میخوام یه تغییر زمان شارژ خازن در هنگام لمس و غیر لمس رو اندازه بگیرم
          یعنی فقط On/Off

          نوشته اصلی توسط Rohalamin
          [color=brown][b]
          تاچ مقاومتی:
          مزایا:
          معایب:
          تاچ خازنی:
          مزایا:
          معایب:
          روح الامین چرا اینکاری میکنی؟!
          مقاله ژورنالی یا کنفرانسی میدی چرا؟!
          عزیزم این چیزایی که میگیو خودم میدونم همش تو ویکی پدیا هست بخدا
          اصلا این چیزایی نوشتی جر داستان های خانوادگی اولش همش توی یه PDF در مورد انواع تاچ هست هم من خوندمش هم دیگران
          ببخشید تند جواب میدم ولی آخه من چی میگم شما چی جواب میدید
          فیلمی که توی یو تیوب توی لینکی که زیر پسم بودو میدیدین بعد در مورد صفحات تاچخازنی که XY میدن برام مقاله میدادین
          درایور شبکه و nRF24L01
          کاتالوگ محصولات
          کنترلر CNC شش محوره براي پرينتر 3D و Pick n Place
          شبيه ساز تک تيرانداز و سيبل ديجيتال با پردازش تصوير
          فروش اسيلوسکوپ GWinstek GOS-630FC

          دیدگاه


            #6
            پاسخ : تاچ خازنی Capacitive Touch

            نوشته اصلی توسط بسطام بیرامی
            روح الامین چرا اینکاری میکنی؟!
            مقاله ژورنالی یا کنفرانسی میدی چرا؟!
            عزیزم این چیزایی که میگیو خودم میدونم همش تو ویکی پدیا هست بخدا
            اصلا این چیزایی نوشتی جر داستان های خانوادگی اولش همش توی یه PDF در مورد انواع تاچ هست هم من خوندمش هم دیگران
            ببخشید تند جواب میدم ولی آخه من چی میگم شما چی جواب میدید
            فیلمی که توی یو تیوب توی لینکی که زیر پسم بودو میدیدین بعد در مورد صفحات تاچخازنی که XY میدن برام مقاله میدادین
            عذر می خوام. دیدم بچه ها حرف از این چیزا زدن منم گفتم گربه رو در حجره بکشم. :mrgreen:
            حالا شما سعی کردی که کتابخونه رو بررسی بکنی؟ من فکر میکنم با یه سری تغییرات ساده بشه ازش استفاده کرد.

            دیدگاه


              #7
              پاسخ : تاچ خازنی Capacitive Touch

              من توضیحات رو خوندم ولی یکم گنگ بود
              ببین قبلا به من گفتی میخام میزان 1 بودن یک پایه از میکرو رو بخونم و زمانشو اندازه بگیرم. خب این کار با شارژ خازن از طریق یه مقاومت فرق داره
              منظورت اینه که میخای فا فرض دونستن مقاومت مقدار خازن رو بدست بیاری؟ منظورم اینه که تو مقاومت رو مقدارشو داری و میای ثابت زمانی رو هم اندازه گیری میکنی بعد از روش میخای مقدار خازن رو بفهمی؟
              کلا یه مقدار مطالب بالا رو نفهمیدم :sad:
              بیشتر و البته آسون تر بگو :rolleyes:
              زندگی یعنی امید و حرکت
              کارهایتان را آغاز کنید، توانایی انجام دادنش را بدست خواهید آورد
              سؤالاتی که در انجمن قابل طرح شدن هستند در پیام خصوصی جواب داده نمی شود.
              برای تشکر از دکمه تشکر کنار هر پست استفاده کنید، پست هایی که فقط حاوی تشکر هستند پاک می شوند.
              به دلیل کار بر روی پایاننامه و دفاع، مدتی نیستم!

              دیدگاه


                #8
                پاسخ : تاچ خازنی Capacitive Touch

                عزیز شما کلا برنامه رو سرو ته گرفتی ، کدوم صفحه خازنی؟! کدوم درایور پیشرفته؟!
                دارم میگم فقط میخوام یه تغییر زمان شارژ خازن در هنگام لمس و غیر لمس رو اندازه بگیرم
                یعنی فقط On/Off
                آقا خوب شما اول قشنگ بگو که قضیه این جوریه و قرار یه دکمه باشه. :redface: :redface:
                همه ی بچه ها را هم به اشتبا انداختین!!
                Weakness of attitude becomes weakness of character
                Albert Einstein

                دیدگاه


                  #9
                  پاسخ : تاچ خازنی Capacitive Touch

                  اینو ببینید :

                  http://tuomasnylund.fi/drupal6/conte...single-adc-pin

                  و این فیلما رو :

                  http://vip.eca.ir/sharing/uploads/13815862521.rar

                  http://vip.eca.ir/sharing/uploads/13815862522.rar
                  درایور شبکه و nRF24L01
                  کاتالوگ محصولات
                  کنترلر CNC شش محوره براي پرينتر 3D و Pick n Place
                  شبيه ساز تک تيرانداز و سيبل ديجيتال با پردازش تصوير
                  فروش اسيلوسکوپ GWinstek GOS-630FC

                  دیدگاه


                    #10
                    پاسخ : پاسخ : تاچ خازنی Capacitive Touch

                    نوشته اصلی توسط علی ایمانی فر
                    من توضیحات رو خوندم ولی یکم گنگ بود
                    ببین قبلا به من گفتی میخام میزان 1 بودن یک پایه از میکرو رو بخونم و زمانشو اندازه بگیرم. خب این کار با شارژ خازن از طریق یه مقاومت فرق داره
                    منظورت اینه که میخای فا فرض دونستن مقاومت مقدار خازن رو بدست بیاری؟ منظورم اینه که تو مقاومت رو مقدارشو داری و میای ثابت زمانی رو هم اندازه گیری میکنی بعد از روش میخای مقدار خازن رو بفهمی؟
                    کلا یه مقدار مطالب بالا رو نفهمیدم :sad:
                    بیشتر و البته آسون تر بگو :rolleyes:
                    سلام
                    جناب ایمانی فر لینک منبع رو گذاشتم از سایت Arduino
                    ببینید این میاد پایه Send رو یک میکنه چون یک فیلتر سر راهشه بعد از مدتی پایه Receive یک میشه
                    من نمیخوام مقدار خازنو اندازه بگیرم
                    ببینید وقتی خازن مقدارش کم باشه بعد از یک شدن Send پایه Receive مثلا بعد از 100 میکرو ثانیه 1 میشه
                    ولی وقتی این فویل تاچ میشه مقدار خازن بزرگ شده و زمان بیشتری طول میکشه تا پایه Receive یک شه مثلا 10 میلی ثانیه
                    من میخوام این زمان ( یعنی از 1 شدن Send تا یک شدن Receive ) رو اندازه بگیرم و فقط تشخیص بدم آیا تاچ شده فویل یا نه
                    با مقدار مقاومت و خازن های دیگه میشه دقت و حساسیتشو تغییر داد
                    ببخشید برعکس گفته بودم :sad:
                    فیلم 3 رو توی پست اول ببینید
                    درایور شبکه و nRF24L01
                    کاتالوگ محصولات
                    کنترلر CNC شش محوره براي پرينتر 3D و Pick n Place
                    شبيه ساز تک تيرانداز و سيبل ديجيتال با پردازش تصوير
                    فروش اسيلوسکوپ GWinstek GOS-630FC

                    دیدگاه


                      #11
                      پاسخ : تاچ خازنی Capacitive Touch

                      ببینید جناب ایمانی فر
                      یه چیزی شبیه برنامه SRF04 با این تفاوت که شما Trig یا اینجا Send رو 1 میکنید
                      بعد بلافاصله شروع به شمارش میکنید تا زمانی که پایه Receive یک شه
                      این زمانو اندازه میگیرید
                      بعد ما توی برنامه بش میگیم اگر از فلان قد کمتر بودی یعنی کسی تاچ نکرده
                      اگه از فلان قد بیشتر بودی یعنی تاچ شده
                      حتی میشه یه گپ هم بینش تعریف کرد
                      مثلا گفت اگه زمان کمتر از 100 میکرو ثانیه بود تاچ نشده
                      اگه بیشتر از 5 میلی ثانیه شد تاچ شده
                      به همین سادگی
                      درایور شبکه و nRF24L01
                      کاتالوگ محصولات
                      کنترلر CNC شش محوره براي پرينتر 3D و Pick n Place
                      شبيه ساز تک تيرانداز و سيبل ديجيتال با پردازش تصوير
                      فروش اسيلوسکوپ GWinstek GOS-630FC

                      دیدگاه


                        #12
                        پاسخ : تاچ خازنی Capacitive Touch

                        نوشته اصلی توسط بسطام بیرامی
                        ببینید جناب ایمانی فر
                        یه چیزی شبیه برنامه SRF04 با این تفاوت که شما Trig یا اینجا Send رو 1 میکنید
                        بعد بلافاصله شروع به شمارش میکنید تا زمانی که پایه Receive یک شه
                        این زمانو اندازه میگیرید
                        بعد ما توی برنامه بش میگیم اگر از فلان قد کمتر بودی یعنی کسی تاچ نکرده
                        اگه از فلان قد بیشتر بودی یعنی تاچ شده
                        حتی میشه یه گپ هم بینش تعریف کرد
                        مثلا گفت اگه زمان کمتر از 100 میکرو ثانیه بود تاچ نشده
                        اگه بیشتر از 5 میلی ثانیه شد تاچ شده
                        به همین سادگی
                        خب حالا یه چیزایی فهمیدم
                        فیلما هم خیلی کمک کرد
                        من فهمیدم که وقتی دستشو میبره کناره صفحه یه خازن بین صفحه و دست ما ایجاد میشه در واقع دوتا پلیت نیاز داره خازن که یکیش همون صفحه مسی هیت و دومیش دست ما و وقتی یه خازن ایجاد بشه و به صورت موازی با اون یکی خازن قرار بگیره ظرفیت خازنی میره بالا و در نتیجه RC افزایش یافته و خلاصه زمان شارژ و دشارژ افزایش پیدا میکنه و ما میتونیم لمس شدن صفحه رو تشخیص بدیم
                        خب
                        حالا همین مثالو که 3تا کلید داشت رو بگیریم بریم جلو
                        شما باید تایمر رو روشن کنی و همچنین وقفه مربوط به سریز رو فعال کنی و بزاری مدام کار کنه
                        سه تا متغییر به نام tc_start_value تعریف کن و 3تا با نام tc_end_value و 3تا با نام tc_int_counter تعریف کن
                        حالا برای اندازه گیری هر کدوم باید تعداد کلاکای سیستم در زمان یک بودن پایه مربوطه رو بشماری
                        عین همون برنامه SRF04 عمل کن
                        زندگی یعنی امید و حرکت
                        کارهایتان را آغاز کنید، توانایی انجام دادنش را بدست خواهید آورد
                        سؤالاتی که در انجمن قابل طرح شدن هستند در پیام خصوصی جواب داده نمی شود.
                        برای تشکر از دکمه تشکر کنار هر پست استفاده کنید، پست هایی که فقط حاوی تشکر هستند پاک می شوند.
                        به دلیل کار بر روی پایاننامه و دفاع، مدتی نیستم!

                        دیدگاه


                          #13
                          پاسخ : تاچ خازنی Capacitive Touch

                          من تا چند دقیقه پیش هم داشتم دنبال لینک فیلم میگشم!(همونایی که گفتین) در حالی که از لینک خبری نبود. اومدم به جناب رضایی پیغام بدم که پست هامو پاک کنه دیدم صندوق ایشون مثل همیشه پره. تاپیک رو یه رفرش کردم چند دقیقه پیش، دیدم کامل تغییر کرده.
                          بسطام جان لطفا سعی کنید یه مقدار به چیزایی که می نویسید خوب دقت کنید. واقعا خیلی گنگ بود. موضوع دیگه ای که هست اینه که من فکر نمی کنم اون کتابخونه تاچ خازنی آردوینو کمک کنه. در واقع اصلا لزومی نداره(اگه موضوع خاصی هست دوباره توضیح بدید چون گنگه). موضوع دیگه در مورد کتابخونه هستش. چرا باید واسش کتابخونه بنویسیم. من فکر میکنم شما یه تابع بنویسی کافیه. با توجه به کلاک سیستم و پرسکیلر و پارامترهای دیگه مقادیرت رو اندازه بگیری. کافیه؟ خراب گفتم؟ درست گفتم؟ کافی بود؟ ناکافی بود؟

                          دیدگاه


                            #14
                            پاسخ : تاچ خازنی Capacitive Touch

                            نوشته اصلی توسط Rohalamin
                            من تا چند دقیقه پیش هم داشتم دنبال لینک فیلم میگشم!(همونایی که گفتین) در حالی که از لینک خبری نبود. اومدم به جناب رضایی پیغام بدم که پست هامو پاک کنه دیدم صندوق ایشون مثل همیشه پره. تاپیک رو یه رفرش کردم چند دقیقه پیش، دیدم کامل تغییر کرده.
                            بسطام جان لطفا سعی کنید یه مقدار به چیزایی که می نویسید خوب دقت کنید. واقعا خیلی گنگ بود. موضوع دیگه ای که هست اینه که من فکر نمی کنم اون کتابخونه تاچ خازنی آردوینو کمک کنه. در واقع اصلا لزومی نداره(اگه موضوع خاصی هست دوباره توضیح بدید چون گنگه). موضوع دیگه در مورد کتابخونه هستش. چرا باید واسش کتابخونه بنویسیم. من فکر میکنم شما یه تابع بنویسی کافیه. با توجه به کلاک سیستم و پرسکیلر و پارامترهای دیگه مقادیرت رو اندازه بگیری. کافیه؟ خراب گفتم؟ درست گفتم؟ کافی بود؟ ناکافی بود؟
                            شما که درست میگی
                            کاملا کافی بود :biggrin:
                            خب همین دیگه یه تابع
                            یه چیزی که وقتی فراخوانی میکنی تشخیص بده تاچ یا نه تاچ :icon_razz:
                            خب تو که برنامه نویسیت خوبه ببین آقای ایمانی فر چی فرمودن بنویس تابشو
                            ببین میخوام یه چیز شسته رفته باشه که مثلا برای هر پروژه نیاز شد 4،5 تا کلید تاچ بذاریم راحت بتونیم اینکارو بکنیم
                            اگه وقت داری بنویس ببین چی در میاد از توش
                            من خودم تئوریشو خوب میدونم ولی یکم وقتم پره و یکمم با ریجیستر های میکرو آشنایی ندارم باید بیفتم توشون وقت گیره برام
                            یه همتی بکن راش بندازیم
                            درایور شبکه و nRF24L01
                            کاتالوگ محصولات
                            کنترلر CNC شش محوره براي پرينتر 3D و Pick n Place
                            شبيه ساز تک تيرانداز و سيبل ديجيتال با پردازش تصوير
                            فروش اسيلوسکوپ GWinstek GOS-630FC

                            دیدگاه


                              #15
                              پاسخ : تاچ خازنی Capacitive Touch

                              ببین اینطوری که وقتی پایه Send یک میشه
                              تایمر شروع به شمارش کنه تا زمانی که پایه های Reveive یک میشن
                              البته تایمر نباید از کار بیوفته
                              یا این که وقتی پایه Send یک میشه زمان فعلی تایمرو بریزیم تو یه متغییر
                              وقتی هم که پایه Receive یک شد زمان تایمرو بازبریزیم تو یه متغییر دیگه
                              برای هر پایه این زمان پایان و زمان شروع رو از هم کم کنیم ببینیم مدتش چقد میشه

                              حالا به تعداد پایه های Receive باید متغییر داشته باشیم
                              بعد این مقدارا رو مقایسه کنیم ببینیم کدوما تاچ شدن کدوما تاچ نشدن

                              اگه بتونی فعلا مثلا برای 3 تا بنویسی عالی میشه
                              سه تا دکمه و 3 تا زمان خروجی
                              از روی زمان ها میشه فهمید کدوم تاچ شده کدوم نشده
                              بنظرت کار سختیه؟!
                              درایور شبکه و nRF24L01
                              کاتالوگ محصولات
                              کنترلر CNC شش محوره براي پرينتر 3D و Pick n Place
                              شبيه ساز تک تيرانداز و سيبل ديجيتال با پردازش تصوير
                              فروش اسيلوسکوپ GWinstek GOS-630FC

                              دیدگاه

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