说您唯一的计算机技能是使用C / C ++编程...要成为一名熟练的全栈机器人专家,您需要学习所有知识,他可以单手从头开始构建自主/ AI机器人(硬件,固件和软件)。您将如何建立自己的课程?您是否知道任何免费或廉价的在线资源可以教这些东西?谢谢

评论

根据现有的课程履历,全栈机器人学家Phd来自与美国一所古典大学紧密相连的互联网。它与参加像CMU或MIT这样的技术大学的研究生课程有关,世界上很少有人可以这样做。无法获得廉价的在线资源来成为博士生而无需参加官方课程。当然,仅通过Internet资源就可以获取相同的知识,例如在Google Scholar中阅读一些论文,但这不会成为博士后的职业。

#1 楼

机器人技术是机械工程,电子工程和软件工程的混合体!知道C ++是这方面的重要起点!因为我坚信,在这三种工程类别中,软件是开发自主机器人时最多花费的时间。

因此,开始学习计算机辅助设计!因此,您可以设计机械零部件。我推荐Solidworks!还可以使用其他软件,例如Inventor和Creo。

构建机器人的机械设计组件将是一个非常反复的过程,您可以不断修改设计,直到满意为止。

我认为从电子产品入手的最佳方法是购买Arduino套件或Raspberry Pi套件。然后,跟随在线教程。相信我有堆!这将帮助您了解如何对电子组件进行编程以及如何选择它们。

那么您将需要有关电子的大量知识。如何选择执行器,电池,合适的传感器,以及如何以最有效的方式集成所有执行器。您可以通过在诸如此类的论坛上发布信息或进行一些谷歌搜索来了解如何执行这些操作。因此,一旦进行了机械设计,就可以组成一个简单的组件框图。一旦有了这些,选择正确的组件并绘制一个简单的接线图。一旦有了这些,就可以使用面包板将其连接起来,并通过RPi上的Arduino代码或python脚本测试组件是否正常工作。一旦您更有信心,就从Vero电路板设计开始。如果您想使用更先进的软件,请使用Eagle CAD之类的软件,并将您的布线设计为印刷电路板,然后发送到中国进行小批量生产。设计PCB减少了您必须要做的大量布线,并减少了浪费的空间,也使查找故障变得容易。

关于软件或算法,我建议阅读一些有关您感兴趣的相关主题的研究论文,以了解这些概念。您可以在Google学者或研究部门找到这些。另一个学习机器人技术的好平台是Peter Corke的机器人学院。他讲解了一些最基本但最重要和最先进的机器人技术概念和相关数学。

由于您已经了解C ++,因此我强烈建议您使用ROS。在ROS中,您可以在RViz中建模和仿真机器人。您可以编写多个脚本来模拟用于同时定位和映射,避开障碍物,进行星形路径规划等的算法。这将帮助您更快地理解算法,因为您实际上是在练习这些概念。

这里有一些链接来学习我过去使用的ROS。

https://levi-armstrong.github.io/

http://docs.ros.org/kinetic/api/moveit_tutorials/html/index.html

关于自主机器人的硬件:

这些机器人主要需要机械转向,电池,执行器和传感器的设计。了解有关移动机器人的各种转向机构的更多信息,例如Ackermann转向,Omni方向性转向,Mechanum Wheeles转向等。这将帮助您进行机械设计,因为您打算建造一个地面机器人。

然后花一些时间思考机器人如何感知周围的世界。这可以通过LIDARS,SONARS,IMU,编码器,摄像机,立体声摄像机等来完成。 / capabilities,您可以选择要使用的确切算法。

此外,您可能还想为自己配备一些工具,例如3D打印机,手动工具,电动工具,烙铁,万用表,台式电源以及也许是低成本的示波器。

希望所有这些都有帮助!

#2 楼

成为机器人专家有以下几个方面:


是有关机器人感知的理论知识(通过照相机,信号处理和机器学习等传感器了解世界),计划(如何机器人应该移动)和动作(事物如何在空间中运动,运动学,动力学,控制理论,强化学习等)。有很多资源用于学校/业余爱好者或毕业生,而两者之间没有太多资源。我要谦虚地建议您看一下QUT机器人学院,该学院提供200多个免费的在线视频课程,这些课程针对的是针对大学本科生的,围绕手臂机器人和视觉的一系列主题,并且至少可以使您对一些技术概念有所了解,并能帮助您开始成为机器人专家。
我对技术或技能的看法是,能够进行编码,如今这些天还熟悉Python,C ++,OpenCV,PCL,ROS,Tensorflow等常用工具/ Torch等。@ JJerome的帖子与ROS资源有很好的链接。
了解您所做工作的道德规范和社会影响。