机器人学基础与历史

机器人软件栈

机器人软件栈是一连串分层的程序,它把原始的传感器读数转化为驱动机器人运动的精确指令。机器人的身体不过是金属和电机;这套软件才是它的大脑。它像一摞煎饼一样一层层搭起来,信息自下而上流动:每一层都拿起下面那一层产出的东西,把它理解清楚,再把更有用的结果交给上面的一层。

经典的层次是感知、规划和控制。感知接收来自摄像头、激光雷达和其他传感器的数据,弄清机器人周围有什么、东西都在哪里——把一大堆像素和距离整理成一幅清晰的世界图景。规划接着决定要怎么应对:走哪条路、伸向哪里、按什么顺序行动。控制最后把这个计划翻译成精确的电信号,一刻一刻地驱动每一个电机,同时不断检查结果并加以修正。

用这种分层的方式来思考很重要,因为它能把一个又大又难的问题拆成更小的部分,让团队可以一块一块地构建和改进。几乎每一个机器人——从仓库小车到自动驾驶汽车——背后都是同一副骨架:先感知,再决策,再行动;尽管每一层内部的细节,从一台机器到另一台机器之间会有天壤之别。

一台沿着人行道行驶的送货机器人:它的摄像头发现前方有个行人(感知),它决定减速并轻轻绕开(规划),然后给左右两个轮子送上恰到好处的动力,平稳地走出那条弧线(控制)。

传感器数据自下而上流经感知、规划和控制,最终化为驱动电机的指令。

这三层正好对应“感知—规划—行动”的思路:感知就是感测,规划就是决策,控制就是行动。

又称
robot software pipelineperception-planning-control pipeline机器人软件管线機器人軟體管線