Страница 7 из 12
Re: Модернизация 6720вф2
Добавлено: 04 апр 2012, 18:46
Milk
Nick писал(а):И еще, самое главное посмотри в pid output scale и попробуй у него знак поменять, может у тебя pid в обратную сторону работает..
Да, так и было...
Поставил scale 2000 (2500*4/5) и увидел ошибку. Прописал в итоге -2000 и всё пошло. Удалось добиться piderror 0,006 на синусоиде. Это конечно фигня - всё равно перенрастраивать потом, но руку набить надо. Кстати такая вещь - Когда запускаешь тест, синусоида задается, но при нажатии enaable включается мотор и стремиться занять нужное положение, как правило с рывком... Ладно у меня один мотор пока, а когда всё в сборе можно и муфты порвать.
Как бы синхронизировать текущее положение мотора с кривой заданияя при старте теста?
Или просто уменьшать амплитуду до минимума, а период увеличивать до максимума при старте.
Re: Модернизация 6720вф2
Добавлено: 04 апр 2012, 19:49
Nick
А какое ускорение стоит на оси?
Re: Модернизация 6720вф2
Добавлено: 05 апр 2012, 13:29
Milk
А где-то в pid tuning выставляется ускорение?
Re: Модернизация 6720вф2
Добавлено: 05 апр 2012, 15:18
Nick
По идее оно выставляется в параметрах оси в ini. Но не уверен, что оно будет действовать на pid, возможно оно работает только на motion, а пид уже сам по себе.
Еще по идее если поставить маленький P то должен не так быстро разгоняться.....
Скинь свой hal, который для тюнинга.
Re: Модернизация 6720вф2
Добавлено: 12 апр 2012, 15:17
Milk
Тут новая беда...Пришла плата с релюхами такая
http://www.ebay.com/itm/330582610619?ss ... 1439.l2649 и управляется она по низкому уровню, т.е. соотв. пин замыкаешь на землю и релюха включается. Думал прицепить к 7i42, но чего-то не получается. На пинах постоянно 5В висит. По умолчанию in=true, in_not=false, out=false. Замыкаем пин на землю и имеем in=false, in_not=true, out=false. Подаем на пин команду out=true и ничего не меняется, на пине 5В висит и всё. Может я чего-то не понимаю, но как использовать out=true в случае, если в системе ничего не меняется?
Re: Модернизация 6720вф2
Добавлено: 12 апр 2012, 15:23
Nick
Может пин в режим output перевести?
Re: Модернизация 6720вф2
Добавлено: 12 апр 2012, 15:27
nkp
это не поможет
# setp parport.0.pin-01-out-invert 1 #----------------Если вы хотите, чтобы был активный низкий уровень для этого вывода, инвертировать так
или
http://www.linuxcnc.org/docview/2.5/htm ... not.9.html
Re: Модернизация 6720вф2
Добавлено: 12 апр 2012, 15:32
Nick
у него не парпорт, а меса и насколько я понимаю пин GPIO.
Кстати, действительно, какой адрес пина?
Re: Модернизация 6720вф2
Добавлено: 12 апр 2012, 15:49
Milk
hm2_5i20.0.gpio.48
Вроде так. У меня впечатление, что у 7i37 по этой же причине выходы не работают...
А как посмотреть какие пины уже инвертированы, а какие нет и вообще как и что?
Пин переводится в режим output? Как?
Re: Модернизация 6720вф2
Добавлено: 12 апр 2012, 16:04
nkp
Re: Модернизация 6720вф2
Добавлено: 12 апр 2012, 16:26
Milk
Это я конечно видел, но вот вопрос - например у меня сейчас конфигураций, созданых pncconf, около 5 штук разных(для тестирования частями) какая из них будет по умолчанию? Или создать путевую конфигурацию одну и испытывать всё кучей в EMC? А если я тестирую отдельной программкой, как задать инвертирование?
Видимо я что-то не понимаю в корне, прошу сильно не пинать...
Re: Модернизация 6720вф2
Добавлено: 12 апр 2012, 16:33
Nick
Milk писал(а):Пин переводится в режим output? Как?
setp hm2_5i20.0.gpio.48.is_output 1
есть еще режим opendrain, открытый коллектор кажется, но я в электронике не гу-гу и не знаю что это такое.
http://linuxcnc.org/docview/devel/html/ ... html#_gpio
Milk писал(а):Это я конечно видел, но вот вопрос - например у меня сейчас конфигураций, созданых pncconf, около 5 штук разных(для тестирования частями) какая из них будет по умолчанию? Или создать путевую конфигурацию одну и испытывать всё кучей в EMC? А если я тестирую отдельной программкой, как задать инвертирование?
Ничего не понял

... Какая программка? Какое по умолчанию?

Re: Модернизация 6720вф2
Добавлено: 12 апр 2012, 16:50
Milk
Nick писал(а):Ничего не понял

... Какая программка? Какое по умолчанию?

Ну есть конфиги для EMC разные и их несколько, у всех инвертированы разные пины. Беру програмку из 57 поста и проверяю ей пины, предварительно дописав её под свои пины. Какие пины у меня будут инвертированы, а какие нет?
Re: Модернизация 6720вф2
Добавлено: 12 апр 2012, 16:56
nkp
Milk писал(а): предварительно дописав
Ну так туда же и можно дописать:
setp hm2_5i20.0.gpio.48.is_output 1
Re: Модернизация 6720вф2
Добавлено: 12 апр 2012, 17:12
Nick
Если в этой программке пины только привязываются через net, то инфертированными будут только те, который инвертированны в конфигурации. Скинь свой конфиг и "программку"

.
Вообще, "программка" это тот же emc2 только с дополнительной конфигурацией.
Re: Модернизация 6720вф2
Добавлено: 13 апр 2012, 10:34
Milk
Ну вот, получилось!!! Менял настройки в pncconf и проверял в EMC.
Получилось так
# --- COOLANT-FLOOD ---
setp hm2_5i20.0.gpio.048.is_output true
setp hm2_5i20.0.gpio.048.invert_output true
net coolant-flood => hm2_5i20.0.gpio.048.out
И всё пошло - на 7i42 по команде пин с 5В уходит на gnd.
При таких же настройках заработали выходы на 7i37.
Однако в "программке" не заработали
Вот port.hal "программки"
Код: Выделить всё
loadusr -Wn iotest pyvcp -c iotest port.xml
loadrt threads name1=tt period1=1000000
#loadrt hal_parport cfg="0x0378"
#addf parport.0.read tt
#addf parport.0.write tt
#loadrt probe_parport
loadrt hostmot2
loadrt hm2_pci config="firmware=hm2/5i20/SVST8_4.BIT num_encoders=3 num_pwmgens=3 num_stepgens=0"
setp hm2_5i20.0.pwmgen.pwm_frequency 100000
setp hm2_5i20.0.pwmgen.pdm_frequency 100000
setp hm2_5i20.0.watchdog.timeout_ns 10000000
loadrt near
addf hm2_5i20.0.write tt
addf hm2_5i20.0.read tt
#addf hm2_5i20.0.pet_watchdog
net 24 hm2_5i20.0.gpio.024.in_not iotest.in01
net 25 hm2_5i20.0.gpio.025.in_not iotest.in02
net 26 hm2_5i20.0.gpio.026.in_not iotest.in03
net 27 hm2_5i20.0.gpio.027.in_not iotest.in04
net 28 hm2_5i20.0.gpio.028.in_not iotest.in05
net 29 hm2_5i20.0.gpio.029.in_not iotest.in06
net 30 hm2_5i20.0.gpio.030.in_not iotest.in07
net 31 hm2_5i20.0.gpio.031.in_not iotest.in08
net 32 hm2_5i20.0.gpio.032.in_not iotest.in09
net 33 hm2_5i20.0.gpio.033.in_not iotest.in10
net 34 hm2_5i20.0.gpio.034.in_not iotest.in11
net 35 hm2_5i20.0.gpio.035.in_not iotest.in12
net 36 hm2_5i20.0.gpio.036.in_not iotest.in13
net 37 hm2_5i20.0.gpio.037.in_not iotest.in14
net 38 hm2_5i20.0.gpio.038.in_not iotest.in15
net 39 hm2_5i20.0.gpio.039.in_not iotest.in16
setp hm2_5i20.0.gpio.040.is_output true
setp hm2_5i20.0.gpio.040.invert_output true
net 40 hm2_5i20.0.gpio.040.out iotest.in00
setp hm2_5i20.0.gpio.041.is_output true
setp hm2_5i20.0.gpio.041.invert_output true
net 41 hm2_5i20.0.gpio.041.out iotest.out01
setp hm2_5i20.0.gpio.042.is_output true
setp hm2_5i20.0.gpio.042.invert_output true
net 42 hm2_5i20.0.gpio.042.out iotest.out02
setp hm2_5i20.0.gpio.043.is_output true
setp hm2_5i20.0.gpio.043.invert_output true
net 43 hm2_5i20.0.gpio.043.out iotest.out03
setp hm2_5i20.0.gpio.044.is_output true
setp hm2_5i20.0.gpio.044.invert_output true
net 44 hm2_5i20.0.gpio.044.out iotest.out04
setp hm2_5i20.0.gpio.045.is_output true
setp hm2_5i20.0.gpio.045.invert_output true
net 45 hm2_5i20.0.gpio.045.out iotest.out05
setp hm2_5i20.0.gpio.046.is_output true
setp hm2_5i20.0.gpio.046.invert_output true
net 46 hm2_5i20.0.gpio.046.out iotest.out06
setp hm2_5i20.0.gpio.047.is_output true
setp hm2_5i20.0.gpio.047.invert_output true
net 47 hm2_5i20.0.gpio.047.out iotest.out07
net 48 hm2_5i20.0.gpio.048.in_not iotest.in48
net 49 hm2_5i20.0.gpio.049.in_not iotest.in49
net 50 hm2_5i20.0.gpio.050.in_not iotest.in50
net 51 hm2_5i20.0.gpio.051.in_not iotest.in51
net 52 hm2_5i20.0.gpio.052.in_not iotest.in52
net 53 hm2_5i20.0.gpio.053.in_not iotest.in53
net 54 hm2_5i20.0.gpio.054.in_not iotest.in54
net 55 hm2_5i20.0.gpio.055.in_not iotest.in55
net 56 hm2_5i20.0.gpio.056.in_not iotest.in56
net 57 hm2_5i20.0.gpio.057.in_not iotest.in57
net 58 hm2_5i20.0.gpio.058.in_not iotest.in58
net 59 hm2_5i20.0.gpio.059.in_not iotest.in59
net 60 hm2_5i20.0.gpio.060.in_not iotest.in60
net 61 hm2_5i20.0.gpio.061.in_not iotest.in61
net 62 hm2_5i20.0.gpio.062.in_not iotest.in62
net 63 hm2_5i20.0.gpio.063.in_not iotest.in63
net 64 hm2_5i20.0.gpio.064.in_not iotest.in64
net 65 hm2_5i20.0.gpio.065.in_not iotest.in65
net 66 hm2_5i20.0.gpio.066.in_not iotest.in66
net 67 hm2_5i20.0.gpio.067.in_not iotest.in67
net 68 hm2_5i20.0.gpio.068.in_not iotest.in68
net 69 hm2_5i20.0.gpio.069.in_not iotest.in69
net 70 hm2_5i20.0.gpio.070.in_not iotest.in70
net 71 hm2_5i20.0.gpio.071.in_not iotest.in71
loadusr halmeter
start
waitusr iotest
Нашел-таки я как список делать

Re: Модернизация 6720вф2
Добавлено: 13 апр 2012, 10:56
Nick
Ты бы мог вот как сделать, запускать linuxcnc со своими настройкам и к нему же запускать "программку", тогда в программке надо только отображение пинов настроить и все, а вот это писать не надо будет:
setp hm2_5i20.0.gpio.040.is_output true
setp hm2_5i20.0.gpio.040.invert_output true
причем можешь прямо в своем основном hal прописать запуск программки

Re: Модернизация 6720вф2
Добавлено: 16 апр 2012, 09:39
Milk
Nick писал(а):запускать linuxcnc со своими настройкам и к нему же запускать "программку", тогда в программке надо только отображение пинов настроить и все
Почему-то не получается так. Программка пишет что хал уже запущен и не запускается.
Re: Модернизация 6720вф2
Добавлено: 16 апр 2012, 12:19
Nick
Вот это убери в конце программки
start
Re: Модернизация 6720вф2
Добавлено: 16 апр 2012, 13:49
Milk
Подключид плату с релюхами. По-началу артачилась и все релюхи включались сразу, независимо от команды. Установка запирающих диодов помогла и всё заработало. Только вот одна задачка - Отводить два пина(и соотв. две кнопки) на вкл/выкл СОЖ очень неохота, да и на подачу масла тоже...По-ходу придется разбираться с classicladder. Полазил по сайту и толком не понял как его запускать-то. Применение ещё для него есть для торможения шпинделя (использовать как реле времени). В общем так-то интересно, но...
При попытке запуска из консоли пишет ошибку памяти либо не загружен rt. Ввожу в консоли rt - пишет компонент отсутствует и дает ссылку на установку из инета.
Может я чего не так делаю?
Комп в шкафу станка и к инету не подключен, можно как-нибудь скачать его на другой комп (win) и на флешке перенести в станочный?