Różnice
Różnice między wybraną wersją a wersją aktualną.
|
|
pl:miw:2009:piw09_nxtcases_2 [2009/06/13 15:08] piw09 |
pl:miw:2009:piw09_nxtcases_2 [2019/06/27 15:50] |
====== NXT Cases ====== | |
| |
Autorzy: | |
* Bartosz Beza (bartekbeza@gmail.com) | |
* Błażej Biesiada (bejo@student.agh.edu.pl) | |
| |
Temat: | |
* Problem wież Hanoi | |
| |
====== WSTĘP ====== | |
| |
* //**Wieże Hanoi** – problem polegający na odbudowaniu, z zachowaniem kształtu, wieży z krążków o różnych średnicach (popularna dziecięca zabawka), przy czym podczas przekładania wolno się posługiwać buforem, reprezentowanym w tym przypadku przez dodatkowy słupek, jednak przy ogólnym założeniu, że nie można kłaść krążka o większej średnicy na mniejszy ani przekładać kilku krążków jednocześnie. Jest to przykład zadania, którego złożoność obliczeniowa wzrasta niezwykle szybko w miarę zwiększania parametru wejściowego, tj. liczby elementów wieży.// | |
| |
| |
* Przed przystąpieniem do realizacji projektu postawiliśmy sobie na celu pewne założenia - w poszukiwaniu ciekawych przypadków użycia biblioteki PlNXT postanowiliśmy odejść od popularnego robota TriBot i zaprojektować zupełnie nową konstrukcję. Kolejnym założeniem naszego projektu było użycie w nim klocków z tylko jednego zestawu LEGO Mindstorms NXT. Ostatnią i prawdopodobnie najistotniejszą kwestią było, aby logika sterująca robotem realizowała problem, który można łatwo i wydajnie rozwiązać za pomocą języka Prolog. Z połączenia tych wszystkich założeń zrodził się pomysł zbudowania robota-ramienia przenoszącego wieże Hanoi. Zadanie to okazało się w praktyce dość trudne w realizacji z powodu bardzo ograniczonej ilości klocków dostępnych w jednym zestawie Mindstorms NXT oraz stosunkowo dużej wadze silników. W dalszej części projektu opisujemy, w jaki sposób poradziliśmy sobie ze wszystkimi tymi problemami. Projektu niestety nie udało się w pełni zakończyć. Pomimo iż wszystkie elementy (robot, kod, krążki) są już gotowe to przetestowanie działania całości okazało się niemożliwe ze względu bug-i w bibliotece PlNXT, które napotkaliśmy w trakcie prób testowania robota. Pojawił się problem z obracaniem pojedynczych silników o żądaną liczbę stopni. | |
| |
====== OPIS ROBOTA ====== | |
| |
{{:pl:miw:2009:robot-caosc-final.png|}} | |
| |
| |