Всем привет!
Давно пытаюсь в качестве хобби что-нибудь создавать в сфере робототехники, но ничего полезного и интересного не создал.
Проблемы вижу две:
- неправильный процесс разработки (то одно, то другое, нет последовательности),
- недостаток знаний (копипаст кода, схемотехнических решений выручает редко).
Вообще по-нормальному, наверное, нужно бы поступить в вуз на специальность, вроде: "Радиотехника" или "Электроника и микроэлектроника", и закончить его. Но нет возможности вновь стать студентом, нужно работать.
Уважаемые инженеры, если вам не сложно, пожалуйста помогите составить что-то вроде "Дорожной карты" (Roadmap), чтобы системно и основательно научиться робототехнике?
Я готов и 5 лет все изучать, если буду понимать, что все это мне нужно. А не так, что копипастнул Wiring-код для Ардуино, собрал схему на макетке на проводках, прошил, она вроде работает, а что делать дальше - непонятно, чтобы из чужого проекта с Ардуино создать, например, какого-то полезного робота.
Думаю, не только мне это будет полезно, но и другим новичкам, которые тоже хотят стать робототехниками и не знают с какой стороны взяться за эту сложную, составную задачу.
Давайте я напишу, как представляю себе эту Roadmap, а вы, пожалуйста, критикуйте и дополняйте. Большое спасибо!
Roadmap Робототехника
1. Радиотехника
Задача: Научиться создавать навесным монтажом и на печатных платах радиотехнические схемы.
Решение: Книга "Юный радиолюбитель" Попова, практика с рассыпухой радиоэлектронных компонентов.
Результат: Уметь создавать электронные схемы, монтаж, отладка.
2. Микроконтроллеры - Arduino - Программирование
Задача: Изучить диалект ANSI C - Wiring.
Решение: Любой курс по Wiring4Arduino.
Результат: Уметь писать скетчи для схем с Arduino.
3. Микроконтроллеры - Arduino - Hardware
Задача: Научиться создавать схемы с Ардуино, модулями и рассыпухой компонентов.
Решение: Книга по Ардуино.
Результат: Уметь создавать схемы на Ардуино, модулях, шилдах, рассыпухе компонентов.
4. Микрокомпьютеры - Программирование
Задача: Научиться писать программы для Embedded Linux и FreeRTOS, устанавливаемых на микрокомпьютерах (например, Orange Pi Zero (CPU: AllWinner H2+, 256MB RAM, Wifi, Ethernet, USB и т.д.).
Решение: Изучить уже "чистый" ANSI C, библиотеки для работы с интерфейсами: I2C, SPI, GPIO.
Результат: Уметь писать программы для Linux и FreeRTOS (либо других выбранных ОС для микрокомпьютеров), умеющих взаимодействовать с подключенным hardware.
5. Микрокомпьютеры - Hardware
Здесь уже, наверное, ничего уметь не нужно, т.к. опыт с радиоэлектроникой и Ардуино помогает. Может изучить работу с GPIO.
6. Механика
Задача: Научиться чертить и проектировать в 3D-редакторе механические узлы роботов.
Решение: Пройти и закрепить на практике курс черчения для техникумов. Освоить параметрический 3D-редактор (SolidWorks, Kompas 3D, OpenSCAD, TinkerCAD или любой другой, главное, чтобы уметь им пользоваться и создавать точные твердотельные 3D-модели под заданные на чертежах параметры).
Результат: Черчение эскизных (концепт), проектных (без соблюдения соотношения размеров, сложные узлы), рабочих (ясные техзадания для работы "в металле") чертежей, проектирование твердотельных 3D-моделей для ЧПУ-станков и 3D-принтеров.
Большое спасибо за ваши ответы!