autoworks24.com

3-axis Accelerometer Module (ADXL345) GY-291

3-axis Accelerometer Module (ADXL345) GY-291

3-axis Accelerometer Module (ADXL345) GY-291 เซนเซอร์วัดความเร่งดิจิทัลที่แม่นยำและใช้งานง่าย ในโลกของไมโครคอนโทรลเลอร์และงานอิเล็กทรอนิกส์ เซนเซอร์วัดความเร่ง (Accelerometer) ถือเป็นอุปกรณ์สำคัญที่ช่วยให้โครงการของคุณสามารถตรวจจับการเคลื่อนไหว การเอียง และการสั่นสะเทือนได้อย่างแม่นยำ หนึ่งในโมดูลที่ได้รับความนิยมมากที่สุดในกลุ่มผู้เริ่มต้นและมืออาชีพคือ GY-291 ADXL345 บทความนี้จะพาคุณไปรู้จักกับโมดูลนี้อย่างละเอียด ตั้งแต่คุณสมบัติเด่น การเชื่อมต่อ ไปจนถึงการนำไปประยุกต์ใช้ในโครงการต่างๆ GY-291 ADXL345 คืออะไร GY-291 เป็นโมดูลเซนเซอร์วัดความเร่ง 3 แกน (3-axis accelerometer) ที่ใช้ชิป ADXL345 จาก Analog Devices ซึ่งเป็นบริษัทผู้ผลิตชิประดับโลก โมดูลนี้มีขนาดเล็กกะทัดรัด กินไฟต่ำ และมีความละเอียดสูง เหมาะสำหรับการใช้งานทั้งในงานวัดความเร่งสถิต (static acceleration) เช่น การวัดแรงโน้มถ่วงเพื่อหาความเอียง และความเร่งพลวัต (dynamic acceleration) เช่น การตรวจจับการเคลื่อนไหว การกระแทก หรือการตก ด้วยความสามารถในการวัดได้ทั้ง 3 แกน (X, Y, Z) และส่งข้อมูลผ่านอินเทอร์เฟซดิจิทัลที่หลากหลาย GY-291 จึงเป็นตัวเลือกยอดนิยมสำหรับผู้ที่ต้องการเพิ่มความสามารถในการตรวจจับการเคลื่อนไหวให้กับโครงการ Arduino, Raspberry Pi และไมโครคอนโทรลเลอร์อื่นๆ คุณสมบัติเด่นของ GY-291 ADXL345

 

 

  • ขนาดเล็ก กินไฟต่ำ

โมดูล GY-291 มีขนาดเพียงประมาณ 21mm x 16mm x 3mm และมีน้ำหนักเบามาก (ประมาณ 1.5-5 กรัม) ทำให้เหมาะสำหรับการติดตั้งในอุปกรณ์พกพา โครงการหุ่นยนต์ หรืออุปกรณ์สวมใส่ได้ (wearable devices) อีกทั้งยังกินไฟเพียง 40 ไมโครแอมป์ในโหมดวัดค่า และ 0.1 ไมโครแอมป์ในโหมดสแตนด์บาย

  • ช่วงการวัดที่ปรับได้

ADXL345 สามารถวัดความเร่งได้ในช่วง ±2g, ±4g, ±8g หรือ ±16g ซึ่งผู้ใช้สามารถเลือกตั้งค่าผ่านซอฟต์แวร์ให้เหมาะสมกับการใช้งาน การเลือกช่วงการวัดที่ต่ำลง (เช่น ±2g) จะให้ความละเอียดสูงขึ้น เหมาะสำหรับการวัดการเอียงที่ละเอียด ในขณะที่ช่วงการวัดที่สูงขึ้น (เช่น ±16g) เหมาะสำหรับการตรวจจับการกระแทกหรือการเคลื่อนไหวที่รุนแรง

  • ความละเอียดสูง

ชิป ADXL345 มีความละเอียด 13 บิต ซึ่งหมายความว่าสามารถตรวจจับการเปลี่ยนแปลงของความเร่งได้ละเอียดถึง 3.9 มิลลิกรัมต่อ LSB (mg/LSB) ความละเอียดระดับนี้ทำให้สามารถวัดการเปลี่ยนแปลงของมุมเอียงได้น้อยกว่า 1 องศา 3-axis Accelerometer Module (ADXL345) GY-291

  • อินเทอร์เฟซการสื่อสารที่หลากหลาย

โมดูลนี้รองรับทั้งการสื่อสารผ่านโปรโตคอล I2C และ SPI (3 หรือ 4 สาย) ทำให้สามารถเชื่อมต่อกับไมโครคอนโทรลเลอร์ได้อย่างยืดหยุ่น โดยใช้สายเพียง 2 เส้นสำหรับ I2C หรือ 3-4 เส้นสำหรับ SPI

  • ฟังก์ชันตรวจจับขั้นสูง

นอกจากการวัดค่าแรง G แล้ว ADXL345 ยังมีความสามารถพิเศษอื่นๆ อีกมากมาย เช่น ตรวจจับการแตะ (Tap Detection) สามารถตรวจจับการแตะครั้งเดียว (single tap) หรือการแตะสองครั้ง (double tap) ตรวจจับการเคลื่อนไหว (Activity/Inactivity Detection) ตรวจจับว่าอุปกรณ์กำลังเคลื่อนไหวหรืออยู่นิ่ง ตรวจจับการตก (Free-fall Detection) ตรวจจับเมื่ออุปกรณ์กำลังตกอย่างอิสระ ตรวจจับการกระแทก (Shock Detection) ทนทานต่อแรงกระแทกสูงถึง 10,000 g

  • ข้อมูลแบบดิจิทัล

ข้อมูลที่อ่านได้จากเซนเซอร์เป็นข้อมูลดิจิทัล 16 บิตในรูปแบบ two’s complement ซึ่งพร้อมให้ไมโครคอนโทรลเลอร์นำไปประมวลผลได้ทันที โดยไม่ต้องผ่านการแปลงสัญญาณแอนะล็อก

การเชื่อมต่อและขาใช้งาน

การเชื่อมต่อและขาใช้งาน โมดูล GY-291 มีขาสัญญาณหลักๆ ดังนี้ ขา 1 ชื่อ VCC หน้าที่จ่ายไฟ 3-5V,

ขา 2 ชื่อ GND หน้าที่กราวด์, ขา 3 ชื่อ SCL หน้าที่ Serial Clock (I2C) หรือ Serial Clock (SPI), ขา 4 ชื่อ SDA หน้าที่ Serial Data (I2C) หรือ Serial Data Input/Output (SPI), ขา 5 ชื่อ SDO หน้าที่ Serial Data Output (SPI 4 สาย) หรือ ใช้เลือก Address I2C, ขา 6 ชื่อ CS หน้าที่ Chip Select (เลือกโหมด I2C/SPI), ขา 7 ชื่อ INT1 หน้าที่ Interrupt Output 1, ขา 8 ชื่อ INT2 หน้าที่ Interrupt Output 2 การเลือกโหมดการสื่อสาร I2C Mode ต่อขา CS เข้ากับ VCC (logic high) จะทำให้โมดูลทำงานในโหมด I2C SPI Mode ต่อขา CS เข้ากับ GND (logic low) จะทำให้โมดูลทำงานในโหมด SPI การใช้งานกับ Arduino GY-291 ADXL345 สามารถใช้งานร่วมกับ Arduino ได้อย่างง่ายดาย โดยใช้ไลบรารีที่มีให้เลือกมากมาย หนึ่งในไลบรารีที่ได้รับความนิยมคือ Adafruit ADXL345 การเชื่อมต่อวงจร (โหมด I2C) เชื่อมต่อโมดูล GY-291 กับ Arduino ดังนี้

  • GY-291 เชื่อมต่อกับ Arduino
  • VCC เชื่อมต่อกับ 5V
  • GND เชื่อมต่อกับ GND
  • SCL เชื่อมต่อกับ A5 (Uno) / SCL (Mega)
  • SDA เชื่อมต่อกับ A4 (Uno) / SDA (Mega)
  • CS เชื่อมต่อกับ VCC (เลือกโหมด I2C)

โค้ดตัวอย่าง

#include <Wire.h>

#include <Adafruit_Sensor.h>

#include <Adafruit_ADXL345_U.h>

 

Adafruit_ADXL345_Unified accelerometer = Adafruit_ADXL345_Unified(12345);

void setup() {

  Serial.begin(9600);

 

  if(!accelerometer.begin()) {

    Serial.println(ไม่พบเซนเซอร์ ADXL345);

    while(1);

  }

 

  accelerometer.setRange(ADXL345_RANGE_16_G);

  Serial.println(ADXL345 พร้อมทำงาน);

}

void loop() {

  sensors_event_t event;

  accelerometer.getEvent(&event);

 

  Serial.print(X: ); Serial.print(event.acceleration.x);

  Serial.print( m/s^2, Y: ); Serial.print(event.acceleration.y);

  Serial.print( m/s^2, Z: ); Serial.print(event.acceleration.z);

  Serial.println( m/s^2);

 

  delay(500);

}

การใช้งานกับ Raspberry Pi

การใช้งานกับ Raspberry Pi สำหรับ Raspberry Pi ก็สามารถใช้งาน GY-291 ADXL345 ได้เช่นกัน โดยต้องเปิดใช้งาน I2C ก่อน

  • การเปิดใช้งาน I2C บน Raspberry Pi

sudo raspi-config

# เลือก Interface Options > I2C > Enable

  • การติดตั้งไลบรารี

sudo pip3 install adafruit-circuitpython-adxl34x

  • โค้ดตัวอย่าง python

import time

import board

import adafruit_adxl34x

i2c = board.I2C()

accelerometer = adafruit_adxl34x.ADXL345(i2c)

while True:

    print(%f %f %f % accelerometer.acceleration)

    time.sleep(0.2)

การประยุกต์ใช้งาน

การประยุกต์ใช้งาน GY-291 ADXL345 สามารถนำไปประยุกต์ใช้ในโครงการต่างๆ ได้หลากหลาย การวัดความเอียง (Tilt Sensing) ใช้ในงานควบคุมทิศทางของหุ่นยนต์ ระบบปรับมุมจอ หรือการทำ digital level ตรวจจับการตก (Free-fall Detection) ใช้ในระบบป้องกันความเสียหายของอุปกรณ์พกพา ตรวจจับการแตะ (Tap Detection) ใช้เป็นอินเทอร์เฟซควบคุมอุปกรณ์โดยไม่ต้องใช้ปุ่มกด ตรวจจับการเคลื่อนไหว (Motion Detection) ใช้ในระบบรักษาความปลอดภัยเพื่อตรวจจับการเคลื่อนไหว หุ่นยนต์และโดรน ใช้ในการทรงตัวและการนำทาง เกมและการควบคุมท่าทาง (Gesture Control) ใช้เป็นตัวควบคุมในเกมหรือแว่นตา VR GY-291 ADXL345 คือโมดูลเซนเซอร์วัดความเร่ง 3 แกนที่ตอบโจทย์ทั้งผู้เริ่มต้นและผู้ใช้งานระดับมืออาชีพ ด้วยคุณสมบัติที่โดดเด่น ทั้งขนาดเล็ก กินไฟต่ำ ความละเอียดสูง อินเทอร์เฟซการสื่อสารที่หลากหลาย และฟังก์ชันตรวจจับขั้นสูง ทำให้เหมาะสำหรับโครงการที่ต้องการตรวจจับการเคลื่อนไหว การเอียง การกระแทก หรือการตก ไม่ว่าคุณจะกำลังพัฒนาโครงการหุ่นยนต์ ระบบควบคุมด้วยท่าทาง อุปกรณ์สวมใส่ หรือระบบตรวจจับการเคลื่อนไหว GY-291 ADXL345 คือตัวเลือกที่คุ้มค่าและใช้งานได้จริง เริ่มต้นใช้งานได้ง่ายด้วยไลบรารีและตัวอย่างโค้ดที่มีให้เลือกมากมาย พร้อมเปิดโลกแห่งการตรวจจับการเคลื่อนไหวให้กับโครงการของคุณ

Arduino IDE, Arduino UNO คือ, Arduino โค้ด, Arduino โหลด, Arduino คือ, Arduino ต่อ Relay, Arduino บอร์ด, Sensor ตรวจจับวัตถุ Arduino, เขียน Arduino, เขียน Code Arduino, เซ็นเซอร์ Arduino, เซ็นเซอร์อุณหภูมิ Arduino, เรียน Arduino, โค้ด Arduino, โค้ด Arduino เซ็นเซอร์, โค้ด Arduino ง่ายๆ, โปรเจค Arduino เซ็นเซอร์อุณหภูมิ, โปรแกรม Arduino, โปรแกรม Arduino IDE, โปรแกรม Arduino UNO, ใช้ Arduino, กล้อง Arduino, ข้อมูล Arduino, ขาย Arduino, คู่มือ Arduino, ซอฟต์แวร์ Arduino, ซื้อ Arduino, ต่อ Arduino, ต่อ LCD กับ Arduino, นวัตกรรม Arduino, บอร์ด Arduino, ร้าน Arduino, ร้านขายอุปกรณ์อิเล็ค, วงจร Arduino, สอน Arduino, ออกแบบ Arduino, อุปกรณ์ Arduino, อุปกรณ์ Sensor Arduino

Human Detection

ใส่ความเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *