Страница 1 из 241

LinuxCNC + Orange Pi (allwincnc)

Добавлено: 16 сен 2017, 15:32
MX_Master
LinuxCNC + Orange Pi - это бесплатный открытый проект ЧПУ контроллера на базе недорогих одноплатных ПК на чипах Allwinner H3. В качестве софта используется ЧПУ система LinuxCNC.

На данный момент у нас есть GPIO драйвер, который позволяет работать с гребёнкой GPIO на мини ПК прямо из LinuxCNC. Полноценно работают два интерфейса управления - AXIS и лёгкий tklinuxcnc. На данный момент поддерживаются мини ПК с чипами Allwinner H3, для которых есть готовые образы Armbian Buster.

Значение Latency на мини ПК порядка 30-50 мкс. Это позволяет программно выводить шаги на частотах порядка 20 КГц. Для хоббийных задач этого вполне достаточно. Для тех, кто хочет полноценных 200 КГц и выше, есть хорошая новость. Внутри процессоров Allwinner H3, есть встроенный сопроцессор (ARISC). На mainline ядре linux этот сопроцессор никак не используется. Поэтому мы можем использовать его для высокоскоростного ввода/вывода импульсов.

https://allwincnc.github.io
https://github.com/allwincnc

тема на форуме LinuxCNC:
forum.linuxcnc.org/18-computer/39037-linuxcnc-orange-pi

Внимание! Поддержка проекта окончена.

LINUXCNC.png (30340 просмотров) <a class='original' href='./download/file.php?id=180684&sid=e4988f7e7ccf0aaec021cf30b7d32434&mode=view' target=_blank>Загрузить оригинал (131.87 КБ)</a>
orangepipc.png (30340 просмотров) <a class='original' href='./download/file.php?id=180682&sid=e4988f7e7ccf0aaec021cf30b7d32434&mode=view' target=_blank>Загрузить оригинал (198.81 КБ)</a>

Re: ЧПУ контроллер на базе Orange Pi

Добавлено: 16 сен 2017, 16:23
Гагарин
может получится linuxcnc в нее запихнуть?

Re: ЧПУ контроллер на базе Orange Pi

Добавлено: 16 сен 2017, 16:44
tooshka
Я в тестеры запишусь сразу.

Re: ЧПУ контроллер на базе Orange Pi

Добавлено: 19 сен 2017, 18:16
muxa
Гагарин писал(а):может получится linuxcnc в нее запихнуть?
это самый главный вопрос - кто видел, кто знает про linuxcnc ??? в таких вот компах, пускай может быть и не на китайских камнях.

Re: ЧПУ контроллер на базе Orange Pi

Добавлено: 19 сен 2017, 19:30
nevkon
На малине вроде запускали.

Re: ЧПУ контроллер на базе Orange Pi

Добавлено: 20 сен 2017, 10:18
Argentum47
Гагарин писал(а):может получится linuxcnc в нее запихнуть?
если EMC поддерживает ARM, то получится, иначе - дохлый номер. Нет в конечном итоге-то даже без оной получится, но результат вас не устроит. У меня дома VOIP сервер на Orange Pi PC, два года в аптайме, хорошая вещь, интересная, с выводом видео на монитор только грабли - разрешение не хочет мониторное (5:4) ставить никак, ну и RTC интегрированного не хватает очень.

Re: ЧПУ контроллер на базе Orange Pi

Добавлено: 20 сен 2017, 11:17
Serg
Argentum47 писал(а):если EMC поддерживает ARM
Всё давным давно поддерживается.

Re: ЧПУ контроллер на базе Orange Pi

Добавлено: 20 сен 2017, 11:27
Argon-11
Argentum47 писал(а): только грабли - разрешение не хочет мониторное (5:4) ставить никак,
Эти грабли вполне решаемы посредством копания в драйверах и пересборки ОС. Моя статеечка: http://4pda.ru/forum/index.php?showtopi ... ry54011589
Готовый образ Android с мониторными разрешениями 800x600 и 1024x768: https://drive.google.com/open?id=0B1mAF ... U5TV3Q0TmM

Re: ЧПУ контроллер на базе Orange Pi

Добавлено: 20 сен 2017, 12:54
Argentum47
Argon-11 писал(а): Готовый образ Android с мониторными разрешениями 800x600 и 1024x768: https://drive.google.com/open?id=0B1mAF ... U5TV3Q0TmM
У меня Lubuntu...

Re: ЧПУ контроллер на базе Orange Pi

Добавлено: 20 сен 2017, 13:01
Argon-11
Argentum47 писал(а):
Argon-11 писал(а): Готовый образ Android с мониторными разрешениями 800x600 и 1024x768: https://drive.google.com/open?id=0B1mAF ... U5TV3Q0TmM
У меня Lubuntu...
Глянул исходники драйвера - вроде идентичны андроидным. Так что при желании решаемо.

Re: ЧПУ контроллер на базе Orange Pi

Добавлено: 20 сен 2017, 14:47
Evilmax
512mb RAM в которые еще и лезет GPU пожрать, маловато как то для комфортного пользования, не находите? Что с риалтаймом, мучатся через костыли и патчи ядра?

Re: ЧПУ контроллер на базе Orange Pi

Добавлено: 20 сен 2017, 16:21
Argentum47
Evilmax писал(а):512mb RAM в которые еще и лезет GPU пожрать, маловато как то для комфортного пользования, не находите? Что с риалтаймом, мучатся через костыли и патчи ядра?
Есть версии с 1 и 2 ГБ памяти, цена правда от 1.5 до 3 т.р доходит. Они наплодили уже несколько десятков моделей платы с пятью разными чипами.

Re: ЧПУ контроллер на базе Orange Pi

Добавлено: 20 сен 2017, 16:39
MX_Master
Evilmax писал(а):512mb RAM в которые еще и лезет GPU пожрать, маловато как то для комфортного пользования, не находите? Что с риалтаймом, мучатся через костыли и патчи ядра?
Если ОЗУха действительно не выдержит нашей комфортной работы :hehehe: то мы смело возьмём Orange Pi PC (1Гб ОЗУ) вместо Orange Pi One. Как известно, One - это урезанная версия PC. Но начинать мы будем всё равно с меньшего.

При внешнем аппаратном генераторе шагов, RT в системе (ИМХО) нужен не так сильно. А если выдавать шаги с Orange Pi программно, то наличие хотя бы неполного RT как минимум обязательно. И до RT мы обязательно доберёмся..

И раз уж речь зашла про шаги, могу рассказать немного о тестах программной генерации на OPi1. Обычная ОС используется намеренно, чтобы потом наглядно сравнить результаты с частичным RT. Тестовые пины дёргаются в бесконечном и конечном цикле прямой правкой регистров:

Код: Выделить всё

//    for ( unsigned long i = 0xFFFF; i--; )
    for(;;)
    {
        _GPIO[GPIO_A]->data |= 1;       // set PA0
        _GPIO[GPIO_A]->data &= ~(1);    // clear PA0
    }
Под это дело выделено отдельное ядро (isolcpus=3). Тестовая однопоточная программка запускается только на этом ядре (taskset -c 3 gen_prog). Единственное, что мешает генератору это, стессна, сам системный планировщик, который оттягивает на себя 12 мкс времени нашего ядра каждые 10000 мкс. Наглядно это можно увидеть на осциллограмме, любезно предоставленной анализатором за 5$ :hehehe:
2017-09-20_193120.png (51857 просмотров) <a class='original' href='./download/file.php?id=120604&sid=e4988f7e7ccf0aaec021cf30b7d32434&mode=view' target=_blank>Загрузить оригинал (18.41 КБ)</a>
2017-09-20_193048.png (51857 просмотров) <a class='original' href='./download/file.php?id=120605&sid=e4988f7e7ccf0aaec021cf30b7d32434&mode=view' target=_blank>Загрузить оригинал (13.59 КБ)</a>
Как только сполна наиграюсь в обычной ОС, в дело пойдёт, какой никакой, RT..

Re: ЧПУ контроллер на базе Orange Pi

Добавлено: 20 сен 2017, 17:15
Гагарин
MX_Master писал(а):Наглядно это можно увидеть на осциллограмме, любезно предоставленной анализатором за 5$
А что за анализатор?

Re: ЧПУ контроллер на базе Orange Pi

Добавлено: 20 сен 2017, 17:28
MX_Master
Гагарин писал(а):
MX_Master писал(а):Наглядно это можно увидеть на осциллограмме, любезно предоставленной анализатором за 5$
А что за анализатор?
https://www.aliexpress.com/item/New-Arr ... 21495.html
1set-New-Arrival-USB-Logic-Analyze-24M-8CH-MCU-ARM-FPGA-DSP-debug-tool.jpg (51837 просмотров) <a class='original' href='./download/file.php?id=120611&sid=e4988f7e7ccf0aaec021cf30b7d32434&mode=view' target=_blank>Загрузить оригинал (65.51 КБ)</a>

Re: ЧПУ контроллер на базе Orange Pi

Добавлено: 20 сен 2017, 17:35
Serg
MX_Master писал(а):Под это дело выделено отдельное ядро (isolcpus=3). Тестовая однопоточная программка запускается только на этом ядре (taskset -c 3 gen_prog).
А вот когда захочешь сделать что-то более полезное, чем дёргание пином и выделенное ядро встанет в общую очередь к памяти... :)

Рекомендую: https://hackaday.com/2014/04/25/a-tutor ... ime-tasks/

Re: ЧПУ контроллер на базе Orange Pi

Добавлено: 20 сен 2017, 17:52
MX_Master
UAVpilot писал(а):А вот когда захочешь сделать что-то более полезное, чем дёргание пином и выделенное ядро встанет в общую очередь к памяти...
У меня создалось ощущение, что оно уже в очереди. Или как минимум что-то мешает. Быстрее чем 2.6 МГц простое ногодрыганье не идёт. Но в этом вопросе я ещё зелёный прогер (: Кроме устройства самой системы, приходится изучать и кучу аппаратных ARM настроек..

Re: ЧПУ контроллер на базе Orange Pi

Добавлено: 20 сен 2017, 18:02
Argon-11
Гагарин писал(а):А что за анализатор?
Судя по фрагменту осциллограммы это клон анализатора Saleae (по этому же слову и на али ищется множество их), очень удобная и недорогая вещь, есть софт как под Win, так и под Linux.
https://www.saleae.com/

Re: ЧПУ контроллер на базе Orange Pi

Добавлено: 20 сен 2017, 18:05
Argon-11
MX_Master писал(а):Быстрее чем 2.6 МГц простое ногодрыганье не идёт.
Умные дядьки говорят, надо писать драйвер уровня ядра (ядра ОС), чтобы было побыстрее и ничего не мешало.

Re: ЧПУ контроллер на базе Orange Pi

Добавлено: 20 сен 2017, 18:25
MX_Master
Argon-11 писал(а):
MX_Master писал(а):Быстрее чем 2.6 МГц простое ногодрыганье не идёт.
Умные дядьки говорят, надо писать драйвер уровня ядра (ядра ОС), чтобы было побыстрее и ничего не мешало.
Есть такое дело, опробую на неделе..