
สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-23 15:12


MMA8452Q เป็นเครื่องวัดความเร่งแบบไมโครแมชชีนแบบสามแกน ใช้พลังงานต่ำ อัจฉริยะ ใช้พลังงานต่ำ มีความละเอียด 12 บิต ตัวเลือกที่ตั้งโปรแกรมได้ของผู้ใช้ที่ยืดหยุ่นนั้นมาพร้อมกับฟังก์ชั่นฝังตัวในมาตรความเร่ง ซึ่งสามารถกำหนดค่าเป็นพินอินเทอร์รัปต์สองตัวได้ ผู้ใช้สามารถเลือกสเกลแบบเต็มได้ ±2g/±4g/±8g พร้อมข้อมูลที่กรองผ่านตัวกรองความถี่สูง รวมถึงข้อมูลที่ไม่มีการกรองแบบเรียลไทม์ นี่คือการสาธิตด้วย Arduino nano
ขั้นตอนที่ 1: สิ่งที่คุณต้องการ..!

1. Arduino นาโน
2. MMA8452Q
3. สายเคเบิล I²C
4. I²C Shield สำหรับ Arduino Nano
ขั้นตอนที่ 2: การเชื่อมต่อ:




นำเกราะป้องกัน I2C สำหรับ Arduino Nano แล้วค่อยๆ ดันไปบนหมุดของ Nano
จากนั้นเชื่อมต่อปลายสาย I2C ด้านหนึ่งกับเซ็นเซอร์ MMA8452Q และปลายอีกด้านหนึ่งเข้ากับแผงป้องกัน I2C
การเชื่อมต่อแสดงในภาพด้านบน
ขั้นตอนที่ 3: รหัส:

สามารถดาวน์โหลดรหัส Arduino สำหรับ MMMA8452Q ได้จากที่เก็บ github ของเรา - DCUBE Store
นี่คือลิงค์.
เรารวมไลบรารี Wire.h เพื่ออำนวยความสะดวกในการสื่อสาร I2c ของเซ็นเซอร์กับบอร์ด Arduino
คุณสามารถคัดลอกรหัสจากที่นี่ได้ดังนี้:
// แจกจ่ายด้วยใบอนุญาตอิสระ
// ใช้มันตามที่คุณต้องการ ไม่ว่าจะมีกำไรหรือฟรี หากเข้ากับใบอนุญาตของงานที่เกี่ยวข้อง
// MMA8452Q
// โค้ดนี้ออกแบบมาเพื่อทำงานกับ MMA8452Q_I2CS I2C Mini Module
#รวม
// ที่อยู่ MMA8452Q I2C คือ 0x1C(28)
#define แอดเดอร์ 0x1C
การตั้งค่าเป็นโมฆะ ()
{
// เริ่มต้นการสื่อสาร I2C เป็น MASTER
Wire.begin();
// เริ่มต้นการสื่อสารแบบอนุกรม ตั้งค่าอัตรารับส่งข้อมูล = 9600
Serial.begin(9600);
// เริ่มการส่ง I2C
Wire.beginTransmission(Addr);
// เลือกตัวควบคุมการลงทะเบียน
Wire.write(0x2A);
// โหมดสแตนด์บาย
Wire.write(0x00);
// หยุดการส่ง I2C
Wire.endTransmission();
// เริ่มการส่ง I2C
Wire.beginTransmission(Addr);
// เลือกตัวควบคุมการลงทะเบียน
Wire.write(0x2A);
// โหมดแอคทีฟ
Wire.write(0x01);
// หยุดการส่ง I2C
Wire.endTransmission();
// เริ่มการส่ง I2C
Wire.beginTransmission(Addr);
// เลือกตัวควบคุมการลงทะเบียน
Wire.write(0x0E);
// ตั้งค่าช่วงเป็น +/- 2g
Wire.write(0x00);
// หยุดการส่ง I2C
Wire.endTransmission();
ล่าช้า (300);
}
วงเป็นโมฆะ ()
{
ข้อมูล int ที่ไม่ได้ลงนาม[7];
// ขอข้อมูล 7 ไบต์
Wire.requestFrom(Addr, 7);
// อ่านข้อมูล 7 ไบต์
// สถานะ, xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb
ถ้า(Wire.available() == 7)
{
data[0] = Wire.read();
ข้อมูล[1] = Wire.read();
ข้อมูล [2] = Wire.read();
ข้อมูล[3] = Wire.read();
ข้อมูล[4] = Wire.read();
ข้อมูล[5] = Wire.read();
ข้อมูล[6] = Wire.read();
}
// แปลงข้อมูลเป็น 12 บิต
int xAccl = ((ข้อมูล[1] * 256) + ข้อมูล[2]) / 16;
ถ้า (xAccl > 2047)
{
xAccl -= 4096;
}
int yAccl = ((ข้อมูล[3] * 256) + ข้อมูล[4]) / 16;
ถ้า (yAccl > 2047)
{
yAccl -= 4096;
}
int zAccl = ((ข้อมูล[5] * 256) + ข้อมูล[6]) / 16;
ถ้า (zAccl > 2047)
{
zAccl -= 4096;
}
// ส่งออกข้อมูลไปยังมอนิเตอร์แบบอนุกรม
Serial.print("การเร่งความเร็วในแกน X: ");
Serial.println(xAccl);
Serial.print("การเร่งความเร็วในแกน Y: ");
Serial.println(yAccl);
Serial.print("การเร่งความเร็วในแกน Z: ");
Serial.println(zAccl);
ล่าช้า (500);
}
ขั้นตอนที่ 4: การใช้งาน:
MMA8452Q มีแอปพลิเคชันต่างๆ ซึ่งรวมถึงแอปพลิเคชัน E-Compass, การตรวจจับการวางแนวคงที่ซึ่งรวมถึงแนวตั้ง/แนวนอน, ขึ้น/ลง, ซ้าย/ขวา, การระบุตำแหน่งกลับ/ ด้านหน้า, โน้ตบุ๊ก, e-reader และ Laptop Tumble and Freefall Detection แบบเรียลไทม์ การตรวจจับการวางแนวรวมถึงความเป็นจริงเสมือนและข้อเสนอแนะตำแหน่งผู้ใช้ 3D ในการเล่นเกม การวิเคราะห์กิจกรรมแบบเรียลไทม์ เช่น การนับก้าวของ pedometer การตรวจจับการตกอย่างอิสระสำหรับ HDD การสำรองข้อมูล GPS ที่คำนวณไม่ทัน และอีกมากมาย
แนะนำ:
ระบบแจ้งเตือนอุบัติเหตุโดยใช้ GSM, GPS และ Accelerometer: 5 ขั้นตอน (พร้อมรูปภาพ)

ระบบเตือนอุบัติเหตุโดยใช้ GSM, GPS และมาตรความเร่ง: Please Vote Me for Contest กรุณาโหวตให้ฉันสำหรับการประกวด ปัจจุบันหลายคนเสียชีวิตบนท้องถนนเนื่องจากอุบัติเหตุ สาเหตุหลักคือ "การช่วยเหลือล่าช้า" ปัญหานี้มันใหญ่มากในประเทศกำลังพัฒนา ฉันจึงออกแบบโครงการนี้เพื่อช่วย
บทช่วยสอน Arduino Accelerometer: ควบคุมสะพานเรือโดยใช้เซอร์โวมอเตอร์: 5 ขั้นตอน

บทช่วยสอน Arduino Accelerometer: ควบคุมสะพานเรือโดยใช้เซอร์โวมอเตอร์: ขณะนี้เซ็นเซอร์มาตรความเร่งอยู่ในสมาร์ทโฟนส่วนใหญ่ของเรา เพื่อให้มีการใช้งานและความสามารถที่หลากหลายที่เราใช้ทุกวัน โดยที่ไม่รู้ด้วยซ้ำว่าตัวที่รับผิดชอบคือตัวตรวจวัดความเร่ง หนึ่งในความสามารถเหล่านี้คือ controllabil
Claqueta Digital Con Arduino (Digital Clapperboard พร้อม Arduino): 7 ขั้นตอน

Claqueta Digital Con Arduino (Digital Clapperboard With Arduino): Crea tu propia claqueta digital, también puedes convertir una claqueta no digital en una, utilizando Arduino.MATERIALES Display de 7 segmentos MAX7219 de 8 digitos compatible con arduino.Modulo de Reloj RTC model DS3231 compatible กับ arduino.Arduin
วิธีสร้าง Cubesat ด้วย Arduino และ Accelerometer: 5 ขั้นตอน

วิธีสร้าง Cubesat ด้วย Arduino และ Accelerometer: ชื่อของเราคือ Brock, Eddie และ Drew เป้าหมายหลักสำหรับคลาสฟิสิกส์ของเราคือการเดินทางจากโลกไปยังดาวอังคารในขณะที่จำลองวงโคจรรอบดาวอังคารโดยใช้ Cube Sat และรวบรวมข้อมูล เป้าหมายกลุ่มของเราสำหรับโครงการนี้คือการรวบรวมข้อมูลโดยใช้การเร่ง
การวัดมุมโดยใช้ Gyro, Accelerometer และ Arduino: 5 ขั้นตอน

การวัดมุมโดยใช้ Gyro, Accelerometer และ Arduino: อุปกรณ์นี้เป็นต้นแบบคร่าวๆ ของสิ่งที่จะกลายเป็นหุ่นยนต์สมดุลในตัวเอง ซึ่งเป็นส่วนที่สองของสิ่งที่เป็นรู (อ่านมาตรความเร่งและควบคุมมอเตอร์ให้สมดุลในตัวเอง) ส่วนแรกที่มีเพียงไจโรสามารถพบได้ที่นี่ ในข้อนี้