Skocz do zawartości
Kaytec

Rysujące ramię.

Pomocna odpowiedź

na 8Mhz to wgraj bootloader od LilyPad. Mozesz w ogole wywalic kwarc i użyć wewnetrznego oscylatora tak jak jest to zrobione w LilyPad.

lilypad.name=LilyPad Arduino w/ ATmega168

lilypad.upload.protocol=stk500

lilypad.upload.maximum_size=14336

lilypad.upload.speed=19200

lilypad.bootloader.low_fuses=0xe2

lilypad.bootloader.high_fuses=0xdd

lilypad.bootloader.extended_fuses=0x00

lilypad.bootloader.path=lilypad

lilypad.bootloader.file=LilyPadBOOT_168.hex

lilypad.bootloader.unlock_bits=0x3F

lilypad.bootloader.lock_bits=0x0F

lilypad.build.mcu=atmega168

lilypad.build.f_cpu=8000000L

lilypad.build.core=arduino

dane z pliku boards.txt

[ Dodano: 08 Lip 10 01:09 ]

Może jest jakiś sposób zgrania programu normalnie a nie przez rs232.

oczywiscie mozna wgrac skompilowany plik normalnie programatorem nawet nie wgrywajac bootloadera. Po skompilowaniu plitk ten jest tworzony w jakiejs dziwnej lokalizacji. Documents and settings chyba i jest tam do zamknięcia srodowiska programistycznego arduino (przy zamykaniu jest usuwany)

[ Dodano: 08 Lip 10 01:15 ]

ezio, a na jakiej podstawie wyznaczasz położenie tego ramienia, żeby pokrywało się ze współrzędnymi wyznaczonymi do rysowania. Rozumie, że tym zasadniczo się program zajmuje, jednak mnie interesuje czym się posłużyłeś żeby to wyznaczyć.

Ogólnie rzecz ujmując, program na PC przekształca i obrazuje dane z pliku HPGL (*.plr), które są przekazywane do uC, który steruje serwami ... chyba dobrze pojąłem zasadę działania urządzenia. Postanowiłem sobie też coś takiego zmontować, jednak troszkę inaczej. Uproszczenie programu sterującego z PC do przesyłu pliku plr, na uC gdzie zostaną dokonane kompletne obliczenia które pozwolą wyznaczyć położenie ramienia w przestrzeni X Y. W sumie jest to kinematyka złożona, co dość komplikuje opracowanie wzoru który by dane X Y przeliczał na wychylenia serwa. Na razie gromadzę sobie dane dla kilku punktów X Y, na papierze wykreślę położenie ramion, z punktu zgięcia położenie zostanie wrzucone do programu Statistca, który wygeneruje mi wzór matematyczny do sterowania. Ciekaw jestem jak to wyjdzie 😃, bo innego pomysłu na wyznaczanie tego nie mam.

tu masz odpowiedz http://www.learnaboutrobots.com/inverseKinematics.htm

ja robilem to troche inaczej ale podobnie

Udostępnij ten post


Link to post
Share on other sites

Niestety bootloader od lilypad nie pasuje do atmegi 8 (jest do 168 i avrstudio daje komunikat że nie pasuje).

Najchętniej wgrałbym sobie zwykłym programatorem a nie przez rs'a (właściwie przez FTDI na usb). Tylko nie mogę znaleźć skompilowanego hexa na windowsie 7 i arduino ide 0018. :/

Udostępnij ten post


Link to post
Share on other sites

Kaytec, masz może kwarc 16MHz? Bo jeśli tak to możesz bez problemu wgrać bootloader 'arduino NG or older w/ atmega8' - będzie działać 🙂

Udostępnij ten post


Link to post
Share on other sites

Właśnie mam taki problem że nie jest dostępny u mnie w sklepie, jak tylko znajdę to spróbuję.

Udostępnij ten post


Link to post
Share on other sites

No to od biedy (bardzo od biedy) możesz zastosować generator RC ustawiony na 16MHz - nie ten wewnętrzny, ale zewnętrzny. Ale co prawda z takim rozwiązaniem wiązałoby się skalibrowanie tego, bo kondensatory mają duży rozrzut. Trzeba by napisać program zmieniający non-stop stan jakiegoś pinu i sprawdzić częstotliwość tego, i odpowiednio ustawiać potencjometr, tak żeby zrobić idealnie 16MHz.

Udostępnij ten post


Link to post
Share on other sites

to jest wypasione

Udostępnij ten post


Link to post
Share on other sites

Jestem pod wrażeniem, że mimo braku precyzji, bo od sznurka precyzji wymagać się nie da, potrafi to urządzenie rysować linie proste. Myślę że tam zastosowano jakieś czujniki przemieszczenia, bo to jest raczej trudne do wykonania w inny sposób.

Udostępnij ten post


Link to post
Share on other sites
Niestety bootloader od lilypad nie pasuje do atmegi 8 (jest do 168 i avrstudio daje komunikat że nie pasuje).

Najchętniej wgrałbym sobie zwykłym programatorem a nie przez rs'a (właściwie przez FTDI na usb). Tylko nie mogę znaleźć skompilowanego hexa na windowsie 7 i arduino ide 0018. :/

katalog z hexem jest zmienny. Jest tworzony po skompilowaniu i usuwany zawsze po wyłączeniu arduino.

normalinie jest tu (w win7):

%temp%/build[ciąg_cyfr].tmp/*.hex

Udostępnij ten post


Link to post
Share on other sites

Witam, udało mi się odpalić i programować za pomocą IDE Arduino (migająca dioda). Atmega 8 pracująca na wew. oscylatorze 8mhz. Boot loader z tej strony:

http://todbot.com/blog/2009/05/26/minimal-arduino-with-atmega8/

Jedyny problem to taki, że przed każdym kliknięciem upload w IDE muszę zgrywać od nowa bootloader.

Fusiory tak:

[ Dodano: 11 Lip 10 08:46 ]

Zapomniałem dodać że program do sterowania serwami z pliku PLT oczywiście działa 🙂 Tylko uruchomię ramie i dodam filmik.

Udostępnij ten post


Link to post
Share on other sites

Musisz jeszcze ustawić odpowiednie lockbity, żeby zabezpieczyć obszar pamięci, w której jest bootloader, niestety nie powiem ci które to, bo nie wiem, musiałbyś poszukać w internecie.

Udostępnij ten post


Link to post
Share on other sites

no przeciez jest to na tamtej stronie skad masz bootloader

atmega8noxtal.bootloader.low_fuses=0xe4

atmega8noxtal.bootloader.high_fuses=0xc4

atmega8noxtal.bootloader.unlock_bits=0x3F

atmega8noxtal.bootloader.lock_bits=0x0F

Udostępnij ten post


Link to post
Share on other sites

Ezio mam jeszcze pytanie odnośnie serw użytych w twoim projekcie. Ja użyłem najtańszych serwomechanizmów z allegro czyli sg5010. Problem jest taki że nie są w ogóle dokładne (minimalnie inna pozycja wracając od prawej/lewej strony). Totalny brak powtarzalności mimo takiej samej częstotliwości sterującej . Dodatkowo malowało mi się z robotem jak z niepełnosprawnym który ma czasami tiki nerwowe. Muszę trochę popracować żeby uzyskać efekty jak na filmach 🙂 Zacznę od sprawienia sobie lepszych serwomechanizmów. Albo wykorzystam łatwo dostępne krokowce.

Udostępnij ten post


Link to post
Share on other sites

to były te serwa http://modele.sklep.pl/product_info.php?products_id=293

akurat takie mialem.

razem ze źródłem do atmela i programem sterującym jest tam chyba też arkusz exela. Używałem go do kalibracji serw. Wysyłałem jakąś wartość do serwa i mierzyłem kąt na jaki serwo sie ustawialo. exel liczyl najbliższą funkcje liniową. dane te wpisywałem do źródła atmela.

Udostępnij ten post


Link to post
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Gość
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.


×
×
  • Utwórz nowe...