造一台机器人需要哪些技能?

2023-11-08

转自帐号已迁移

大家好,我是小王,是一名刚刚加入机器人队的大学生。

有人说搞机器人特别简单,只要画画图,拧拧螺丝,敲敲代码就可以了。

He tui!要这么容易,每年能有上百支机器人队伍,花十几万挤破了头都抢不到30万奖金吗?

不过,团队有了我这种天才,一定能突破技术、碾压对手、改变历史、创造奇迹,赢走冠军奖杯!

嘿嘿,光是想想就有点小激动呢!

不管了,先设计一台机器人让队友们刮目相看吧!

机器人跟人一样,人有四肢、神经和大脑,机器人有机械结构、电控和算法。

1.机械方向

#画图

首先得会画图。图纸是机械的语言,机械工程师靠图纸传达想法。

而告别“扛着直角尺,卷着A0纸,一根铅笔画一天”的艰苦时代,现在有高效的绘图软件。

比如SolidWorks绘制三维图纸,用3D视图表达机械结构:

SolidWorks界面

还有CAXA绘制二维图纸,平面视角设定尺寸,规划功能模块。承包加工的工人(也有可能是队员)看的也是二维图纸:

CAXA图纸

画完就加工,必须得返工。以我们队伍贫穷的现状,返工导致费时间且不说,加工的钱烧没了,要怎么向学校交代啊!

机智的我打开了仿真软件,在电脑上模拟运动,看机器人会不会出现摔倒、机械结构打架、零件被压弯、越走越歪等情况。

一个模糊的仿真

推荐软件有matlab、ansys和adams。

跑完后,一切顺畅无比,我简直是个天才!看来,离队伍登上领奖台,抱走金奖杯指日可待了!

# 加工实物

为了动手实践(为了省钱),我会自己加工一些零件。

人和动物最大的区别就是人会使用工具,加工也离不开工具。

比如雕刻平面的的板材用雕刻机,做强度较低的零件用3D打印机,坚硬的零件还能用车床铣床加工。

如果你的队伍比较富裕,也可以尝试动手实践,因为加工过程中会发现:“我是脑子被门夹了才会这么设计吧?”,正所谓一举两得,既省了钱,也认识了自身不足。

加工过程中一定要注意安全。选择零件材料也很重要,板子和板子是不一样的,棒子和棒子也是不一样的。

曾经有队伍为了“炫富”,整台机器人都用了碳板,又黑又酷。结果因为太烧钱,全拆了……

还有人仗着学校免费提供3D打印,就打印出一台机器人,结果一撞墙上全碎了……

你说这是何必呢?

听着,不主要承重且精度要求不高的零件,选择PLA材料,主要承重且可能会受到很大的冲击的板状零件,选择碳板。还有很多材料要慢慢学习,举一反三。

PLA材料和碳板

用高压锅煎鸡蛋,用平底锅煮佛跳墙,是没有前途的。

# 知识掌握

以上技能都是双手的功劳,做机械还得靠脑子,不然只能像我一样靠脸吃饭了。

机械原理告诉你怎么想,机械设计告诉你怎么画,机械制造告诉你怎么做,一样不能少。

假设要做连杆机构,机械原理帮你设计机构简图,布置杆件实现运动;机械设计帮你细化机构;最后机械制造指导你加工、拼装起来。

普通人看到这就结束了,而优秀的人还有隐藏分。

力大无穷加分项:

能搬设备搬物资搬机器人、锯木板砸钉子做道具……统统加100分!

省钱过日子加分项:

设计简单易加工的结构、加工后无须返工、能逛淘宝会讲价……什么都别说了,你就是机械的天选之子!

 2.硬件方向 

外壳搭好,就要给它埋线,让机器人会走会跳,简称电控(电子控制)。

# 焊接与布线

焊电路板不是艺术创作,拿起板子就一顿爆焊,而要先设计。

第一步,打开Altium Designer软件

第二步,在图上放置电阻和电容等元件,再用线连起来;

第三步,把图丢给工厂加工。

某开源开发板的PCB图

负责硬件的同学,经常拿着绿油油或黑漆漆的电路板,就是用Altium Designer做的。

# 电路仿真

和机械一样,电路板画完就加工,你不返工谁返工?

电路也可以仿真,一般用Multisim,可以减少原理性错误,节省时间和经费,提高开发速度。

电路仿真

# 设备使用

电烙铁、热风枪拆焊台可以说是电控安身立命的必备技能。当电路板出现损坏的时候,可以直接换块新的用它们更换元件。

电烙铁

# 知识掌握

需要熟练掌握嵌入式与硬件系统开发、电路板设计与布局、开关电源的设计与制作等。

胆大心细加分技能:

焊电路板不虚焊,编写程序不手抖,紧要关头不乱阵,只要一出手,bug全没有。

心灵手巧加分技能:

焊接细小贴片元器件,用镊子精细布线,把机器人当女朋友服侍。

3.嵌入式方向 

# 编程与调试

通上电后,想让机器人乖乖听话,还要让单片机传话。

但是单片机并不能听懂我们的碎碎念,只能听得懂二进制的机器码。

所以,要用Keil软件编写C语言程序,再由他“翻译”成机器码,再下载到单片机里,单片机就会乖乖听话啦。

keil5的开发界面

# 其他助攻

代码写到一半丢了怎么办?改到一半,队长说用回上一版怎么办?觉得队友太菜,想偷偷删掉他的代码怎么办?

Git Kraken能帮到你!

某开源项目的版本控制

它是一个专门存代码的云盘,可以把代码回滚到上一个版本,或是与别人的代码融合起来。

以后你是我,我是你,出了bug一起de。

# 配置底层代码

从前,负责嵌入式的队员只能对底层代码一行行地手动配置,等配置完,别的队伍已经比完赛了。

自从CubeMX出现,我就抱着试一试的心态,下载了一个。

没想到,只需要在界面上点来点去,设置参数,就能生成底层的代码。同时还会生成工程文件,非常便利。

CubeMX

现在,我一口气配置十版程序也不喘气,CubeMX改变了我的码农生活。

写完bug程序后,机器人不一定会完全听话,我们还要甩锅给机械调试机器,就用到调试器、示波器逻辑分析仪

示波器

# 知识掌握

要掌握PID控制等控制理论、C/C++编程基础、通讯协议(串口,I2C,SPI,CAN)、ADC与DAC、滤波算法和基本调试方法等。

4. 算法方向 

只能动、不会思考的机器人,是没有灵魂的。

算法,就是给机器人加上大脑,让它能识别会动脑。

# 编写程序

而算法组,产出内容就是代码(bug),他们不是在写bug,就是在解决写出来的bug。

当你看到他们一脸狰狞盯着屏幕时,不要担心,他们只是被自己的bug气到自闭。

他们要学三种编程语言 :C/C++,Python。

但是最终的程序只有C++。因为训练模型用python更方便,而C和C++很相似,从C转入C++的周期更短。

机器人是一个前人很多行业,他们写了很多封装好的函数在OpenCV(计算机视觉开源函数库),我们直接用就行。

那我不用行不行?人家写好了,你就老老实实用吧!为自己留些时间和金钱,毕竟后面还有大把坑要踩。

写好代码就到了编译,也就是把人能看懂的代码,翻译成机器能看得懂的乱码。

一般用CLion和PyCharm,聪明的同学可以试下MATLAB,或许会有新发现。(试玩留言告诉我好不好用)

编译界面

# 知识掌握

痛恨数学的同学可以先告辞,因为算法需要掌握高等数学、概率论、线性代数、编程基础……

“数学是理工科的根基”,在算法上表现得淋漓尽致,痛彻心扉。

可戳这门课让数百万理科生流泪,可我只想为它鼓掌!感受数学的力量。

知识加分项:

了解卡尔曼滤波,最小二乘法并可以用程序实现,数据结构。这些内容已经远超入门小白,这样的人谁不想要呢?(来了就能马上干活谁不喜欢呢?)

卡尔曼滤波

大神级别加分项:

了解机器学习,深度学习原理。这种人简直是大腿中的大腿!大佬中的巨佬!如果出现在我校,必然要上演一场激烈的抢人大战!

抢人的话术都想好了:

“来我们组!我有包含32万张样本的训练集、各种高性能的计算平台!无论GPU还是CPU统统都能满足你!尽情释放人类的天性!”

必要加分项:

一头浓密的头发,一颗坚挺的肝,还有强如柯南般的大脑,分分钟疏通逻辑解决bug。

大心脏加分项:

不被如洪水般的bug整崩溃,如果崩溃了,也能忍住不砸电脑。

 最后

 我是小王,我终于学会了所有的机器人技术,但我还是没有做好机器人。

因为,一个团队光靠研发是不够的。只有学会管理、互相配合、齐头并进,才能打造最强的机器人战队!

科技界不需要英雄主义,RoboMaster更不需要,学好技术之后,和队友一起创造奇迹吧!

本文由东北大学 T-DT战队撰写,特此感谢!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

造一台机器人需要哪些技能? 的相关文章

随机推荐

  • Linux找回密码

    Linux找回密码 1 开启的时候要尽快点击键盘上下键 选中上面一个 然后输入 e 2 然后点击键盘上下键 找到linux16开头这一行 在行的最后输入 init bin sh 3 接着 输入完成后 直接按快捷键 Ctrl x 进入单用户模
  • CSDN的chatGPT为什么会有很多问题无法回答?

    ChatGPT是一个被OpenAI训练的大型语言模型 它使用机器学习算法 可以根据上下文和用户的输入来回答问题 然而 由于我们的认知有限 有时ChatGPT无法正确理解用户的问题或句子 从而导致它无法给出准确的回答
  • 登录文档服务器,开启登录服务器

    开启登录服务器 内容精选 换一换 如果您已在购买存储库时绑定服务器 文件系统或磁盘 可以跳过此章节 云服务器备份存储库 SFS Turbo备份存储库和云硬盘备份存储库创建后 通过向存储库绑定服务器 文件系统或磁盘来进行备份 复制操作 当混合
  • C++学习之new 与 delete表达式

    new和delete表达式动态创建和释放单个对象 a 基本知识介绍 定义变量时 必须指定其数据类型和名字 而动态创建对象时只需指定其数据类型而不必为该对象命名 取而代之的是 new表达式返回新创建对象的指针 我们通过指针来访问此对象 int
  • 解决ImportError: Could not find the DLL(s) ‘msvcp140_1.dll‘问题

    解决ImportError Could not find the DLL s msvcp140 1 dll 问题 刚安装好tensorflow安装包去试试import tensorflow as ft时 出现错误 错误原因 ImportEr
  • 【项目实战】---需求分析+表关系分析

    SSH 小编初次接触的时候傻傻的以为这个跟SHE有什么关系呢 又是哪路明星歌手 后来才知道小编又土鳖了 原来SSH是这个样子滴 百度百科对她这样阐述 SSH即 Spring Struts Hibernate Struts对Model Vie
  • Python员工离职数据分析

    Python员工离职数据分析 import pandas as pd import seaborn as sns import matplotlib pyplot as plt import warnings warnings filter
  • 2022年国际土木与海洋工程联合会议(JCCME 2022)

    海南大学主办 2022年国际土木与海洋工程联合会议 JCCME 2022 重要信息 会议网址 www jccme org 会议时间 2022年12月23 25日 召开地点 海口 截稿时间 2022年11月20日 录用通知 投稿后2周 收录检
  • git官网进去很慢我们可以去镜像下载

    git下载
  • 五脏六腑在脸上的反射区图片_人体五大反射区的有图详解。

    原标题 人体五大反射区的有图详解 反射区是遍布全身的神经聚集点 与身体各器官相对应 比如手 足 耳等反射区 它们与身体的五脏六腑 头部的大小脑 淋巴腺 内分泌腺 肌肉 关节紧密相连 其中 每个器官 部位的神经末梢 在手 足 耳等部位都有一个
  • antV G2 常用指标参数 01

    antV G2 会比较多的API 查看起来也比较费时间 所以把一些常有的方法 参数 指标列举 方便运用 01 柱状图两边留空间 time 是横坐标的 指标 chart scale time range 0 05 0 95 02 自定义纵坐标
  • Linux查找特定进程信息

    命令 查找ssh进程 root linuxcentos ps ef grep ssh 执行结果 root 1303 1 0 Apr17 00 00 00 usr sbin sshd root 3260 3087 0 Apr17 00 00
  • matlab中std函数的用法,matlab std函数 用法及实例

    MATLAB常常用到std函数来进行标准差计算 下面我就通过实例介绍一下 matlab std函数怎么用 1 std函数是用来计算标准偏差的一个函数 由于其有不同的参数 我们就用下面的例子进行介绍 A 1 2 3 1 1 1 标准差的两种计
  • Java中HashMap原理与分析

    HashMap的底层数据结构 HashMap是以Key Value的方式进行数据结构存储的一种数据结构 JDK1 7采用的是数组 链表 使用Entry类存储key和value JDK1 8采用的是数组 链表 红黑树 使用Node类存储key
  • 智星云AI主机docker使用指南

    智星云AI云主机默认提供docker安装 用户只需要在算力市场 点击 AI云主机 选择Centos或者Ubuntu系统即可租用到安装好docker的云主机 图1 算力市场 登录上云主机后 我们首先运行一个简单的docker hello wo
  • vue全局组件的引入

    1 创建组件 在自定义组件的文件夹下 layout 创建组件 并创建index js文件 2 导出组件 在index js内导出组件 可以同时注册多个组件 代码如下 import QRcode from components layout
  • 一些web工具的原理

    1 子域名收集工具 通过枚举可能的子域名并尝试进行DNS解析来确定是否存在有效的子域名 2 设备发现工具 通过发送 ICMP 或 ARP数据包给目标 观察目标返回的信息来判断设备是否活跃 或是通过直接向端口发送 TCP UDP 等网络请求
  • flutter图片点击跳转_Flutter “跳转页面”(一)

    跳转页面 为啥加双引号 其实所谓的跳转页面可能和以前认识的不太一样 因为在Flutter里 所有能看到的东西一般都是widget 但是 没有说那个app是由一个页面构成的 所以 这个概念确实还是有的 这个功能的实现需要用到两个东西Route
  • Vue报错Custom elements in iteration require 'v-bind:key' directives."错误解决

    错误代码
  • 造一台机器人需要哪些技能?

    转自 帐号已迁移 大家好 我是小王 是一名刚刚加入机器人队的大学生 有人说搞机器人特别简单 只要画画图 拧拧螺丝 敲敲代码就可以了 He tui 要这么容易 每年能有上百支机器人队伍 花十几万挤破了头都抢不到30万奖金吗 不过 团队有了我这