برنامه نویسی شتاب سنج در آردوینو

Ratings
(0)

 یک استراتژی عملی برای آشنا شدن با یک دستگاه جدید این است که با آن ارتباط برقرار کنیم و ببینیم که چه داده هایی به ما می دهد. برنامه ی زیر،مقادیر ورودی را برای هرسه محور می خواند و آنها را بعنوان خروجی در پورت سریال(serial port) قرار می دهد:

const unsigned int X_AXIS_PIN = A2;
const unsigned int Y_AXIS_PIN = A1;
const unsigned int Z_AXIS_PIN = A0;
const unsigned int BAUD_RATE = 9600;

void setup() {
  Serial.begin(BAUD_RATE);
}

void loop() {
  Serial.print(analogRead(X_AXIS_PIN));
  Serial.print(" ");
  Serial.print(analogRead(Y_AXIS_PIN));
  Serial.print(" ");
  Serial.println(analogRead(Z_AXIS_PIN));
  delay(100);
}

 برنامه ی تستی ما بسیار ساده است. در این برنامه ما ثابت هایی را برای سه پین آنالوگ تعریف می کنیم و پورت سریال را در تابع setup مقدار دهی اولیه(initialize ) می کنیم. توجه کنید که ما صریحاً پین های آنالوگ را در INPUT تنظیم نمی کنیم، زیرا به هر حال این پیش فرض است. در تابع loop، ما دائماً مقادیری که از پین های آنالوگ می خوانیم را بعنوان خروجی در پورت سریال قرار می دهیم.

سریال مانیتور(serial monitor) را باز کنید و سنسور را حرکت دهید-آن را به دور محورهای مختلف کج کنید. باید یک خروجی شبیه به زیر داشته باشید:

344 331 390
364 276 352
388 286 287
398 314 286
376 332 289
370 336 301

 این مقادیر، داده هایی را مشخص می کنند که ما از محورهای x و y و z دریافت می کنیم. وقتی که ما (بعنوان مثال)  سنسور را تنها به دور محور x حرکت می دهیم، مشاهده می کنیم که مقدار اول، تغییر می کند. در بخش بعدی نگاهی دقیق تر به این سه مقدار می اندازیم.

 {module کمک نقدی به نویسنده}

  • بازدید: 522

نوشتن دیدگاه

لطفا نظرات خود را بیان کنید. به سوالات در سریع ترین زمان پاسخ داده خواهد شد.اما به نکات زیر توجه کنید:
1. سعی کنید نظرات شما مرتبط با مقاله ی مورد نظر باشد، در غیر این صورت پاسخ داده نخواهد شد.
2. سوالات خود را به صورت کوتاه بیان کنید و از پرسیدن چند سوال به طور همزمان خودداری کنید.
3. سوال خود را به طور واضح بیان کنید و از کلمات مبهم استفاده نکنید.

ارسال