Arduino steruje ploterem.

Dyskusje o programowaniu mikroprocesorów.

Autor tematu
baxter12
Sympatyk forum poziom 2 (min. 50)
Sympatyk forum poziom 2 (min. 50)
Posty w temacie: 17
Posty: 57
Rejestracja: 04 lut 2013, 17:03
Lokalizacja: Poznan

#21

Post napisał: baxter12 » 09 wrz 2013, 22:16

Przepraszam że post pod postem.
Raven pisze:Rozpędzanie się i hamowanie osi jest trochę bardziej skomplikowane - nie możesz tego liczyć na krokach a na odległości do pokonania.
Ano właśnie, w moim programie zdaje sie nie ma to racji bytu. Myślałem nad rozliczaniem kroków za pomocą zmiennej prędkości silnika, ale zarzuciłem to dla rozliczania krokowego.



Tagi:


ezbig
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 9
Posty: 2103
Rejestracja: 07 lip 2006, 00:31
Lokalizacja: mazowieckie

#22

Post napisał: ezbig » 09 wrz 2013, 22:17

baxter12 pisze:Małe przypomnienie z fizyki z podstawówki się przyda.
Bez komentarza.
:wink: baxter12 chyba jakoś opatrznie to zrozumiałeś. Chciałem tylko pokazać, że to jest proste i warto to uwzględnić.
baxter12 pisze:Nie bardzo, u mnie jest to rozliczone na kroki, krok jest zawsze taki sam, zmienia sie tylko prędkość wykonania kroku.
Z tego przyspieszenia trzeba policzyć przyspieszenie ruchu interpolowanego. Dzięki niemu możesz policzyć w jakim czasie frez rozpędzi się do prędkości zadanej w parametrze F.
To nie ma żadnego znaczenia, czy na kroki, czy na metry. Z tą fizyką to tylko analogia, nie dosłownie.

Pokazałem Ci jak ja bym się za to zabrał. To twój program, ty tu rządzisz ;)

Awatar użytkownika

Zienek
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 4
Posty: 3730
Rejestracja: 13 gru 2008, 19:32
Lokalizacja: Szczecin
Kontakt:

#23

Post napisał: Zienek » 09 wrz 2013, 22:23

Interpreter jeszcze na komputerze to może być dobry pomysł.
Z komputera do kontrolera przychodziły by instrukcje nie w formie gkodu, a ilości kroków do wykonania dla każdej osi w danym interwale czasowym i ich zwroty.
Np. teraz przez 100ms:
X+ 50 kroków
Y- 25 kroków
Z+ 10kroków.
Wtedy sterownik ustawiłby polaryzację dla DIR, oraz:
co drugą milisekundę sterownik 'pikałby' na plus dla STEP X,
co czwartą na minus dla STEP Y
co dziesiątą dla STEP Z.


Autor tematu
baxter12
Sympatyk forum poziom 2 (min. 50)
Sympatyk forum poziom 2 (min. 50)
Posty w temacie: 17
Posty: 57
Rejestracja: 04 lut 2013, 17:03
Lokalizacja: Poznan

#24

Post napisał: baxter12 » 09 wrz 2013, 22:30

Nie myśl EZBIG że poczułem sie urażony, daleko mi do tego. Jestem dumny z tego choćby że mój program "wygenerował" 3 strony postów. I to na tak poważnym forum. Wiele mi pomogliście.
Zauwazyłes jak rozliczam kroki.
czy opłaca się dopisać trochę kodu, aby te kroki były stopniowo coraz szybsze?
Czy trza by było napisać od nowa, aby rozliczac kroki odległościowo?
Z tym że arduino ma ograniczenie.
Komenta stepper step zamraża procesor. Wiec "klasyczna " rampe można by było zastosowac, w prosty sposób, tylko do ruchu w jednej płaszczyźnie. Lub sterować silnikami "na piechotę" wysyłając sygnały do portów. Ale czy to ma sens? Biorąc pod uwagę możliwości obliczeniowe Atmegi?
Może zakończyć rozbudowe programu o krańcówki. I już. Cudów chyba się z tego prcesorka nie wykrzesa.

[ Dodano: 2013-09-09, 22:37 ]
Zienek pisze:Interpreter jeszcze na komputerze to może być dobry pomysł.
Chciałem to zrobic na Processingu. Nie umiałem bo:
Processin nie ma komend odczytu z pliku linia po linii.
Wczytuje cały plik i przy dużym pliku blokuje kompa na kilka minut.
A potem nie ma komend aby rozebrac plik tekstowy, linia po linii, albo aby odszukać znak i zwrócic jego miejsce w ciągu.
Zwróc uwagę jak prostacko mam rozwiazany odczyt danych z seriala, tak umiałem, tak zrobiłem. cały czas się obawiałem czy Atmega da sobie rade z obliczeniami. zdawłem sobie sprawę ŻE NIE DA SOBIE RADY, no bo niby dlaczego WSZYSCY przenosza obliczenia do kompa?


ezbig
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 9
Posty: 2103
Rejestracja: 07 lip 2006, 00:31
Lokalizacja: mazowieckie

#25

Post napisał: ezbig » 09 wrz 2013, 23:29

baxter12 pisze:zdawłem sobie sprawę ŻE NIE DA SOBIE RADY, no bo niby dlaczego WSZYSCY przenosza obliczenia do kompa?
Może trochę z lenistwa, bo tu trzeba trochę podejścia jakie było dawniej (jak komputery były dosyć wolne i trzeba było sobie radzić). Ja kiedyś programowałem dużo w asemblerze. Co prawda było to ze 20 lat temu na Atari 65XE. Teraz na mikrokontrolerach już mi się nie chce, ale czasem jeszcze jakąś wstawkę popełnię w asemblerze. Akurat problem szybkiego kreślenia linii miałem rozwiązany jeszcze na Atari - bo stadnardową procedurą systemową nie dało się animacji 3D robić (takie tam sześciany latające, nie to co teraz widzisz na komputerach - 6502C miał zegar 1,77MHz!).

W twoim przypadku trzebaby własną bibliotekę do generowania impulsów napisać. Nie wgłębiałem się w twój kod, a to przecież sam początek :oops:


Autor tematu
baxter12
Sympatyk forum poziom 2 (min. 50)
Sympatyk forum poziom 2 (min. 50)
Posty w temacie: 17
Posty: 57
Rejestracja: 04 lut 2013, 17:03
Lokalizacja: Poznan

#26

Post napisał: baxter12 » 09 wrz 2013, 23:41

ezbig pisze: Ja kiedyś programowałem dużo w asemblerze. Co prawda było to ze 20 lat temu na Atari 65XE.
Hmm. Wtedy Amiga była moją miłością. Na Amosie cały program do obsługi firmy popełniłem. Dla nieobznajomionych, to był taki Basic który sie potem kompilowało..
Jestem stary dobry rocznik 1963.. he he he na "kalejdoskopie Techniki" wychowany..


ezbig
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 9
Posty: 2103
Rejestracja: 07 lip 2006, 00:31
Lokalizacja: mazowieckie

#27

Post napisał: ezbig » 09 wrz 2013, 23:49

baxter12 pisze:Wtedy Amiga była moją miłością. Na Amosie cały program do obsługi firmy popełniłem.
Amigi też później miałem 600 i 1200, a w Amosie gierkę pisałem z kolegą, ach ile człowiek miał wtedy czasu na hobby. Nie to co teraz :cry:

Awatar użytkownika

markcomp77
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 9
Posty: 3975
Rejestracja: 18 wrz 2004, 12:51
Lokalizacja: k/w-wy
Kontakt:

#28

Post napisał: markcomp77 » 09 wrz 2013, 23:51

udała mi się kompilacja programu "baxter" na arduino due (ARM/sam)

skopiowałem do katalogu "sam" bibliotekę stepper z avr - nie widziałem w jej implementacji rzeczy zależnych od procesora

po tym uzupełnieniu biblioteki, program kompiluje się na ARM i nawet udaje się komunikacja z UniversalGcodeSender...

jednak nie podłączałem jeszcze krokowców... (sama komunikacja ze sterownikiem krokowców wymaga konwersji z 3.3V na 5V)

Może faktycznie pozostawić ideę prostego programu
Jednak warto mieć:
- normalnie sterować Z
- poprawić postać wizualną kodu
- zwiększyć ilość komentarzy

Prostota programu jest jego DUŻĄ zaletą...

[ Dodano: 2013-09-09, 23:55 ]
hehe... 20lat temu to i ja programowałem... ale w Z80 (wiadomo - spektrum, ca80 itd)
SpotkanieCNC: STOM-TOOL Marzec 2014
http://www.cnc.info.pl/topics79/spotkan ... t55028.htm


ezbig
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 9
Posty: 2103
Rejestracja: 07 lip 2006, 00:31
Lokalizacja: mazowieckie

#29

Post napisał: ezbig » 10 wrz 2013, 00:04

markcomp77 pisze:hehe... 20lat temu to i ja programowałem... ale w Z80 (wiadomo - spektrum, ca80 itd)
No to sami swoi :) Ja też bawiłem się na Z80, a i ZX-80 oraz Elwro 800 junior wpadł mi w ręce.

Awatar użytkownika

markcomp77
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 9
Posty: 3975
Rejestracja: 18 wrz 2004, 12:51
Lokalizacja: k/w-wy
Kontakt:

#30

Post napisał: markcomp77 » 10 wrz 2013, 00:32

ezbig pisze:Elwro 800 junior
nie bawiłem się długo... ale gdzieś mi został podręcznik oryginalny...

hehe - ja na zajęciach z ETO bawiłem się MERĄ 400
SpotkanieCNC: STOM-TOOL Marzec 2014
http://www.cnc.info.pl/topics79/spotkan ... t55028.htm

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Arduino, Raspberry pi i inne systemy mikroprocesorowe”