Mục lục:

Rover điều khiển bằng cử chỉ sử dụng gia tốc kế và cặp máy thu-phát RF: 4 bước
Rover điều khiển bằng cử chỉ sử dụng gia tốc kế và cặp máy thu-phát RF: 4 bước

Video: Rover điều khiển bằng cử chỉ sử dụng gia tốc kế và cặp máy thu-phát RF: 4 bước

Video: Rover điều khiển bằng cử chỉ sử dụng gia tốc kế và cặp máy thu-phát RF: 4 bước
Video: Biến hình khi văn phòng Schannel có khách đến 2024, Tháng bảy
Anonim
Rover được điều khiển bằng cử chỉ sử dụng gia tốc kế và cặp máy thu-phát RF
Rover được điều khiển bằng cử chỉ sử dụng gia tốc kế và cặp máy thu-phát RF

Này, Bạn đã từng mong muốn xây dựng một bộ điều khiển mà bạn có thể điều khiển bằng các cử chỉ tay đơn giản nhưng không bao giờ có đủ can đảm để dấn thân vào sự phức tạp của quá trình xử lý hình ảnh và giao tiếp webcam với bộ vi điều khiển của bạn, chưa kể đến cuộc chiến khó khăn để vượt qua phạm vi kém và dòng- vấn đề về thị giác? Chà, đừng sợ… vì có một lối thoát dễ dàng! Kìa, khi tôi giới thiệu với bạn NGƯỜI LÃNH ĐẠO hùng mạnh! * ba dum tsss *

Gia tốc kế là một thiết bị thực sự tuyệt vời để đo gia tốc trọng trường dọc theo một trục tuyến tính. Nó đại diện cho điều này như một mức điện áp dao động giữa mặt đất và điện áp cung cấp, mà bộ vi điều khiển của chúng tôi đọc dưới dạng giá trị tương tự. Nếu chúng ta áp dụng bộ não của mình một chút (chỉ một chút toán học và một số vật lý Newton), chúng ta không chỉ có thể sử dụng nó để đo chuyển động thẳng dọc theo một trục mà còn có thể sử dụng nó để xác định góc nghiêng và cảm nhận dao động. Đừng băn khoăn! Chúng tôi sẽ không cần toán học hoặc vật lý; chúng ta sẽ chỉ xử lý các giá trị thô mà gia tốc kế phát ra. Trên thực tế, bạn thực sự không cần phải quan tâm nhiều đến các kỹ thuật của một máy đo gia tốc cho dự án này. Tôi sẽ chỉ đề cập đến một số chi tiết cụ thể và chỉ trình bày chi tiết khi bạn cần hiểu bức tranh lớn. Mặc dù, nếu bạn quan tâm đến việc nghiên cứu cơ học bên trong của nó, hãy xem ở đây.

Bạn chỉ cần ghi nhớ điều này ngay bây giờ: gia tốc kế là gizmo (thường được kết hợp với con quay hồi chuyển) mở ra cánh cửa cho tất cả những trò chơi cảm biến chuyển động mà chúng ta chơi trên điện thoại thông minh của mình; một trò chơi đua xe hơi chẳng hạn, trong đó chúng tôi điều khiển phương tiện chỉ bằng cách nghiêng thiết bị của mình theo một trong hai hướng. Và, chúng ta có thể bắt chước hiệu ứng này bằng cách dán một gia tốc kế (tất nhiên là với một vài chất trợ lực) vào một chiếc găng tay. Chúng tôi chỉ cần đeo găng tay ma thuật của mình vào và nghiêng tay sang trái hoặc phải, tiến hoặc lùi và xem người lái xe của chúng tôi nhảy theo giai điệu của chúng tôi. Tất cả những gì chúng tôi cần làm ở đây là dịch các kết quả đọc của gia tốc kế sang tín hiệu kỹ thuật số mà các động cơ trên thiết bị di chuyển có thể diễn giải và thiết lập cơ chế để truyền các tín hiệu này tới thiết bị di chuyển. Để thực hiện điều này, chúng tôi nhờ đến Arduino tốt và các trợ lý của nó cho thí nghiệm ngày nay, một cặp máy phát-thu RF hoạt động ở 434MHz, do đó mang lại phạm vi khoảng 100-150m trong không gian mở, điều này cũng giúp chúng tôi tiết kiệm khỏi dòng- các vấn đề về thị giác.

Một vụ hack khá tiện lợi phải không? Hãy đi sâu vào…

Bước 1: Thu thập nguồn cung cấp của bạn

Thu thập nguồn cung cấp của bạn
Thu thập nguồn cung cấp của bạn
Thu thập nguồn cung cấp của bạn
Thu thập nguồn cung cấp của bạn
Thu thập nguồn cung cấp của bạn
Thu thập nguồn cung cấp của bạn
Thu thập nguồn cung cấp của bạn
Thu thập nguồn cung cấp của bạn
• Arduino Nano x1
• Gia tốc kế (ADXL335) x1
• Động cơ DC 5V + Bánh xe x2 mỗi
• Bánh xe bò * x1
• Trình điều khiển động cơ L293D + ổ cắm IC 16 chân x1 mỗi
• Máy phát RF 434 MHz x1
• Bộ thu RF 434 MHz x1
• IC mã hóa HT-12E + ổ cắm IC 18 chân x1 mỗi
• IC giải mã HT-12D + ổ cắm IC 18 chân x1 mỗi
• Bộ điều chỉnh điện áp LM7805 x1
• Nút nhấn chuyển đổi x2
• Đèn LED đỏ + điện trở 330O x2 mỗi
• Đèn LED vàng + điện trở 330O x1 mỗi
• Đèn LED xanh + điện trở 330O (tùy chọn) x4 mỗi cái
• Điện trở 51kO và 1MO x1 mỗi
• Tụ điện xuyên tâm 10µF x2
Pin, Đầu nối pin, Cáp USB, Dây nhảy, Đầu nối cái, Đầu nối vít 2 chân, PCB, Chasis và các Phụ kiện hàn thông thường của bạn

Nếu bạn đang thắc mắc tại sao chúng ta lại sử dụng bánh xe bò, thì vấn đề là, mô-đun bộ thu và phát RF chỉ có 4 chân dữ liệu, có nghĩa là chúng ta chỉ có thể truyền động 2 động cơ và do đó việc sử dụng bánh xe bò để hỗ trợ cấu trúc. Tuy nhiên, nếu bạn cảm thấy chiếc xe rover của mình trông ngầu hơn với bốn bánh, đừng lo lắng, vẫn có việc cần làm! Trong trường hợp này, chỉ cần loại bỏ bánh xe bò ra khỏi danh sách và thêm một cặp động cơ DC 5V khác, đi kèm với mỗi động cơ một bánh xe và tìm cách hack đơn giản được thảo luận ở cuối bước 3.

Cuối cùng, đối với những người dũng cảm, có phạm vi cho một sửa đổi nhỏ khác trong thiết kế, loại này liên quan đến việc thiết kế Arduino của riêng bạn. Đi đến phần tiền thưởng trong bước tiếp theo và tự mình xem. Bạn cũng sẽ cần một vài nguồn cung cấp bổ sung: một ATmega328P, một ổ cắm IC 28pin, một bộ dao động tinh thể 16Mhz, hai nắp gốm 22pF, một bộ điều chỉnh điện áp 7805 khác, thêm hai nắp xuyên tâm 10μF và điện trở 10kΩ, 680Ω, 330Ω, và có, trừ Arduino!

Bước 2: Nối dây máy phát

Lên dây cho máy phát
Lên dây cho máy phát
Lên dây cho máy phát
Lên dây cho máy phát
Lên dây cho máy phát
Lên dây cho máy phát
Lên dây cho máy phát
Lên dây cho máy phát

Chúng tôi sẽ chia dự án thành hai thành phần: mạch phát và mạch thu. Máy phát bao gồm một gia tốc kế, một Arduino và một mô-đun máy phát RF được kết hợp với một IC mã hóa HT-12E, tất cả đều được nối dây theo sơ đồ đính kèm.

Gia tốc kế, như đã giới thiệu trước đó, dùng để nhận dạng cử chỉ tay của chúng ta. Chúng tôi sẽ sử dụng gia tốc kế ba trục (về cơ bản là ba gia tốc kế một trục trong một) để đáp ứng nhu cầu của chúng tôi. Nó có thể được sử dụng để đo gia tốc trong cả ba chiều và như bạn có thể đoán, nó không mang lại một mà là một bộ ba giá trị tương tự so với ba trục của nó (x, y và z). Trên thực tế, chúng ta chỉ cần gia tốc dọc theo trục x và y vì chúng ta chỉ có thể lái xe di chuyển theo bốn hướng: đi thẳng hoặc lùi (tức là dọc theo trục y) và sang trái hoặc phải (tức là dọc theo trục x). Chúng tôi sẽ cần trục z nếu chúng tôi đang chế tạo một máy bay không người lái, để chúng tôi cũng có thể điều khiển nó lên hoặc xuống bằng cử chỉ. Trong mọi trường hợp, các giá trị tương tự này mà gia tốc kế mang lại phải được chuyển đổi thành tín hiệu kỹ thuật số để có thể điều khiển động cơ. Điều này được thực hiện bởi Arduino, nó cũng truyền các tín hiệu này, sau khi chuyển đổi, tới bộ định tuyến thông qua mô-đun máy phát RF.

Máy phát RF chỉ có một công việc: truyền dữ liệu “nối tiếp” có sẵn ở chân 3 ra ăng-ten ở chân 1. Điều này ủng hộ việc sử dụng HT-12E, một bộ mã hóa dữ liệu song song-nối tiếp 12 bit, thu thập Tối đa 4 bit dữ liệu song song từ Arduino tại các dòng AD8 đến AD11, do đó cho phép chúng tôi tạo chỗ cho tối đa 24 = 16 kết hợp I / O khác nhau trái ngược với chân dữ liệu đơn lẻ trên bộ phát RF. 8 bit còn lại, được vẽ từ các dòng A0 đến A7 trên bộ mã hóa, tạo thành byte địa chỉ, tạo điều kiện thuận lợi cho việc ghép nối máy phát RF với một máy thu RF tương ứng. Sau đó, 12 bit được ghép lại với nhau và được nối tiếp, và được chuyển đến chân dữ liệu của bộ phát RF, đến lượt nó, ASK điều chế dữ liệu thành sóng mang 434MHz và bắn nó ra ngoài qua ăng-ten ở chân 1.

Về mặt khái niệm, bất kỳ máy thu RF nào đang nghe ở 434Mhz đều có thể chặn, giải điều chế và giải mã dữ liệu này. Tuy nhiên, các đường địa chỉ trên HT-12E và trên HT-12D (bộ giải mã dữ liệu nối tiếp sang song song 12 bit) cho phép chúng tôi hiển thị một cặp máy phát-máy thu RF duy nhất bằng cách định tuyến dữ liệu chỉ đến người nhận dự định do đó hạn chế giao tiếp với tất cả những người khác. Tất cả những gì chúng tôi yêu cầu là định cấu hình các đường địa chỉ giống hệt nhau trên cả hai mặt. Ví dụ: vì chúng tôi đã nối đất tất cả các đường địa chỉ cho HT-12E của mình, chúng tôi phải làm như vậy đối với HT-12D ở đầu nhận, nếu không bộ điều khiển sẽ không thể nhận được tín hiệu. Bằng cách này, chúng tôi cũng có thể điều khiển nhiều bộ định tuyến với một mạch phát duy nhất bằng cách định cấu hình giống nhau các đường địa chỉ trên HT-12D tại mỗi bộ thu. Hoặc, chúng tôi có thể đeo hai găng tay, mỗi găng tay được gắn với một mạch phát có chứa cấu hình đường địa chỉ riêng biệt (giả sử, một với tất cả các đường địa chỉ được nối đất và chiếc còn lại với tất cả các đường cao hoặc một với một đường nối đất trong khi bảy đường còn lại được giữ cao và đường còn lại với hai đường nối đất trong khi sáu đường còn lại được giữ ở trên cao, hoặc bất kỳ sự kết hợp nào khác của chúng) và mỗi tay lái nhiều đường di chuyển được cấu hình giống nhau. Chơi nhạc trưởng tại một bản giao hưởng Android!

Một điều quan trọng cần lưu ý trong khi lắp ráp mạch là giá trị của Rosc. HT-12E có một mạch dao động bên trong giữa các chân 15 và 16, được kích hoạt bằng cách kết nối một điện trở, được gọi là Rosc, giữa các chân đó. Giá trị được chọn cho Rosc thực sự xác định tần số dao động, có thể thay đổi tùy thuộc vào điện áp cung cấp. Việc chọn một giá trị thích hợp cho Rosc là rất quan trọng đối với hoạt động của HT-12E! Lý tưởng nhất là tần số bộ dao động của HT-12E phải bằng 1/50 lần tần số của bộ tạo sóng HT-12D. Do đó, vì chúng tôi đang hoạt động trên 5V, chúng tôi đã chọn điện trở 1MΩ và 51kΩ làm Rosc cho các mạch HT-12E và HT-12D tương ứng. Nếu bạn định vận hành các mạch trên một điện áp cung cấp khác, hãy tham khảo biểu đồ “Tần số dao động so với Điện áp cung cấp” trên trang 11 của biểu dữ liệu HT-12E đính kèm để xác định chính xác tần số dao động và điện trở sẽ được sử dụng.

Ngoài ra, cần lưu ý thêm, chúng tôi sẽ sử dụng các tiêu đề nữ ở đây (phục vụ mục đích tương tự như ổ cắm IC) để cắm gia tốc kế, bộ phát RF và Arduino vào mạch thay vì hàn trực tiếp chúng vào PCB. Ý định là chỗ ở của một thành phần nhỏ có thể tái sử dụng. Giả sử, đã được một thời gian kể từ khi bạn thiết kế máy dò tìm kiếm điều khiển bằng cử chỉ của mình và nó chỉ nằm ở đó, một nửa phủ đầy bụi, trên giá cúp của bạn và bạn tình cờ gặp một tài liệu hướng dẫn tuyệt vời khác giúp tận dụng hiệu quả của cảm biến gia tốc. Vậy bạn làm gì? Bạn chỉ cần kéo nó ra khỏi rover của bạn và đẩy nó vào mạch mới của bạn. Không cần phải triệu tập "Amazons" để có cho bạn một cái mới:-p

Phần thưởng: Bỏ đi với Arduino, nhưng không

Chỉ trong trường hợp bạn cảm thấy mạo hiểm hơn một chút, và đặc biệt nếu bạn nghĩ rằng việc sử dụng kỳ công được thiết kế đẹp mắt này (tất nhiên là Arduino) cho một nhiệm vụ tầm thường như của chúng ta là hơi quá mức cần thiết, hãy chịu đựng với tôi một chút nữa; và nếu không, vui lòng bỏ qua bước tiếp theo.

Mục tiêu của chúng tôi ở đây là biến Arduino (thực tế là bộ não của Arduino; vâng, tôi đang nói về IC ATmega!) Trở thành thành viên thường trực của nhóm. ATmega sẽ được lập trình để chạy chỉ một bản phác thảo duy nhất lặp đi lặp lại để nó có thể hoạt động như một phần vĩnh viễn của mạch, giống như HT-12E-một vi mạch đơn thuần, chỉ cần ngồi đó, làm những gì nó phải làm. Đây không phải là cách mà bất kỳ hệ thống nhúng thực sự nào được cho là?

Dù sao, để tiếp tục nâng cấp này, chỉ cần sửa đổi mạch theo sơ đồ thứ hai được đính kèm. Ở đây, chúng tôi chỉ cần thay thế các tiêu đề cái cho Arduino bằng một ổ cắm IC cho ATmega, thêm một điện trở kéo lên 10K ở chân đặt lại (chân 1) của IC và bơm nó lên với một đồng hồ bên ngoài giữa các chân 9 và 10 Thật không may, nếu chúng tôi loại bỏ Arduino, chúng tôi cũng bỏ qua các bộ điều chỉnh điện áp tích hợp của nó; ergo, chúng tôi cũng phải tái tạo mạch LM7805 mà chúng tôi đã sử dụng cho bộ thu ở đây. Ngoài ra, chúng tôi cũng sử dụng bộ chia điện áp để vẽ 3,3V cần thiết để cấp nguồn cho gia tốc kế.

Bây giờ, cách duy nhất khác ở đây là lập trình ATmega để thực hiện công việc của nó. Tuy nhiên, bạn sẽ phải đợi nó cho đến bước 4. Vậy nên hãy chờ trong giây lát…

Bước 3: Và, Người nhận

Và, Người nhận
Và, Người nhận
Và, Người nhận
Và, Người nhận
Và, Người nhận
Và, Người nhận
Và, Người nhận
Và, Người nhận

Bộ thu bao gồm một mô-đun thu RF kết hợp với một IC giải mã HT-12D và một cặp động cơ DC hoạt động với sự hỗ trợ của trình điều khiển động cơ L293D, tất cả đều được đấu dây theo sơ đồ đính kèm.

Công việc duy nhất của máy thu RF là giải điều chế sóng mang (nhận được qua ăng-ten của nó ở chân 1) và hiển thị dữ liệu “nối tiếp” đã truy xuất tại chân 7 từ nơi nó được HT-12D thu để khử tín hiệu. Bây giờ, giả sử rằng các đường địa chỉ (A0 đến A7) trên HT-12D được cấu hình giống hệt với đối tác HT-12E của nó, 4 bit dữ liệu song song được trích xuất và truyền qua các đường dữ liệu (D8 đến D11) trên HT-12D, cho trình điều khiển động cơ, từ đó diễn giải các tín hiệu này để điều khiển động cơ.

Một lần nữa, hãy chú ý đến giá trị của Rosc. HT-12D cũng vậy, có một mạch dao động bên trong giữa các chân 15 và 16, được kích hoạt bằng cách kết nối một điện trở, được gọi là Rosc, giữa các chân đó. Giá trị được chọn cho Rosc thực sự xác định tần số dao động, có thể thay đổi tùy thuộc vào điện áp cung cấp. Việc chọn một giá trị thích hợp cho Rosc là rất quan trọng đối với hoạt động của HT-12D! Lý tưởng nhất là tần số dao động của HT-12D phải gấp 50 lần tần số của HT-12E. Do đó, vì chúng tôi đang hoạt động trên 5V, chúng tôi đã chọn điện trở 1MΩ và 51kΩ làm Rosc cho các mạch HT-12E và HT-12D tương ứng. Nếu bạn định vận hành các mạch trên một điện áp cung cấp khác, hãy tham khảo biểu đồ “Tần số dao động so với Điện áp cung cấp” trên trang 5 của biểu dữ liệu HT-12D đính kèm để xác định chính xác tần số dao động và điện trở sẽ được sử dụng.

Ngoài ra, đừng quên các tiêu đề nữ cho bộ thu RF.

Theo tùy chọn, một đèn LED có thể được kết nối thông qua một điện trở giới hạn dòng 330Ω cho mỗi chân trong số 4 chân dữ liệu của HT-12D để giúp xác định bit nhận được tại chân đó. Đèn LED sẽ sáng nếu bit nhận được ở mức CAO (1) và sẽ mờ đi nếu bit nhận được ở mức THẤP (0). Ngoài ra, một đèn LED đơn có thể được buộc vào chân VT của HT-12D (một lần nữa, thông qua điện trở giới hạn dòng 330Ω), sẽ sáng trong trường hợp truyền hợp lệ.

Bây giờ, nếu bạn đang tìm kiếm bản hack với các động cơ mà tôi đã đề cập ở bước một, thật dễ dàng! Chỉ cần đấu dây song song hai động cơ trong mỗi bộ như thể hiện trong sơ đồ thứ hai. Điều này hoạt động theo cách mà nó phải làm vì các động cơ trong mỗi bộ (động cơ trước và sau ở bên trái và động cơ trước và sau ở bên phải) không bao giờ được điều khiển theo các hướng ngược nhau. Có nghĩa là, để quay xe sang phải, cả động cơ trước và sau bên trái phải được dẫn động về phía trước và động cơ trước và sau ở bên phải đều phải được dẫn động về phía sau. Tương tự, để người lái rẽ trái, động cơ trước và sau bên trái đều phải được dẫn động về phía sau và động cơ trước và sau ở bên phải đều phải được dẫn động về phía trước. Do đó, an toàn khi cấp cùng một cặp điện áp cho cả hai động cơ trong một bộ. Và, cách đơn giản là nối chúng song song với nhau.

Bước 4: Bật mã

Về mã
Về mã

Chỉ còn một việc cần làm để bắt đầu và chạy. Có, bạn đoán đúng! (Tôi hy vọng bạn đã làm như vậy) Chúng tôi vẫn phải dịch các số đo gia tốc kế sang một dạng mà người điều khiển động cơ có thể diễn giải để có thể điều khiển động cơ. Nếu bạn đang nghĩ rằng vì các chỉ số gia tốc kế là tương tự và trình điều khiển động cơ mong đợi tín hiệu kỹ thuật số, chúng tôi sẽ phải triển khai một số loại ADC, tốt, không phải về mặt kỹ thuật, nhưng đó là những gì chúng tôi cần làm. Và nó khá đơn giản.

Chúng ta biết rằng một máy đo gia tốc đo gia tốc trọng trường dọc theo một trục tuyến tính và gia tốc này được biểu thị dưới dạng mức điện áp dao động giữa mặt đất và điện áp nguồn, mà bộ vi điều khiển của chúng ta đọc dưới dạng giá trị tương tự thay đổi từ 0 đến 1023. Nhưng, vì chúng ta đang vận hành gia tốc kế ở 3.3V, chúng tôi khuyên bạn nên đặt tham chiếu tương tự cho ADC 10-bit (được tích hợp trong ATmeaga trên Arduino) thành 3.3V. Nó sẽ chỉ làm cho mọi thứ đơn giản hơn để hiểu; mặc dù, nó sẽ không quan trọng nhiều đối với thử nghiệm nhỏ của chúng tôi ngay cả khi chúng tôi không làm vậy (chúng tôi sẽ chỉ phải chỉnh sửa mã một chút). Tuy nhiên, để làm như vậy, chúng tôi chỉ cần đấu dây chân AREF trên Arduino (chân 21 trên ATmega) thành 3,3V và biểu thị sự thay đổi mã này bằng cách gọi analogReference (EXTERNAL).

Bây giờ, khi chúng ta đặt gia tốc kế phẳng và tương tự Đọc gia tốc dọc theo trục x và y (hãy nhớ không? Chúng ta chỉ cần hai trục này), chúng ta nhận được giá trị khoảng 511 (tức là một nửa giữa 0 và 1023), giá trị này chỉ là một cách nói rằng có 0 gia tốc dọc theo các trục này. Thay vì đi sâu vào chi tiết thực tế, chỉ cần tưởng tượng đây là trục x và y trên đồ thị, với giá trị 511 biểu thị điểm gốc và 0 và 1023 điểm cuối như được mô tả trong hình; định hướng gia tốc kế sao cho các chốt của nó hướng xuống và được giữ gần bạn hơn, nếu không bạn có thể đảo / hoán đổi các trục. Điều này có nghĩa là, nếu chúng ta nghiêng gia tốc kế sang phải, chúng ta sẽ đọc giá trị lớn hơn 511 dọc theo trục x và nếu chúng ta nghiêng gia tốc kế sang trái, chúng ta sẽ nhận được giá trị thấp hơn 511 dọc theo trục x. Tương tự, nếu chúng ta nghiêng gia tốc kế về phía trước, chúng ta sẽ đọc giá trị lớn hơn 511 dọc theo trục y và nếu chúng ta nghiêng gia tốc kế về phía sau, chúng ta sẽ đọc giá trị thấp hơn 511 dọc theo trục y. Và đây là cách chúng tôi suy luận, trong mã, hướng mà người lái xe sẽ được điều khiển. Nhưng điều này cũng có nghĩa là chúng ta phải giữ cho gia tốc kế thực sự ổn định và được căn chỉnh song song với một bề mặt phẳng để có thể đọc số 511 dọc theo cả hai trục để rover đậu yên. Để giảm bớt nhiệm vụ này một chút, chúng tôi xác định các ngưỡng nhất định tạo thành một ranh giới, như hình mô tả, để bộ chuyển động vẫn đứng yên miễn là các số đọc x và y nằm trong giới hạn và chúng tôi biết chắc chắn rằng bộ định tuyến phải được đặt trong chuyển động khi vượt quá ngưỡng.

Ví dụ, nếu trục y đọc 543, chúng ta biết rằng gia tốc kế nghiêng về phía trước, chúng ta phải điều khiển máy quay về phía trước. Chúng tôi thực hiện việc này bằng cách thiết lập các chân D2 và D4 CAO và các chân D3 và D5 THẤP. Bây giờ, vì các chân này được nối trực tiếp với HT-12E, các tín hiệu được nối tiếp và bắn ra bộ phát RF chỉ để bộ thu RF đang đặt trên rover bắt được, với sự trợ giúp của HT-12D sẽ giải mã tín hiệu và chuyển chúng đến L293D, từ đó diễn giải các tín hiệu này và điều khiển động cơ chuyển tiếp

Tuy nhiên, bạn có thể muốn thay đổi các ngưỡng này để hiệu chỉnh độ nhạy. Một cách dễ dàng để làm như vậy là chỉ cần nối dây gia tốc kế của bạn với Arduino và chạy một bản phác thảo đưa ra các số đọc x và y trên màn hình nối tiếp. Bây giờ chỉ cần di chuyển gia tốc kế xung quanh một chút, lướt qua các kết quả đọc và quyết định các ngưỡng.

Và, thế là xong! Tải mã lên Arduino của bạn và tận hưởng !! Hoặc, có lẽ không sớm như vậy:-(Nếu bạn không bỏ qua phần tiền thưởng, tải mã lên ATmega của bạn sẽ có nghĩa là phải làm việc nhiều hơn một chút. Bạn có hai tùy chọn:

Tùy chọn A: Sử dụng thiết bị USB to Serial chẳng hạn như bảng đột phá cơ bản FTDI FT232. Chỉ cần chạy dây từ tiêu đề TTL đến các chân tương ứng trên ATmega theo ánh xạ bên dưới:

Ghim trên bảng đột phá Các chân trên Vi điều khiển
DTR / GRN RST / Reset (Pin 1) qua nắp 0,1µF
Rx Tx (Pin 3)
Tx Rx (Pin 2)
Vcc + Đầu ra 5v
CTS (không sử dụng)
Gnd Đất

Bây giờ, hãy cắm một đầu của cáp USB vào bảng đột phá và đầu kia vào PC của bạn và tải lên mã như bạn thường làm: khởi chạy Arduino IDE, chọn một cổng nối tiếp thích hợp, đặt loại bảng, biên dịch bản phác thảo và nhấn tải lên.

Tùy chọn B: Sử dụng UNO nếu bạn có một cái nằm ở đâu đó. Chỉ cần cắm ATmega của bạn vào UNO, tải lên mã như bạn thường làm, kéo IC ra và đẩy nó trở lại mạch phát. Dễ như ăn bánh!

Một trong hai tùy chọn này sẽ hoạt động, giả sử bạn đủ thông minh để ghi bộ nạp khởi động trước khi sử dụng ATmega của mình hoặc nếu bạn thông minh hơn nữa khi mua ATmega với bộ nạp khởi động đã được cài đặt ngay từ đầu. Nếu không, hãy tiếp tục và làm như vậy bằng cách làm theo các bước được nêu ở đây.

Andddd, chúng ta đã chính thức hoàn thành! Tôi hy vọng bạn thích hướng dẫn dài dòng kỳ lạ này. Bây giờ, hãy tiếp tục, hoàn thành việc xây dựng bộ định tuyến của bạn nếu bạn vẫn chưa hoàn thành, hãy chơi với nó một lúc và quay lại để tràn ngập phần nhận xét bên dưới với các truy vấn và / hoặc phê bình mang tính xây dựng.

Cảm ơn

P. S. Lý do tôi không tải lên bất kỳ bức ảnh nào về dự án đã hoàn thành là vì tôi đã không tự hoàn thành nó. Quá trình xây dựng nó được nửa chặng đường, tôi đã nghĩ đến một số tính năng bổ sung, chẳng hạn như kiểm soát tốc độ, tránh chướng ngại vật và có lẽ là màn hình LCD trên rover, điều này thực sự không quá khó nếu chúng ta sử dụng một bộ vi điều khiển trên cả đầu truyền và đầu nhận. Nhưng, tại sao không làm điều đó một cách khó khăn?! Vì vậy, tôi hiện đang làm việc theo hướng đó và tôi sẽ đăng bản cập nhật ngay khi nó có kết quả. Tuy nhiên, tôi đã kiểm tra mã và thiết kế với sự trợ giúp của một nguyên mẫu nhanh mà tôi đã xây dựng bằng cách sử dụng các mô-đun từ một trong những dự án trước đây của tôi; bạn có thể xem video ở đây.

Đề xuất: