Search
Write a publication
Pull to refresh
43
25

Систематический программист

Send message
Я пытаюсь снизить порог входа.

Если это являеться вашей целью — то я готов вам помочь.


Как бы минимальная сборка Ubuntu Core весит ~800М, так может надо научить людей не ставить ROS на убунту, а научить собирать ROS ?

Цитату пожалуйста из которой вы сделали такие глубоко идущие выводы, я перечитал не раз и не два, чтобы убедится. Я често говоря думал, что вы заблуждаетесь, теперь я думаю, что вы просто не разбираетесь в предмете.


И цитату конкретную, а не ссылку на всё что оказалось в радиусе действия.

"Да, статья техлида имеет место быть."


То есть marketing bullshit?


Простите, а вы тогда в статьях про ROS тележку какое участие принимали ?

И нет. Я вообще то пошел вам навстречу — вы могли сказать "корова не моя" — ну ок.


В каком месте про ROS 1/2 поднимается вопрос в одном контексте real-time и Wifi, Ethernet?


Вас не смущает то что это физический уровень транспорта, а ROS как бы надстройка и использует возможности ОС ?

Real-time это прежде всего ОС. Еще раз официальная цитата:


Support for real-time
ROS 1 does not support writing real-time code but relies on external frameworks like Orocos. In ROS 2 it will be possible to write real-time nodes when using a proper RTOS and with carefully written user code.

в данном направлении еще ведется

В каком "данном" — они собираються писать свою операционную систему ?

И заметьте я обошел вниманием фразы про "отчасти касается возможностей Wi-Fi, Ethernet". Потому что первый мой вопрос будет, "А что именно вы понимаете под этими терминами ?"

Первая ссылка (https://design.ros2.org/articles/realtime_background.html) которую вы дали это просто одно из определений системы реального времени (далеко не самое правильно кстати), и рекомендации по написанию программ в user-space, это к ROS отношение не имеет. ROS не являеться ОС — это фактически просто набор программ.


Вторая ссылка — извините не увидел ничего существенного.

Сударь, мне очень понравились ваши статьи ваши статьи про ROS тележку и я очень благодарен за ваш вклад, но эта статья выглядить как marketing bullshit.


Откуда вы вообще взяли эту картинку?


Разбираем по полкам (http://design.ros2.org/articles/changes.html):


C++ standard
The core of ROS 1 is targeting C++03 and doesn’t make use of C++11 features in its API. ROS 2 uses C++11 extensively and uses some parts from C++14. In the future ROS 2 might start using C++17 as long as it is supported on all major platforms.

Официальная цитата. Ключевое major platforms — ну и собственно что? Свой узел я могу написать на любом стандарте, который позволяет мне компилятор — сейчас gcc 10.0, если что вышел, рабочий 9.4. Опять же компилятор вместе с ROS не ходит.


Support for real-time
ROS 1 does not support writing real-time code but relies on external frameworks like Orocos. In ROS 2 it will be possible to write real-time nodes when using a proper RTOS and with carefully written user code.

Сам по себе ROS никакой "real-time" дать не может, слова Windows 10!!! и real-time по крайней мере вызывают недоумение. Ключевые слова "proper RTOS" и "carefully written user code". Даже Linux является реалтайм системой со знаменитыми патчами (которые уже вроде полностью в ядре) только сферическим в вакууме, не говорю, что это вообще не возможно, но кланяюсь людям, которые действительно его сделали для целевых задач real-time.


Python packages
In ROS 1 a package with Python code can only use a small subset of the features available in setup.py files since the setup.py file is being processed by custom logic from within CMake. In ROS 2 a Python package can use anything in setup.py files, e.g. entry points since they are being invoked with python3 setup.py install.

Здесь пояснять не надо.


— реализуется уровень ROS архитектуры для работы с «железом» напрямую

Этот момент даже комментировать не хочется. Прерывания тоже в user-space будете обрабатывать?

И третье, пожалуй, основное ограничение ROS1 — данная система не является real-time системой. Это в первую очередь проявляется в том, что скорость работы в сети различна, в зависимости от того, используется ли Ethernet или WI-FI.

А вот тут поподробнее пожалуйста, причем тут Ethernet или WI-FI? Вы таки хотите сказать что по uart данные не теряются? Абсолютно неочевидно, что всякий Ethernet быстрее всякого WI-FI.


А если все узлы на одной машине то ROS1 сразу становиться real-time ?


Что в свою очередь, приводит к задержкам в получении данных и их потере.

Каким образом? Там UDP что ли использован для передачи?


А TCP/IP в приципе не может быть real-time by design.


И какой real-time имеется ввиду ?

Не хотелось составлять длинный нудный список использованных работ, в конце концов гугл есть у всех.

А вот этого не могу одобрить. Список литературы — это может быть еще и список рекомендуемый автором к ознакомлению по данной теме.

Спасибо за ваш комментарий, статья это конечно громко сказано, скорее код с комментариями. Так, что здесь цель небольшой популяризации, по крайней мере полезно знать, что есть еще один способ сделать какую то вещь, пусть даже и не сложную.

Вы уверены, что это должно быть в хабе "Системное программирование" ?


system programming

Но вообще говоря сильно зависит от производителя камня. У texas отличные инструменты для pinmux, NXP тоже догоняет. А вот если плохо с документацией на камень, тогда все очень печально.
Ну вот тогда вам и флаг в руки :-D со статьёй. В моей практике не так часто приходится, что-то принципиально новое разводить.
Так большинство, по-моему, идет. На самом деле если глянуть, то все SoM, SoC в большинстве своем калька с Evaluation Board.
Не так уж много делают новых плат — да и зачем.
А что конкретно в Device Tree вас интересует? Что именно непонятно?
В порядке бреда — развивая тему:

1) Ввести возможность ежемесячной платной подписки на хаб.
2) В рамках определенного периода распределять «призовой фонд» пропорционально вкладу в рейтинг Хаба.

Information

Rating
562-nd
Location
Москва, Москва и Московская обл., Россия
Works in
Registered
Activity