讲义气的大白菜给你点了个赞 level
获赞
64
粉丝
41
关注
5
看过 TA
329
哈尔滨工业大学
2026
算法工程师
IP属地:黑龙江
暂未填写个人简介
私信
关注
写在前面:十分感谢AILab给的实习机会,实习结束后真的收获了很多。—————————————————————————————————————————————————全程无八股,无leetcode。围绕项目谈了细节,广度和深度较大,但没有很刁难的问题(只要对齐思路,就很容易答到点子上)。凭记忆写一些。一面:1.主流的不同动力学库,各有什么优缺点。2.你机器人电机是QDD的,动力学建模时是否考虑了电机减速比?3.反问。二面:1.你这个仿真扰动施加在关节空间。有没有试过在机械臂某一点施加一个方向的力作为一个扰动?(回答:没有,但是这种力旋量是可以转换到关节空间的。)2.写C++伪代码。先实现一个牛顿欧拉的动力学正逆向迭代算法。再调用该算法求解M,C,G三个动力学矩阵。最后利用求解到的矩阵,给定力矩后求机械臂关节空间的加速度。3.谈了一下我github上机器人动力学的代码仓库。问:已有这么多机器人动力学库,为什么还要自己写这个?(答:优点:代码透明,编译迅速,学习知识。缺点:求解速度慢,只能处理开链机械臂,遇到复杂需求还要额外扩展代码)4.反问。HR面:1.沟通入职时间。聊了已有offer情况。聊了学校实验室的情况。三天面三次,上午面,下午就约第二天的面试。第四天OC。效率很高,面试体验很好。总之如果非常熟悉自己的项目(包括代码实现),并且有实物经验就没什么问题。
等一个offer的灰太狼很emo:实习转正?
0 点赞 评论 收藏
分享
2024-04-05 10:27
已编辑
哈尔滨工业大学 算法工程师
面试开始,面试官花了五分钟介绍了自己。然后我花了10分钟介绍了自己的项目。在得知我的项目和机器人动力学控制有关后开始了长达70分钟的高强度拷打,要求我在飞书的C++环境里边写代码边讲解,不要求能运行的伪代码。1. 写一个低通滤波器,离散的,连续的都可以。2. 你写的这个一阶低通滤波器有什么特点?3. 写一个PID的class4. PD控制,如果PD参数非常大,有什么影响?5. 写一个机械臂的逆运动学函数。6. 写一个求机器人雅可比矩阵的函数。7. 写一个机械臂路径规划的方法。8. 写出机械臂的动力学模型。开始我以为是让我写牛顿欧拉的动力学算法。其实就是写tau=M(theta)*theta_ddot + H(theta,theta_dot)9. 写一个机械臂的动力学控制器,我写了前馈+PID。面试官问如果现在控制器不能引入质量矩阵M(事后我思考,M的求取对于伺服控制器来说确实有点耗时了,有些控制器比如重力补偿的力控确实没有这一项),那么机器人在不同位形的控制性能是一样的吗?10. 如果已经实现了任务空间的力控,给一个机械臂末端坐标系的目标位姿,写一个控制器让机械臂实现这个力控过程。(我在面试的时候一直想把问题转换到关节空间,和面试官没对齐思路。事后分析其实就是在任务空间实现一个基于位置反馈的末端力旋量的PID,然后左乘一个雅可比矩阵的转置转换到关节空间的力矩即可)(核心就是考察知不知道对末端力旋量左乘雅可比矩阵的转置这一操作)11. 如果我的机器人的某一个连杆受到了外力的影响,如何把这个力转换到关节空间上去?(同上)12. 写一个机器人的阻抗控制器。13. 说了这么多还没有考察你的代码能力,你写一个具体的PID的class吧。在我写完后,针对我的代码开始C++八股。14. 你这个成员函数入口参数用的引用,引用有什么好处?15. 你的这个成员函数入口参数声明了const,为什么?16. 上一个问题我说不想让函数内部修改外部变量。面试官说既然如此,如果我不想让成员函数修改类里的成员变量,应该对成员函数做什么声明?17. 智能指针说一下。我说了共享指针,讲了一下原理。18. 如果我想写一个其他控制器的类来继承你这个PID的类,并且重写其中的一些方法,应该对父类做什么处理?19. 派生类重写父类函数,应该对函数做什么声明?20. 反问
讲义气的大白菜给你点了个赞:面了这么多公司,能明显感觉到这是拷打程度最深的一次,尤其是和一些科研院所相比,后者显得像聊家常。总之讨论问题程度很深,面试官习惯提出一个问题后,如果回答上来了就根据回答继续沿着这个方向追问,直到答不上来为止(我太菜了)。面试完直接汗流浃背,半小时后通知挂了,自闭了一整晚。但是复盘后确实让我进步了很多,这下不得不沉淀一下了。#小鹏##机器人##控制算法实习#
0 点赞 评论 收藏
分享

创作者周榜

更多
关注他的用户也关注了:
牛客网
牛客企业服务