MỤC TIÊU CẢM XÚC TRÁNH ROBOT: 11 bước
MỤC TIÊU CẢM XÚC TRÁNH ROBOT: 11 bước

Video: MỤC TIÊU CẢM XÚC TRÁNH ROBOT: 11 bước

Video: MỤC TIÊU CẢM XÚC TRÁNH ROBOT: 11 bước
Video: [Review Phim] Viên Đạn Có Khả Năng Bay Vòng Qua Vật Cản Giết Chết Mục Tiêu 2025, Tháng Giêng
Anonim
MỤC TIÊU CẢM XÚC TRÁNH ROBOT
MỤC TIÊU CẢM XÚC TRÁNH ROBOT

Người máy tình cảm. Robot này hiển thị cảm xúc bằng các neopixel (đèn LED RGB) như buồn bã, hạnh phúc, tức giận và sợ hãi, nó cũng có thể tránh chướng ngại vật và thực hiện một số chuyển động trong cảm xúc nhất định của nó. Bộ não của robot này là một mega Arduino. Hãy nhớ rằng đây là robot được lập trình đầu tiên của tôi mà tôi từng chế tạo và nó khiến tôi yêu thích lập trình, bản thân mã rất mới bắt đầu và rất có thể có thể được đơn giản hóa.

Bước 1: BỘ PHẬN

CÁC BỘ PHẬN
CÁC BỘ PHẬN

-3,2ft của dải neopixel

Cảm biến siêu âm -HC-SR04 (hoặc bất kỳ cảm biến siêu âm nào khác)

-tilt chuyển đổi

-3 pin lithium ion 3.7v (18650)

Bộ chuyển đổi -boost (giải thích trong bước nguồn)

-photo điện trở (bất kỳ giá trị nào)

-cảm biến âm thanh quản lý

-2 động cơ dc 6v

-l293d (trình điều khiển động cơ)

-tấm nhựa

-các tông

-bánh xe caster

Bước 2: Neopixels

Neopixels
Neopixels
Neopixels
Neopixels

Do ngân sách eo hẹp của tôi, cách đơn giản và rẻ nhất để biến cảm xúc robot của tôi trở nên sống động là neopixel, tất cả những gì chúng có là 3 đầu vào và đầu ra. ba chân trên đầu vào có nhãn 5v, DIN (dữ liệu vào) và GND (mặt đất); đầu ra được gắn nhãn giống như đầu vào nhưng thay vì dữ liệu trong DO (dữ liệu ra) của nó. Cách bạn kết nối các led này là nối chúng song song với nhau, như vậy 5v nối với 5v trên led kia và GND nối với GND của led kia, DO của led thứ nhất nối với DIN của led thứ hai rồi quá trình này tiếp tục cho đến khi bạn đạt đến độ dài dải đèn led mong muốn. Toàn bộ dải neopixel chỉ yêu cầu một chân đầu ra kỹ thuật số từ đầu vào, điều này là do DO và DIN được kết nối trong một chuỗi dài, vì vậy tất cả chúng đều chia sẻ dữ liệu với nhau. Điều này là cần thiết vì chúng ta cần bật và tắt các đèn led cụ thể vào những thời điểm cụ thể. Một hướng dẫn hữu ích về điều này là NEOPIXEL HELP

Bước 3: Sơ đồ

Sơ đồ
Sơ đồ

Mạch rất đơn giản vì hầu hết các robot chỉ được lập trình, các động cơ chạy gần 7v với trình điều khiển động cơ l293d để điều khiển các động cơ tiến về phía sau. Các kết nối khác là cảm biến với Arduino. Và đó là nó!

Bước 4: Mã

Điều đầu tiên tôi làm là tải xuống các thư viện cần thiết để làm cho việc viết mã dễ dàng hơn một chút, các thư viện tôi đã sử dụng là "FastLED.h" và "NewPing.h". Đèn led nhanh dành cho đèn led và đèn ping mới dành cho cảm biến siêu âm. Điều tiếp theo tôi làm là tạo tất cả các định nghĩa cho các chân tôi đã sử dụng, sau đó là thiết lập vô hiệu, đây là nơi tôi thiết lập các chế độ ghim và neostrip "FastLED.addLeds (leds, NUM_LEDS);" tôi đã xác định NUM_LEDS là 56, vì tôi đã sử dụng 56 led nên cấu hình của led sẽ được giải thích trong bước mặt. Sau đó, tôi đã tạo ra một loạt các chức năng để rô bốt của tôi di chuyển tới và lui và cũng có một số cảm xúc nhất định của nó, sau đó tôi đến với vòng lặp void, đây là nơi tôi gọi tất cả các chức năng của mình theo một trình tự nhất định mà tôi muốn, ví dụ: nếu tôi muốn robot của mình cười thì tôi sẽ đặt nụ cười ();. Nếu tôi muốn bật một đèn led nào đó, tôi sẽ đặt, leds [45] = CRGB:: Green;, điều này sẽ đặt dẫn 45 có màu xanh lá cây. Khi tôi chuyển màu sang màu đen, nó chỉ có nghĩa là tắt. Bây giờ hãy nhớ rằng đây là một trong những chương trình đầu tiên của tôi nên rõ ràng là nó không hoàn hảo, nhưng nó vẫn hoạt động.

MẬT MÃ

Bước 5: Khuôn mặt

Khuôn mặt
Khuôn mặt

Đối với mặt, tôi đã sử dụng 56 đèn LED, gần như là một dải neopixel 3,2ft đầy đủ. Tôi cắt dải thành 7 dải gồm 8 đèn led, tôi sử dụng 3 dải đầu tiên cho mắt và 4 dải cuối cùng cho miệng. Tôi đã kết nối các dải theo kiểu kết nối dạng rắn, hy vọng bạn sẽ hiểu rõ hơn với sơ đồ. Khi tôi hoàn thành mặt, sau đó tôi đặt một tấm nhựa mỏng (dày khoảng 2mm) trên các dải đèn led.

Bước 6: Chức năng Hạnh phúc

Chức năng Hạnh phúc
Chức năng Hạnh phúc

Chức năng này là dễ nhất trong số đó vì nó không sử dụng bất kỳ cảm biến nào, thay vào đó ngay khi bạn khởi động bot, nó sẽ ngay lập tức mỉm cười với bạn. Nhưng nó không chỉ mỉm cười; khi nó cười, nó cũng ở chế độ tránh chướng ngại vật. Chế độ tránh chướng ngại vật được thể hiện trong mã của tôi dưới dạng chức năng chuyển vùng. Chế độ tránh chướng ngại vật hoặc đi lang thang hoạt động bằng cách sử dụng hai cảm biến siêu âm ở phía rô-bốt, khi cảm biến cách vật thể đó 30cm, nó sẽ lùi lại và đi sang phải hoặc sang trái tùy thuộc vào cảm biến gần đối tượng nhất.

Bước 7: Chức năng buồn

Chức năng buồn
Chức năng buồn
Chức năng buồn
Chức năng buồn

Để con người máy trở nên buồn bã, tôi phải nghĩ ra một đặc điểm tính cách cho con người máy này, vì vậy tôi quyết định làm nó buồn khi nó ở trong một môi trường tối tăm. Để làm điều này, tôi đã sử dụng một quang trở để cảm nhận ánh sáng. Môi trường càng tối thì điện trở càng cao và môi trường càng sáng thì điện trở càng thấp. Mạch làm phân áp là đoạn mạch có hai điện trở mắc nối tiếp vào + 5v và GND, tại điểm giữa của mối nối điện trở là một hiệu điện thế có thể xác định bằng phương trình sau: điện áp đầu vào * (R2 / R1 + R2). khi Pin tương tự Arduino đọc giá trị này, nó sẽ chuyển đổi điện áp thành một dải từ 0 đến 1023.

Bước 8: Chức năng tức giận

Chức năng tức giận
Chức năng tức giận
Chức năng tức giận
Chức năng tức giận

Để làm cho con robot tức giận, tôi quyết định lật / hất nó lên. Điều này hoạt động bằng cách sử dụng một công tắc nghiêng và công tắc nghiêng về cơ bản là một công tắc bình thường nhưng thay vì có một nút bấm hoặc nút chỉnh, bạn có một quả cầu thủy ngân mà nếu nghiêng ở một góc nhất định sẽ kết nối hai tiếp điểm và bật; vì vậy giá trị từ giá trị này là 0 hoặc 1, 0 cho tắt và 1 cho bật. Khi robot tức giận, nó cũng bỏ qua chế độ tránh chướng ngại vật và đâm bất cứ thứ gì trong tầm nhìn về phía trước, do sự tức giận của nó.

Bước 9: Chức năng sợ hãi

Chức năng sợ hãi
Chức năng sợ hãi
Chức năng sợ hãi
Chức năng sợ hãi

Đối với chức năng cuối cùng của rô bốt là chức năng sợ hãi, sử dụng cảm biến âm thanh được đặt ngay trên đầu rô bốt. Bất cứ khi nào robot nghe thấy tiếng ồn tải, nó sẽ sợ hãi và rùng mình khi lùi về phía sau. Cảm biến âm thanh hoạt động bằng cách sử dụng tụ điện là micro, khi cảm nhận âm thanh hoặc rung động nó sẽ tạo ra một điện áp nhỏ, thường là khoảng 100mv, điện áp này sau đó được khuếch đại và đọc qua chân analog của Arduino, điện áp càng cao hoặc to hơn thì âm thanh có giá trị tương tự càng cao và ngược lại.

Bước 10: Nguồn

Quyền lực
Quyền lực
Quyền lực
Quyền lực

Bây giờ bạn đã xây dựng mọi thứ bạn cần để cung cấp năng lượng cho nó, ban đầu tôi đã cố gắng cung cấp năng lượng cho nó bằng 8 pin AA, nhưng nó quá cồng kềnh và không thực tế. Sau đó, tôi sử dụng 3 pin lithium ion, mỗi pin giữ khoảng 3,5v, tôi kết nối một pin với bộ chuyển đổi tăng áp là bộ tăng điện áp, điều này đã tăng 3,5v lên 5v của tôi để cấp nguồn cho Arduino, sau đó tôi sử dụng hai trong số pin và kết nối trực tiếp nó cho động cơ và đèn LED, đây không phải là một ý tưởng hay vì điện áp không được điều chỉnh, nhưng tôi không có bộ điều chỉnh điện áp đặt xung quanh, nếu bạn thử và xây dựng điều này, tôi khuyên bạn nên sử dụng bộ điều chỉnh điện áp hơn có thể làm 5v ở khoảng 2-3 amps, một ví dụ về điều này là LM78S05. Hoặc bạn có thể sử dụng LM7805 để cấp nguồn cho Arduino và thay vào đó hãy lấy một bộ chuyển đổi bước xuống hoặc bộ chuyển đổi buck để giảm điện áp và cấp nguồn cho đèn LED và động cơ.

Bước 11: Chúc bạn vui vẻ !!

Tôi hy vọng bạn sẽ xây dựng con robot này và có những phút giây vui vẻ, tôi cũng hy vọng bạn sẽ đặt con quay của riêng bạn trên con robot này và tạo ra cảm xúc của riêng bạn để làm cho nó SỐNG !!!