LinuxCNC + Orange Pi

Контроллеры, драйверы, датчики, управляющие устройства.

LinuxCNC + Orange Pi

Сообщение MX_Master » 16 сен 2017, 15:32

LinuxCNC + Orange Pi Orange-Pi-One-H3-Quad-core-Support-ubuntu-linux-and-android-mini-PC-Beyond-Raspberry-Pi.jpg

ИзображениеИзображение
После продолжительных тестов одноплатника Orange Pi (One) стало понятно, что на его основе вполне можно запилить ЧПУ контроллер общего назначения. Под капотом у Orange Pi (One) стоит чип Allwinner H3 SoC (Cortex-A7), который, как и STM32, базируется на ARM архитектуре. Мануал к H3 был изучен, опробованы варианты низкоуровневого управления GPIO. Протестирована связка "веб-морда + websocketd + многопоточная программка на C". Пока мне всё нравится.

Почему именно Orange Pi ?
  • цена (Orange Pi One = 14$)
  • мощный камушек (4 ядра, 1.2 ГГц) и быстрая ОЗУ (DDR3, 600 МГц)
  • неплохая внешняя периферия (SDIO, Ethernet, USB, SPI, I2C, UART, PWM, ADC)
  • видео/аудио выход (HDMI)
  • гребёнка GPIO в кол-ве 40 штук (доступны 28)
  • облегчённый Linux (Armbian - Debian/Ubuntu)
Ориентир буду брать на модульную систему. Это значит, если на платке Orange Pi чего-то нет, то будем подключать внешние недорогие модули. Такими модулями могут стать - внешний генератор STEP/DIR, модули DAC/ADC, конвертеры уровней напряжения, модули с обычными/твердотельными реле, конвертеры UART/RS485, опторазвязка и т.д.

ОБНОВЛЕНИЕ от 21.12.2017
--------------------------------------------------

Готовые к работе, образы MicroSD карты 8 Гб и 16 Гб с Debian Jessie, Machinekit (LinuxCNC) и GPIO драйвером:
Инструкции по применению:
LinuxCNC + Orange Pi Orange_Pi_One_PA4_PA5.jpg
LinuxCNC + Orange Pi opi1_pinout.png
Последний раз редактировалось MX_Master 19 фев 2018, 14:40, всего редактировалось 7 раз(а).
Аватара пользователя
MX_Master
Мастер
 
Сообщения: 2210
Зарегистрирован: 27 июн 2015, 19:45
Откуда: форт Верный
Репутация: 1143
Медальки:
Настоящее имя: Михаил

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

Сообщение Гагарин » 16 сен 2017, 16:23

может получится linuxcnc в нее запихнуть?
Гагарин
Опытный
 
Сообщения: 113
Зарегистрирован: 18 июн 2015, 17:25
Репутация: 11
Настоящее имя: Юрий

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

Сообщение tooshka » 16 сен 2017, 16:44

Я в тестеры запишусь сразу.
Милая, ты услышь меня
под окном стою со своим я ЧПУ! (Протяжно; с надрывом; форте)
Внимание!!! Чрезмерное увлечение ЧПУ приводит к проблемам в семейных отношениях!
Аватара пользователя
tooshka
Почётный участник
Почётный участник
 
Сообщения: 1780
Зарегистрирован: 24 окт 2012, 14:26
Откуда: Нижний Новгород
Репутация: 206
Медальки:
Настоящее имя: Андрей

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

Сообщение muxa » 19 сен 2017, 18:16

Гагарин писал(а):может получится linuxcnc в нее запихнуть?

это самый главный вопрос - кто видел, кто знает про linuxcnc ??? в таких вот компах, пускай может быть и не на китайских камнях.
muxa
Мастер
 
Сообщения: 221
Зарегистрирован: 15 мар 2012, 12:29
Репутация: 22

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

Сообщение nevkon » 19 сен 2017, 19:30

На малине вроде запускали.
nevkon
Мастер
 
Сообщения: 858
Зарегистрирован: 17 июл 2015, 10:25
Откуда: Балаково (Саратовская обл.)
Репутация: 108
Настоящее имя: Константин

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

Сообщение Argentum47 » 20 сен 2017, 10:18

Гагарин писал(а):может получится linuxcnc в нее запихнуть?

если EMC поддерживает ARM, то получится, иначе - дохлый номер. Нет в конечном итоге-то даже без оной получится, но результат вас не устроит. У меня дома VOIP сервер на Orange Pi PC, два года в аптайме, хорошая вещь, интересная, с выводом видео на монитор только грабли - разрешение не хочет мониторное (5:4) ставить никак, ну и RTC интегрированного не хватает очень.
Argentum47
Мастер
 
Сообщения: 336
Зарегистрирован: 05 июн 2015, 10:00
Откуда: Саратов
Репутация: 31

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

Сообщение UAVpilot » 20 сен 2017, 11:17

Argentum47 писал(а):если EMC поддерживает ARM

Всё давным давно поддерживается.
1. Робот не может ответить отказом на предложение человека выпить или своим бездействием допустить, чтобы человек напился один.
Аватара пользователя
UAVpilot
Мастер
 
Сообщения: 15320
Зарегистрирован: 17 апр 2012, 14:58
Откуда: Москва
Репутация: 3738
Медальки:
Настоящее имя: Сергей

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

Сообщение Argon-11 » 20 сен 2017, 11:27

Argentum47 писал(а): только грабли - разрешение не хочет мониторное (5:4) ставить никак,

Эти грабли вполне решаемы посредством копания в драйверах и пересборки ОС. Моя статеечка: http://4pda.ru/forum/index.php?showtopi ... ry54011589
Готовый образ Android с мониторными разрешениями 800x600 и 1024x768: https://drive.google.com/open?id=0B1mAF ... U5TV3Q0TmM
Аватара пользователя
Argon-11
Мастер
 
Сообщения: 537
Зарегистрирован: 07 июн 2017, 17:48
Репутация: 91

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

Сообщение Argentum47 » 20 сен 2017, 12:54

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

У меня Lubuntu...
Argentum47
Мастер
 
Сообщения: 336
Зарегистрирован: 05 июн 2015, 10:00
Откуда: Саратов
Репутация: 31

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

Сообщение Argon-11 » 20 сен 2017, 13:01

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

У меня Lubuntu...


Глянул исходники драйвера - вроде идентичны андроидным. Так что при желании решаемо.
Аватара пользователя
Argon-11
Мастер
 
Сообщения: 537
Зарегистрирован: 07 июн 2017, 17:48
Репутация: 91

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

Сообщение Evilmax » 20 сен 2017, 14:47

512mb RAM в которые еще и лезет GPU пожрать, маловато как то для комфортного пользования, не находите? Что с риалтаймом, мучатся через костыли и патчи ядра?
Аватара пользователя
Evilmax
Мастер
 
Сообщения: 211
Зарегистрирован: 02 окт 2015, 05:30
Репутация: 106

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

Сообщение Argentum47 » 20 сен 2017, 16:21

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

Есть версии с 1 и 2 ГБ памяти, цена правда от 1.5 до 3 т.р доходит. Они наплодили уже несколько десятков моделей платы с пятью разными чипами.
Argentum47
Мастер
 
Сообщения: 336
Зарегистрирован: 05 июн 2015, 10:00
Откуда: Саратов
Репутация: 31

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

Сообщение MX_Master » 20 сен 2017, 16:39

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:

LinuxCNC + Orange Pi 2017-09-20_193120.png
LinuxCNC + Orange Pi 2017-09-20_193048.png


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

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

Сообщение Гагарин » 20 сен 2017, 17:15

MX_Master писал(а):Наглядно это можно увидеть на осциллограмме, любезно предоставленной анализатором за 5$

А что за анализатор?
Гагарин
Опытный
 
Сообщения: 113
Зарегистрирован: 18 июн 2015, 17:25
Репутация: 11
Настоящее имя: Юрий

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

Сообщение MX_Master » 20 сен 2017, 17:28

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

А что за анализатор?

https://www.aliexpress.com/item/New-Arrival-USB-Logic-Analyzer-24M-8CH-MCU-ARM-FPGA-DSP-debug-tool/32810021495.html

LinuxCNC + Orange Pi 1set-New-Arrival-USB-Logic-Analyze-24M-8CH-MCU-ARM-FPGA-DSP-debug-tool.jpg
Аватара пользователя
MX_Master
Мастер
 
Сообщения: 2210
Зарегистрирован: 27 июн 2015, 19:45
Откуда: форт Верный
Репутация: 1143
Медальки:
Настоящее имя: Михаил

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

Сообщение UAVpilot » 20 сен 2017, 17:35

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

А вот когда захочешь сделать что-то более полезное, чем дёргание пином и выделенное ядро встанет в общую очередь к памяти... :)

Рекомендую: https://hackaday.com/2014/04/25/a-tutor ... ime-tasks/
1. Робот не может ответить отказом на предложение человека выпить или своим бездействием допустить, чтобы человек напился один.
Аватара пользователя
UAVpilot
Мастер
 
Сообщения: 15320
Зарегистрирован: 17 апр 2012, 14:58
Откуда: Москва
Репутация: 3738
Медальки:
Настоящее имя: Сергей

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

Сообщение MX_Master » 20 сен 2017, 17:52

UAVpilot писал(а):А вот когда захочешь сделать что-то более полезное, чем дёргание пином и выделенное ядро встанет в общую очередь к памяти...

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

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

Сообщение Argon-11 » 20 сен 2017, 18:02

Гагарин писал(а):А что за анализатор?

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

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

Сообщение Argon-11 » 20 сен 2017, 18:05

MX_Master писал(а):Быстрее чем 2.6 МГц простое ногодрыганье не идёт.

Умные дядьки говорят, надо писать драйвер уровня ядра (ядра ОС), чтобы было побыстрее и ничего не мешало.
Аватара пользователя
Argon-11
Мастер
 
Сообщения: 537
Зарегистрирован: 07 июн 2017, 17:48
Репутация: 91

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

Сообщение MX_Master » 20 сен 2017, 18:25

Argon-11 писал(а):
MX_Master писал(а):Быстрее чем 2.6 МГц простое ногодрыганье не идёт.

Умные дядьки говорят, надо писать драйвер уровня ядра (ядра ОС), чтобы было побыстрее и ничего не мешало.

Есть такое дело, опробую на неделе..
Аватара пользователя
MX_Master
Мастер
 
Сообщения: 2210
Зарегистрирован: 27 июн 2015, 19:45
Откуда: форт Верный
Репутация: 1143
Медальки:
Настоящее имя: Михаил

След.

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

Кто сейчас на конференции

Зарегистрированные пользователи: 19bvn58, Борисыч, atom12, Bing [Bot], fox1024, Google [Bot], legi0ner, Majestic-12 [Bot], peratron, Q-starь, shdn777, spryt, vladumur, Yandex [bot], Варяжко

Поделиться

Reputation System ©'