Mục lục:

Tạo một mặt phẳng Rc với 2 Arduino: 5 bước
Tạo một mặt phẳng Rc với 2 Arduino: 5 bước

Video: Tạo một mặt phẳng Rc với 2 Arduino: 5 bước

Video: Tạo một mặt phẳng Rc với 2 Arduino: 5 bước
Video: TRUYỀN LORA - NHIỆT ĐỘ VÀ ĐỘ ẨM DHT11 LÊN LCD GIỮA 2 BOARD ARDUINO | LONG AUTOMATION 2024, Tháng mười một
Anonim
Tạo một mặt phẳng Rc với 2 Arduino
Tạo một mặt phẳng Rc với 2 Arduino

Chế tạo máy bay là một trò vui. Nó trở nên đặc biệt hấp dẫn khi bạn sử dụng arduino's thay vì một bộ điều khiển và bộ thu dựng sẵn.

Trong bài hướng dẫn này, tôi sẽ chỉ cho bạn cách tôi đã làm một chiếc máy bay điều khiển bằng sóng radio với hai arduino.

Bước 1: Những gì bạn sẽ cần

Bạn sẽ cần:

- Động cơ không chổi than

- Một hộ tống cho động cơ

- 2 Servos

- 1 arduino chưa

- 1 arduino nano

- Một cánh quạt

- 2 mô-đun nrf24l01

- 2 tụ điện 10uf

- Tấm xốp

- Một chiết áp

- Một mô-đun cần điều khiển

- Pin 3 amp 7,2 volt niMH

Bước 2: Điều khiển vô tuyến

Điều khiển vô tuyến
Điều khiển vô tuyến
Điều khiển vô tuyến
Điều khiển vô tuyến

Tôi đã sử dụng nrf24l01 để điều khiển máy bay. Mô-đun này có tầm bắn 1 km. Bạn có thể xem cách kết nối nrf24l01 trong sơ đồ được hiển thị ở trên. Bạn cũng cần phải hàn tụ điện giữa mặt đất và điện áp 3,3 volt để tích lũy điện áp tiềm ẩn.

Bước tiếp theo là lấy đầu vào từ bộ điều khiển của bạn. Tôi đã sử dụng một cần điều khiển cho điều khiển bánh lái và thang máy và một chiết áp để điều khiển động cơ. Bạn phải kết nối chiết áp với chân A0, tôi kết nối cần điều khiển với chân A1 và A2.

Bây giờ chúng ta cần làm cho người nhận. Tôi đã sử dụng arduino nano cho bộ thu vì nó nhỏ hơn. Bạn cũng phải kết nối nrf24l01 với adruino này. Sau đó, bạn cần kết nối servos và esc (bộ điều khiển tốc độ điện tử cho động cơ) với arduino. Tôi đã kết nối với servo tới chân D4 và D5, esc được kết nối với chân D9.

Đây là mã mà tôi đã sử dụng cho máy phát:

#include #include #include

Đài RF24 (7, 8);

địa chỉ byte const [6] = "00001";

void setup () {

radio.begin (); radio.openWritingPipe (địa chỉ); radio.setPALevel (RF24_PA_MAX); radio.setDataRate (RF24_250KBPS); radio.stopListening (); Serial.begin (9600); }

void loop () {

int s = analogRead (0); int x = analogRead (1); int y = analogRead (2); String str = String (s); str + = '|' + Chuỗi (x) + '|' + Chuỗi (y); Serial.println (str); const char text [20]; str.toCharArray (văn bản, 20); Serial.println (văn bản); radio.write (& text, sizeof (text)); chậm trễ (10);

}

và đây là mã cho người nhận:

#include #include #include #include

Servo hộ tống;

Servo sx; Hệ thống Servo; Đài RF24 (7, 8);

địa chỉ byte const [6] = "00001";

void setup () {

// đặt mã thiết lập của bạn ở đây, để chạy một lần: radio.begin (); radio.openReadingPipe (0, địa chỉ); radio.setPALevel (RF24_PA_MAX); radio.setDataRate (RF24_250KBPS); esc.attach (9); sx.attach (4); sy.attach (5); esc.writeMicroseconds (1000); // khởi tạo tín hiệu tới 1000 radio.startListening (); Serial.begin (9600); }

void loop () {

char text [32] = ""; if (radio.available ()) {radio.read (& text, sizeof (text)); String transData = String (văn bản); //Serial.println(getValue(transData, '|', 1));

int s = getValue (transData, '|', 0).toInt ();

s = bản đồ (s, 0, 1023, 1000, 2000); // ánh xạ val thành tối thiểu và tối đa (Thay đổi nếu cần) Serial.println (transData); esc.writeMicroseconds (các) giây; // sử dụng val làm tín hiệu tới esc int sxVal = getValue (transData, '|', 1).toInt (); int syVal = getValue (transData, '|', 2).toInt ();

sx.write (bản đồ (sxVal, 0, 1023, 0, 180));

sy.write (map (syVal, 0, 1023, 0, 180));

}

}

Chuỗi getValue (Dữ liệu chuỗi, dấu phân cách ký tự, chỉ mục int)

{int found = 0; int strIndex = {0, -1}; int maxIndex = data.length () - 1;

for (int i = 0; i <= maxIndex && found <= index; i ++) {if (data.charAt (i) == dấu phân tách || i == maxIndex) {found ++; strIndex [0] = strIndex [1] +1; strIndex [1] = (i == maxIndex)? i + 1: i; }}

trả về tìm thấy> chỉ mục? data.substring (strIndex [0], strIndex [1]): "";

}

Bước 3: Fusualage và Stabalizers

Fusualage và Stabalizers
Fusualage và Stabalizers

Bây giờ bạn đã thiết lập thiết bị điện tử của mình, Bạn cần một mặt phẳng để đặt thiết bị điện tử vào. Tôi đã sử dụng tấm xốp vì nó nhẹ và tương đối mạnh. Fusualge chỉ là một ống trực tràng mỏng dần về phía đuôi. Fusualge không phải là tất cả những gì quan trọng đối với khí động học. Điều quan trọng nhất là mọi thứ sẽ vừa vặn với nó trong khi vẫn giữ cho nó nhỏ và nhẹ nhất có thể.

Bộ ổn định ngang và dọc rất dễ thực hiện. Điều quan trọng duy nhất là bộ ổn định của bạn hoàn toàn thẳng. Các bộ ổn định có nhiệm vụ giữ cho máy bay ổn định. Khi bộ ổn định của bạn không thẳng, máy bay của bạn sẽ không ổn định.

Bước 4: Đôi cánh

Đôi cánh
Đôi cánh

Đôi cánh chắc chắn là thứ quan trọng nhất, bạn cần tạo một cánh gió để tạo ra lực nâng. Trong hình trên, bạn có thể thấy cách tôi tạo airfoil.

Điều quan trọng nhất là trọng tâm của máy bay nằm xung quanh điểm cao nhất của cánh máy bay. bằng cách này máy bay sẽ ổn định.

Bước 5: Kết hợp mọi thứ lại với nhau

Gắn kết mọi thứ cùng nhau
Gắn kết mọi thứ cùng nhau
Gắn kết mọi thứ cùng nhau
Gắn kết mọi thứ cùng nhau
Gắn kết mọi thứ cùng nhau
Gắn kết mọi thứ cùng nhau

Bây giờ chúng ta đã hoàn thành tất cả các phần, Chúng ta cần kết hợp tất cả lại với nhau.

Servo cần được kết nối với bộ ổn định. điều này có thể được thực hiện với các thanh điều khiển (xem hình trên)

Mô tơ cần được đặt trên một miếng xốp và dán trước mặt phẳng (hoặc sử dụng các dải elestic để bạn có thể tháo ra khi cần).

bạn cần một cánh quạt để đưa vào động cơ, kích thước của cánh quạt này phụ thuộc vào động cơ. Nó là rất phức tạp để tính toán kích thước tối ưu. Nhưng một nguyên tắc chung là động cơ càng mạnh thì cánh quạt càng lớn.

Đối với pin, bạn nên sử dụng pin lipo. tuy nhiên, loại pin này cần một bộ sạc đặc biệt nếu bạn không muốn chúng phát nổ. Đó là lý do tại sao tôi sử dụng pin nimh, chúng nặng hơn nhưng dễ sử dụng hơn và rẻ hơn.

Đề xuất: