Ethernet контроллер для LinuxCNC (STM32, FPGA)
- MX_Master
- Мастер
- Сообщения: 7476
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3099
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: Плата развязки для LinuxCNC (Ethernet + STM32)
Отсюда можно сделать вывод, что к Tcl/Tk маркетологи приложи явно не руку, а кое что другое. И понятно почему. Если что-то нельзя "продать", то заниматься этим почти никто и не будет.
- Serg
- Мастер
- Сообщения: 21923
- Зарегистрирован: 17 апр 2012, 14:58
- Репутация: 5181
- Заслуга: c781c134843e0c1a3de9
- Настоящее имя: Сергей
- Откуда: Москва
- Контактная информация:
Re: Плата развязки для LinuxCNC (Ethernet + STM32)
Но не смотря на это он активно пользуется в серьёзных коммерческих и профессиональных продуктах. Например Altium Disigner, Siemens NX, Quartus, внутри Cisco IOS (встроенный софт маршрутизаторов/комутаторов) и т.п.
В LinuxCNC на нём можно писать HAL-конфиги.
В LinuxCNC на нём можно писать HAL-конфиги.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
- MX_Master
- Мастер
- Сообщения: 7476
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3099
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: Плата развязки для LinuxCNC (Ethernet + STM32)
На нём получаются самые легкие интерфейсы (:
-
- Кандидат
- Сообщения: 49
- Зарегистрирован: 25 май 2016, 13:55
- Репутация: 11
- Контактная информация:
Re: Плата развязки для LinuxCNC (Ethernet + STM32)
MX_Master
Посмотри пожалуйста в сторону готовой платы NVUM 6Axis CNC Controller. Может её лучше под LinuxCNC заточит?
Она построена на STM32F207VCT6 , есть сеть и почти всё необходимое для ЧПУ. Здесь на форуме её обсуждали и даже схемку выложили и нашли сервисный разъем для перепрошивки.
Китайцы такую плату-контроллер за 3500 рублей продают.
Посмотри пожалуйста в сторону готовой платы NVUM 6Axis CNC Controller. Может её лучше под LinuxCNC заточит?
Она построена на STM32F207VCT6 , есть сеть и почти всё необходимое для ЧПУ. Здесь на форуме её обсуждали и даже схемку выложили и нашли сервисный разъем для перепрошивки.
Китайцы такую плату-контроллер за 3500 рублей продают.
-
- Кандидат
- Сообщения: 49
- Зарегистрирован: 25 май 2016, 13:55
- Репутация: 11
- Контактная информация:
Re: Плата развязки для LinuxCNC (Ethernet + STM32)
Да, оно. Лимит явно софтовый, что смогли сделать китайцы для 6 осей.
Вот ссылка на внутренности контроллера Re: Помогите разобраться, контроллер DDLMV1 #141
И схема его Re: Помогите разобраться, контроллер DDLMV1 #150
Вот ссылка на внутренности контроллера Re: Помогите разобраться, контроллер DDLMV1 #141
И схема его Re: Помогите разобраться, контроллер DDLMV1 #150
- MX_Master
- Мастер
- Сообщения: 7476
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3099
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: Плата развязки для LinuxCNC (Ethernet + STM32)
Внимательно изучил разводку на плате и сравнил её с функциональной разводкой пинов STM32F207VCT6. И у меня плохая новость. Народные умельцы Китая генерируют step/dir не аппаратно, а программно. Большинство пинов, которые идут на step/dir, так или иначе не связаны с аппаратными таймерами. Отсюда и программный лимит в 200 КГц, что ещё не факт при одновременном выводе 6 осей.Quark писал(а):Да, оно. Лимит явно софтовый, что смогли сделать китайцы для 6 осей.
Вот ссылка на внутренности контроллера Re: Помогите разобраться, контроллер DDLMV1 #141
И схема его Re: Помогите разобраться, контроллер DDLMV1 #150
Куда подключены входы не стал смотреть. Оптроны на входе довольно медленные (фронт и спад минимум по 5мкс). Могу поспорить, что функциональная разводка входных пинов сделана так, что половина из них не попадёт на нужные аппаратные входы для энкодеров.
Вощем, выводы неутешительные.
- Сергей Саныч
- Мастер
- Сообщения: 9116
- Зарегистрирован: 30 май 2012, 14:20
- Репутация: 2857
- Откуда: Тюмень
- Контактная информация:
Re: Плата развязки для LinuxCNC (Ethernet + STM32)
Большинство драйверов ШД больше 200 кГц не примут.
Что до программной генерации - у меня в одной поделке (на STM32F072, 48 МГц) на генерацию одного шага вместе с выдачей и подсчетом шагов с учетом направления уходит около 40 тактов.
А при частоте 120 МГц эти 40 тактов выльются в 333 нс на канал. На 6 каналов - 2 мкс.
Итог - 200 кГц на 6 каналов программно выдать можно легко, да еще 60% времени на всё прочее останется.
Что до программной генерации - у меня в одной поделке (на STM32F072, 48 МГц) на генерацию одного шага вместе с выдачей и подсчетом шагов с учетом направления уходит около 40 тактов.
А при частоте 120 МГц эти 40 тактов выльются в 333 нс на канал. На 6 каналов - 2 мкс.
Итог - 200 кГц на 6 каналов программно выдать можно легко, да еще 60% времени на всё прочее останется.
Чудес не бывает. Бывают фокусы.
- MX_Master
- Мастер
- Сообщения: 7476
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3099
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: Плата развязки для LinuxCNC (Ethernet + STM32)
Это прекрасно. Но делать так на МК, где есть 12 аппаратных таймеров - неразумно.
-
- Мастер
- Сообщения: 1949
- Зарегистрирован: 10 окт 2015, 23:25
- Репутация: 284
- Настоящее имя: Андрей
- Откуда: Красноярск
- Контактная информация:
Re: Плата развязки для LinuxCNC (Ethernet + STM32)
а что ноги дрыгать по прерываниям таймеров проблема? может оно и не тру, но вполне реально.
- MX_Master
- Мастер
- Сообщения: 7476
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3099
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: Плата развязки для LinuxCNC (Ethernet + STM32)
Импульсы с AB энкодеров можно тоже вручную считать, может оно и не айс, но вполне реально.
Данные по Ethernet можно тоже вручную передавать, может это не айс, но вполне реально.
Можно всю аппаратную периферию заменить на программную и отрабатывать ее в основном цикле и по прерываниям, может это не айс, но вполне реально.
А ведь можно обойтись и без внешней платы развязки..
Данные по Ethernet можно тоже вручную передавать, может это не айс, но вполне реально.
Можно всю аппаратную периферию заменить на программную и отрабатывать ее в основном цикле и по прерываниям, может это не айс, но вполне реально.
А ведь можно обойтись и без внешней платы развязки..
-
- Мастер
- Сообщения: 1949
- Зарегистрирован: 10 окт 2015, 23:25
- Репутация: 284
- Настоящее имя: Андрей
- Откуда: Красноярск
- Контактная информация:
Re: Плата развязки для LinuxCNC (Ethernet + STM32)
вот я бы не утрировал...
- Сергей Саныч
- Мастер
- Сообщения: 9116
- Зарегистрирован: 30 май 2012, 14:20
- Репутация: 2857
- Откуда: Тюмень
- Контактная информация:
Re: Плата развязки для LinuxCNC (Ethernet + STM32)
Это концепция "виртуальной периферии". Реализована, например, в МК Scenix (Ubicom, Parallax).MX_Master писал(а):Можно всю аппаратную периферию заменить на программную и отрабатывать ее в основном цикле и по прерываниям
я на них как подсел лет 20 назад (50-100 МГц тактовой, при 1 такте на большинство операций - по тем временам для МК невероятно круто), так до сих пор толком не могу слезть
Чудес не бывает. Бывают фокусы.
-
- Мастер
- Сообщения: 516
- Зарегистрирован: 21 янв 2012, 00:23
- Репутация: 32
- Откуда: Ивано-Франковск
- Контактная информация:
Re: Плата развязки для LinuxCNC (Ethernet + STM32)
Искал китайский клоны S7-200 (https://ua-tao.com/item/13132413992?ld= ... ODc4In0%3D) а нашел интересный проект под STM32 GUTTA Ladder Editor - http://www.plcol.com/products/ec30ekstm32.htm . Здесь и поддержка 8051 и AVR , и Cortex . А ведь китайский клон Митсубиши FX3U как раз на 103-ей STM . Вот и готовый редактор PLC под Linux .
- MX_Master
- Мастер
- Сообщения: 7476
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3099
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: Плата развязки для LinuxCNC (Ethernet + STM32)
После продолжительных размышлений подобрал под этот проект готовую демо платку. Плата будет выполнять роль МОЗГа. Она будет втыкаться сверху непосредственно в плату развязки.
Waveshare XCore407I
Если закупаться в глубоком Китае, платка обойдётся не дороже 30$. На борту установлен богатейший многолапый проц (STM32F407IGT6) и все необходимое для полноценной работы с USB и Ethernet. Бонусом на борту имеется флэшка на 128 Мб.
Также планирую заюзать эту платку и под отдельный ЧПУ контроллер с веб-интерфейсом. Т.к. разные варианты прошивки можно будет заливать через веб-интерфейс, у будущих пользователей всегда будет выбор. Либо юзать с LinuxCNC, либо как отдельный контроллер или PLC.
Если в платке Waveshare XCore407I что-то меня не устроит, на очереди есть уже два других варианта - платка NUCLEO-F767ZI (30$) и просто отдельный проц STM32H750XBH6 (11$). Последний вариант - самый выгодный по соотношению цены к производительности. Но платку под него надо будет делать самостоятельно.
Waveshare XCore407I
Если закупаться в глубоком Китае, платка обойдётся не дороже 30$. На борту установлен богатейший многолапый проц (STM32F407IGT6) и все необходимое для полноценной работы с USB и Ethernet. Бонусом на борту имеется флэшка на 128 Мб.
Также планирую заюзать эту платку и под отдельный ЧПУ контроллер с веб-интерфейсом. Т.к. разные варианты прошивки можно будет заливать через веб-интерфейс, у будущих пользователей всегда будет выбор. Либо юзать с LinuxCNC, либо как отдельный контроллер или PLC.
Если в платке Waveshare XCore407I что-то меня не устроит, на очереди есть уже два других варианта - платка NUCLEO-F767ZI (30$) и просто отдельный проц STM32H750XBH6 (11$). Последний вариант - самый выгодный по соотношению цены к производительности. Но платку под него надо будет делать самостоятельно.
Последний раз редактировалось MX_Master 22 окт 2018, 22:56, всего редактировалось 1 раз.
- selenur
- Почётный участник
- Сообщения: 4604
- Зарегистрирован: 21 авг 2013, 19:44
- Репутация: 1621
- Настоящее имя: Сергей
- Откуда: Новый Уренгой
- Контактная информация:
Re: Плата развязки для LinuxCNC (Ethernet + STM32)
Очень к стати интересный контроллер, я давно на STM32F429I-DISCO плате делал контроллер для выжигания, он правда управлял не шаговыми моторами, а гальвосканерами, так там на борту было всего 64 Мбита памяти (8 мегабайт), но с учетом бинарной упаковки, данных для выжигания хватало с лихвой.
А в этом можно вообще развернуться, с таким объемом памяти
А в этом можно вообще развернуться, с таким объемом памяти
Мой сайт: 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
- Мастер
- Сообщения: 7476
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3099
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: Плата развязки для LinuxCNC (Ethernet + STM32)
А может кто знает.. как называются вот такие гребёнки для быстрого крепления проводов к плате? Ничего кроме "terminal" в голову не приходит (: Никак не могу найти
-
- Мастер
- Сообщения: 473
- Зарегистрирован: 25 авг 2018, 10:11
- Репутация: 152
- Настоящее имя: Дмитрий
- Откуда: Киров
- Контактная информация:
Re: Плата развязки для LinuxCNC (Ethernet + STM32)
screwless terminal blockMX_Master писал(а):А может кто знает.. как называются вот такие гребёнки для быстрого крепления проводов к плате?
Тут вероятно что-то типа 141R, KF141R и т.п.
- hmnijp
- Мастер
- Сообщения: 1719
- Зарегистрирован: 20 авг 2017, 15:02
- Репутация: 526
- Настоящее имя: Константин
- Откуда: Ульяновск
- Контактная информация:
Re: Плата развязки для LinuxCNC (Ethernet + STM32)
Там есть такие-же, только в которые тыкать вертикально надо. Они поудобнее немного. У этих рычажки тугие и мелкие, а в коробке-шкафу например, сбоку не подлезешь. Когда поперек давишь боишься или отвертку сломает мелкую, или дорожки оторвет, по этому лежат без дела)
https://ru.aliexpress.com/item/KF141V-2 ... 39771.html