跳转至

本帖谨总结本科三年我上过的部分必修/选修课,希望对后面学弟学妹的选课、复习有一些帮助,也给出从我个人主观角度的个性/跨专业课程推荐。

仅限于我上过的课。顺序按照培养方案的顺序,一些大课就不写了。

对于一门课程大致如下:1,修读学期和授课老师;2,课程内容;3,考核方式;4,可能附带个人的想法/评价。

本贴极为主观,谨供参考,部分课程有我的暴论,部分课程因为时间久远忘得差不多了。

全文一共6000字左右

目录

  1. 专业必修课程;
  2. 专业选修课程;
  3. 实践教学环节;
  4. 个性/跨专业课程推荐。

专业必修课程

机器人与人工智能导论

  • 修读学期:大一下

  • 授课老师:王酉、朱秋国、张建明老师

  • 课程内容:导论课,懂的都懂。课程内容主要是机器人背景知识,微控制器,驱动原理,设计传动,机器人运动学,后面是人工智能。涉及范围很广,但极其浅显。主要是让一无所知同学对机器人系统有一个整体的认知。

  • 考核方式:大作业 + 期末闭卷考试。

    大作业是机器人竞赛的一个题,设计一个机器人完成对应的任务。用SolidWorks搭出来简单写写原理就行。期末考试主要考概念,背PPT就行。

机器人学Ⅰ

  • 修读学期:大二下

  • 授课老师:吴俊老师

  • 课程内容:机器人学Ⅰ讲的是固定基座机器人的知识,简单来说就是机械臂。涵盖坐标变换(固定角/欧拉角/等效轴角/四元数)、机械臂建模(改进D-H参数)、运动学与逆运动学、速度传递(雅可比)、动力学(牛顿欧拉/拉格朗日)、轨迹生成以及操作臂控制。

    对于机器人专业的同学,这门课非常硬核也极其重要,务必花时间认真搞懂。

  • 考核方式:平时作业 + 大作业 + 期末半开卷考试。

    复习建议把教材、PPT都搞懂,个人觉得重点在坐标系、建模以及各种速度/力传递部分。控制部分我当时没看懂,赌他不考,然后我们这一届控制部分考的比较少,但是最好也要知道。还是不知道咋复习的看看98的回忆卷和A4。

机器人学Ⅱ

  • 修读学期:大三上

  • 授课老师:熊蓉,周春琳老师

  • 课程内容:移动机器人,轮式移动机器人建模→导航规划(路径规划,避障规划,轨迹规划)→地图表示→里程估计→定位问题及其求解。

    这门课是机器人学Ⅰ的延伸,难度很大。这门课也会引入概率机器人的思想,这应该是一切移动机器人导航的基础。

  • 考核方式平时作业(记忆中极少)+ 四个大作业(建模,规划,ICP,EKF)+ 一个认知报告(开始时看一篇文献,做一个PPT,结束时重新读一遍,再做一个PPT看看你有没有进步)+期末半开卷考试。

    印象中考试会有部分概念题,A4多抄点。

机器人传感技术

  • 修读学期:大三上

  • 授课老师:黄志尧、张涛老师

  • 课程内容:一些传感器的概念,原理,三角测距这些,偏重(大多数)机器人会用得上的传感器(力,位移,速度,加速度,激光,图像等)。

    老师人非常不错,讲课清晰,课程也以理解原理为主。老师怕我们不下载PPT还把PPT和已经编好的部分教材打印给我们。希望学弟学妹们上课的时候教材能编出来。

  • 考核方式:平时作业(极少)+ 半开卷考试。

    我们这届老师亲口保证考试只考原理

人工智能与机器学习

  • 修读学期:大三下

  • 授课老师:刘勇、胡瑞芬老师

  • 课程内容:控院知名课程,讲课内容是人工智能相关的东西。前半部分涉及智能体、问题求解、启发式搜索、对抗搜索、逻辑智能体、一阶逻辑推理等,后半部分涉及决策树、概念学习、贝叶斯学习、神经网络等。我对人工智能不是很了解可能概括得不太好。

    这门课不是给人从零开始入门的(事实上这就是第一门AI课),比较吃以前的积累,对有基础的同学会比较友好。这门课知识点比较散,像我这种没有基础的靠这门课入门人工智能还是有点困难,学了半学期脑袋空空的。上到这个学期可能会听到自动化的同学对这门课颇有微词,在这里我说一下,这两门课课程名字不同,上课老师不同,但课程内容和作业都是一样的,他们说的都是真的,而且机器人的是8周课,自动化的是16周,有效的激发了机器人专业学生的潜能。当然这学期让你破防的课不止这一门

  • 考核方式:平时作业 + 小测 + 四个小作业(个人) + 一个大作业(小组) + 一篇读书报告(个人) + 期末闭卷考试。

    大小作业都是在Mo平台上完成相应的实验题,代码都写好了,调参就行。期末考试考察是PPT上的内容,涉及概念以及一些推导(我这届有极大似然假设的证明和手画决策树),课件上的例题最好搞懂,98上也有回忆卷,可以找自动化的同学问下怎么复习(他们大三上上这门课),他们的回忆卷也很重要。

机器人驱动与控制

  • 修读学期:大三下

  • 授课老师:刘昊、刘涛老师

  • 课程内容:分为两部分,驱动和控制。驱动部分是概念、电机、液压、气动的知识,控制部分包含自控原理、现代控制理论、最优化控制。这门课的一大特点是知识多而杂,可以认为是导论课的延伸。

    看得出老师想把这门课讲深入,但是知识点过于多导致很多知识都是浅尝辄止,有一点平时一加一,作业微积分的感觉。驱动部分全靠上课讲授其实是不太能理解的,课后看PPT就是,给你个半剖图,你自己想象一下这个有啥用,面向知乎学习。至于控制部分,我上过现控,因此对我来说控制部分是基本重合的,没上过现控的会略微痛苦一些。复习的时候破大防,内容这么多,浅看一边又不行,稍微看深入一点这内容可太多了。跟机械设计基础一样,不知道闭卷咋考,机械设计基础好歹知道有保底,这课是完全摸不着头脑。我是希望能讲深入一点的,最起码驱动这块我想详细学习原理和设计方法,能配几个小实验去让我们设计那就最好了。作为最后一门专业必修课,有点一言难尽。

  • 考核方式:平时作业 + 实验报告(4次) + 期末闭卷考试。

实验是四个实验,步进/直流电机的驱动和PID控制,用STM32F4,软件是LabView(实验室电脑提供),会有图形化的小学生都能看懂的实验指导书手把手教导,步骤就是:找到图上的东西(他会教你找的),设好值,连起来。遇到问题可以随时问老师。

考试着重于考很多概念、原理和方法,记得背PPT(没背PPT人在线落泪)。会考那种某东西具有一大堆优点,问你这是什么东西的这种类型的题(我直接傻掉)。还有设计题(就我这次来说,说是设计题实际上就是套壳的计算题)与计算题,这些与作业题难度相当,把作业题搞懂再把PPT上例题看一看问题不大。可惜考完记不住,没有回忆卷。考试占比七成,小心卷了一学期平时作业和实验报告然后考试原地爆炸。

专业选修课程

这里只放我上过的选修课程,欢迎补充。

公共基础类

数据结构

  • 修读学期:大二上

  • 授课老师:姜伟老师

  • 课程内容:是计院数据结构的阉割版,讲几种基本的数据结构,查找与排序搜索树。有两三个作业,是实现几个数据结构,我上这门课的时候是双向链表,中缀转后缀,二叉平衡树。

    这门课就是给机器人工程开的,不太强调码,相对来说比较简单。

  • 考核方式是作业+考试。考察一些基础概念,以及画一些dfs,生成树这些。

信号与系统

  • 修读学期:大三下(培养方案是大二下,这一届比较特殊)

  • 授课老师:任沁源老师

  • 课程内容:经典老课,讲连续信号和离散信号的时域分析(卷积)和频域分析(傅里叶变换),还有采样、调制,最后是拉普拉斯变换和Z变换(就是自控原理用的那些)。

    这门课是给机器人开的,与信电那边开的不太一样,更加强调系统(好像自动化的信号是信电开的)。培养方案写着大二下学,但是我大二时还没这门课,所以是大三上的,那时我已经上完了自控与现控(降维打击了),老师知道我们是大三的也讲了不少拓展的东西。从我的角度看这门课是逻辑比较清晰的,难度也不算大,补全了我对于自控的一些理解上的漏洞。

  • 考核方式:平时作业 + 期末半开卷考试。

    上过课就知道复习啥了,脉络很清晰,别忘了咋算积分就行。老师讲课强调过的性质不要忘。

自动化控制类

现代控制理论

  • 修读学期:大三下

  • 授课老师:徐正国、吴俊老师

  • 课程内容:离散系统传递函数、状态空间、李雅普诺夫方法。

    课程难度比较大,知识量也非常大。选课是因为感觉传统控制理论对于机器人来说完全不够用,而且上课老师是吴俊老师(吴俊老师的控制课永远血赚)。学到的东西我也觉得挺有意义的。上了这门课机器人驱动那里可以摸鱼半学期(X)

  • 考核方式:平时作业 + 三个实验 + MATLAB仿真实验 + 两个展示(小组) + 期末半开卷考试。

    实验是自控原理部分的实验,一些二阶系统的响应什么的。第一个展示是一章比较简单的内容自学然后上台讲,第二个展示是两个讨论题。经典课程,资料应该很多,上了就知道怎么复习。考试难度比较大,题量也大。其实解题流程心里都清楚,但就是算不出来。

智能控制技术

  • 修读学期:大三上

  • 授课老师:刘山老师

    讲授一些智能的控制方法,包括递阶控制、专家控制、模糊控制、神经网络控制。

  • 考核方式:两次小作业 + 期末大作业

    期末大作业是针对一个具体的过程或系统,设计合适的智能控制算法实现一个控制目标。感受搭simulink的快感吧!

运动控制技术

  • 修读学期:大三下

  • 授课老师:孟濬、赵建勇老师

  • 课程内容:直流/交流电机控制,包括双闭环控制、矢量控制、直接转矩控制等。

    对于机器人专业来说,这门课是比较脱离的一门课,因为前置课程完全没有学过,电机模型完全不知道,讲电机控制我也完全听不懂,老师也不可能在课上补电机和电路电子相关的知识。老师是非常好的老师,但体验就是我们学的难受,老师上课知道我们听不懂他也难受,折磨老师折磨同学。

    不过这门课的重点在项目,做什么都可以,带个电机,好玩就行,一定要实物。我们大多数人都做了不同的小车。之前有相关的项目经验(嵌入式系统高级实验)做这个应该很轻松,老师人也相当好,有问必答。

  • 考核方式:三个实验报告 + 项目 + 期末开卷考试。

    实验一个实物(双闭环)两个仿真(SPWM + 矢量控制)。平时七成期末占三成。会有个复习PPT,打印出来,知道在哪找,再把老师的复习课回放看一遍,这样应该不至于挂。老师会把同学展示的项目也出到考题里,是一些控制方法,中途遇到的问题以及解决办法这些。

先进机器人类

机器视觉

  • 修读学期:大三上

  • 授课老师:王越、张宇老师

  • 课程内容:分为两大块,第一块是几何相关的,相机模型→特征提取→特征匹配→视觉里程计;第二块是学习相关的,图像分割→深度学习。这学期视觉里程计之前的是王越老师上课,视觉里程计及视觉里程计之后的是张宇老师上课。

    因为是第一次开课所以也不能说特别完美,我们反馈了一些建议之后老师也表示会改进。

  • 考核方式:4个大作业 + 期末半开卷考试(控院不能没有A4,就像西方不能失去耶路撒冷)。

机器人前沿

  • 修读学期:大三上

  • 授课老师:熊蓉老师

  • 课程内容:前沿的分享,每节课都会邀请校内外不同领域的老师来做专题演讲,结束后有提问环节。主要以了解为主,知道目前前沿的研究方向,甚至还能认识一些领域大佬。

  • 考核方式:平时提问 + 小组展示(选择一个主题,查阅文献,撰写文献阅读交流PPT,最后一节课展示)。

软体仿生机器人与智能材料

  • 修读学期:大三下

  • 授课老师:李铁风老师

  • 课程内容:一些软体相关的知识。老师会讲他自己的一些经历,仿生的思想。偏学习思想,体验为主。性质比较像交流分享会。

  • 考核方式:两次小作业 + 大作业(做一个软体的实物或仿真,实物需要材料联系老师,设备和钱他都有)

    所有作业都可以个人或者小组递交,小作业会与大作业相关。时间比较充裕,考完试后再去做大作业也没问题。

机械工程类

一门都没上

大数据类

一门都没上

实践教学环节

机器人基础实践

  • 修读学期:大一短

  • 授课老师:王酉老师

  • 课程内容:用一个盒子里的散件拼一辆小车,小车要完成巡线和搬运的工作。

    第一门实践课,我把他称为拧螺丝:从入门到精通,与机器人与人工智能导论是配套,机器人学Ⅰ/Ⅱ也是类似的有配套的实践课,春学期讲理论夏/小学期有一门对应的实践课。我们当时是暑假有一周连续的时间干这门课,20级好像把这门课挪到了夏学期(好像21级又放到短学期了),每周在固定的上课时间干这门课,我还是觉得暑假拿一周专门干这个比较舒服。开盒有风险,选盒需谨慎,好的盒和坏的盒课程体验完全不一样。我还记得有位同学把自己的舵机烧了之后翻了三十多个舵机出来(堆成一座山),没一个能用的。

    控制也没那么难,巡线是关键。当时我们巡线是有反馈的,机械臂是纯盲抓,动作全写死,停的位置对就能抓住。从现在的眼光来看这机械臂就离谱,但效果确实相当不错。记住巡线务必把机械臂装上去之后再调一下,分别调好了之后装起来直接跑必出事。

  • 考核方式:看最后的测试,计分方式会提前说明。巡线做出来就及格。

机器人学Ⅰ强化训练与实践

  • 修读学期:大二下

  • 授课老师:刘山老师

  • 课程内容:一个机械臂,按照实验要求编程实现不同的任务。

    机器人学Ⅰ配套的实践课,主要是助教负责答疑和验收。这门课是机器人工程第一次在课程上接触ROS,所以在做东西的同时也要同时学ROS的基本用法,不过这门课用到的和ROS相关的应该只有发布话题。上完这门课后catkin_make打得飞快(×)。这门课最搞的就是用的机械臂没有反馈,步进电机,开环控制,还会掉帧。部分不同机械臂的步进电机卡的程度不同,认准自己的机械臂,关节转不到位不一定是代码的问题。当时甚至,模型参数都是错的,导致力控部分牛顿欧拉方程解出来跑的跟坨屎一样。后面考核快到了都没搞出来就放弃了,让一个组员继续搞力控然后剩下两个去敲钟。

  • 考核方式:五个实验。

    (1)正逆运动学;(2)轨迹规划(从一个点到另一个点);(3)轨迹规划(末端位置不动,变姿态);(4)力控(唯一一个仿真实验,因为实物机械臂没有力控);(5)考核实验(敲铃)。实验环环相扣,可以写好实验后把函数封装下,后面可能要用。只有实验(1)是位置控制,实验(2,3,5)都是速度控制,实验(4)是力控。

机器人学Ⅱ强化训练与实践

  • 修读学期:大三上

v授课老师:熊蓉、王越老师

  • 课程内容:移动机器人相关实验。

    机器人学Ⅱ配套的实践课,布置作业和验收的时候老师会在,答疑的时候老师可能会在,主要还是助教carry。我上的这学期因为浙大疫情这门课其实进行的不太正常。当时大家都遇到了非常多问题,我遇到的最严重的问题占了助教三四节课的答疑时间帮我de,”你这都是对的为什么就是不行呢” ”我也想知道”。验收前一天晚上各自串门配环境/debug,但是靠自己独立解决问题是非常有意义的,一来二去配环境这块就熟了。当时还整理了一份自己踩过的坑,实在解决不了可以找我要。

  • 考核方式:三个实验(路径规划,实物机器人上的导航规划,ICP与EKF)。

机器人交叉创新设计与实践

  • 修读学期:大三下

  • 授课老师:不重要

  • 课程内容:因人而异。

    这门课就是助教带着做项目,会有很多老师给出不同的项目,平均一个老师两到三个项目。两个人一组做一个项目。选项目顺序抓阄决定,抓到A的先选,B的第二个选,以此类推,紧张刺激,当心被非酋队友剥夺选择权。不用怕选到一个很难的项目之后做不出来,项目大都是精心挑选的难度适合的,而且每个项目都会配套助教,助教会带你。我运气比较好遇到了一个认真负责的助教,学习资料充足,框架清晰,有问必答,体验极佳。是我体验最好的一门实践课。

    上这门课要与老师助教多沟通,明确自己要做什么,避免开题画饼中期道歉结题摆烂的情况。如果你之后选到了跟我一样的课题,你还能从助教那里收到我写的一份ReadMe。

    考核方式:开题答辩 + 中期答辩 + 结题答辩 + 项目报告。

    不要想着蒙混过关,老师都记着呢。

个性/跨专业课程推荐

下面是非常主观的个性/跨专业的推荐。

机器人与人工智能导论

  • 预修要求:无

  • 推荐理由:这门课的一大目的是给对机器人完全没有概念的同学对机器人有一个整体认知,对外专业也是一样。课程没有什么难的地方,主要是老师讲授,平时作业也几乎没有。内容以概念为主,高中生也能听懂老师的讲授。想对机器人有一个简单的了解可以选这门课试试看。

机器人学Ⅰ

  • 预修要求:线代,微积分,大物(感觉大物不那么重要,线代比较重要)

  • 推荐理由:这门课是机器人第一门重要专业课,所以预修要求都是基础数学课。讲的内容涉及到机器人的基础——坐标变换以及机械臂的基础知识。内容比较多但绝对物超所值,而且上课老师(吴俊老师)讲的非常好。适合想简单深入学习机器人知识的外专业同学。

数据结构

  • 预修要求:C语言
  • 推荐理由:这门课是计院数据结构的阉割版,内容比较少,作业不多难度也不大。最重要的是不强调码,因此对于想简单了解数据结构但又不想埋在代码堆里的人非常友好。

机器人前沿

  • 预修要求:无
  • 推荐理由:这门课是讲座性质的,以了解为主,不需要特别去背诵、理解。而且前沿的东西本专业和外专业也没啥区别,都不懂。听听大佬的讲座,了解不同领域的前沿也是有意义的。

软体仿生机器人与智能材料

  • 预修要求:无
  • 推荐理由:首先是老师的上课方法有点像分享会性质,还有一个原因是老师上课内容只要高中数理知识就能听懂。主要介绍思想上的东西,不算硬核。这门课能不能学到东西得看自己。