LinuxCNC + Orange Pi (allwincnc)
- straga
- Кандидат
- Сообщения: 51
- Зарегистрирован: 26 фев 2012, 16:54
- Репутация: 18
- Настоящее имя: Виктор
- Откуда: Латвия - Даугавпилс.
- Контактная информация:
Re: LinuxCNC + Orange Pi
А нельзя взять STM32F405 подключить по SPI и использовать его в качестве сопроцесора, который будет упралять Reaktime вещами ?
STMF405
STMF405
- MX_Master
- Мастер
- Сообщения: 7473
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3098
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: LinuxCNC + Orange Pi
С этим справится и платка за 1.7$ с STM32F103C8T6. Но в идеале лучше сразу плисину юзать, как говорилось выше. Этот подход является основным для тех, кто не желает разбираться ни с Linux, ни с аппаратными возможностями чипа. Я много раз видел, где на той же STM32 шаги генерируются полностью программно. И это при том, что на борту есть пачка аппаратных таймеров c разными режимами вывода на пины.
Я, кстати, сделал дампы настроек (регистров) чипа на разных ядрах Linux. И настройки действительно разные. Сегодня/завтра запилю универсальный загрузчик для записи блоков настроек в память. Для начала буду пробовать тупо заливать в память блоки настроек от legacy ядра и затем запускать ARISC прошивку. Если после какого-то блока настроек система будет ещё жива и прошивка, всё-таки, запустится, буду разбирать этот блок настроек детальнее.
- going
- Мастер
- Сообщения: 522
- Зарегистрирован: 29 сен 2013, 20:55
- Репутация: 129
- Настоящее имя: Леонид
- Откуда: г.Киров
- Контактная информация:
Re: LinuxCNC + Orange Pi
Там и дерево объектов разное и имена соответствующих переменных в исходном коде ядра разные.MX_Master писал(а):Я, кстати, сделал дампы настроек (регистров) чипа на разных ядрах Linux. И настройки действительно разные.
Платы: BPI-M3, BPI-A64, OPI-PC2
- MX_Master
- Мастер
- Сообщения: 7473
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3098
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: LinuxCNC + Orange Pi
Вышел новый большой апельсин на чипе Rockchip RK3399. Цена тоже немаленькая - 114$.
https://www.aliexpress.com/item/-/32850569302.html
Обзорчик - https://servernews.ru/964776
https://www.aliexpress.com/item/-/32850569302.html
Обзорчик - https://servernews.ru/964776
-
- Почётный участник
- Сообщения: 2391
- Зарегистрирован: 17 июл 2015, 10:25
- Репутация: 302
- Настоящее имя: Константин
- Откуда: Балаково (Саратовская обл.)
- Контактная информация:
Re: LinuxCNC + Orange Pi
Смотрю у этой платы куча возможностей. 6 ядер (2 производительных и 4 обычных) + есть сопроцессор, можно подключить до 2 камер для слежения, если повесить на станок и правильно настроить g-sensor можно будет ловить аварийные ситуации. И если правильно понял можно экран без всяких контроллеров вешать (те которые MIPI разъемы). Если воткнуть симку, то можно о изменениях статуса отправлять СМС (например "программа выполнена", "авария" и т.д.). Но стоит очень дорого, а полное решение выйдет уже совсем небюджетно.
Кстати у нее родное питание 12В что облегчает поиск подходящего БП. А также есть возможность подключить литий на 7.4В (2 банки по 3.7В) в качестве ИБП.
Кстати у нее родное питание 12В что облегчает поиск подходящего БП. А также есть возможность подключить литий на 7.4В (2 банки по 3.7В) в качестве ИБП.
- selenur
- Почётный участник
- Сообщения: 4604
- Зарегистрирован: 21 авг 2013, 19:44
- Репутация: 1621
- Настоящее имя: Сергей
- Откуда: Новый Уренгой
- Контактная информация:
Re: LinuxCNC + Orange Pi
А я в провод от БД пополам порезал, и впаял такой модуль: за 30 рублей. Работает отлично.nevkon писал(а):родное питание 12В что облегчает поиск подходящего БП
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
- MX_Master
- Мастер
- Сообщения: 7473
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3098
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: LinuxCNC + Orange Pi
я, кстати, таким модулем тоже пользовался, когда запитывал STM'ки от 12V, правда, он выдавал или 3.0V, или 3.6V. Но для апельсина 5V должен выдать поровней.selenur писал(а):А я в провод от БД пополам порезал, и впаял такой модуль:
- selenur
- Почётный участник
- Сообщения: 4604
- Зарегистрирован: 21 авг 2013, 19:44
- Репутация: 1621
- Настоящее имя: Сергей
- Откуда: Новый Уренгой
- Контактная информация:
Re: LinuxCNC + Orange Pi
Потенциометр в нем конечно плохой, при попытке найти нужное положение, для нужного выходного напряжения, но его можно заменить smd резистором, сопротивление которого можно рассчитать по формуле, из даташита.MX_Master писал(а):я, кстати, таким модулем тоже пользовался, когда запитывал STM'ки от 12V, правда, он выдавал или 3.0V, или 3.6V. Но для апельсина 5V должен выдать поровней.selenur писал(а):А я в провод от БД пополам порезал, и впаял такой модуль:
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
-
- Почётный участник
- Сообщения: 2391
- Зарегистрирован: 17 июл 2015, 10:25
- Репутация: 302
- Настоящее имя: Константин
- Откуда: Балаково (Саратовская обл.)
- Контактная информация:
Re: LinuxCNC + Orange Pi
Тоже думал об использовании подобной платки, благо их кучка валяется. Но меня останавливает то что максимальный ток в 3А они с трудом держат (если держат) и шумят уж очень хорошо на выходе. На попробовать можно использовать, но как стационарное решение я не стал бы его гонять - ищи потом откуда глюки прилетают.
- selenur
- Почётный участник
- Сообщения: 4604
- Зарегистрирован: 21 авг 2013, 19:44
- Репутация: 1621
- Настоящее имя: Сергей
- Откуда: Новый Уренгой
- Контактная информация:
Re: LinuxCNC + Orange Pi
В стационарном решении, конечно лучше подумать о другом решении, а так как временное решение, работает очень стабильно, по крайней мере у меня.nevkon писал(а):Тоже думал об использовании подобной платки, благо их кучка валяется. Но меня останавливает то что максимальный ток в 3А они с трудом держат (если держат) и шумят уж очень хорошо на выходе. На попробовать можно использовать, но как стационарное решение я не стал бы его гонять - ищи потом откуда глюки прилетают.
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
- Sergo67
- Кандидат
- Сообщения: 86
- Зарегистрирован: 08 дек 2017, 11:39
- Репутация: 14
- Настоящее имя: Сергей
- Откуда: Шахты
- Контактная информация:
Re: LinuxCNC + Orange Pi
Ну так поглядите на ёмкости по входу-выходу и всё поймёте . Там только самый необходимый минимум для работы чипа - но кто мешает навесить электролитов?nevkon писал(а):и шумят уж очень хорошо на выходе
Зы: прям заинтриговали этим шумом, сколько модулей впаял (есс-но с электролитами) и никогда не обращал на это внимания, надо будет проверить...
-
- Почётный участник
- Сообщения: 2391
- Зарегистрирован: 17 июл 2015, 10:25
- Репутация: 302
- Настоящее имя: Константин
- Откуда: Балаково (Саратовская обл.)
- Контактная информация:
Re: LinuxCNC + Orange Pi
Собственно уже подобрал БП для питания, осталось только найти возможность выделить каплю бюджета:
https://ru.aliexpress.com/item/D-60A/32348892858.html
https://ru.aliexpress.com/item/dual-out ... 76493.html
5В для низковольтной электроники, 12В для управления релюшками.
Также есть мысль о добавлении емкостей на входе БП для большей устойчивости к скачкам напряжения.
https://ru.aliexpress.com/item/D-60A/32348892858.html
https://ru.aliexpress.com/item/dual-out ... 76493.html
5В для низковольтной электроники, 12В для управления релюшками.
Также есть мысль о добавлении емкостей на входе БП для большей устойчивости к скачкам напряжения.
- Sergo67
- Кандидат
- Сообщения: 86
- Зарегистрирован: 08 дек 2017, 11:39
- Репутация: 14
- Настоящее имя: Сергей
- Откуда: Шахты
- Контактная информация:
Re: LinuxCNC + Orange Pi
Выходе, наверно ?nevkon писал(а):добавлении емкостей на входе БП
Раздельно будет дешевле, да и 6 ампер по 5V, ИМХО, перебор, я закладываю 3. А вот по 12-ти запас не помешает, хотяб ту же LED-лампу запитать - уже ампер.
И этим ИИП кондёры не нужны, лишние могут загнать блок в защиту...
ЗЫ: а вообще-то есть желание забомбить моноблок - 45Vx25A + 12Vx5A, и из 12-ти делать 5V уже на плате контроллера. Но это неспешно, пока прорисовываю варианты и жду детали из Китая...
-
- Почётный участник
- Сообщения: 2391
- Зарегистрирован: 17 июл 2015, 10:25
- Репутация: 302
- Настоящее имя: Константин
- Откуда: Балаково (Саратовская обл.)
- Контактная информация:
Re: LinuxCNC + Orange Pi
Именно на входе чтобы не было срывов в работе генератора. Единственный минус - потребуется сделать плавный старт.
Раздельно дешевле, да место не резиновое для установки оборудования. У меня 36В 16.7А БП для ШД и в той версии что стояло было еще 12В 2А для вентиляторов (5 шт висело, а вдруг еще понадобится), подсветки и платы развязки плюс регулируемый БП для 400Вт двигателя в качестве шпинделя. Все стояло довольно плотненько.
Сейчас остается 36В БП для ШД, для питания ПК, монитора, вентиляторов, релюшек, подсветки будет новый БП единый, шпиндель будет питаться извне - водянка 800Вт с ЧП который не хочу ставить близко к основной электронике.
БП подбирался с таким расчетом: 12В 2А было достаточно, добавится пара реле - +1А, добавится экран - +1А, итого 4А будет вполне достаточно. Апельсинке рекомендуют 5В 3А + пара ампер на хознужды. Проблема в том что сбалансированных БП нету, а вот на 60-120Вт вполне подходит.
Другой вопрос что при включении шпинделя у меня иногда моргал монитор (у меня отрубалось 220В на питании шпинделя, ну и собственно все спецэффекты от подключения импульсного БП я и ловил) и драйвера иногда уходили в защиту.
Раздельно дешевле, да место не резиновое для установки оборудования. У меня 36В 16.7А БП для ШД и в той версии что стояло было еще 12В 2А для вентиляторов (5 шт висело, а вдруг еще понадобится), подсветки и платы развязки плюс регулируемый БП для 400Вт двигателя в качестве шпинделя. Все стояло довольно плотненько.
Сейчас остается 36В БП для ШД, для питания ПК, монитора, вентиляторов, релюшек, подсветки будет новый БП единый, шпиндель будет питаться извне - водянка 800Вт с ЧП который не хочу ставить близко к основной электронике.
БП подбирался с таким расчетом: 12В 2А было достаточно, добавится пара реле - +1А, добавится экран - +1А, итого 4А будет вполне достаточно. Апельсинке рекомендуют 5В 3А + пара ампер на хознужды. Проблема в том что сбалансированных БП нету, а вот на 60-120Вт вполне подходит.
Другой вопрос что при включении шпинделя у меня иногда моргал монитор (у меня отрубалось 220В на питании шпинделя, ну и собственно все спецэффекты от подключения импульсного БП я и ловил) и драйвера иногда уходили в защиту.
- MX_Master
- Мастер
- Сообщения: 7473
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3098
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: LinuxCNC + Orange Pi
История с запуском ARISC прошивки из mainline ядра Linux успешно продолжается..
Методом научного тыка я выяснил, что из mainline ядра нельзя прочесть и изменить некоторые, особо важные, регистры чипа (настройки чипа). Мне подсказали, что mainline ядро запускается и работает в непривилегированном режиме. А старые legacy ядра - в привилегированном. Получается, что после того, как загрузчик (u-boot) отработал свою задачу, он отдаёт все ништяки доступа legacy ядру, а mainline ядру достаётся только пара косточек со стола. Чтобы получить такие же права как у legacy ядра, можно пересобрать u-boot c опцией обратной совместимости. Это будет вариант номер раз. Но мне подсказали и другой способ. Можно в командной строке u-boot (/boot/boot.cmd) прописать парочку команд, которые запишут в нужные регистры, необходимые мне, значения. u-boot всегда работает в привилегированном режиме, и доступ ко всем регистрам у него есть. По идее, оба способа должны быть рабочими. Проверять буду завтра.
Методом научного тыка я выяснил, что из mainline ядра нельзя прочесть и изменить некоторые, особо важные, регистры чипа (настройки чипа). Мне подсказали, что mainline ядро запускается и работает в непривилегированном режиме. А старые legacy ядра - в привилегированном. Получается, что после того, как загрузчик (u-boot) отработал свою задачу, он отдаёт все ништяки доступа legacy ядру, а mainline ядру достаётся только пара косточек со стола. Чтобы получить такие же права как у legacy ядра, можно пересобрать u-boot c опцией обратной совместимости. Это будет вариант номер раз. Но мне подсказали и другой способ. Можно в командной строке u-boot (/boot/boot.cmd) прописать парочку команд, которые запишут в нужные регистры, необходимые мне, значения. u-boot всегда работает в привилегированном режиме, и доступ ко всем регистрам у него есть. По идее, оба способа должны быть рабочими. Проверять буду завтра.
Для тех, кто не понял о чём это я, скажу так - мы довольно близко подобрались к высокочастотному способу генерации шагов на, встроенном в чип, сопроцессоре.
- straga
- Кандидат
- Сообщения: 51
- Зарегистрирован: 26 фев 2012, 16:54
- Репутация: 18
- Настоящее имя: Виктор
- Откуда: Латвия - Даугавпилс.
- Контактная информация:
Re: LinuxCNC + Orange Pi
Круто.
То есть mainline должно от u-boot - получить значения регистров процессора ? и на основании этой инфы уже отдает команды что куда ?
То есть mainline должно от u-boot - получить значения регистров процессора ? и на основании этой инфы уже отдает команды что куда ?
- Sergo67
- Кандидат
- Сообщения: 86
- Зарегистрирован: 08 дек 2017, 11:39
- Репутация: 14
- Настоящее имя: Сергей
- Откуда: Шахты
- Контактная информация:
Re: LinuxCNC + Orange Pi
Под катом тест модуля, хотя оффтоп, конечно
- MX_Master
- Мастер
- Сообщения: 7473
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3098
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: LinuxCNC + Orange Pi
Скорее всего, я сделаю такой вариант - в папку /boot я положу 2 файла. Первый файл - прошивка сопроцессора, а второй - скрипт для u-boot, который эту прошивку заливает и запускает. Мой скрипт будет запускаться из основного скрипта /boot/boot.scr. Причём, основной скрипт даже редактировать не надо. Это сильно упростит установку на уже собранные и готовые образы.straga писал(а):Круто.
То есть mainline должно от u-boot - получить значения регистров процессора ? и на основании этой инфы уже отдает команды что куда ?
Повозиться, канеш, придётся. Изучаю ща u-boot и все его инструменты командной строки. Если всё сложиться удачно, выложу здесь тестовый примерчик. Помигать лампочками, или типа того.
- MX_Master
- Мастер
- Сообщения: 7473
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3098
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: LinuxCNC + Orange Pi
Товарищи, на нашей улице, всё-таки, перевернулся камаз с ништяками
Не прошло и пол года как оно ЗАРАБОТАЛО!
Накатал я скрипт для загрузчика (u-boot). Скрипт успешно загружает ARISC прошивку в нужную область памяти и запускает сопроцессор. Всё проверено раз 10 на нашем образе системы с mainline ядром. Всё работает. Всем, кто желает приобщиться и проверить как это работает, читаем далее..
Для проверки достаточно скопировать содержимое архива в папку /boot от имени админа.
И просто перезапустить апельсинку. Архив:
Тестовая прошивка просто мигает двумя светодиодами каждую секунду. Исходники прошивки:
https://github.com/MX-Master/h3-firmwar ... .c#L54-L66
Исходник скрипта для u-boot:
https://github.com/MX-Master/h3-firmwar ... /fixup.cmd
Не прошло и пол года как оно ЗАРАБОТАЛО!
Накатал я скрипт для загрузчика (u-boot). Скрипт успешно загружает ARISC прошивку в нужную область памяти и запускает сопроцессор. Всё проверено раз 10 на нашем образе системы с mainline ядром. Всё работает. Всем, кто желает приобщиться и проверить как это работает, читаем далее..
Для проверки достаточно скопировать содержимое архива в папку /boot от имени админа.
И просто перезапустить апельсинку. Архив:
Тестовая прошивка просто мигает двумя светодиодами каждую секунду. Исходники прошивки:
https://github.com/MX-Master/h3-firmwar ... .c#L54-L66
Исходник скрипта для u-boot:
https://github.com/MX-Master/h3-firmwar ... /fixup.cmd
- Sergo67
- Кандидат
- Сообщения: 86
- Зарегистрирован: 08 дек 2017, 11:39
- Репутация: 14
- Настоящее имя: Сергей
- Откуда: Шахты
- Контактная информация:
Re: LinuxCNC + Orange Pi
Обязательно поморгаю , пины 10 и 15, как я понял?