LinuxCNC + Orange Pi (allwincnc)
-
K@RLSON
- Мастер
- Сообщения: 259
- Зарегистрирован: 08 апр 2011, 22:56
- Репутация: 20
- Контактная информация:
Re: LinuxCNC + Orange Pi
Я уже почти поехал покупать orange pi pc2 )))
Один хрен rpi4 видимо пропала в пути.
Сижу думаю orange или BBB.
Беспокоит, что на orange pi всего один spi вроде можно задействовать. А больше быстрых протоколов с внешними платами не вижу на ней
Один хрен rpi4 видимо пропала в пути.
Сижу думаю orange или BBB.
Беспокоит, что на orange pi всего один spi вроде можно задействовать. А больше быстрых протоколов с внешними платами не вижу на ней
-
K@RLSON
- Мастер
- Сообщения: 259
- Зарегистрирован: 08 апр 2011, 22:56
- Репутация: 20
- Контактная информация:
Re: LinuxCNC + Orange Pi
Устроил себе «развлечение» и прочитал с 80 страницы...
Даже немного выдохнул
Даже немного выдохнул
- MX_Master
- Мастер
- Сообщения: 7489
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3113
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: LinuxCNC + Orange Pi
Ethernet 10/100K@RLSON писал(а):Беспокоит, что на orange pi всего один spi вроде можно задействовать. А больше быстрых протоколов с внешними платами не вижу на ней
UART до 1.5 Мбод
Для интузиастов есть многоканальный сокет CSI для камеры, 24 пина.
-
creisey
- Новичок
- Сообщения: 15
- Зарегистрирован: 16 дек 2019, 10:54
- Репутация: 8
- Настоящее имя: iosias
- Контактная информация:
Re: LinuxCNC + Orange Pi
Great MX-Master that you continue!
-
K@RLSON
- Мастер
- Сообщения: 259
- Зарегистрирован: 08 апр 2011, 22:56
- Репутация: 20
- Контактная информация:
Re: LinuxCNC + Orange Pi
MX_Master, считывать энкодер на текущей реализации не получится быстрее, чем генерить шаги?
- MX_Master
- Мастер
- Сообщения: 7489
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3113
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: LinuxCNC + Orange Pi
Прошивка, к счастью, открытаяK@RLSON писал(а):MX_Master, считывать энкодер на текущей реализации не получится быстрее, чем генерить шаги?
-
Bambuk
- Новичок
- Сообщения: 13
- Зарегистрирован: 06 янв 2020, 02:58
- Репутация: 1
- Настоящее имя: Алексей
- Контактная информация:
Re: LinuxCNC + Orange Pi
за 2 вечера осилил все 145 страниц 
А хоть какой-то прототип драйвера для работы с arisk_firmware из lcnc уже имеется?
mod_encoder.c:99
опечатка похоже, второй раз B должно быть по идее?
А хоть какой-то прототип драйвера для работы с arisk_firmware из lcnc уже имеется?
mod_encoder.c:99
Код: Выделить всё
AB = (A ? 0b10 : 0) | (A ? 0b01 : 0); // get encoder state- MX_Master
- Мастер
- Сообщения: 7489
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3113
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: LinuxCNC + Orange Pi
Прототип драйвера, конечно, есть. В отдельной ветке. На компе лежат несколько новых правок, ещё не отправил их в репу. Нужно больше тестов.Bambuk писал(а):за 2 вечера осилил все 145 страниц
А хоть какой-то прототип драйвера для работы с arisk_firmware из lcnc уже имеется?
mod_encoder.c:99опечатка похоже, второй раз B должно быть по идее?Код: Выделить всё
AB = (A ? 0b10 : 0) | (A ? 0b01 : 0); // get encoder state
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
Может стоит вынести обмен с arisk во внешний процесс, с которым взаимодействовать по ip.
Т.е. как будто бы у нас на борту внутри что-то типа mesanet платы, только она не железная, а софтовая.
Взаимодействие HAL по ip можно позаимствовать у тех же mesa плат.
Отлаживаться проще будет:
- во внешнем процессе для дебага можно будет делать что угодно, без оглядки на то какие задержки это может принести в lcnc процесс
- упадет процесс, его корку проще будет изучить чем корку всего lcnc
Появится возможность работать с OPi платой как с mesanet платой по сети, т.е. lcnc можно будет запускать на другой более мощной машине, а OPi будет только ногами дрыгать и сообщения об изменении состояния ног/энкодеров отправлять.
В общем более универсальное решение получится на мой взгляд.
В текущей реализации меня смущает протокол обмена сообщениями между хостом и arisk.
Боюсь что при интенсивном обмене можно будет словить проблемы связанные с совместным доступом к разделяемым ресурсам.
http://linux-sunxi.org/AR100#Resource_Sharing
Написано, что для синхронизации нужно использовать hardware spinlocks.
Тема спинлоков как-то изучалась?
Т.е. как будто бы у нас на борту внутри что-то типа 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
Текущая система сообщений уже универсальна, к тому же, она быстрее и проще любых надстроек, типа IP
Я б сделал систему ещё быстрее, но тогда универсальность исчезнет. В чипе есть своя система сообщений со спинлоками, но меня она не устроила размером сообщений.
Что касается работы с общими ресурсами.. Драйвер пишет в свою область SRAM, сопроцессор - в свою. Из чужой области они могут только читать. Кроме того, драйвер - это модуль ядра linux. Ядро linux крутится всегда на одном ядре процессора. И пока выполняется код каждого драйвера, ядро и вся ОС ждут завершения. Чтобы иметь возможность нарушить работу с общими ресурсами, надо запускать код драйвера (или тестовую программку) одновременно на разных ядрах процессора. В этом случае, юзер будет отвечать за косяки сам, ибо нефиг
Что касается работы с общими ресурсами.. Драйвер пишет в свою область SRAM, сопроцессор - в свою. Из чужой области они могут только читать. Кроме того, драйвер - это модуль ядра linux. Ядро linux крутится всегда на одном ядре процессора. И пока выполняется код каждого драйвера, ядро и вся ОС ждут завершения. Чтобы иметь возможность нарушить работу с общими ресурсами, надо запускать код драйвера (или тестовую программку) одновременно на разных ядрах процессора. В этом случае, юзер будет отвечать за косяки сам, ибо нефиг
-
Bambuk
- Новичок
- Сообщения: 13
- Зарегистрирован: 06 янв 2020, 02:58
- Репутация: 1
- Настоящее имя: Алексей
- Контактная информация:
Re: LinuxCNC + Orange Pi
А почему был выбран вариант реализации stepgen? Для LPT он без вариантов, но тут же целый сопроцессор имеется.
Я тут вот еще тему http://www.cnc-club.ru/forum/viewtopic.php?f=15&t=11422 почитал.
Там пошли другим путем. Используют pid и отправляют pid.x.output через функцию в servo-thread на плату, а уж она что нужно генерирует.
Если считать, что arisk такая же плата, только софтовая, то почему бы не применить аналогичный подход.
Я тут вот еще тему 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
В текущем виде степген сопроцессора - это простой генератор указанного кол-ва шагов, на указанной частоте, с подсчётом позиции. Всё. Реализация примерно как у PLUTO-P. Частоту, кол-во и направление шагов задаёт драйвер.
-
creisey
- Новичок
- Сообщения: 15
- Зарегистрирован: 16 дек 2019, 10:54
- Репутация: 8
- Настоящее имя: iosias
- Контактная информация:
Re: LinuxCNC + Orange Pi
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
Wait a bit. These images will be available at the https://cnc32.ru/ downloads page, sooncreisey писал(а):Hi MX_Master would it be possible for your to reupload the image for Orange PI One? thx a lot.
- antoxa-kylibin
- Мастер
- Сообщения: 786
- Зарегистрирован: 22 июн 2017, 13:18
- Репутация: 107
- Настоящее имя: Антон
- Откуда: г. Воронеж
- Контактная информация:
Re: LinuxCNC + Orange Pi
Ого сколько тут событий произошло пока меня не было)))Кажется проект воскресили и ето хорошо). MX_master с возвращением). Не воспринимайте критику так близко к сердцу, каждый творит как ему хочется и можется. Но я соглашусь с тем, что проект весьма интересный и если его довести до работоспособного состояния то он должен стать популярным среди чпу самоделкиных и хоббийщиков, а там сообщество если будет расти и развивать то уже и серьёзный уровень развития может получиться. Я так понял что проект открытый и каждый желающий может принимать участие в нем. Тут конечно важна работа в команде, но такую команду сложно собрать в кучу. Делать что то с нуля всегда тяжело, но главное не сдаваться. Нет непобедимых задачь! По себе знаю, порой что то делаешь, а оно ну никак не хочет побеждаться, плюнешь и отложишь в сторону на время, в другой день начинаешь дальше бадаться, глядишь и получилось....не каждый день бывают победы, но это не повод опускать руки! Нужно дать возможность вашему проекту развиваться, глядишь и получится все!
- antoxa-kylibin
- Мастер
- Сообщения: 786
- Зарегистрирован: 22 июн 2017, 13:18
- Репутация: 107
- Настоящее имя: Антон
- Откуда: г. Воронеж
- Контактная информация:
Re: LinuxCNC + Orange Pi
Вон ядро linux один энтузиаст вообще затеял сделать, открыл исходники, появилось сообщество и единомышленники. Теперь мир имеет целое семейство операционок Linux OS, и не секрет что это одна из самых гибких и распространенных ОС в мире, да эта система не для игр, но те же сервера и различные девайсы типа роутеров, маршрутизаторов, сервера и т.д. работают на базе этой ОС. А ведь проект открытый до сих пор и пока никто не собирается его закрывать. Так что в открытых проектах нет ничего плохого.
- MX_Master
- Мастер
- Сообщения: 7489
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3113
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: LinuxCNC + Orange Pi
Будет довольно интересно завести аппаратную веб морду в апельсине прямо во framebuffer
Вот это будет поворот..
- antoxa-kylibin
- Мастер
- Сообщения: 786
- Зарегистрирован: 22 июн 2017, 13:18
- Репутация: 107
- Настоящее имя: Антон
- Откуда: г. Воронеж
- Контактная информация:
Re: LinuxCNC + Orange Pi
Что такое framebuffer?
-
CNCStart
- Кандидат
- Сообщения: 48
- Зарегистрирован: 08 май 2019, 19:00
- Репутация: 1
- Настоящее имя: Алексей
- Контактная информация:
Re: LinuxCNC + Orange Pi
Добрый день знатоки!
Пытаюсь сделать связь Orange Pi +ПК посредством linuxcncrsh
с терминала запускаю команду linuxcncrsh [OPTIONS] [5007 LINUXCNC_OPTIONS]
выдает ошибку
и соответсвенно следующие шаги невозможны
Может есть у кого опыт ? поделитесь, буду очень благодарен!
Пытаюсь сделать связь Orange Pi +ПК посредством linuxcncrsh
с терминала запускаю команду linuxcncrsh [OPTIONS] [5007 LINUXCNC_OPTIONS]
выдает ошибку
и соответсвенно следующие шаги невозможны
Может есть у кого опыт ? поделитесь, буду очень благодарен!
- MX_Master
- Мастер
- Сообщения: 7489
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3113
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: LinuxCNC + Orange Pi
Сначала надо запустить LinuxCNC/Machinekit, а потом уже любые не RT компоненты.