Страница 1 из 1
LHB04-B4
Добавлено: 16 фев 2020, 16:28
nkp
Пульт usb проводной ,
со стандартным драйвером XHC-HB04 ( у меня) не заработал.
Другого я не нашел.
создал тему с двумя целями :
п.1 может кто поделится драйвером или тыкнет носом - "вот же он на видном месте - куда ты смотрел ..."
п.2 поделиться чуть подправленным XHC-HB04
--------------
не все (пока) конечно работает,но jog , индикация координат,кнопки работают,
то есть уже можно юзать как то
зы
если (!п.1 ) {продолжение следует
![Wink ;)](./images/smilies/icon_e_wink.gif)
}
Re: LHB04-B4
Добавлено: 16 фев 2020, 19:22
Serg
После быстрого взгляда на код пока могу сказать только одно: я не верю, что программист, использующий C++ для компиляции программы на обычном С может написать хороший код...
![Smile :)](./images/smilies/icon_e_smile.gif)
Re: LHB04-B4
Добавлено: 18 фев 2020, 23:10
nkp
*p++ = 0xFE;
*p++ = 0xFD;
*p++ = 0x0C;
*p++ = 0x03;
выделенное значение при изменении меняет вывод (форму вывода ) на дисплейчик:
Код: Выделить всё
*p++ = 0x00; CON:60%
*p++ = 0x01; STP:0.01
*p++ = 0x02; MPG:60%
*p++ = 0x03; 60%
Re: LHB04-B4
Добавлено: 22 мар 2020, 15:18
nkp
компонент на питоне (выложен для XHC-WHB04-4
https://forum.linuxcnc.org/24-hal-compo ... ent#143727)
проверил для проводного LHB04-B4 - всё работает (все кнопки,два переключателя,mpg)
экран пока "молчит"
![Wink ;)](./images/smilies/icon_e_wink.gif)
(у автора это вызвало затруднения)
компонент распаковать (как вариант) в папку конфига
для теста в Hal добавить :
Код: Выделить всё
loadusr -W ./lhb04b
net axis0jogenable axis.0.jog-enable lhb04b.sel_x
net axis1jogenable axis.1.jog-enable lhb04b.sel_y
net axis2jogenable axis.2.jog-enable lhb04b.sel_z
net joginc lhb04b.inc
net joginc axis.0.jog-scale
net joginc axis.1.jog-scale
net joginc axis.2.jog-scale
net jogcnts lhb04b.mpg_cnt
net jogcnts axis.0.jog-counts
net jogcnts axis.1.jog-counts
net jogcnts axis.2.jog-counts
setp axis.0.jog-vel-mode 1
setp axis.1.jog-vel-mode 1
setp axis.2.jog-vel-mode 1
================
пульт можно включать-выключать"на ходу"
-----------
для работы требуется пакет
https://pypi.org/project/pyusb/#files
Re: LHB04-B4
Добавлено: 01 апр 2020, 18:18
nkp
mpg пульта для прокрутки MDI истории в Axis
когда то писал компонент mpg_go для других целей,подправил для этого:
Код: Выделить всё
component mpg_go ;
pin in s32 in;
pin out s32 out;
pin out bit tick; //true if we have a change in couns
pin io bit off;
variable double old;
function _;
license "GPL";
;;
#include "rtapi_math.h"
FUNCTION(_) {
double tmp = in;
if(!out) out = 1;
if(tmp != old) tick = 1;
if(off) {tick = 0; off = 0;}
if(tmp == old) return;
if(tmp < old) out = -1;
else out = 1;
old = tmp;
}
в файл axisrc , а лучше в файл ,который выполняет функции axisrc (USER_COMMAND_FILE ):
Код: Выделить всё
if hal_present == 1 :
ucomp = hal.component("axisui.user")
ucomp.newpin('updown', hal.HAL_S32, hal.HAL_IN)
ucomp.newpin('tick', hal.HAL_BIT, hal.HAL_IN)
ucomp.newpin('off', hal.HAL_BIT, hal.HAL_IO)
ucomp.newpin('go', hal.HAL_BIT, hal.HAL_IN)
ucomp.ready()
def user_live_update():
if ucomp['tick']:
if ucomp['updown'] > 0:
commands.mdi_up_cmd()
ucomp['off'] = 1
if ucomp['updown'] < 0:
commands.mdi_down_cmd()
ucomp['off'] = 1
if ucomp['go']:
commands.send_mdi()
в postgui.hal :
Код: Выделить всё
loadrt mpg_go
addf mpg-go.0 servo-thread
net demuxS32:out0 mpg-go.0.in
net index mpg-go.0.out axisui.user.updown
net tick mpg-go.0.tick axisui.user.tick
net off mpg-go.0.off axisui.user.off
# button mdi Go
net button:y0 axisui.user.go
по сигналам:
demuxS32:out0 - это тики нашего MPG
button:y0 - кнопка пульта для выполнения команды MDI
---------------------
https://www.youtube.com/watch?v=X9R3icekrTY
Re: LHB04-B4
Добавлено: 04 апр 2020, 15:38
nkp
feed_override тем же MPG
как дополнение - вывод на экран значения (как бы в увеличенном виде) только на время самого действия...
после "отпускания" - пауза (настраивается в hal)
думаю,что подобным образом при надобности можно "оперативно" выводить
нужную информацию по сигналу пина и на определенное время
https://www.youtube.com/watch?v=APuWTkcT-XE