LinuxCNC + Orange Pi (allwincnc)

Контроллеры, драйверы, датчики, управляющие устройства.
K@RLSON
Мастер
Сообщения: 259
Зарегистрирован: 08 апр 2011, 22:56
Репутация: 20
Контактная информация:

Re: LinuxCNC + Orange Pi

Сообщение K@RLSON »

Я уже почти поехал покупать orange pi pc2 )))
Один хрен rpi4 видимо пропала в пути.
Сижу думаю orange или BBB.

Беспокоит, что на orange pi всего один spi вроде можно задействовать. А больше быстрых протоколов с внешними платами не вижу на ней
K@RLSON
Мастер
Сообщения: 259
Зарегистрирован: 08 апр 2011, 22:56
Репутация: 20
Контактная информация:

Re: LinuxCNC + Orange Pi

Сообщение K@RLSON »

Устроил себе «развлечение» и прочитал с 80 страницы...
Даже немного выдохнул :-)
Аватара пользователя
MX_Master
Мастер
Сообщения: 7489
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 3113
Настоящее имя: Михаил
Откуда: Алматы
Контактная информация:

Re: LinuxCNC + Orange Pi

Сообщение MX_Master »

K@RLSON писал(а):Беспокоит, что на orange pi всего один spi вроде можно задействовать. А больше быстрых протоколов с внешними платами не вижу на ней
Ethernet 10/100 ;)
UART до 1.5 Мбод

Для интузиастов есть многоканальный сокет CSI для камеры, 24 пина.
creisey
Новичок
Сообщения: 15
Зарегистрирован: 16 дек 2019, 10:54
Репутация: 8
Настоящее имя: iosias
Контактная информация:

Re: LinuxCNC + Orange Pi

Сообщение creisey »

Great MX-Master that you continue!
K@RLSON
Мастер
Сообщения: 259
Зарегистрирован: 08 апр 2011, 22:56
Репутация: 20
Контактная информация:

Re: LinuxCNC + Orange Pi

Сообщение K@RLSON »

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

Re: LinuxCNC + Orange Pi

Сообщение MX_Master »

K@RLSON писал(а):MX_Master, считывать энкодер на текущей реализации не получится быстрее, чем генерить шаги?
Прошивка, к счастью, открытая :) Можно сделать форк (или отдельную ветку), где приоритет энкодерного модуля будет выше. Текущий приоритет я сделал исходя из востребованности модулей. У степ/дир пользователей всегда больше, чем у связки степ/дир + энкодеры.
Bambuk
Новичок
Сообщения: 13
Зарегистрирован: 06 янв 2020, 02:58
Репутация: 1
Настоящее имя: Алексей
Контактная информация:

Re: LinuxCNC + Orange Pi

Сообщение Bambuk »

за 2 вечера осилил все 145 страниц :roll:
А хоть какой-то прототип драйвера для работы с arisk_firmware из lcnc уже имеется?

mod_encoder.c:99

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

AB = (A ? 0b10 : 0) | (A ? 0b01 : 0); // get encoder state
опечатка похоже, второй раз B должно быть по идее?
Аватара пользователя
MX_Master
Мастер
Сообщения: 7489
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 3113
Настоящее имя: Михаил
Откуда: Алматы
Контактная информация:

Re: LinuxCNC + Orange Pi

Сообщение MX_Master »

Bambuk писал(а):за 2 вечера осилил все 145 страниц :roll:
А хоть какой-то прототип драйвера для работы с arisk_firmware из lcnc уже имеется?

mod_encoder.c:99

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

AB = (A ? 0b10 : 0) | (A ? 0b01 : 0); // get encoder state
опечатка похоже, второй раз B должно быть по идее?
Прототип драйвера, конечно, есть. В отдельной ветке. На компе лежат несколько новых правок, ещё не отправил их в репу. Нужно больше тестов.
https://github.cnc32.ru/OrangeCNC/machi ... vers/arisc

Ошибка подмечена верно. Спасибо. Исправил.
https://github.cnc32.ru/OrangeCNC/arisc ... oder.c#L99

Честно говоря, я удивлён, что кто-то ещё, кроме меня и пары человек, посмотрел исходники :)
Bambuk
Новичок
Сообщения: 13
Зарегистрирован: 06 янв 2020, 02:58
Репутация: 1
Настоящее имя: Алексей
Контактная информация:

Re: LinuxCNC + Orange Pi

Сообщение Bambuk »

Может стоит вынести обмен с arisk во внешний процесс, с которым взаимодействовать по ip.
Т.е. как будто бы у нас на борту внутри что-то типа mesanet платы, только она не железная, а софтовая.
Взаимодействие HAL по ip можно позаимствовать у тех же mesa плат.
Отлаживаться проще будет:
- во внешнем процессе для дебага можно будет делать что угодно, без оглядки на то какие задержки это может принести в lcnc процесс
- упадет процесс, его корку проще будет изучить чем корку всего lcnc
Появится возможность работать с OPi платой как с mesanet платой по сети, т.е. lcnc можно будет запускать на другой более мощной машине, а OPi будет только ногами дрыгать и сообщения об изменении состояния ног/энкодеров отправлять.
В общем более универсальное решение получится на мой взгляд.

В текущей реализации меня смущает протокол обмена сообщениями между хостом и arisk.
Боюсь что при интенсивном обмене можно будет словить проблемы связанные с совместным доступом к разделяемым ресурсам.
http://linux-sunxi.org/AR100#Resource_Sharing
Написано, что для синхронизации нужно использовать hardware spinlocks.
Тема спинлоков как-то изучалась?
Аватара пользователя
MX_Master
Мастер
Сообщения: 7489
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 3113
Настоящее имя: Михаил
Откуда: Алматы
Контактная информация:

Re: LinuxCNC + Orange Pi

Сообщение MX_Master »

Текущая система сообщений уже универсальна, к тому же, она быстрее и проще любых надстроек, типа IP ;) Я б сделал систему ещё быстрее, но тогда универсальность исчезнет. В чипе есть своя система сообщений со спинлоками, но меня она не устроила размером сообщений.

Что касается работы с общими ресурсами.. Драйвер пишет в свою область SRAM, сопроцессор - в свою. Из чужой области они могут только читать. Кроме того, драйвер - это модуль ядра linux. Ядро linux крутится всегда на одном ядре процессора. И пока выполняется код каждого драйвера, ядро и вся ОС ждут завершения. Чтобы иметь возможность нарушить работу с общими ресурсами, надо запускать код драйвера (или тестовую программку) одновременно на разных ядрах процессора. В этом случае, юзер будет отвечать за косяки сам, ибо нефиг :)
Bambuk
Новичок
Сообщения: 13
Зарегистрирован: 06 янв 2020, 02:58
Репутация: 1
Настоящее имя: Алексей
Контактная информация:

Re: LinuxCNC + Orange Pi

Сообщение Bambuk »

А почему был выбран вариант реализации stepgen? Для LPT он без вариантов, но тут же целый сопроцессор имеется.
Я тут вот еще тему http://www.cnc-club.ru/forum/viewtopic.php?f=15&t=11422 почитал.
Там пошли другим путем. Используют pid и отправляют pid.x.output через функцию в servo-thread на плату, а уж она что нужно генерирует.
Если считать, что arisk такая же плата, только софтовая, то почему бы не применить аналогичный подход.
Аватара пользователя
MX_Master
Мастер
Сообщения: 7489
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 3113
Настоящее имя: Михаил
Откуда: Алматы
Контактная информация:

Re: LinuxCNC + Orange Pi

Сообщение MX_Master »

В текущем виде степген сопроцессора - это простой генератор указанного кол-ва шагов, на указанной частоте, с подсчётом позиции. Всё. Реализация примерно как у PLUTO-P. Частоту, кол-во и направление шагов задаёт драйвер.
creisey
Новичок
Сообщения: 15
Зарегистрирован: 16 дек 2019, 10:54
Репутация: 8
Настоящее имя: iosias
Контактная информация:

Re: LinuxCNC + Orange Pi

Сообщение creisey »

Hi MX_Master would it be possible for your to reupload the image for Orange PI One? thx a lot.
Аватара пользователя
MX_Master
Мастер
Сообщения: 7489
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 3113
Настоящее имя: Михаил
Откуда: Алматы
Контактная информация:

Re: LinuxCNC + Orange Pi

Сообщение MX_Master »

creisey писал(а):Hi MX_Master would it be possible for your to reupload the image for Orange PI One? thx a lot.
Wait a bit. These images will be available at the https://cnc32.ru/ downloads page, soon ;)
Аватара пользователя
antoxa-kylibin
Мастер
Сообщения: 786
Зарегистрирован: 22 июн 2017, 13:18
Репутация: 107
Настоящее имя: Антон
Откуда: г. Воронеж
Контактная информация:

Re: LinuxCNC + Orange Pi

Сообщение antoxa-kylibin »

Ого сколько тут событий произошло пока меня не было)))Кажется проект воскресили и ето хорошо). MX_master с возвращением). Не воспринимайте критику так близко к сердцу, каждый творит как ему хочется и можется. Но я соглашусь с тем, что проект весьма интересный и если его довести до работоспособного состояния то он должен стать популярным среди чпу самоделкиных и хоббийщиков, а там сообщество если будет расти и развивать то уже и серьёзный уровень развития может получиться. Я так понял что проект открытый и каждый желающий может принимать участие в нем. Тут конечно важна работа в команде, но такую команду сложно собрать в кучу. Делать что то с нуля всегда тяжело, но главное не сдаваться. Нет непобедимых задачь! По себе знаю, порой что то делаешь, а оно ну никак не хочет побеждаться, плюнешь и отложишь в сторону на время, в другой день начинаешь дальше бадаться, глядишь и получилось....не каждый день бывают победы, но это не повод опускать руки! Нужно дать возможность вашему проекту развиваться, глядишь и получится все!
Аватара пользователя
antoxa-kylibin
Мастер
Сообщения: 786
Зарегистрирован: 22 июн 2017, 13:18
Репутация: 107
Настоящее имя: Антон
Откуда: г. Воронеж
Контактная информация:

Re: LinuxCNC + Orange Pi

Сообщение antoxa-kylibin »

Вон ядро linux один энтузиаст вообще затеял сделать, открыл исходники, появилось сообщество и единомышленники. Теперь мир имеет целое семейство операционок Linux OS, и не секрет что это одна из самых гибких и распространенных ОС в мире, да эта система не для игр, но те же сервера и различные девайсы типа роутеров, маршрутизаторов, сервера и т.д. работают на базе этой ОС. А ведь проект открытый до сих пор и пока никто не собирается его закрывать. Так что в открытых проектах нет ничего плохого.
Аватара пользователя
MX_Master
Мастер
Сообщения: 7489
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 3113
Настоящее имя: Михаил
Откуда: Алматы
Контактная информация:

Re: LinuxCNC + Orange Pi

Сообщение MX_Master »

Будет довольно интересно завести аппаратную веб морду в апельсине прямо во framebuffer ;) Вот это будет поворот..
Аватара пользователя
antoxa-kylibin
Мастер
Сообщения: 786
Зарегистрирован: 22 июн 2017, 13:18
Репутация: 107
Настоящее имя: Антон
Откуда: г. Воронеж
Контактная информация:

Re: LinuxCNC + Orange Pi

Сообщение antoxa-kylibin »

Что такое framebuffer?
CNCStart
Кандидат
Сообщения: 48
Зарегистрирован: 08 май 2019, 19:00
Репутация: 1
Настоящее имя: Алексей
Контактная информация:

Re: LinuxCNC + Orange Pi

Сообщение CNCStart »

Добрый день знатоки!
Пытаюсь сделать связь Orange Pi +ПК посредством linuxcncrsh
с терминала запускаю команду linuxcncrsh [OPTIONS] [5007 LINUXCNC_OPTIONS]
выдает ошибку
и соответсвенно следующие шаги невозможны
Может есть у кого опыт ? поделитесь, буду очень благодарен!
Вложения
15796034364594875534926111445135.jpg (2400 просмотров) <a class='original' href='./download/file.php?id=175300&mode=view' target=_blank>Загрузить оригинал (5.41 МБ)</a>
Аватара пользователя
MX_Master
Мастер
Сообщения: 7489
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 3113
Настоящее имя: Михаил
Откуда: Алматы
Контактная информация:

Re: LinuxCNC + Orange Pi

Сообщение MX_Master »

Сначала надо запустить LinuxCNC/Machinekit, а потом уже любые не RT компоненты.
Ответить

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