Страница 34 из 56
Re: Агрегатный станок
Добавлено: 28 янв 2013, 15:50
ЗАВ
nkp писал(а):только значение 0.1 потом подправишь..
это я так понимаю допуск на позиционирование?
Re: Агрегатный станок
Добавлено: 28 янв 2013, 16:04
nkp
Ник,
ты что то такое имел в виду:
Код: Выделить всё
O<rotate> sub
M66 P0 L1
O<m66> if [#5399 LE 0.1]
m65p05
g91
g0a45
m64p05
g4p10
O<m66> else
M66 P0 L1
O<m66> endif
O<rotate> endsub
Re: Агрегатный станок
Добавлено: 28 янв 2013, 16:06
nkp
ЗАВ писал(а):это я так понимаю допуск на позиционирование?
точно
Re: Агрегатный станок
Добавлено: 28 янв 2013, 16:10
ЗАВ
nkp писал(а):g4p10
я так понимаю это10сек задержка на позиционирование??? это очень много !!!
Re: Агрегатный станок
Добавлено: 28 янв 2013, 16:11
nkp
ЗАВ писал(а):это очень много !!!
я даже не смотрел
это вторично...)))
============
upd:
не правильный алгоритм у меня выше
подправим...
Re: Агрегатный станок
Добавлено: 28 янв 2013, 16:16
ЗАВ
я правильно понял мне нужно сделать две вещи
1-в хал копирую-
loadrt near names=near.x
addf near.x servo-thread
net fb axis.3.motor-pos-fb => near.x.in1
net cmd axis.3.motor-pos-cmd => near.x.in2
setp near.x.difference 0.1
net x-in-pos near.x.out => motion.digital-in-00
2-в управлюющую программу для перемещения оси а на 45 градусов копирую это
O<rotate> sub
M66 P0 L1
O<m66> if [#5399 EQ 1]
m65p05
g91
g0a45
m64p05
g4p10
O<m66> else
M66 P0 L1
O<m66> endif
O<rotate> endsub
и дальше следующая строка программы...
Re: Агрегатный станок
Добавлено: 28 янв 2013, 16:37
Nick
nkp писал(а):ты что то такое имел в виду:
Приблизительно... только не понимаю зачем у тебя там еще какие-то перемещения?
Примерно так:
Код: Выделить всё
O<rotate> sub
G01 A[#1]
M66 P0 L1 Q10 ; ждем максисум 10 секунд
O<m66> if [#5399 LT 0] ; если -1 - то ошибка!
m64p05 ; это заводим на Estop
O<m66> endif
O<rotate> endsub
; вызываем так:
O<rotate> [10] ; это повернуть A в положение 10 градусов
; делаем что-то еще
O<rotate> [70] ; это повернуть A в положение 70 градусов
Re: Агрегатный станок
Добавлено: 28 янв 2013, 16:43
nkp
Nick писал(а):только не понимаю зачем у тебя там еще какие-то перемещения?
просто насколько я помню этот станок всгда вращается на одинаковый угол
так что жестко можно забить А45
если нет - автор поправит меня
Re: Агрегатный станок
Добавлено: 28 янв 2013, 16:45
ЗАВ
совершенно верно. пошел пробовать
Re: Агрегатный станок
Добавлено: 28 янв 2013, 16:53
nkp
что то сомнения берут...
motion.digital-in-NN, т.е. M66 P0 L1
м66 - это у нас аналоговый пин (motion.analog-in-00)
Re: Агрегатный станок
Добавлено: 28 янв 2013, 17:10
ЗАВ
линукс не грузится -зависает
Re: Агрегатный станок
Добавлено: 28 янв 2013, 17:30
nkp
в хал можно поправить:
loadrt near
addf near.0 servo-thread
net a-pos-fb => near.0.in1
net a-pos-cmd => near.0.in2
setp near.0.difference 0.1
но наверно на sum2 надо все делать
что Ник скажет?
Re: Агрегатный станок
Добавлено: 28 янв 2013, 17:57
ЗАВ
и так не грузиться . а без,(по старому все нормально)
Re: Агрегатный станок
Добавлено: 28 янв 2013, 18:17
nkp
в ладдере тоже прблематично - он с float не дружит
к новым пинам прицепить:
#!/usr/bin/python
import hal
h = hal.component("zav")
h.newpin("cmd", hal.HAL_FLOAT, hal.HAL_IN)
h.newpin("fb", hal.HAL_FLOAT, hal.HAL_IN)
h.newpin("out", hal.HAL_FLOAT, hal.HAL_OUT)
h.ready()
try:
while 1:
h['out'] = h["cmd"]-h["fb"]
except KeyboardInterrupt:
raise SystemExit
потом модуль результата на м66
будет такое работать???
Re: Агрегатный станок
Добавлено: 28 янв 2013, 18:18
ЗАВ
пробовать скопировать в хал ?
Re: Агрегатный станок
Добавлено: 28 янв 2013, 19:35
nkp
попробуем...
это в хал :
loadusr -Wn zav python zav.py
net a-pos-cmd zav.cmd
net a-pos-fb zav.fb
loadrt abs
addf abs.0 servo-thread
net abs zav.out abs.0.in
net abs_out abs.0.out motion.analog-in-00
а этот файл распаковать и положить в папку с конфигом :
Re: Агрегатный станок
Добавлено: 29 янв 2013, 06:04
ЗАВ
а этот файл распаковать и положить в папку с конфигом :
zav.py.tar
не пойму это не запакованный файл , это папка "машине" с тем же халом,смысл в него что то вставлять , а потом перезаписывать ? или я что то не понял- уточни.
есть еще проблема- при загрузке через терминал линукс грузится на русском языке. я создал ярлык для загрузки как ты говорил, с ярлыка линукс грузится на английском - что не так, как сделать загрузку руссифицированного линукса с ярлыка?
Re: Агрегатный станок
Добавлено: 29 янв 2013, 08:58
nkp
пойдем другим путем...)))
вот это дописываем в хал: (естественно удалив всю вчерашнюю писанину)
loadrt sum2
loadrt abs
addf abs.0 servo-thread
addf sum2.0 servo-thread
net a-pos-cmd sum2.0.in0
net a-pos-fb sum2.0.in1
net abs_in sum2.0.out abs.0.in
net abs_out abs.0.out motion.analog-in-00
пробуй загрузится
а остальное уже в ж-коде поправим
------------
по поводу ярлыка:
распакуй файл на рабочий стол и с него попробуй запусти емс (кликни два раза на нем)
Re: Агрегатный станок
Добавлено: 29 янв 2013, 09:14
ЗАВ
nkp писал(а):по поводу ярлыка:распакуй файл на рабочий стол и с него попробуй запусти емс (кликни два раза на нем)
если ты о трех строчках, которые я для запуска линукс в терминале вставляю, то они у меня на рабочем столе в файле "блокнот" как их оттуда вытащить?
Re: Агрегатный станок
Добавлено: 29 янв 2013, 09:21
nkp
нет - там прикрепленный архив с файлом "Start" - я про него говорю