2009-04-18 30 views
27

Tôi muốn tìm hiểu cách viết phần mềm để điều khiển robot.Lego MindStorms có phải là lựa chọn tốt cho việc phát triển robot cơ bản không?

Lego MindStorms có phải là lựa chọn tốt cho việc này không? Có lựa chọn thay thế tốt hơn?

Tôi thích MindStorms hơn, nhưng sau khi đọc một vài bài viết tôi có ấn tượng rằng Lego đã ngừng nghiên cứu và phát triển MindStorms.

Đề xuất của bạn là gì?

+3

Bạn có thể muốn nghe rằng có đề xuất cho một kiểu StackOverflow [trang web dành cho Lego Mindstorms] (http://area51.stackexchange.com/proposals/4105/lego-mindstorms-robotics?referrer=xdbfIk67GZl3hJ0vc5L2Fg2) trên [Area51. stackexchange.com] (http://Area51.stackexchange.com). – Eric

+2

Và có [Đề xuất Robotics] (http://area51.stackexchange.com/proposals/40020). – Rocketmagnet

Trả lời

13

Bạn không cho biết liệu bạn có quan tâm nhiều hơn đến khía cạnh phần cứng hoặc phần mềm của robot hay không. Nếu bạn quan tâm đến phần mềm và không muốn chi tiền cho phần cứng, bạn nên xem xét một môi trường mô phỏng.

Hãy nghĩ về những thứ như trình mô phỏng bay hoặc chương trình trò chơi. Bạn có thể "bay" một chiếc máy bay mà không phải mua một chiếc. Bạn cũng có thể học rất nhiều trong quá trình này.

Microsoft Robotics Studio có phiên bản bạn có thể tải xuống miễn phí, cho phép bạn mô phỏng Lego Mindstorms cũng như viết chương trình cho nó. Nếu bạn là sinh viên, bạn có thể nhận phiên bản đầy đủ miễn phí.

Tất nhiên nếu bạn muốn tiêu tiền thì không có gì hoàn toàn giống với thực tế và tôi chắc chắn bạn sẽ có rất nhiều niềm vui với nó.

Tôi vừa biết rằng LabView cũng có thể được sử dụng để lập trình Lego Mindstorms. Hãy xem: http://www.ni.com/academic/mindstorms/ Họ có phiên bản LabView cho students với mức giá chiết khấu sâu.

+0

của Microsoft Tôi quan tâm đến cả khía cạnh phần cứng lẫn phần mềm. –

+0

Lego Mindstorms có cách tiếp cận rất xúc động đối với người máy. Khía cạnh phần mềm của Mindstorms khá hạn chế. – Ambo100

2

Tôi không thể cung cấp cho bạn so sánh song song tốt với các bộ công cụ rô bốt khác (tôi biết MS có), nhưng tôi đã dành rất nhiều thời gian với mindstorms (đến mức tôi đã cung cấp cho người dùng trình bày nhóm) và tôi nghĩ rằng nó làm cho chương trình trở nên thú vị và dạy cho bạn những điều cơ bản về cảm biến, đầu vào và đầu ra mà bạn cần biết với bất kỳ bộ công cụ nào.

Nó mang lại cho bạn nền tảng và làm cho nó trở nên thú vị, đó là một cách tuyệt vời để bắt đầu. Có lẽ có nhiều lựa chọn thay thế phức tạp hơn ...

10

Tôi sở hữu bản phát hành đầu tiên bộ công cụ Lego MindStorms robot, và tôi không thể ca ngợi nó đủ. Thật dễ dàng để bắt đầu, và khả năng là vô tận. Không chỉ là niềm vui xây dựng mọi thứ, đó là một niềm vui đưa họ vào cuộc sống. Nó thách thức bạn như một kỹ sư và là một nhà phát triển phần mềm. Nó làm cho bạn thực sự đánh giá cao và hiểu được sự mong manh của nghiên cứu và phát triển robot.

Bộ NXT mới cũng đã được thực hiện. Được phát triển rộng rãi bởi phản hồi của người dùng, đây là bộ công cụ robot Lego tốt nhất.

+0

Cảm ơn thông tin. Tôi nghĩ tôi sẽ mua bộ NXT. –

+2

Tôi đã sở hữu NXT kể từ khi phát hành và tôi nghĩ rằng đó là một cách tuyệt vời để bắt đầu trong robot. Bạn có thể làm việc trên phần cứng hoặc phần mềm. Nó cho phép bạn nhanh chóng thử nghiệm các ý tưởng. –

3

Tôi đã huấn luyện đội First Lego League trong một vài năm và chúng tôi đã sử dụng rô bốt NXT. Nhóm nghiên cứu bao gồm các học sinh lớp 6, 7 và 8 và họ đã có thể dễ dàng học hỏi về môi trường lập trình đồ họa và phát triển một số chương trình khá tinh vi với nó. Là huấn luyện viên chúng tôi hướng dẫn họ thực hành phần mềm tốt (yêu cầu, thiết kế, mô đun, tài liệu, kiểm tra, v.v.) nhưng các em đã làm công việc và học được rất nhiều. Phần mềm NXT tiêu chuẩn về cơ bản là một phiên bản rút gọn của LabView và nó hợp lý dễ sử dụng nhưng một chút lỗi. Đó là một tính năng tốt cho trẻ em mặc dù - họ đã học được cách khó khăn để lưu công việc của họ thường xuyên vì phần mềm có thể và không sụp đổ trong khi bạn đang chỉnh sửa.

Nếu bạn muốn có một vụ nổ chơi với robot và đặc biệt là nếu bạn muốn liên quan đến trẻ em quá, đây là một môi trường tuyệt vời cho nó. Nhưng phần mềm tiêu chuẩn là một ngôn ngữ lập trình đồ họa, do đó bạn đang nối dây và cấu hình các khối chức năng không viết mã và một số người không coi đó là phần mềm "thực". Tất cả phụ thuộc vào những gì bạn muốn học. Chúng tôi chỉ sử dụng phần mềm NXT tiêu chuẩn với trẻ em vì quy tắc thi FLL.Nếu bạn thích sử dụng ngôn ngữ thủ tục, NXT vẫn là nền tảng tuyệt vời cho việc học nhưng bạn cần chuyển sang môi trường phát triển thay thế như một trong số these.

+0

Tôi đang nghĩ đến việc sử dụng Robotics Studio –

0

Nếu bạn mới bắt đầu, điều quan trọng nhất sẽ là cộng đồng hỗ trợ đằng sau bộ công cụ bạn chọn. MindStorms rất phổ biến và tôi chắc chắn bạn sẽ không gặp vấn đề khi tìm câu trả lời cho (nhiều) câu hỏi mà bạn sẽ có khi bạn làm việc với nó.

1

Tôi không biết bạn đang sử dụng loại phần mềm nào, nhưng MATLAB thực sự có LEGO MINDSTORMS NXT Toolkit. Nó đã được thảo luận trên một số các MathWorks blogs, và có một số bản demo được đăng trên Trao đổi tập tin MathWorks (here's one).

1

Có, Lego Mindstorms rất tuyệt, nhưng không sử dụng giao diện ngôn ngữ LabView G mặc định để thực hiện chương trình của bạn.

Sử dụng thứ gì đó nâng cao hơn như LeJos.

2

Giả sử bạn chọn đường dẫn Lego, cho Mindstorms tôi chắc chắn sẽ giới thiệu NQC.

NQC là ngôn ngữ lập trình mà bạn có thể sử dụng để lập trình robot Lego Mindstorms và tôi thấy nó dễ dàng hơn việc kéo các nút xung quanh trong môi trường kiểu WYSIWYG (đó là cách phần mềm đi kèm và phiên bản dựa trên LabVIEW đã làm việc).

Tôi chưa từng có kinh nghiệm nào với rô-bốt NXT, nhưng nếu NQC nghe có vẻ thú vị, thì tương đương với NXT: NBC/NXC.

Steve

2

Bạn quan tâm đến việc viết phần mềm cho rô bốt. Bạn có thể bắt đầu và phát triển bằng cách sử dụng LEGO. Một khi bạn đã outgrown giao diện Mindstorms, bạn có thể tải LeJOS lên "brick" và viết các chương trình Java chạy trên máy tính của bạn và điều khiển hoặc tương tác với robot thông qua Bluetooth. Có rất nhiều ví dụ có sẵn để làm những điều cơ bản với LeJOS. Tuy nhiên, bạn có thể lập trình bằng Java.

Nếu bạn có thể lập trình trong Java và muốn phát triển một cách nhanh chóng để bao gồm các tình huống phức tạp hơn cho robot của bạn, bạn nên có một cái nhìn tại blog entry của tôi về Logic (HLL) Dự án mã nguồn mở cấp cao: http://highlevellogic.blogspot.com/2010/10/lego-mindstorms-nxt-robots-lejos.html

Các vấn đề liên quan