Mục lục:

Cách tạo khối lập phương với Arduino và gia tốc kế.: 5 bước
Cách tạo khối lập phương với Arduino và gia tốc kế.: 5 bước

Video: Cách tạo khối lập phương với Arduino và gia tốc kế.: 5 bước

Video: Cách tạo khối lập phương với Arduino và gia tốc kế.: 5 bước
Video: Học lập trình Arduino KHÔNG HỀ KHÓ - Bộ KIT học tập Arduino Uno R3 BLK 2024, Tháng mười một
Anonim
Cách tạo khối lập phương với Arduino và gia tốc kế
Cách tạo khối lập phương với Arduino và gia tốc kế

Tên của chúng tôi là Brock, Eddie và Drew. Mục tiêu chính của Lớp Vật lý là đi từ Trái đất đến Sao Hỏa trong khi mô phỏng quỹ đạo xung quanh Sao Hỏa bằng cách sử dụng Cube Sat và thu thập dữ liệu. Mục tiêu của nhóm chúng tôi cho dự án này là thu thập dữ liệu bằng cách sử dụng một cảm biến gia tốc kế sẽ được gắn vào Arduino của chúng tôi bên trong một Cube Sat sẽ quay quanh "Sao Hỏa" để tìm lực hấp dẫn trên hành tinh đó. Một số hạn chế có thể xảy ra đối với tác vụ cụ thể này là mã không hoạt động theo cách chính xác, gia tốc kế không thu thập dữ liệu và giới hạn mà CubeSat có thể cân. Mặc dù có rất nhiều người khác mà bất kỳ người nào có thể gặp phải, đó là những người mà nhóm chúng tôi phải đối mặt. Bạn có thể tìm thấy video về dự án cuối cùng và thử nghiệm của chúng tôi tại đây https://www.youtube.com/embed/u1_o38KSrEc -Eddie

Bước 1: Danh sách vật liệu

Danh sách vật liệu
Danh sách vật liệu
Danh sách vật liệu
Danh sách vật liệu
Danh sách vật liệu
Danh sách vật liệu

TẤT CẢ CÁC VẬT LIỆU ĐƯỢC DANH SÁCH ĐI BÊN TRONG CUBESAT

1. Arduino & Cáp nguồn https://www.amazon.com/Elegoo-EL-CB-001-ATmega328…: arduino được thiết kế để giúp các nghệ sĩ, nhà thiết kế, người có sở thích và bất kỳ ai quan tâm đến việc tạo ra các đối tượng hoặc môi trường tương tác

: cho phép cấp nguồn đến và từ Arduino và máy tính của bạn

2. Breadboard

: bảng để làm mô hình thí nghiệm của mạch điện

CÁC VẬT LIỆU ĐƯỢC ĐÍNH KÈM VÀO BREADBOARD

1. Arduino Accelerometer

: một công cụ để đo gia tốc hoặc để phát hiện và đo độ rung

2. Mô-đun thẻ SD Arduino

: nó cho phép bạn thêm dung lượng lưu trữ lớn và ghi dữ liệu vào dự án của bạn

3. Dây Arduino

: chuyển mã qua Arduino và breadboard

4. Đèn LED

: đèn LED là một bóng đèn nhỏ (nó là viết tắt của "diode phát quang") hoạt động với công suất tương đối ít

-Đã vẽ

Bước 2: Công cụ Cần thiết và Thực hành An toàn

CÔNG CỤ CẦN THIẾT

1. Dao Exacto

- chúng tôi đã sử dụng một con dao chính xác để cắt và theo dõi hình dạng của Arduino và Breadboard thông qua Styrofoam, để bảo vệ Arduino và Breadboard trong trường hợp có tai nạn

2. Súng bắn keo nóng

- chúng tôi đã sử dụng súng bắn keo nóng để dán Styrofoam vào các mặt của Cubesat để đảm bảo Arduino và Breadboard của chúng tôi được an toàn

3. Xốp

- chúng tôi đã sử dụng các miếng xốp để cố định Arduino và breadboard vào các mặt của Cubesat của chúng tôi, cũng để tạo ra một tấm đệm nếu Cubesat bị rơi hoặc rung chuyển xung quanh

THỰC HÀNH AN TOÀN

1. thực hành an toàn đầu tiên mà chúng tôi thực thi là đảm bảo rằng chúng tôi không chạm vào máy in 3D khi nó đang in Cubesat. máy in 3D sẽ rất nóng và điều quan trọng cần nhớ là không được chạm vào nó.

2. khi sử dụng dao chính xác để cắt các miếng xốp, chúng tôi phải đặt các tông bên dưới để đảm bảo bàn không bị hư hại. chúng tôi cũng phải đeo kính bảo hộ khi sử dụng dao trong trường hợp có bất cứ thứ gì bay lên mặt hoặc xung quanh không gian làm việc của chúng tôi.

3. khi sử dụng bất kỳ công cụ nào cần lao động nặng nhọc, hãy đảm bảo đeo kính bảo hộ vì mục đích an toàn.

4. Khi bạn gắn Cubesat vào tàu quỹ đạo, hãy nhớ cảnh báo những người xung quanh tàu quỹ đạo rằng bạn sẽ kiểm tra Cubesat và đeo kính bảo hộ để đảm bảo an toàn cho tất cả các bộ phận cơ thể và con người.

-Đã vẽ

Bước 3: Làm thế nào để:

Làm cách nào để
Làm cách nào để
Làm cách nào để
Làm cách nào để
Làm cách nào để
Làm cách nào để

Cách xây dựng CubeSat

1. để bắt đầu quá trình xây dựng CubeSat, bạn cần tìm kiếm các mô hình của CubeSat có kích thước 10x10x10 và có sẵn tệp STL.

2. khi bạn đã tìm thấy một mô hình sẽ hoạt động trong việc giữ breadboard và Arduino một cách an toàn, bạn cần tải xuống các tệp trên ổ đĩa flash để có thể truy cập các tệp trên máy in 3D.

3. sau khi các tệp chính xác đã được tải xuống ổ đĩa flash, bạn có thể kết nối ổ đĩa flash với máy tính được kết nối với máy in 3D.

4. khi bạn đang in, hãy đảm bảo rằng bạn chọn đúng tệp và tất cả các dây, mã và đầu vào đều được nối chính xác giữa máy tính và máy in 3D. điều này sẽ đảm bảo CubeSat được in chính xác và mọi thứ diễn ra theo đúng kế hoạch.

5. chỉ định cho mỗi thành viên trong nhóm thời gian được chỉ định để kiểm tra hiệu quả tiến độ của máy in và CubeSat nhằm phát hiện bất kỳ sự cố nào bạn có thể gặp phải. có thể yêu cầu một thành viên trong nhóm kiểm tra tiến độ khoảng 2-3 giờ một lần, sẽ cung cấp đủ hỗ trợ để khắc phục bất kỳ vấn đề nào và theo dõi tiến trình sẽ được thực hiện.

-Eddie

MẬT MÃ:

#include #include #include #include

const int MPU = 0x68; int16_t AcX, AcY, AcZ, Tmp, GyX, GyY, GyZ; sân đôi, cuộn;

Dữ liệu tệp;

void setup () {

pinMode (10, OUTPUT); // phải đặt chân 10 để xuất ngay cả khi không sử dụng; // thiết lập chân 7 sáng led SD.begin (4); // bắt đầu thẻ sd với CS được đặt thành pin 4 Serial.begin (9600); Serial.println (F ("Thử nghiệm BMP280")); Wire.begin (); Wire.beginTransmission (MPU); Wire.write (0x6B); Wire.write (0); Wire.endTransmission (true); Serial.begin (9600); } void loop () {Wire.beginTransmission (MPU); Wire.write (0x3B); Wire.endTransmission (sai); Wire.requestFrom (MPU, 14, true);

int AcXoff, AcYoff, AcZoff, GyXoff, GyYoff, GyZoff; int temp, toff; nhân đôi t, tx, tf;

// Sửa dữ liệu gia tốc AcXoff = -950; AcYoff = -300; AcZoff = 0;

// Chỉnh nhiệt độ toff = -1600;

// Sửa con quay hồi chuyển GyXoff = 480; GyYoff = 170; GyZoff = 210;

// đọc dữ liệu accel AcX = (Wire.read () << 8 | Wire.read ()) + AcXoff; AcY = (Wire.read () << 8 | Wire.read ()) + AcYoff; AcZ = (Wire.read () << 8 | Wire.read ()) + AcYoff;

// đọc dữ liệu nhiệt độ temp = (Wire.read () << 8 | Wire.read ()) + toff; tx = tạm thời; t = tx / 340 + 36,53; tf = (t * 9/5) + 32;

// đọc dữ liệu con quay hồi chuyển GyX = (Wire.read () << 8 | Wire.read ()) + GyXoff; GyY = (Wire.read () << 8 | Wire.read ()) + GyYoff; GyZ = (Wire.read () << 8 | Wire.read ()) + GyZoff;

Dữ liệu = SD.open ("Log.txt", FILE_WRITE); // mở tệp có tên "Nhật ký"

// lấy pitch / roll getAngle (AcX, AcY, AcZ);

// gửi dữ liệu ra cổng nối tiếp Serial.print ("Angle:"); Serial.print ("Pitch ="); Serial.print (cao độ); Serial.print ("| Roll ="); Serial.println (cuộn);

Serial.print ("Nhiệt độ:"); Serial.print ("Temp (F) ="); Serial.print (tf); Serial.print ("| Temp (C) ="); Serial.println (t);

Serial.print ("Gia tốc kế:"); Serial.print ("X ="); Serial.print (AcX); Serial.print ("| Y ="); Serial.print (AcY); Serial.print ("| Z ="); Serial.println (AcZ);

Serial.print ("Con quay hồi chuyển:"); Serial.print ("X ="); Serial.print (GyX); Serial.print ("| Y ="); Serial.print (GyY); Serial.print ("| Z ="); Serial.println (GyZ); Serial.println ("");

Data.print (cao độ); Data.println (cuộn);

Data.print (tf); Data.println (t); Data.print (AcX); // ghi dữ liệu acel vào tệp Data.print (","); // in dấu phẩy trong tệp Data.print (AcY); Data.print (","); Data.print (AcZ); Data.print (","); Data.print (GyX); Data.print (","); Data.print (GyY); Data.print (","); Data.println (GyZ);

chậm trễ (1000); }

// chuyển dữ liệu accel thành pitch / roll void getAngle (int Vx, int Vy, int Vz) {double x = Vx; đôi y = Vy; kép z = Vz;

}

}

BỘ MÃ (TIẾP THEO):

-đây là mã chúng tôi đã sử dụng để thu thập dữ liệu từ gia tốc kế và Thẻ SD.

-sau khi nối dây Arduino và Breadboard của chúng tôi trông giống như trên sơ đồ xếp nếp, chúng tôi đã cắm Thẻ SD vào Mô-đun Bộ điều hợp Thẻ SD và tiếp tục sẵn sàng cho thử nghiệm cuối cùng của chúng tôi.

-chúng tôi đã gặp sự cố với mã trong một thời gian dài, nhưng mã được đưa ra ở trên là mã cuối cùng chúng tôi sử dụng cung cấp cho chúng tôi dữ liệu chúng tôi sử dụng cho bản trình bày của mình.

-mã này thu thập dữ liệu từ gia tốc kế và chuyển thông tin vào thẻ SD.

-thẻ SD đã được cắm vào USB và cắm vào máy tính. từ đó thông tin được đưa vào máy tính của chúng tôi.

-Brock

DÂY ARDUINO:

- trong khi đấu dây Arduino, chúng tôi gặp khó khăn với dây dud và Arduinos sơ sài.

- chúng tôi đã phải sửa hệ thống dây của Arduino nhiều lần do đấu dây không chính xác.

- để đảm bảo đấu dây và mã hóa chính xác, hãy đảm bảo rằng dây dẫn của bạn được bảo mật hoàn toàn và xử lý mã của bạn một cách chính xác.

SƠ ĐỒ KHUNG:

- sơ đồ fritzing thẳng về phía trước và dễ theo dõi cùng với

- chúng tôi gặp sự cố với sơ đồ khi Mô-đun thẻ SD không phải là một phần của chương trình fritzing. vì điều này, chúng tôi đã phải tìm kiếm trực tuyến một phần có thể tải xuống để đưa vào sơ đồ

- chúng tôi đã hoàn thành sơ đồ bằng cách đưa các phần và chương trình chính xác vào sơ đồ

-Đã vẽ

Bước 4: Kết quả / Bài học kinh nghiệm

Biểu đồ của chúng tôi cho thấy sự gia tăng nhiệt độ rõ ràng, có thể do lò sưởi mất thời gian để đạt đến nhiệt độ tối đa.

Đối với dự án này, vật lý mà chúng tôi nghiên cứu là lực hướng tâm giữ cho CubeSat quay quanh quỹ đạo.

-Brock

Đề xuất: