نمایش نتایج: از 1 به 10 از 15
Like Tree4 لایک

موضوع: ماژول سنسور چرخش fz0534

Threaded View

  1. #1
    Senior Member
    تاریخ عضویت
    Mar 2013
    محل سکونت
    Iran
    نوشته ها
    138

    Lightbulb ماژول سنسور چرخش fz0534

    ماژول انکودر چرخشی
    ماژول انکودر چرخشی با داشتن سویج دستی می تواند در پروژه های مختلف بکار آید. انکودر با پتانسیومتر متفاوت است ،انکودر برخلاف پتانسیومتر فاقد محدودیت در چرخش کامل است و خروجی آن کد Gray می باشد. بنابرین از جهت و مقدار چرخش انکودر می تواند اطلاع حاصل نمود. این ماژول دارای دکمه Reset بر روی سنسور انکودر است که می تواند آن را به حالت اولیه برگرداند که از 0 شروع به شمارش کند. خروجی این ماژول دیجیتال است و با ولتاژ 5V تغذیه می شود.این ماژول به راحتی به همراه آردوینو قابل راه اندازی است.

    برای دیدن سایز بزرگ روی عکس کلیک کنید

نام: Rotary Encoder.jpg
مشاهده: 430
حجم: 30.3 کیلو بایت

    مثال
    در مثال زیر با استفاده از این ماژول و آردوینو می توان درخشندگی LED را با تغییر سیگنال PWM کنترل کرد.

    برای دیدن سایز بزرگ روی عکس کلیک کنید

نام: Rotary Encoder FZ0534_fritzing_bb.jpg
مشاهده: 620
حجم: 84.5 کیلو بایت

    کد:
    int brightness = 120; // how bright the LED is, start at half brightness int fadeAmount = 10; // how many points to fade the LED by unsigned long currentTime; unsigned long loopTime; const int pin_A = 12; // pin 12 const int pin_B = 11; // pin 11 unsigned char encoder_A; unsigned char encoder_B; unsigned char encoder_A_prev=0; void setup() { // declare pin 9 to be an output: pinMode(9, OUTPUT); pinMode(pin_A, INPUT); pinMode(pin_B, INPUT); currentTime = millis(); loopTime = currentTime; } void loop() { // get the current elapsed time currentTime = millis(); if(currentTime >= (loopTime + 5)){ // 5ms since last check of encoder = 200Hz encoder_A = digitalRead(pin_A); // Read encoder pins encoder_B = digitalRead(pin_B); if((!encoder_A) && (encoder_A_prev)){ // A has gone from high to low if(encoder_B) { // B is high so clockwise // increase the brightness, dont go over 255 if(brightness + fadeAmount <= 255) brightness += fadeAmount; } else { // B is low so counter-clockwise // decrease the brightness, dont go below 0 if(brightness - fadeAmount >= 0) brightness -= fadeAmount; } } encoder_A_prev = encoder_A; // Store value of A for next time // set the brightness of pin 9: analogWrite(9, brightness); loopTime = currentTime; // Updates loopTime } // Other processing can be done here }
    مرجع:
    Arduino Playground - RotaryEncoders
    Arduino UNO Tutorial 6 - Rotary Encoder

    جهت سفارش این کالا، به این بخش در فروشگاه آفتاب رایانه مراجعه نمایید.
    فایل های پیوست شده فایل های پیوست شده
    ویرایش توسط hesam.time : 11-15-2013 در ساعت 03:50 PM
    لایک کردن

کلمات کلیدی این موضوع

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

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

SEO by vBSEO