Witam,
mam pewien problem, spędziłem nad tym już sporo czasu... może ktoś z was mnie uratuje...
Sprawa wygląda następująco. Ma dwuosiową maszynę, po dwie krańcówki na jedną oś. Wszystkie mam szeregowo podłączone razem do jednego pinu LPT. Na początku ustawiłem samo bazowanie żeby działało, czyli:
Home_is_shared = 1 w obu osiach
Home_sequence
Home_ignore_limits = Yes w obu osiach
pięknie działa i bazuje się prawidłowo.
Schody zaczeły się gdy przypisałem też w HALu do tego pinu limit switche.
Linia "Home_ignore_limits" działa, ale tylko do tej osi która się bazuje. A ja mam wszystkie krańcówki połączone razem ;/...
"
net all-home <= parport.0.pin-10-in-not
net all-home => axis.0.home-sw-in
net all-home => axis.0.neg-lim-sw-in
net all-home => axis.0.pos-lim-sw-in
net all-home => axis.2.home-sw-in
net all-home => axis.2.neg-lim-sw-in
net all-home => axis.2.pos-lim-sw-in
"
"
[AXIS_0]
HOME_IGNORE_LIMITS = YES
HOME_IS_SHARED = 1
HOME_SEQUENCE = 0
[AXIS_2]
HOME_IGNORE_LIMITS = YES
HOME_IS_SHARED = 1
HOME_SEQUENCE = 1
"
Pytanie jest następujące, czy da się zrobić tak, żeby podczas bazowanie ignorował WSZYSTKIE krańcóki a nie tylko z obecnie bazowanej osi?
Może wogóle nie da się zrobić tak jak ja chce?
Bardzo proszę o szybką odpowiedź.
z poważaniem,
załamany Czerech
Podłączenie wszystkich home i limit switchy razem
-
- Lider FORUM (min. 2000)
- Posty w temacie: 2
- Posty: 9323
- Rejestracja: 26 lut 2011, 23:24
- Lokalizacja: mazowieckie
Re: Podłączenie wszystkich home i limit switchy razem
Ostro przekombinowałeś.czerech pisze:Schody zaczeły się gdy przypisałem też w HALu do tego pinu limit switche.
Linia "Home_ignore_limits" działa, ale tylko do tej osi która się bazuje. A ja mam wszystkie krańcówki połączone razem ;/...
Można mieć wszystkie home na jednym pinie, a wszystkie limity+estop na drugim.
Wszystkiego na jednym pinie się nie da.
Rozumiem, że masz tylko jeden pin wolny ?
Jest sposób na obejście tego.
Zrób sobie dwie konfiguracje.
W jednej daj krańcówki jako shared home, bez limitów.
W drugiej daj krańcówki jako estop, bez home.
Uruchamiasz najpierw "pierwszą maszynę", bazujesz i wyłączasz, potem uruchamiasz "drugą maszynę", "bazujesz" myszką i pracujesz.
Trochę to uciążliwe, ale działać będzie.
.
-
Autor tematu - Czytelnik forum poziom 1 (min. 10)
- Posty w temacie: 3
- Posty: 13
- Rejestracja: 30 paź 2010, 09:45
- Lokalizacja: Grodzisk Maz.
dzięki za odpowiedź.
mam dwa wolne piny i zrobiłem home+limity jednej osi na jedym a drugiej na drugim ;]
a na jednym próbowałem w taki sposób. Chciałem wykorzystać bramki logiczne w halu zaszyte... prawie mi się udało to wszystko ustawić, zakończyłem na takim etapie, że nie wiem jak zanegować sygnał...
net home-all => axis.0.home-sw-in
loadrt or2 count=2
loadrt not count=2
addf or2.0 base-thread
addf not.0 base-thread
net homing-x or2.0.in0 <= axis.0.homing
net home-all or2.0.in1
net limit-to-z or2.0.out
net neglim-z-in not.0.in <= limit-to-z
net neglimi-z-out not.0.out => axis.2.neg-lim-sw-in axis.0.pos-lim-sw-in
konfiguracja powyżej działa do miejsca gdzie chce zanegować wartość sygnału "limit-to-z"
ale jak już ktoś obeznany się włączył do rozmowy to zadam inne pytanie
gdzie moge zdefiniować z jakim programem startowym otwiera mi sie EMC2? Da się to wogóle zrobić? Maszyna ma wykonywać tylko kilka typów detali. Może poprostu zrobić kilka klawiszy z pyVCP, które będą ładowały dany program (jak ktoś wie jak przypisać do klawisza zawnętrzny plik z gcodem to będę wdzięczny za info)
mam dwa wolne piny i zrobiłem home+limity jednej osi na jedym a drugiej na drugim ;]
a na jednym próbowałem w taki sposób. Chciałem wykorzystać bramki logiczne w halu zaszyte... prawie mi się udało to wszystko ustawić, zakończyłem na takim etapie, że nie wiem jak zanegować sygnał...
net home-all => axis.0.home-sw-in
loadrt or2 count=2
loadrt not count=2
addf or2.0 base-thread
addf not.0 base-thread
net homing-x or2.0.in0 <= axis.0.homing
net home-all or2.0.in1
net limit-to-z or2.0.out
net neglim-z-in not.0.in <= limit-to-z
net neglimi-z-out not.0.out => axis.2.neg-lim-sw-in axis.0.pos-lim-sw-in
konfiguracja powyżej działa do miejsca gdzie chce zanegować wartość sygnału "limit-to-z"
ale jak już ktoś obeznany się włączył do rozmowy to zadam inne pytanie

gdzie moge zdefiniować z jakim programem startowym otwiera mi sie EMC2? Da się to wogóle zrobić? Maszyna ma wykonywać tylko kilka typów detali. Może poprostu zrobić kilka klawiszy z pyVCP, które będą ładowały dany program (jak ktoś wie jak przypisać do klawisza zawnętrzny plik z gcodem to będę wdzięczny za info)
