做一个机器人需要什么知识?

万俟淋曦
人工智能领域优质创作者
博客专家认证
2023-06-02 23:08:07
加精

 

一、机械部分

想要做一个机器人,首先要先想一下他长什么样子,拿铅笔大致勾勒一下,比如这种(百度的图):

 

 

啊,这属于工业设计的范畴了,这一部分后面说,不会工业设计的机械工程师不是一个好研发,哈哈。

设计外壳的同时要考虑内部结构的空间,所以这只是一个概念图。

另外就是内部的传动机构,每个关节是使用电机,还是拉线,还是气动,都要设计好。

要把构思画成3D模型,在仿真软件中校验验证结构的合理性,并作优化。

这些需要了解《画法几何》《机械制图》《机械原理》《机械设计》《理论力学》《材料力学》《有限元分析》等,软件需要学习一个3D建模软件,比如SolidWorks,模型渲染可以用 KeyShot。

 

二、电气部分

主要是电机控制方面,电机驱动器、整个机器人各部分电源控制呀等等,你要选一款单片机,常用的有stm32、arduino等等,如果要做成上下位机的结构(单片机作为下位机),还要选一个上位机,一般是微型电脑,小型实验性或者说DIY的机器人,一般选 Nvidia Jetson Nano、Raspberry Pi 等资料丰富易上手的,工业级机器人就各显神通了,不过大致框架也还是上下位机,顶多就是单上位机多下位机,或多上位机多下位机,

一般下位机做运动控制、数据采集等一些离硬件比较近的工作,上位机做复杂运算处理(比如导航算法/视觉处理/决策运算/逻辑处理等),也可以直接使用一个微型电脑,不要下位机,因为好多微型电脑都有引脚引出,就是怕后期外设多了引脚不够用,还是建议上下位机的结构。

这里最好选好硬件后,学习专门的硬件,会用就行,有好多教你从零做机器人的书,可以看一下有个大致了解。

需要了解的专业知识包括数电,模电,微机原理,电路原理,自动控制原理(现代控制工程),信号系统,电机拖动,传感器等。

 

三、控制部分

这部分给机器人注入灵魂,也就是往上下位机里写程序。

首先是运动控制,也就是控制电机,需要学习单片机编程,一般是C语言。

上层的逻辑控制,有用C++的也有用python的,不同语言适用于不同业务层的开发。

这一部分要涉及到算法,如果需要明白原理就要学习数学,高等数学三座山(微积分/概率统计/线性代数),不需要就学学怎么用就行,开始建议只学怎么用。

专业知识包括:编程语言(c/c++是基本必须的,python的话做智能算法会用到),数据结构,计算机组成原理,计算机网络,操作系统,数据库等;数学:微积分,线性代数,概率论等。

 

四、其他

以上都是基本必须的基础学科,还有建立在这些之上的一些知识,比如人工智能相关算法(机器学习、深度学习等),视觉和语音处理方面的知识,运动控制算法,导航算法,ROS等。

还有关于外观外形设计的东西,比如工业设计,色构、平构、立构等。

如果机器人直接服务于人,设计的时候,还需要考虑一些心理学的问题,比如

 

 

自己做的话肯定会遇到很多困难,建议找一个比较懂的人带你,学起来会快一些。

总之,要先对整个知识体系有个整体的概念,再分部分去学习。

建议去图书馆读一下Springer版的《机器人手册》,不建议买,就是个科普的书。

 

如有欠缺,欢迎评论区留言。

 

...全文
517 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复

需要学的太多了

42,698

社区成员

发帖
与我相关
我的任务
社区描述
旨在分享机器人领域相关技术,帮助大家提升机器人领域相关能力,为我国机器人研发与制造领域添砖加瓦。 欢迎大家在这里分享技术博客,提问机器人相关问题,一起学习,共同进步。如问题帖长时间无回复,可加群交流。
机器人人工智能科技 个人社区 浙江省·杭州市
社区管理员
  • 万俟淋曦
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

旨在分享机器人领域的相关技术,帮助大家提升机器人领域相关的技术能力,为我国机器人研发与制造领域添砖加瓦。

包括但不限于以下相关技术方向:Linux、ROS1、ROS2、OpenCV、Deep Learning、Machine Learning、Eigen、Qt等等。

大家可以在这里分享技术博客,提问机器人相关问题。

【社区积分规则】

  • 在社区「发布内容」得 15 积分
  • 内容被管理员「加精」得 20 积分
  • 点赞他人内容得 2 积分
  • 评论内容得 5 积分

试试用AI创作助手写篇文章吧