Mục lục:

OUIJA: 5 bước (có hình ảnh)
OUIJA: 5 bước (có hình ảnh)

Video: OUIJA: 5 bước (có hình ảnh)

Video: OUIJA: 5 bước (có hình ảnh)
Video: OUIJA - TRÒ CHƠI GỌI HỒN - TRAILER C 2024, Tháng mười một
Anonim
CẦU CƠ
CẦU CƠ
CẦU CƠ
CẦU CƠ
CẦU CƠ
CẦU CƠ

Khi mùa Halloween đến gần, các dự án mới nảy sinh. Như chúng ta đã biết, Halloween là ngày của người chết, một ngày khiến chúng ta nhớ đến những người đã để lại một khoảng trống trong chúng ta. Dự án của chúng tôi cho phép kết nối với những người không còn ở đó, với những người chúng tôi nhớ, thông qua một cổng thông tin, bảng Ouija.

Chúng tôi dựa trên ý tưởng về bảng Ouija như một "cổng thông tin" để nói chuyện với bên ngoài, đặt câu hỏi, tương tác giữa "linh hồn" và người chơi có bảng như một phương tiện giao tiếp. Đó là lý do tại sao chúng tôi thấy không chỉ cần tạo một mã hợp lệ và chức năng mà còn phải hiểu cách người chơi sẽ hành động với chương trình. Để làm gì, trước khi bắt đầu lập trình, chúng tôi thực hiện một sơ đồ dòng chảy để biết những gì cần thực hiện và những gì sẽ xảy ra trong mỗi tình huống.

Ý tưởng chính của chúng tôi bao gồm ở chỗ khi người dùng chạm vào bảng, nghĩa là khi người dùng giữ cả hai tay phía trên bảng và đặt một câu hỏi, con trỏ của ouija sẽ di chuyển về phía Có hoặc về phía Không như một câu trả lời. Đối với mã, chúng tôi phải lập trình phạm vi hiệu suất cho động cơ mà chúng tôi muốn sử dụng, vì trên bảng, Có và Không bị phản đối (mỗi bên một cái). Ngoài ra, chúng tôi muốn các câu trả lời là ngẫu nhiên, vì vậy chúng tôi phải thiết lập các tham số đó, với một nghiên cứu trước đó.

Bước 1: VẬT LIỆU

VẬT LIỆU
VẬT LIỆU
VẬT LIỆU
VẬT LIỆU
VẬT LIỆU
VẬT LIỆU

Để thực hiện dự án này, chúng tôi đã sử dụng các thành phần, công cụ và vật liệu điện khác nhau như sau:

1. Elegoo una R3. Bảng điều khiển

2. Dây Jumper của Breadboard và Dây Dupont từ nữ đến nam

3. Cảm biến áp suất / lực

4. Protoboard

5. Động cơ Servo

6. Cáp USB

7. Máy cắt laser

8. Nam châm

9. Gỗ

Để xây dựng chiếc hộp, chúng tôi đã sử dụng một loại gỗ 4 mm. Nam châm cho các công đoàn và mở rộng porexpand.

Bước 2: Lược đồ TinkerCad

Lược đồ TinkerCad
Lược đồ TinkerCad
Lược đồ TinkerCad
Lược đồ TinkerCad

Ở đây chúng tôi có lược đồ TinkerCad mô phỏng mã của chúng tôi.

Sau toàn bộ cách tiếp cận, chúng tôi đã mua một cảm biến lực / áp suất và bắt đầu thử nghiệm với nó. Cảm biến là một thành phần rất đơn giản và dễ kết nối. Để hiểu cách hoạt động của nó, chúng tôi khuyên bạn nên dùng thử để xem nó có hoạt động chính xác hay không, vì vậy chúng tôi sẽ hướng dẫn bạn cách kết nối nó và mã được sử dụng: ảnh của cảm biến lực.

Từ sự hiểu biết về thành phần này, chúng tôi kết luận rằng cảm biến sẽ đóng vai trò như một chìa khóa để bắt đầu và kết thúc hành trình của con trỏ. Vì vậy, chúng ta học cách điều chỉnh lực tác dụng, từ "if" và "else". Sau đó, chúng tôi xác định loại động cơ chúng tôi sẽ cần. Mặc dù bảng Ouija có thể được điều khiển theo nhiều cách khác nhau, chẳng hạn như với động cơ bước, chúng tôi sử dụng động cơ servo vì chúng tôi muốn giới hạn góc của hành động thay vì làm việc với các bước mà nó sẽ phải duyệt.

Nhờ sự hiểu biết về cảm biến áp suất, chúng tôi xác định rằng động cơ servo di chuyển đến một góc (Vị trí có), khi có một lực từ 10 đến 800. Con trỏ sẽ di chuyển đến góc ngược lại (Vị trí không), khi lực lớn hơn 800 và sẽ trở lại vị trí ban đầu, đối với chúng ta là vị trí 0 (hoặc góc 90º) khi không có áp lực lên bảng. Đó là khi lực nhỏ hơn 10. Tất cả các đơn vị này có thể thay đổi tùy thuộc vào vị trí đặt cảm biến và mức độ tương tác mà bạn muốn đặt vào.

Bước 3: Sơ đồ luồng và mã

Sơ đồ luồng và mã
Sơ đồ luồng và mã
Sơ đồ luồng và mã
Sơ đồ luồng và mã
Sơ đồ luồng và mã
Sơ đồ luồng và mã

#bao gồm

int servoPin = 8;

float servoPosition;

float startPosition;

Servo myServo;

randNum dài;

int i = 0;

int PressurePin = A1;

int fuerza;

void setup () {

// đặt mã thiết lập của bạn ở đây, để chạy một lần:

Serial.begin (9600);

myServo.attach (servoPin);

}

void loop () {

// đặt mã chính của bạn ở đây, để chạy nhiều lần

fuerza = analogRead (PressurePin);

nếu (fuerza> 10) {

i ++;

chậm trễ (100);

nếu (fuerza <800) {

chậm trễ (100);

servoPosition = servoPosition + i;

} else if (fuerza> 800) {

chậm trễ (100);

servoPosition = servoPosition - i;

}

} else if (fuerza <10) {

i = 0;

servoPosition = 90;

}

Serial.println (servoPosition);

myServo.write (servoPosition);

}

Bước 4: LÀM THẾ NÀO ĐỂ XÂY DỰNG OUIJA?

LÀM THẾ NÀO ĐỂ XÂY DỰNG OUIJA?
LÀM THẾ NÀO ĐỂ XÂY DỰNG OUIJA?
LÀM THẾ NÀO ĐỂ XÂY DỰNG OUIJA?
LÀM THẾ NÀO ĐỂ XÂY DỰNG OUIJA?
LÀM THẾ NÀO ĐỂ XÂY DỰNG OUIJA?
LÀM THẾ NÀO ĐỂ XÂY DỰNG OUIJA?

Đầu tiên, chúng tôi thiết lập các thước đo của hộp nơi chứa tất cả các thành phần Arduino. Từ chương trình Solidworks, chúng tôi đã tạo ra một cơ sở có kích thước 300 mm x 200 mm và chiều cao là 30 mm. Chúng tôi đã sử dụng một loại gỗ dày 4 mm. Sau khi chuyển các kế hoạch sang chương trình tương ứng, chúng tôi cắt gỗ bằng máy laze.

Bảng Ouija là một câu chuyện khác. Đầu tiên, chúng tôi phải tìm một bức ảnh hoặc hình ảnh minh họa bằng vectơ về các tấm ván để có thể khắc nó lên gỗ. Chúng tôi đã làm tương tự cho con trỏ. Khi chúng tôi có tất cả các thành phần chính, chúng tôi bắt đầu giới thiệu các thiết bị điện tử. Chúng tôi đặt động cơ servo ở trung tâm của hộp, Arduino và protoboard ở một bên (cụ thể là bên trái) và cuối cùng chúng tôi quyết định vị trí đặt cảm biến áp suất. Chúng tôi đặt ở phía bên phải một đế có lỗ rỗng mở rộng và phía trên nó là cảm biến.

Có tính đến vị trí của tay người dùng, chúng tôi đặt nhiều lỗ chân lông hơn để khi người dùng đặt tay lên đó, tương tác sẽ diễn ra. Về sự kết hợp của nắp trên và hộp, chúng tôi sử dụng nam châm nhỏ được giữ bằng các cấu trúc nút chai.

Đối với động cơ servo, chúng tôi đã thiết kế một cánh tay methacrylate từ hai nan hoa: động cơ servo mini và phần nam châm, để không tạo ra nhiều moment trong servo. Phần này có thể được làm bằng các vật liệu khác và để kết hợp nó với bánh răng servo, chúng tôi sử dụng Superglue, mặc dù chúng tôi khuyên bạn nên dùng silicone nóng hoặc vít tùy chỉnh. Dưới con trỏ, một nam châm được nối với nam châm của servo, do đó làm cho chuyển động có thể thực hiện được.

Bước 5: Kết luận

Phần kết luận
Phần kết luận

Khi công việc đã hoàn thành, chúng tôi có thể xác định rằng phương pháp luận mà chúng tôi đã tuân theo để thực hiện nó có thể được chia thành hai phần. Một mặt, công việc bao gồm phân tích những gì chúng tôi muốn nó làm, hiểu và chuyển thông tin về hành trình của nó thành một sơ đồ. Phân tích này đã giúp chúng tôi tạo ra cấu trúc của mã. Nhờ sơ đồ, chúng tôi đã nhận ra tầm quan trọng của từng bước tiếp theo và nó cho phép chúng tôi phát triển phần thứ hai của dự án.

Về phần thực hành, đó là một quá trình thử và sai, không phải là một quá trình phát triển tuyến tính. Hiểu được chức năng của từng thành phần đã giúp chúng tôi khi áp dụng nó vào bảng Ouija, vì có nhiều cách để tạo ra chuyển động và kích thích sự tương tác. Chúng tôi tự hào về cách chúng tôi đã giải quyết các trở ngại khác nhau, chẳng hạn như hạn chế của các góc trong động cơ servo hoặc cách chúng tôi giải quyết điểm tiếp giáp giữa các phần tử tương tự và điện tử. Các tùy chọn khác nhau được cung cấp bởi Arduino rất thú vị, cho phép chúng tôi thiết kế và hiện thực hóa các ý tưởng và đề xuất của mình. Chúng tôi nhận thấy việc tạo ra các sản phẩm tương tác một cách tử tế dễ dàng như thế nào.

Đề xuất: