Prędkość niższa od zadanej

Dyskusje dotyczące działania obsługi programu LinuxCNC

Autor tematu
szary11
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 2
Posty: 377
Rejestracja: 16 lut 2011, 22:44
Lokalizacja: Tarnogród

Prędkość niższa od zadanej

#1

Post napisał: szary11 » 31 sie 2015, 06:49

Potrzebuję sygnału na wyjściu w Linuxcnc, że prędkość (najczęściej w narożach) spadła poniżej zadanej. Sygnał potrzebny do THC w plaźmie. Pomożecie?



Tagi:


GumiRobot
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 1
Posty: 685
Rejestracja: 21 mar 2005, 18:51
Lokalizacja: Trójmiasto

#2

Post napisał: GumiRobot » 31 sie 2015, 11:38

motion.current-vel - (float, out) The current tool velocity in user units per second.

motion.requested-vel - (float, out) The current requested velocity in user units per second from the F=n setting in the G Code file. No feed overrides or any other adjustments are applied to this pin.

Dopisz własny/wykorzystaj istniejący komponent HAL porównujący obie wartości wystaw sygnał dla THC.


Autor tematu
szary11
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 2
Posty: 377
Rejestracja: 16 lut 2011, 22:44
Lokalizacja: Tarnogród

#3

Post napisał: szary11 » 31 sie 2015, 13:36

Podstawiam w halu, ale cały czas się wykrzacza, na pewno dopisuje w złym miejscu i nie poprawnie
Nie znam angielskiego, a i cierpliwość już nie ta co dawniej :smile:
Chętnie zlece komuś ogarnięcie tego , bo nie chce się przesiadać na MACHA.


mcsimek
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 1
Posty: 1
Rejestracja: 12 wrz 2015, 21:36
Lokalizacja: Kraków

#4

Post napisał: mcsimek » 12 wrz 2015, 22:01

Hej,

GumiRobot, utworzyliśmy nowy component:

Kod: Zaznacz cały

component disable_component;
pin out bit poziom;
pin in float aktualny;
pin in float zadany;
function _;
license "GPL"; // indicates GPL v2 or later
;;
#include <rtapi_math.h>
FUNCTION(_) { 
	bool temp_ = (aktualny - zadany); 
	poziom = temp_;
}
Skompilowany został przez:
# halcompile --install disable_component.comp.

Konfiguracja w hal'u:

Kod: Zaznacz cały

loadrt disable_component count=1
addf disable_component.0 servo-thread
net my-sigin1 disable_component.0.aktualny <= motion.current-vel
net my-sigin1 disable_component.0.zadany <= motion.requested-vel
net both-on parport.0.pin-16-out  <=disable_component.0.poziom 
Jednak jest wciąz problem z załadowaniem tej funkcji do konfiguracji:
HAL: ERROR: function 'disable_component.0' not found
Jak powinno wyglądać poprawne załadowanie i użycie takiego componentu?

Pozdrawiam,
Paweł

________________________________
Jednak lepiej było skorzystać z gotowego komponentu, a nie tworzyć własny. :smile:
Konfiguracja HAL z sygnałem wyjściowym, gdy prędkość aktualna różni się od zadanej:

Kod: Zaznacz cały

loadrt near
addf near.0 servo-thread
net vel-cmd <= motion.current-vel
net vel-cmd => near.0.in1
net vel-req <= motion.requested-vel
net vel-req => near.0.in2
setp near.0.scale 0.01
net out-signal <= near.0.out
setp parport.0.pin-16-out-invert 1
net out-signal => parport.0.pin-16-out
Po problemie.

Dzięki GumiRobot za parametry!

Pozdrawiam!

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „LinuxCNC (dawniej EMC2)”