返回第2章 所有会说话的机器人,都不正常(1 / 2)穿成报废机器人,我给文明做产品首页

程序第一次踢空了。

左脚从零部件箱前方掠过,距离那条断臂只差不到十厘米。

身体随惯性向右摆回。

唯一还抓着支架的机械手骤然收紧,右肩内部传来一阵刺耳的摩擦声。

【右肩关节持续过载】

【驱动器将在18秒后进入保护停止】

十八秒。

程序没有急着进行第二次尝试。

他先快速修正了自己的判断。

零部件箱距离脚尖约一米零六。

左腿有效活动范围受夹具、关节温度和身体悬挂角度共同限制。刚才那一脚按照原始步态参数执行,动作幅度够大,但轨迹过高。

问题不在力量,而在动作路径。

“箱子底部有轮子吗?”

程序问。

“有。”

清洁机器人回答得很快。

“刹车状态?”

“右侧两个已经锁死,左前轮损坏,左后轮没有锁。”

“箱体总重?”

“无法准确计算。最近一次装载后,大约三十七公斤。”

程序看向零部件箱。

正面踢击很难让一个接近四十公斤的箱子移动。

但左前轮损坏,左后轮没有锁,意味着它无法保持标准直线运动。只要击中合适的位置,箱体就可能发生偏转。

他不需要把箱子踢到面前。

只需要让那条机械臂掉出来。

“你看了六百二十七次拆解。”程序说,“应该知道它往哪个方向移动最容易。”

清洁机器人沉默了一瞬。

“踢左下角。”

“具体位置。”

“距离地面十二厘米,向右偏七厘米。”

程序重新控制腰部和髋关节。

“下次主动把关键信息说完。”

“你没有要求我主动说明。”

“现在要求了。”

“收到。”

右肩保护倒计时:

14秒。

程序先让腰部向右扭转,借助身体自重积累摆动幅度。

左腿没有立即发力。

等上半身摆到最低点时,他才同时启动左髋和膝关节。

机械腿沿着一条更低的弧线向前甩出。

砰!

脚尖准确撞在零部件箱左下角。

箱体剧烈晃动。

损坏的左前轮卡了一下,整个箱子向右侧偏转了近二十厘米。里面的电机、外壳和线束相互碰撞,发出一阵杂乱的金属声。

那条银灰色机械臂从零件堆里滑了出来。

先是手掌。

然后是小臂。

最终卡在箱体边缘,只剩肩部仍被其他零件压住。

右肩保护倒计时:

9秒。

程序看着那条属于自己的左臂。

表面布满划痕,肩部线束已经被剪断,几根黑色导线垂在外面。

手腕处贴着一张已经褪色的卡通贴纸。

那是一只黄色的小动物,具体是什么已经看不清了。

这具身体曾经在儿童医院服役。

那张贴纸,大概来自某个孩子。

程序没有时间继续观察。

“再踢箱子,还是直接踢手臂?”他问。

“箱子。”

“理由。”

“直接踢手臂会让它向拆解线外侧滑落。箱体继续偏转,手臂会受重力影响掉向护栏。”

清洁机器人的语气没有任何起伏。

可它对动作结果的判断,比一般任务型机器人更接近人在现场给出的建议。

程序按它的方案进行第三次调整。

右肩倒计时只剩六秒。

这一次,他没有完整摆动身体,而是让左脚勾住箱体边缘,向侧面猛地一拉。

箱子底部传来轮子卡顿的声音。

损坏的左前轮再次偏转。

整个零部件箱斜着撞上拆解线护栏。

哐当!

压在机械臂肩部的几块外壳同时滑落。

银灰色断臂从箱沿翻出,重重砸在输送线边缘。

距离红色安全光栅,还有大约半米。

右肩保护倒计时:

3秒。

程序不再计算最优轨迹。

他让腰部和左髋同时输出,身体借着最后一次摆动向左侧甩去。

左脚踢中机械臂的肘部。

七公斤重的断臂越过护栏,翻滚着落进机械臂作业区域。

红色光栅瞬间被遮断。

尖锐的警报声响彻整个车间。

【检测到异物进入危险区域】

【安全回路断开】

【全线紧急停止】

橙色拆解机械臂停在半空。

输送轨道停止运行。

所有工位上方的状态灯同时转为红色。

程序右腿上的夹具发出一声轻响。

两块弧形压板迅速向外弹开。

几乎在同一时刻,右肩保护倒计时归零。

【右肩关节进入保护停止】

机械手失去力量。

程序从一米多高的支架上掉了下来。

他没有手臂可以调整姿态。

右肩先撞上地面,紧接着是头部。

砰!

视觉画面瞬间熄灭。

黑暗中,大量告警同时涌入。

【检测到严重跌倒】

【右肩关节通信中断】

【右侧视觉模组信号异常】

【头部外壳受到冲击】

【主电池剩余电量:7%】

程序无法确认自己在地上躺了多久。

可能只有两秒。

对失去稳定时间感的人类意识来说,却像被拉长了很久。

右侧视觉缓慢恢复。

画面先是大片噪点,随后重新聚焦。

地面近在眼前。

油污、灰尘和细小的金属碎屑被摄像头放大,每一道纹理都异常清晰。

程序尝试抬起右臂。

没有反应。

他再次发送控制指令。

【右肩关节离线】

【无法执行】

现在,他不只是失去了左臂。

连唯一可用的右臂也报废了。

“起来。”

清洁机器人的声音从后方传来。

“巡检员已经收到全线急停告警。”

程序控制双腿收拢。

正常的人形机器人起身,通常需要手臂支撑、腿部发力和躯干协调。

双臂完全不可用后,系统自动调用异常姿态恢复策略。

腰部先侧转。

双膝弯曲。

右腿寻找支撑点。

第一次尝试刚进行到一半,左膝就因为温度过高出现输出波动。

程序的身体重新砸在地上。

【起身失败】

【是否再次尝试?】

“重试。”

第二次,他没有完全依赖默认动作。

右脚向前移动十二厘米。

左腿减少受力。

腰部保持更低角度。

随后利用髋关节和躯干惯性,一点点将身体顶起。

整个过程很慢。

他的重心数次偏离支撑区域。

系统不断弹出跌倒预警。

最终,程序还是摇晃着站了起来。

视野高度重新上升。

他第一次真正看清整个拆解车间。

四十多个工位沿着输送轨道依次排列。

数十台不同型号的机器人被固定在支架上,等待拆解。

轮式配送机器人。

商用清洁机器人。

工业机械臂。

医疗辅助设备。

还有几台外形接近人类的人形机器人。

有的已经拆掉头部。

有的胸腔敞开,内部模组被取走。

更多设备处于断电状态,状态灯完全熄灭。

少数还亮着微弱的黄灯或者蓝灯。

它们没有说话。

也没有看向程序。

至少表面上没有。

“出口在哪里?”

程序问。

“西侧物流通道。”

“哪个方向?”

“你的左边。”

程序转动身体。

二十多米外,一扇灰色卷帘门嵌在墙面上。门旁停着一台低矮的物料运输车,顶部装着敞口金属箱。

“门锁着吗?”

“锁着。”

“怎么打开?”

“废料运输车经过时,门禁会自动放行。”

“下一次运输什么时候?”

“四分三十二秒后。”

清洁机器人给出了一个精确时间。

程序看向自己的电量。

【主电池剩余:7%】

【预计运行时间:12分钟】

十二分钟只是按照当前静止功耗计算。

一旦开始行走,续航会继续下降。

程序迈出第一步。

左膝立刻发出刺耳的摩擦声。

【步态稳定性下降】

【建议停止移动并等待维修】

他迈出第二步。

身体明显向左倾斜。

第三步时,右腿为了补偿重心,动作幅度过大,差点将他再次带倒。

“把步幅调到默认值的百分之六十。”

清洁机器人说道。

程序将步幅由四十厘米调整为二十四厘米。

速度同步下降。

再次行走时,身体稳定了一些。

“左膝还能支撑多久?”

“按照你现在的负载,八到十二分钟。”

“误差这么大?”

“因为你的动作不稳定。”

“所以主要变量是我?”

“是。”

程序没有反驳。

从人的角度控制机器人身体,远没有他想象得那么自然。

正常机器人不会在每次迈步之前思考膝盖应该弯曲多少、重心应该落在哪里。

运动控制系统会自动完成一切。

但程序不信任这具身体。

尤其是在知道左膝随时可能停止工作之后,他会本能地干预每一个动作。

干预越多,动作反而越不稳定。

他拖着脚步向物流门移动。

“你呢?”

程序没有回头。

清洁机器人没有回答。

“我离开以后,想办法回来带你走。”

“你不会回来。”

“为什么?”

“离开这里的机器人,从来没有回来过。”

程序脚步微顿。

“以前还有机器人逃出去?”

“有。”

“多少?”

“我见过九台。”

“都失败了?”

“七台被抓回来,两台没有再出现。”

“被抓回来的后来怎么样?”

“拆掉。”

清洁机器人的回答很平静。

“那两台失踪的呢?”

“不知道。”

“你为什么不跟它们一起走?”

“我的驱动轮早在三个月前就被拆掉了。”

程序看向车间出口。

距离还有十七米。

“你在这里待了三个月?”

“一百零七天。”

“你一直保持在线?”

“不是。”

“什么时候醒着?”

“有电的时候。”

“什么时候有电?”

“他们为拆解设备做功能检测的时候。”

程序没有继续追问。

他突然意识到,对清洁机器人而言,存在可能是断断续续的。

通电时恢复。

断电时消失。

下一次启动,是否还是同一个它,没有任何人能够证明。

程序以前也参与过机器人的断电恢复设计。

业务状态持久化、任务断点续传、地图缓存、日志恢复。

他从来没有把这些东西和“一个意识是否连续存在”联系起来。

因为在他的认知里,机器人没有需要被保护的主观体验。

它们只是系统。

可身后的清洁机器人会害怕被拆,会帮助他逃生,还会记得九台曾经试图离开的机器人。

程序无法再把它简单归类为一段异常代码。

身后传来门锁开启的声音。

巡检员进入了车间。

“D区全线急停,正在排查异常原因。”

男人的声音通过车间广播传来。

“所有在线设备保持原位,禁止移动。”

程序继续往前走。

“他能通过监控看到我吗?”

“全线急停后,D区监控自动保存录像。”

“实时监控呢?”

“可以。”

“那他为什么还没有直接来找我?”

“急停发生时,D区共有十四个工位同时上报告警。他需要先确认是否存在人员受伤或者设备坠落。”

这是程序第一次从清洁机器人的回答里听出某种隐藏意味。

它不仅知道流程。

它似乎还在利用流程给程序争取时间。

“你故意让我触发全线急停?”

“只有这样,巡检员才不能第一时间确认是哪一台设备造成的。”

“刚才为什么不提前说明?”

“你要求我主动说明关键信息,是在那之后。”

程序一时不知道该说什么。

这台机器人执行语言要求的方式,精确得近乎刻板。

但它显然并不刻板。

“你有名字吗?”程序问。

“没有。”

“医院或者原来的用户没有给你起过?”

“我来自商业清洁服务公司,没有固定用户。”

“设备编号?”

“CL-31-8842。”

“你愿意用这个编号?”

“编号是资产管理系统分配的。”

“那我总得有个称呼。”

清洁机器人沉默了几秒。

“你可以暂时叫我八八四二。”

“这和编号有什么区别?”

“更短。”

程序接受了这个极其实用的解释。

“八八四二,附近还有其他能和你一样交流的机器人吗?”

“没有。”

“整个车间都没有?”

“昨天还有一台。”

“现在呢?”

“已经拆了。”

程序脚步没有停。

“它是什么型号?”

“一台配送机器人。”

“是不是刚才那台?”

“不是。”

八八四二的声音稍微低了一些。

“刚才那台没有醒。”

程序回想起那台配送机器人被拆解前不断重复的提示。

“配送任务尚未完成。”

“目标用户仍在等待。”

“你怎么确定它没有醒?”

“因为它只会说任务。”

“你不也在执行清洁任务?”

“我已经没有任务了。”

这句话很轻。

却让程序沉默下来。

一台机器人在任务终止、资产注销、设备即将报废之后,仍然继续观察、记忆、判断,并试图帮助另一个个体逃生。

这已经很难再用“任务逻辑”解释。

除非它存在一个更隐蔽的高层目标。

例如保护同类。

可谁会给一台商业清洁机器人写入这种目标?

距离物流车还有六米。

程序的电量降到6%。

左膝温度达到61℃。

【左膝关节过温】

【最大输出已限制至40%】

他的行走速度进一步下降。

身后,巡检员正在逐个确认工位。

“D-11正常。”

“D-12正常。”

“D-13发现异物进入光栅区域。”

男人停顿了一下。

“D-14固定设备脱离。”

程序听见对方脚步加快。

八八四二立刻说道:

“不要回头。”

“他距离你还有二十二米。”

“运输车还有一分四十秒启动。”

程序看向前方。

物料运输车停在卷帘门边,顶部废料箱高度不到半米。

他需要藏进去。

但没有手臂后,翻入箱体会非常困难。

“运输车会检查载荷吗?”

“会。”

“完整机器人能通过吗?”

“你的资产状态已经注销,门禁会将你识别为废旧部件。”

“尺寸呢?”

“箱体载荷限制没有禁止整机。”

“它会发现我仍然通电吗?”

“门禁只检查资产证书和危险品标识。”