Страница 95 из 245

Re: LinuxCNC + Orange Pi

Добавлено: 20 окт 2018, 08:53
Kovus2
И все-таки, давайте разберемся, чему верить?
1) Загружаем нашу балалайку с Иксами.
2) Запускаем Latency test и видим наши законные 60000 - 80000
3) Переходим Ctrl-Alt-F1 на первый терминал. Вводим логин/пароль. Запускаем наш cyclictest
4) Возвращаемся в Иксы Ctrl-Alt-F7 и начинаем злобствовать. Например, грузим LibreOffice
5) В cyclictest у меня значения не поднимаются выше 150 на ядро. Latency test подпрыгивает до 82160.

Кто из них что считает? :thinking:

Может приоритет Иксов низкий и по этому Latency test тормозит вместе с Иксами, и халяльная прога, не отягощенная харамными Иксами, лупит со всей дури?

Re: LinuxCNC + Orange Pi

Добавлено: 20 окт 2018, 10:33
Kovus2
Размышляю дальше.
Если моя версия правильная, и Иксы, по большому счету, не очень мешают нашей консольной проге, то их можно игнорировать для начала.

Keystick не всем понравится, зело страшен, зараза. Но его можно, как мне кажется, усовершенствовать. К примеру, можно посмотреть на утилиту dialog:
http://docs.puppyrus.org/programming/dialog

Там, относительно без проблем, можно налабать более-менее сносный интерфейс. С нормальным выбором файлов, можно мышкой работать, если к консоли ее подрубить.

А если еще докрутить, что бы наша прога фонила по UDP о своем состоянии и сообщала, что она щаз вытворяет, то на клиенте можно и отрисовывать выполнение и хз что еще. Я с таким сталкивался на ТВ-вещалках. Там ядро делает, то что надо делать, но фонит об этом клиентам. А те уже творят, что хотят, в меру своих возможностей и мастерства. Получается простая, надежная и устойчивая система.

Re: LinuxCNC + Orange Pi

Добавлено: 20 окт 2018, 12:17
Maxekb77
Kovus2,
Конечным устройством все равно надо использовать осцилограф или еще чего для точного подсчета, что в итоге наделалось.
Пока в консоли не будет приемлимого результата по скорости работы, дальше особо не вижу смысла какие то телодвижения делать.
Так что продолжаем жадать Михаила с его степгеном через мали или еще чего нить, может там это как то удасться ускорить.

Re: LinuxCNC + Orange Pi

Добавлено: 20 окт 2018, 12:24
going
Kovus2 писал(а):какого хрена консольная утилита и latency test дают разные показания, при том, что запускаются одновременно.
:thinking: Авангард однако.
Kovus2 писал(а):Может приоритет Иксов низкий и по этому Latency test тормозит вместе с Иксами, и халяльная прога, не отягощенная харамными Иксами, лупит со всей дури?
Может для начала понять, что и как надо измерять?
Kovus2 писал(а):И все-таки, давайте разберемся, чему верить?
1) Загружаем нашу балалайку с Иксами.
2) Запускаем Latency test и видим наши законные 60000 - 80000
3) Переходим Ctrl-Alt-F1 на первый терминал. Вводим логин/пароль. Запускаем наш cyclictest
4) Возвращаемся в Иксы Ctrl-Alt-F7 и начинаем злобствовать. Например, грузим LibreOffice
5) В cyclictest у меня значения не поднимаются выше 150 на ядро. Latency test подпрыгивает до 82160.

Кто из них что считает?
В этом случае правильный вопрос звучит так:
" А что мы хотим померять? "

Известно, что любое измерение вносит изменение в свойства измеряемого объекта. Это фундаментальный закон.
Вы пытаитесь мерять одновременно днин и тот же объект двумя разными инструментами,
а это значит, что оба эти инструмента меняют свойства обьекта и влияют на показания обоих измерительных инструментов.

Это в теории, а по сути:
1) хотим измерить латенси без иксов -->> Ctrl-Alt-F1, пароль пользователя, sudo service --help
Останавливаем xserver, lightdm
Запускаем cyclictest
2) хотим измерить латенси с иксами -->> запускаем что то одно, либо cyclictest, либо latency-test
При этом ни какое РТ приложение не должно работать.

Вы не обратили внимание на тот факт, что невозможно запустить latency-test, когда работает linuxcnc?

Re: LinuxCNC + Orange Pi

Добавлено: 20 окт 2018, 12:38
Serg
going писал(а):Вы не обратили внимание на тот факт, что невозможно запустить latency-test, когда работает linuxcnc?
Можно, только не отдельной программкой, а как я показывал. :)
Одновременно нельзя запустить ПРОГРАММЫ latency-test и linuxcnc ровно по той-же причине, по которой нельзя запустить одновременно две linuxcnc.
Но таки да, нужно сначала понять что именно измеряет latency-test... :)

Re: LinuxCNC + Orange Pi

Добавлено: 20 окт 2018, 12:46
going
UAVpilot писал(а):Можно, только не отдельной программкой, а как я показывал.
Да, конечно, возможно всё. Я лиш о том, что это будет вносить дополнительную погрешность в измерения.

Re: LinuxCNC + Orange Pi

Добавлено: 20 окт 2018, 17:50
Kovus2
Подключил балалайку с Кейстиком к станку. Худо-бедно оно все бегает. Будете смеяться, но я не нашел как в ручном режиме передвигать каретки. Вроде и continous стоит, но перемещается только на 0.4 мм и все. В режиме MDI командами G0 ездит куда угодно. Программу загружаешь - тоже все ОК. А на кнопках я завис, к своему позору :D

Значит так, для начала я не выгружал Иксы. Перешел в терминал 1 (Ctrl-Alt_F1) и загрузил там cyclestest. В терминале 3 запустил Кейстик. Всунул туда прогу весом под 50 МБ и запустил. При этом cyclestest показывал значения менее 100 на ядро. Записал видео, позже дам ссылку.

Попробовал BASE_PERIOD занизить, что бы поднять скорость. Но ниже 30000 LCNC не дает установить. Просто перестает грузиться. Либо я неправильно понял назначение этой переменной. Я исхожу из логики, что если cyclestest дает такие небольшие значения, то, типа можно и частоту генерации сигналов повысить. Но как-то не сложилось. Если кто знает, подскажите, пжалста.

Вот видео:
https://youtu.be/o4mNuG9S3dk
Заснял сам экран Кейстика на 3-м терминале, потом переключился на 1-й с тестом скорости.

К сожалению, захрустел подшипник оси Х. И из-за этого сильно поднимать скорость не удалось. Надо туда поставить нормальные BF BK 12. А пока дешман там стоит, вот и захрустело.

PS пересмотрел видео и обнаружил варнинг на скрине с тестом скорости:
WARN: open /dev/cpu_dma_latency: Permission denied

Запустил с правами суперюзера. Варнинг ушел, цифры соответсвуют как при запуске от обычного юзера.

Re: LinuxCNC + Orange Pi

Добавлено: 20 окт 2018, 21:08
Kovus2
Maxekb77 писал(а):Kovus2,
Конечным устройством все равно надо использовать осцилограф или еще чего для точного подсчета, что в итоге наделалось.
Пока в консоли не будет приемлимого результата по скорости работы, дальше особо не вижу смысла какие то телодвижения делать.
Так что продолжаем жадать Михаила с его степгеном через мали или еще чего нить, может там это как то удасться ускорить.
Погонял cyclestest с абсолютно разными нагрузками(Axis, Firefox, LibreOffice). Как мне показалось, он измеряет что-то, не знаю что. И циферки у него красивые. :D
По этому согласен, что круче осцилографа внешнего ничего нету.

Планирую взять у корефана 8-ми канальный, который ему же и подарил на ДР :D , но прежде нужно разобраться как уменьшать BASE_PERIOD. Пока он ниже 30000 не опускается.

А.... блин, и как кнопками пользоваться в Кейстике, что бы шпиндель по осям гонять? :oops:

Re: LinuxCNC + Orange Pi

Добавлено: 20 окт 2018, 21:22
MX_Master
Если базовый период нельзя сделать меньше 30 мкс, значит LCNC не успевает за 30 мкс выполнить код тех функций, которые прилеплены в HAL к базовому периоду.

Re: LinuxCNC + Orange Pi

Добавлено: 20 окт 2018, 21:29
Kovus2
MX_Master писал(а):Если базовый период нельзя сделать меньше 30 мкс, значит LCNC не успевает за 30 мкс выполнить код тех функций, которые прилеплены в HAL к базовому периоду.
Он не успевает это и Axis и Keystick?
Просто это морды настолько разные по своей нагрузке на процессор....

Re: LinuxCNC + Orange Pi

Добавлено: 20 окт 2018, 22:34
MX_Master
Если ваще исключить морды, то базовому периоду будет мешать только быстродействие функций в базовом периоде, ядро linux и задержки в работе железа.

Например, ядро linux время от времени делает "домашнюю уборку" на каждом ядре. Скидывает, к примеру, дампы памяти на флэху и это занимает примерно 30 мкс. Я лично это наблюдал на осциллограмме. Это значит, что время от времени базовый период LCNC становится длиннее (максимум на 30 мкс). Т.к. "домашняя уборка" на ядрах проца выполняется реже базового периода LCNC, это "железное" latency в 30 мкс можно разбросать по чуть чуть между другими циклами базового периода. Вплоть до следующей "домашней уборки" на ядрах.

Если выставить базовый период меньше 30 мкс, то процессор будет всё чаще не успевать отрабатывать все функции базового периода вкупе с компенсацией "железного" latency. Это означает, что RT у нас соблюдаться не будет. А LCNC в таких условиях не работает.

Re: LinuxCNC + Orange Pi

Добавлено: 20 окт 2018, 23:10
Maxekb77
MX_Master, ту бишь latency меньше 30000-40000 в принципе не возможен на данной плате без глобального вмешательства ?

Re: LinuxCNC + Orange Pi

Добавлено: 20 окт 2018, 23:33
MX_Master
В нашей бюджетной платке меньше и не нужно (: Можно, канеш, немного похимичить с интервалами "домашней уборки" на ядрах и множеством прочих факторов. Но в конечном итоге базовый период всё равно суммарно сложится в стабильные 50 мкс. С учётом внешних генераторов и счётчиков, этого более чем достаточно.

Re: LinuxCNC + Orange Pi

Добавлено: 20 окт 2018, 23:48
Kovus2
кхм... я понимаю, что сборщик мусора чистит оперативную память, но на флеху дампы кидать.... :thinking: Он же так убъет ее через неделю работы. Деструктивные действия какие-то. Эти дампы вырубить можно?

Re: LinuxCNC + Orange Pi

Добавлено: 21 окт 2018, 00:03
MX_Master
Можно уменьшить интервал и немного снизить кол-во действий во время "домашней уборки" ядер. Все остальные вопросы - к авторам ядра linux (: Кстати, SD флэхи лучше всего убиваются не на таких узконаправленных платках, а на телефонах с андроидом ;)
P.S.: работа над степгенами снова в разгаре

Re: LinuxCNC + Orange Pi

Добавлено: 21 окт 2018, 01:11
Serg
going писал(а):Да, конечно, возможно всё. Я лиш о том, что это будет вносить дополнительную погрешность в измерения.
В эти измерения не будет. :)

Re: LinuxCNC + Orange Pi

Добавлено: 21 окт 2018, 11:56
going
Kovus2 писал(а):но на флеху дампы кидать.... :thinking: Он же так убъет ее через неделю работы. Деструктивные действия какие-то. Эти дампы вырубить можно?
Флеху не убьёт. См. параметры монтирования "/" и "/tmp" в "/etc/fstab" как это делает armbian.
Перемещение root "/" раздела на SSD и возвращение параметров монтирования по умолчанию, даёт уменьшение латенси на 10-15 микросекунд.
Т.е. дамп памяти на раздел будет происходить чаще и соответственно меньше по размеру и короче по времени.

Re: LinuxCNC + Orange Pi

Добавлено: 23 окт 2018, 21:47
svb
Наступили зачетные недели, так что я пока выпадаю из процесса, недели на 2-3 :(

Re: LinuxCNC + Orange Pi

Добавлено: 24 окт 2018, 21:03
going
Вопрос. А linuxcnc с библиотеками lges соберётся?

Re: LinuxCNC + Orange Pi

Добавлено: 25 окт 2018, 02:39
antoxa-kylibin
MX_Master писал(а):В нашей бюджетной платке меньше и не нужно (: Можно, канеш, немного похимичить с интервалами "домашней уборки" на ядрах и множеством прочих факторов. Но в конечном итоге базовый период всё равно суммарно сложится в стабильные 50 мкс. С учётом внешних генераторов и счётчиков, этого более чем достаточно.
А как же тогда генерировать 100кгц на шд и читать 100кгц с энкодеров? Не совсем понял как lcnc при такой низкой производительности будет работать с "внешними" генераторами шагов в виде сопроцессора? Получается что то аналогично плате Mesa? Которая по сути и является внешним генератором и читателем импульсов? Как в таких случаях linuxcnc дружит с внешними "приблудами" и нагрузка с цп переносится на приблуды? Это решается специальным драйвером к этой приблуде? Под Mesa платы кажись драйвера в системе есть и даже конфигуратор есть (я про х86 системы). С этой балалайкой какой план действий?