Цитата(jcxz @ Feb 28 2018, 16:59)
А что будет если линух не отдал вовремя время задаче, считающей и кладущей в эти регистры. И линух, как тут уже упомянули, это вправе сделать - он не реалтайм ОС.
Для этого Вам надо на линухе развернуть подсистему реального времени по типу
https://xenomai.org/ . А уже потом заниматься остальной обработкой. Просьба не надо только писать что это всё херня и тп - лучше сразу писать я так не смогу - ибо не умею, а на кодеров денег не хватит.
Именно на основе этой подсистемы реального времени довольно известная железяка может управлять кучей двигателей и продаётся по всему миру. Никаких пропусков чтений из регистров - тут уж извините вопрос правильно заточенных рук, приложенных к разработке
Цитата(a123-flex @ Feb 28 2018, 20:23)
и сколько интересно будет стоить такая разработка, и такое серийное изделие ?)
скажем по другому: во сколько десятков раз это будет дороже исходного варианта ?)))
Ну явно не как опенсорс проект в свободном доступе из интернета. Он будет дороже - но гораздо правильнее и проработаннее, заточенный под задачу. Но это уже не нам решать, а топикстартеру. Он инвестор и ему мыслить куда и как свои деньги вкладывать. Я только дал один из путей развития проекта, более правильный с точки зрения производства законченного продукта.
Разработку прошивки плис с периферией можно сделать за 100-200 тысяч рублей ( Не в Москве, естественно не в Москве - там за еду не работают).
ТОПИКСТАРТЕРУ если Вам нужно только дёшевое на опенсорсное сделать и стартапнуть то можете не читать все что дальше.
Цитата(baritono @ Mar 1 2018, 00:20)
RK3399 тут некоторые недооценивают. У него есть таймеры и другие фичи, характерные для контроллеров:
Мы его не недооцениваем. Попытаюсь донести ещё раз. У него много фич характерных для контроллеров - да. У него нет фич характерных для приложений УПРАВЛЕНИЯ ЭЛЕКТРО ДВИГАТЕЛЯМИ. У этого камня 4 канала ШИМ - и всё приплыли как Вы к нему 4 мотора то будете приделывать? Как Вам выше написали у него нет синхронных АЦП он не под это заточен.
Но тем не менее Вы на этом чипе можете обсчитать кучу моторов и фоновых задач. Для этого
1. Вам необходимо будет разработать периферию, работающую с моторами в реальном времени (ШИМ, токи, обратная связь, обработка приоритетных входов)
2. Вам необходимо накатить на Ваш линукс RTOS
3. Написать остальное
Выше Вам намекнули, что это удовольствие как бы не из дешёвых, Вы сами программист и ситуацию на рынке труда представлять должны. Хорошие схемотехники тоже на дороге не валяются
Именно по этому Вам и пишут что возьмите специализированные контроллеры от ТI и других производителей. TMS320F28377D позволит Вам одновременно управлять 4-я моторами, поддержка есть, примеры есть, алгоритмы есть, всё есть. Хотите по EMIF соедините его с каким нибудь контроллером. Вами всё равно уже принято решение с нуля делать.
Не хотите так возьмите SoC типа Zynq-7000. Благо их сейчас у Всех как собак нерезаных и корки для мотор контрола и платно и бесплатно дают. Будут у Вас ядра ARM9 ( хотя надо ли оно Вам) и периферию потребную сделаете. И будет у Вас всё на одном камешке.
PS. Я Вам может секрета и не открою - Вы совершаете одну поголовную ошибку стартаперов вышедших из SOFTWARE. И ошибка эта следующая - жизненный цикл проекта SOFTWARE вообще не то же самое что жизненный цикл проекта HARDWARE. Почитайте в чём разница и осмыслите ещё раз. Вас как программиста может уберечь от многих граблей.
Так что фильтруйте кучу потока сознания с форума и слушайте что Вам специалисты из предметной области говорят. После этого пишите ТЗ и проработайте его со специалистами -много сэкономите времени и нервов.
Немного полезного офтопа
На данный момент я наблюдаю бум идей и стартапов из программистской среды. И все поголовно суют туда ардуино, распберри и прочие конструкторы и опенсорс приложения. И почти поголовно стартаперы не понимают сути и специфики реализации железа для вопроса в котором начинают стартап на конструкторах ваять.
Для примера из последних перлов. Заказчик говорит мне нужно с распберри связать по USB атмегу которая АЦП будет опрашивать и данные в распберри передавать. Ну ладно хозяин барин. Начинаем вникать - задача опросить 10 АЦП по SPI и передать в распберри со скоростью чуть ли не раз в секунду. Задаём вопрос - а накой USB то. Ответ - а я по другому не умею и по I2C не смогу с атмегой пообщаться. В результате проект упростили вдвое, кучу изначальных решений выкинули по причине их бредовости и избыточности, написали кусок кода на питоне для работы с мегой и все счастливы. Только Мы кучу времени лишнего убили.
Ну я и понаписал...
ГЫЫЫ... Сами пилим сейчас приложение где 2 мотроа VESC ом управляются. Не самое удобное решение для вписывания его в требования конструктива. И всё те же вопросы с заказчиком которые описал выше.