Skocz do zawartości

Rysujące ramię.


Kaytec

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

Link do komentarza
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. :/

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

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.

Link do komentarza
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.

Link do komentarza
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

Link do komentarza
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.

Link do komentarza
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.

Link do komentarza
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

Link do komentarza
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.

Link do komentarza
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.

Link do komentarza
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!

Anonim
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...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.