LinuxCNC + Orange Pi

Контроллеры, драйверы, датчики, управляющие устройства.
Аватара пользователя
MX_Master
Мастер
Сообщения: 6312
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 2701
Настоящее имя: Миша
Откуда: Алма-Ата
Контактная информация:

LinuxCNC + Orange Pi

Сообщение MX_Master »

LinuxCNC + Orange Pi - это бесплатный открытый проект ЧПУ контроллера на базе недорогих одноплатных ПК Orange Pi. В качестве софта используется ЧПУ система LinuxCNC / Machinekit.

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

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

https://orangecnc.gitlab.io
https://gitlab.com/orangecnc

LINUXCNC.png (6694 просмотра) <a class='original' href='./download/file.php?id=180684&sid=acd2812a0039245ae1ae2e5d453779e5&mode=view' target=_blank>Загрузить оригинал (131.87 КБ)</a>
orangepipc.png (6694 просмотра) <a class='original' href='./download/file.php?id=180682&sid=acd2812a0039245ae1ae2e5d453779e5&mode=view' target=_blank>Загрузить оригинал (198.81 КБ)</a>
Последний раз редактировалось MX_Master 06 окт 2020, 06:31, всего редактировалось 37 раз.
Гагарин
Опытный
Сообщения: 134
Зарегистрирован: 18 июн 2015, 17:25
Репутация: 13
Настоящее имя: Юрий
Контактная информация:

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

Сообщение Гагарин »

может получится linuxcnc в нее запихнуть?
Аватара пользователя
tooshka
Почётный участник
Почётный участник
Сообщения: 1802
Зарегистрирован: 24 окт 2012, 14:26
Репутация: 209
Настоящее имя: Андрей
Откуда: Нижний Новгород
Контактная информация:

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

Сообщение tooshka »

Я в тестеры запишусь сразу.
Милая, ты услышь меня
под окном стою со своим я ЧПУ! (Протяжно; с надрывом; форте)
Внимание!!! Чрезмерное увлечение ЧПУ приводит к проблемам в семейных отношениях!
muxa
Мастер
Сообщения: 226
Зарегистрирован: 15 мар 2012, 12:29
Репутация: 23
Контактная информация:

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

Сообщение muxa »

Гагарин писал(а):может получится linuxcnc в нее запихнуть?
это самый главный вопрос - кто видел, кто знает про linuxcnc ??? в таких вот компах, пускай может быть и не на китайских камнях.
nevkon
Почётный участник
Почётный участник
Сообщения: 1900
Зарегистрирован: 17 июл 2015, 10:25
Репутация: 232
Настоящее имя: Константин
Откуда: Балаково (Саратовская обл.)
Контактная информация:

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

Сообщение nevkon »

На малине вроде запускали.
Argentum47
Мастер
Сообщения: 644
Зарегистрирован: 05 июн 2015, 10:00
Репутация: 67
Откуда: Саратов
Контактная информация:

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

Сообщение Argentum47 »

Гагарин писал(а):может получится linuxcnc в нее запихнуть?
если EMC поддерживает ARM, то получится, иначе - дохлый номер. Нет в конечном итоге-то даже без оной получится, но результат вас не устроит. У меня дома VOIP сервер на Orange Pi PC, два года в аптайме, хорошая вещь, интересная, с выводом видео на монитор только грабли - разрешение не хочет мониторное (5:4) ставить никак, ну и RTC интегрированного не хватает очень.
Аватара пользователя
Serg
Мастер
Сообщения: 20997
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 4980
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

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

Сообщение Serg »

Argentum47 писал(а):если EMC поддерживает ARM
Всё давным давно поддерживается.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
Argon-11
Мастер
Сообщения: 1738
Зарегистрирован: 07 июн 2017, 17:48
Репутация: 394
Контактная информация:

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

Сообщение Argon-11 »

Argentum47 писал(а): только грабли - разрешение не хочет мониторное (5:4) ставить никак,
Эти грабли вполне решаемы посредством копания в драйверах и пересборки ОС. Моя статеечка: http://4pda.ru/forum/index.php?showtopi ... ry54011589
Готовый образ Android с мониторными разрешениями 800x600 и 1024x768: https://drive.google.com/open?id=0B1mAF ... U5TV3Q0TmM
Argentum47
Мастер
Сообщения: 644
Зарегистрирован: 05 июн 2015, 10:00
Репутация: 67
Откуда: Саратов
Контактная информация:

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

Сообщение Argentum47 »

Argon-11 писал(а): Готовый образ Android с мониторными разрешениями 800x600 и 1024x768: https://drive.google.com/open?id=0B1mAF ... U5TV3Q0TmM
У меня Lubuntu...
Аватара пользователя
Argon-11
Мастер
Сообщения: 1738
Зарегистрирован: 07 июн 2017, 17:48
Репутация: 394
Контактная информация:

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

Сообщение Argon-11 »

Argentum47 писал(а):
Argon-11 писал(а): Готовый образ Android с мониторными разрешениями 800x600 и 1024x768: https://drive.google.com/open?id=0B1mAF ... U5TV3Q0TmM
У меня Lubuntu...
Глянул исходники драйвера - вроде идентичны андроидным. Так что при желании решаемо.
Аватара пользователя
Evilmax
Мастер
Сообщения: 238
Зарегистрирован: 02 окт 2015, 05:30
Репутация: 134
Настоящее имя: Максим
Откуда: Ленинград
Контактная информация:

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

Сообщение Evilmax »

512mb RAM в которые еще и лезет GPU пожрать, маловато как то для комфортного пользования, не находите? Что с риалтаймом, мучатся через костыли и патчи ядра?
Argentum47
Мастер
Сообщения: 644
Зарегистрирован: 05 июн 2015, 10:00
Репутация: 67
Откуда: Саратов
Контактная информация:

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

Сообщение Argentum47 »

Evilmax писал(а):512mb RAM в которые еще и лезет GPU пожрать, маловато как то для комфортного пользования, не находите? Что с риалтаймом, мучатся через костыли и патчи ядра?
Есть версии с 1 и 2 ГБ памяти, цена правда от 1.5 до 3 т.р доходит. Они наплодили уже несколько десятков моделей платы с пятью разными чипами.
Аватара пользователя
MX_Master
Мастер
Сообщения: 6312
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 2701
Настоящее имя: Миша
Откуда: Алма-Ата
Контактная информация:

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

Сообщение 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 (28210 просмотров) <a class='original' href='./download/file.php?id=120604&sid=acd2812a0039245ae1ae2e5d453779e5&mode=view' target=_blank>Загрузить оригинал (18.41 КБ)</a>
2017-09-20_193048.png (28210 просмотров) <a class='original' href='./download/file.php?id=120605&sid=acd2812a0039245ae1ae2e5d453779e5&mode=view' target=_blank>Загрузить оригинал (13.59 КБ)</a>
Как только сполна наиграюсь в обычной ОС, в дело пойдёт, какой никакой, RT..
Гагарин
Опытный
Сообщения: 134
Зарегистрирован: 18 июн 2015, 17:25
Репутация: 13
Настоящее имя: Юрий
Контактная информация:

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

Сообщение Гагарин »

MX_Master писал(а):Наглядно это можно увидеть на осциллограмме, любезно предоставленной анализатором за 5$
А что за анализатор?
Аватара пользователя
MX_Master
Мастер
Сообщения: 6312
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 2701
Настоящее имя: Миша
Откуда: Алма-Ата
Контактная информация:

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

Сообщение 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 (28190 просмотров) <a class='original' href='./download/file.php?id=120611&sid=acd2812a0039245ae1ae2e5d453779e5&mode=view' target=_blank>Загрузить оригинал (65.51 КБ)</a>
Аватара пользователя
Serg
Мастер
Сообщения: 20997
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 4980
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

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

Сообщение Serg »

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

Рекомендую: https://hackaday.com/2014/04/25/a-tutor ... ime-tasks/
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
MX_Master
Мастер
Сообщения: 6312
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 2701
Настоящее имя: Миша
Откуда: Алма-Ата
Контактная информация:

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

Сообщение MX_Master »

UAVpilot писал(а):А вот когда захочешь сделать что-то более полезное, чем дёргание пином и выделенное ядро встанет в общую очередь к памяти...
У меня создалось ощущение, что оно уже в очереди. Или как минимум что-то мешает. Быстрее чем 2.6 МГц простое ногодрыганье не идёт. Но в этом вопросе я ещё зелёный прогер (: Кроме устройства самой системы, приходится изучать и кучу аппаратных ARM настроек..
Аватара пользователя
Argon-11
Мастер
Сообщения: 1738
Зарегистрирован: 07 июн 2017, 17:48
Репутация: 394
Контактная информация:

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

Сообщение Argon-11 »

Гагарин писал(а):А что за анализатор?
Судя по фрагменту осциллограммы это клон анализатора Saleae (по этому же слову и на али ищется множество их), очень удобная и недорогая вещь, есть софт как под Win, так и под Linux.
https://www.saleae.com/
Аватара пользователя
Argon-11
Мастер
Сообщения: 1738
Зарегистрирован: 07 июн 2017, 17:48
Репутация: 394
Контактная информация:

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

Сообщение Argon-11 »

MX_Master писал(а):Быстрее чем 2.6 МГц простое ногодрыганье не идёт.
Умные дядьки говорят, надо писать драйвер уровня ядра (ядра ОС), чтобы было побыстрее и ничего не мешало.
Аватара пользователя
MX_Master
Мастер
Сообщения: 6312
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 2701
Настоящее имя: Миша
Откуда: Алма-Ата
Контактная информация:

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

Сообщение MX_Master »

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

Вернуться в «Электроника»