首页 排行 分类 完本 书单 专题 用户中心 原创专区
apt1 > 玄幻 > 这个学霸疑似巨额知识来源不明 > 第116章 给虫子接上神经

江临在文档最上方,写下低熵工坊下一条视频的暂定標题。

《规则相位与低公度相位对照实验》

看两秒,按下退格键,全部刪掉。

又写:《n,不再等於一》。

还是刪掉。

太像回应了。

如果现在就发第二期,很容易。

做四台对照机,摆出规则板、隨机板、非重复间距板,再甩出一组比第一期更漂亮的数据。

確实能让一大半爭论当场闭嘴。

可那样一来,低熵工坊就被评论区牵著鼻子走了。

別人说你没对照,你就补对照。

別人说你n=1,你就把n做大。

一路接招,看起来打得热闹,实际上就只能永远站在原地,在別人的逻辑框架里打转。

虽然江临一直告诉自己不受网络刻板印象的影响,但当看著后台那99 的红点时,潜意识里还是难免有些被带著去思考。

他摇了摇头,把脑子里那些虚擬的喧囂全部清空。

第一期视频里,六足那层最基础的机械架构的壳子,他已经给出去了。

真正感兴趣,有动手能力的人,自然会接著拆解。

用自己的失败,把规则相位和低公度相位往下推。

他不必亲自下场,去回答每一道题。

他要做的是下一步。

第一期的六足平台已经证明了用2022年的普通材料,普通加工,普通电机,天幕站那套被动容错的机械逻辑,在桌面尺度上能重新跑起来。

但它有个毛病。

它只会走。

走得动就走,走不动就趴下。

可你要问它,刚才到底哪儿出了问题,它一个字也答不上来。

铁屑老周说:“当某条腿没按你想的方式受力,你怎么让剩下五条腿,別跟著它一起犯病。“

中部985在论文里说:“错误不会集中在某一个机械节拍上连续放大。“

这两句话,都只摸到了大象的一条腿。

江临真正想做的,根本不是一台被动六足能不能在复杂地形里少摔几次。

而是,既然机器的身体本身能扛下一部分容错,那它为什么不更进一步,而是停留在一台没感知,没记录,摔了也说不清的被动测试架上?

在他的构想里,这个六足平台的下一阶段至少该知道,自己身上发生了什么。

哪条腿的足端先失去了载荷?

哪个位置的棘爪在不该咬合的相位提前咬合了?

主轴电机的瞬时电流,到底是在哪一帧、哪个毫秒突然抬起来的?

机身的横摆失控,是从什么时候开始陷入死循环重复的?

它的失败,是一瞬间大厦倾覆般塌掉的,还是顺著底层的机械结构,像金属疲劳的裂纹一样,一点点爬出来的?

这第二只虫子,得能把自己为什么走不下去记下来。

他新建了一个文件夹。

g01_embodied_failure_logger

【低熵工坊 g-01:一台会记录自己怎么趴窝的虫子】

然后开始写文案。

“上一期那只虫子,只会走路。这一期,我想让它学一件更难的事:在摔倒,死锁,甚至主轴烧毁之前,把自己身体里正在发生的一切灾难,一字不漏地记下来。“

往下,他开始列bom(物料清单),每列一个硬核的电子零件,就在旁边用最粗糙的大白话翻一遍。

高带宽imu(惯性测量单元)。

——你手机横过来屏幕会自动转,靠的就是类似这类mems惯性器件。把它装在机身上,让它隨时记录自己是平的歪的,还是正在往下栽。

薄膜足端压力传感器(fsr)。

——脚底的体重秤。六六条腿哪条被压到了,它能给出第一手线索。

主轴高边电流採样(ina240)。

——给电机把脉。腿一卡住、连杆一突然吃力,电流立刻往上窜。人使劲会憋红了脸喘气,电机使劲,这陡增的安培数就是它的喘。

全局快门高速摄像头(ov9281)。

——一个没有任何智能的隨身记录仪。不用捲帘快门,因为果冻效应会毁了机械动作的瞬间。它不认人、不认路、不跑yolo目標识別,只管把微距下的齿轮嚙合过程录下来,留著事后一帧一帧回放。

边缘计算与高精度时间戳对齐底板。

——机器的黑匣子。飞机摔了靠黑匣子復盘,这只虫子摔了,也得有自己的黑匣子。

所有传感器数据和视频帧,必须被绑定在同一条统一时间线上。

至少要精確到毫秒级,电流、imu这些高速数据,再单独保留更高频採样时间戳。

写到这里,江临停顿了一下,把一开始打算用的树莓派三个字刪掉。

linux系统的非实时性会带来不可控的调度延迟,对於分秒必爭的机械正时来说,那就是毒药。

他改成了:【主控板:stm32h7高性能单片机。】

他现在还不需要强算力,只要稳定的硬体定时器,足够快的adc採样,以及一套不会被sd卡写入延迟拖乱的环形缓衝区。

强算力会像海妖的歌声,勾著人去做极其复杂的感知,做全地形的步態规划,做花哨的波士顿动力式的平滑控制。

这不是g-01该乾的活。

g-01的任务,不是在聚光灯下表演我很聪明,我能后空翻,而是像一个沉默的苦行僧,把身体里那点机械结构失效的溃败过程,老老实实地记下来。

底盘第一版的图纸不必推翻,仍旧保持低速六足的构型。

六足在几何学上的好处是接触点极度清楚:每条腿什么时候落地,什么时候失去载荷,棘爪什么时候锁止,力学传导路径清晰,一笔一笔记得清。

他在旁边用括號留了一行备忘:【备选:轮腿混合架构的复杂性太高,干扰变量太多,以后再说。】

接著,他在纸上画了张简图。

中央主轴电机,两侧对称的六条腿,每一个聚甲醛(pom)切削的足端內嵌一个压力点。

机身正中的质心位置焊著一颗imu,主轴电机的供电线上串联著霍尔电流採样,前方探出一个毫无美感的裸露摄像头排线,侧面掛著一小块布满绿油的pcb记录模块。

画完,他端详了一会儿。

这台长满了飞线和传感器的g-01,比第一只光禿禿的虫子更丑了

但它无疑也更有用。

……

最先到货的是足端压力传感器。

一包薄薄的柔性薄膜片,装在防静电袋里,轻飘飘的,拿在手里像几片被隨手裁成圆形的黑色劣质塑料纸。

卖家页面的参数写得天花乱坠。

航空级高灵敏,百万次高重复性,零温漂,完美適用於高仿生机器人足底压力检测及步態分析。

江临拆开防静电袋,用镊子夹起一片,对著头顶昏黄的白炽灯看了整整两秒。

这东西绝对不能直接信。

哪怕標称参数再好,也不能信。

做过底层硬体和非標自动化的人都知道,传感器这种东西,最容易合法地欺骗系统。

即便它工作完全正常,输出的电压信號极其稳定,adc(模数转换器)读到的数值也完全符合欧姆定律,也能凭实力把整个上位机的运动解算带偏到姥姥家去。

这涉及到一个极度深渊的工程学难题。

观测者效应在宏观机械上的幽灵再现。

比如把这片薄膜直接贴到原本是球面的足端下面?

原本的点接触,瞬间变成了面接触,直接改变了足底的接触面积和受力模型。

比如为了防止磨损,给它外面加一层硫化橡胶保护?

嗯,足底的静摩擦係数和动摩擦係数全变了,原本能在木板上滑行的步態,现在会死死卡住。

比如为了採集信號,走线从腿侧的连杆绕过去?

恭喜,几根硅胶软线的质量和拉扯力,直接改变了整条腿的摆动惯量,原本调好的机械谐振频率全废了。

如果用的双面固定胶太硬,足端会失去原本设计好的柔顺性,走起来像个踩高蹺的殭尸。

如果用的固定胶太软,比如3m的厚泡棉胶,测试时足端受到侧向剪切力,薄膜和保护层之间就会发生肉眼看不见的微小滑移。

……

说白了,江临想让g-01把平台的失败记下来,可第一步遇到的问题就是记录这个动作本身,会改变被记录的平台物理特性。

这比买到坏件更麻烦。

买到坏东西,大不了退货换新的。

但如果装上这套传感器网络之后,机器的重量分布、摩擦力、柔顺性全变了,它已经不再是原来那只纯粹的虫子了。

那么,它最终记录下来的失败,究竟是本体机械结构的翻车,还是记录系统自己通过物理干涉,凭空製造出来的bug?

这是硬体工程里的哲学问题。

上午九点半,教师楼后排的小车库。

工作檯上摊著g-01第一版底盘。

它仍然沿用六足结构,但为了建立痛觉神经系统,江临像给一具还没缝合的机械身体接上神经,给它顺手飞了几条扎眼的线束。

红黑相间的足端压力线,屏蔽网包裹的imu数据线,从电调上硬接过来的主轴电流採样线,一条极宽的fpc摄像头排线,以及腹部那块他用嘉立创打样,焊满了0402阻容件的自研数据记录板。

一眼看过去,它简直像是一只刚做完赛博义体植入手术,还没缝合装甲的金属怪物。

江临拿起第一片薄膜压力传感器,小心翼翼地垫在左前足的pom足底。

压紧,贴上极薄的3m 468mp双面胶,走线。

用镊子引导著极细的漆包线,沿著铝合金连杆的內侧,绕过所有可能发生干涉的摆动死角。

最后,用一点点热熔胶和小线夹固定。

一套標准的高密度组装操作,看起来毫无破绽。

於是启动电机。

“滴——”

电调发出清脆的上电提示音。

他轻轻推下启动开关,启动主轴电机。

g-01的机械齿轮开始咬合,发出低沉而规律的咔嗒声。

它慢慢抬起左前腿,迈出第一步。

很稳健。

第二步,右中腿跟上。

没问题。

第三步刚抬起来,然后毫无预兆地,迎来了整个项目最喜闻乐见的翻车环节。

左前腿那根顺著连杆固定的极细的足端线束,在腿部摆动到最高点时,因为连杆的相对运动,產生了一个不到两毫米的微小外凸。

就是这微小的两毫米,让线束的绝缘皮被旁边的主传动杆轻轻擦了一下。

真的只是像羽毛一样擦了一下。

可就是这微不足道的一点点摩擦阻力,让左前足在往下落的瞬间,由於被线扯了一下,慢了半个节拍。

电脑屏幕上,上位机实时滚动的压力曲线上,立刻冒出一个刺眼的假峰值。

日誌窗口无情地输出一行红字。

【error code 0x1a】左前足端压力异常,標记为疑似提前触地。

江临盯著屏幕,没动。

此时,机器的电机还在转,它继续往前走,左中腿结结实实地接住了整个机身的载荷,机身姿態平稳,没有任何要摔倒的跡象。

但在数据世界里,数据已经脏了,这台机器已经死了。

江临关掉电机电源。

左前足根本没有提前触地。

是那根用来探测触地的线束,像一只有形的手,在半空中拖住了它。

传感器没有记录到失败的真相。

相反,传感器用它自己的物理实体,製造了一次失败的影子。

江临面无表情地拿起螺丝刀和斜口钳。

把那根线拆下来,重新规划走线路径,用游標卡尺测量了间隙,从连杆的外侧改到了不会发生摩擦的內侧,又用新近购买的3d印表机临时打了一个倒角平滑的限位线夹。

再试。

这一次,线完美避开了所有干涉区,没有扫到连杆。

但墨菲定律永远不会缺席。

新的bug如期而至,且更加隱蔽。

由於之前担心硬胶会改变足底摩擦,他採用的传感器保护胶稍微软了那么一点点。

当g-01的足端踩上测试用的斜向尼龙障碍条时,薄膜传感器和保护层之间,发生了肉眼无法察觉的微小滑移剪切。

上位机的数据曲线里,出现了一个异常优美平滑的缓慢上升段。

系统判定:“载荷平滑转移,步態极佳。”

“神仙数据啊。”

江临笑嘆,在这种刚性机械结构里,根本不可能存在这么平滑的受力曲线。

他调出正对著足端的高速摄像头,將帧率拉满到240fps,开始一帧一帧地转动滑鼠滚轮进行回放。

画面在漆黑的屏幕上缓慢跳动。

停在第九十七帧。

画面里,金属足端早已死死地压住了尼龙障碍条,足底的pom材料甚至发生了微小的弹性形变。

然而,旁边同步显示的压力曲线,却像个刚睡醒的树懒,还在慢吞吞地往上爬升,根本没有达到触地閾值。

延迟。

还是足足14帧。

以当前240fps的帧率换算,14帧意味著58毫秒。

对一个在b站刷著擦边舞蹈视频的观眾来说,58毫秒连眼皮眨一下的时间都算不上。

但对於一台依靠內部棘爪正时逻辑,在失衡边缘疯狂试探来活命的机械六足虫来说,58毫秒的物理信號延迟,足够把整条纯机械的动力链送进火葬场。

58毫秒,棘爪早就错过了最佳的咬合时机,齿轮会在错误的位置卡死,电机瞬间过载烧毁。

江临在记录本上写——

【g-01踩坑记录:传感器安装方式及材料力学引入假柔顺。保护层剪切滑移与fsr迟滯共同引入读数延迟,当前安装方式下延迟约58ms。不能直接用於判断触地时刻,必须先改安装结构,再与电流、imu和视频帧做交叉校验。】

【g-01第一课:给身体接上神经,不等於身体真的会说实话。】

第一只虫子的难点,是攻克机械加工精度,让它在复杂的相位中走起来。

第二只虫子的难点,是攻克系统工程,让它说真话。

而在这个充满摩擦,温度,噪声的现实物理世界里,让一台由无数零件拼凑起来的机器说出真话,比让它走起来,难上百倍。

……

下午两点,吃过午饭小睡了一觉的江临开始收拾比足端压力更让人抓狂的东西。

imu。

如果说足底的压力传感器是个喜欢用物理滑移来撒谎的骗子,那imu就是个患有神经衰弱的敏感肌。

敏感本来是它的本职工作。

通过內部微机械结构,它能精准记录机身在三维空间里的横摆、俯仰、微小的震动,以及每一次跌倒时的瞬时衝击g值。

可问题在於,如果你把这个敏感的神经元固定在错误的位置,它就会把主轴电机的电磁高频振动,某颗m3螺丝没拧紧的鬆动,甚至是某根数据线在风中拍打机架的震颤,统统误认为是机身的姿態变化。

江临在这个小小的硅片上,经歷了三次痛苦的叠代。

v1.0方案(中置底盘直贴)。

他遵循了物理学中最直观的逻辑,把imu贴在机身的几何中心,也就是底盘的正中央。

位置绝对准確。

可是那个功率高达150w的直流无刷主轴电机,就在它旁边不到五厘米的地方。

主轴一通电开始旋转,哪怕机器还没落地,上位机里的数据波形直接炸裂。

高频的电磁噪声和电机的机械共振,顺著刚性底盘全传了过来。

机身明明稳如老狗,屏幕上的姿態曲线已经疯得像在跳迪斯科。

v2.0方案(上层柔性支架)。

秉著惹不起躲得起的原则。

他用3d印表机打了一个尼龙小架子,把imu挪到了远离底盘和电机的上层空间。

电机噪声確实小了,波形平滑了不少。

但江临还没来得及高兴,一落地测试就原形毕露。

尼龙支架太薄,悬臂太长,机器只要迈开腿走路,整个机身带动的低频晃动,让那个小支架自己开始產生共振颤抖。

最终,imu记录下来的根本不是真实的机身整体姿態,而是那个破支架在空中疯狂的帕金森抖动。

v3.0方案(加厚金属配重块)。

江临动了真火。

他用6061硬质铝合金搓出了一个极厚、硬的固定底座,然后攻了几个极紧的螺纹孔,把imu锁在上面。

这一次,刚性绝对足够,数据瞬间乾净得像教科书里的示例。

然后就是这块沉重的实心铝块,增加了机身上半部分的质量分布。

机器的整体重心被凭空拔高了12毫米。

当这台机器再次爬上那些非重复间距板时,因为重心的改变,侧倾风险明显增加。

记录系统,再一次无情地改变了被记录的物理对象。

江临冷静地把这三次测试、三组截然不同的数据图表並排放在屏幕上。

第一组:被电机高频噪声污染的假姿態。

第二组:被支架低频自振污染的假姿態。

第三组:很乾净,却让机器变得更容易摔倒的假数据。

三条路,每一条都不完美。

但这就是工程学,不用在真空球形鸡的假设下寻找一个完美的解析解。

而是在一堆糟糕透顶的选项里,通过无数次的权衡,妥协,压榨材料的极限,挑出一个错得最少的。

最终,他配置了一个复合滤波方案。

机械层面,將imu移到了靠近机身重心,但不在主轴正上方的侧边。

用一块短小精悍的標准化铝座固定,然后在铝座和机架之间,垫入一层极薄的高密度丁腈橡胶片,用来做物理层面的低通滤波。

连续测试了四次不同厚度不同邵氏硬度的垫片,再配合软体层面的卡尔曼滤波算法,才勉强把噪声压到了边缘计算板能够处理的閾值范围以內。

……

傍晚时分,江临放在一旁的手机屏幕不断亮起,低熵工坊b站后台正在发送疯狂涌入的消息提示。

这很正常。

一个没有歷史投稿的新帐號,突然靠一条硬核机械视频衝进科技区推荐池,又正好踩著非周期这个热词,必然会招来一堆乱七八糟的东西。

有人在耐心等低熵工坊的第二期技术解析。

有人在冷嘲热讽,认定他江临已经江郎才尽,不敢继续往下做,生怕暴露理论的缺陷。

有人像催债一样在评论区刷屏催他放出详细的solidworks图纸。

有人直接开口:【up主,我是学生,cad发我一份,我想学习一下。】

还有人更直白。

【哥们,你这个思路我感觉能搞创业,要不要一起做?我负责商业,你负责技术。】

江临一条条滑过去,飞快瀏览了一遍,关掉后台,接著调 g-01。

晚上七点三十五。

第一组乾净的翻车数据终於出现。

测试环境其实很简单,工作檯上只有一块短小的木板,上面用强力胶固定著一根呈现30度斜角的尼龙条。

目標也只有一个:主动製造右前腿在特定相位下的斜向卡滯。

g-01以设定的极低速度,沉稳地向前迈进。

左前腿落地,一切正常。

右中腿支撑起一半的机身重量,正常。

右前腿在空中划过一条弧线,慢慢接近那根斜向尼龙条。

足端接触的瞬间。

江临盯著屏幕上被切分成四个象限的同步画面。

第一象限(左下角):压力曲线。

屏幕上,代表右前足的绿色压力曲线轻轻抬头。

第二象限(左上角):imu姿態。

紧接著,红色横摆曲线出现了一小段几乎微不可察的向右偏转趋势。

第三象限(右下角):主轴电流。

此时,电流波形依然是一条平静的直线,电机还不知道灾难即將降临。

隨著高速摄像机的画面逐帧推进,时间被无限拉长。

第十二帧:右前足的pom材料在光滑的尼龙条上,因为斜向受力,发生了一次极其微弱的侧向滑移。

就在滑移发生的瞬间,压力曲线突兀地分裂出两个异常的双峰。

第十五帧:侧滑带来的连锁反应爆发了。

接触角的微小偏差,通过连杆系统放大了数倍。原本应该完美避开的棘爪齿尖,悽厉地擦到了转动中的齿条边缘。

第十七帧:机械干涉的阻力瞬间反馈到主轴。

电流採样晶片捕获到了安培数的陡然暴增,一条黄色的直线如利剑般直插云霄。同时,机身因为受力不均,横摆角速度剧烈加速。

第二十帧:灾难彻底降临。

主轴电机的驱动板触发了过载保护,切断了pwm输出,整台机器发出一声沉闷的咔声。

机器停住了。

江临把这不到一秒钟的慢动作回放,来来回回拉动了整整五遍。

再把四条时间轴绝对对齐的数据拖出来看。

足端压力,imu 横摆,主轴瞬时电流,高速视频捕捉帧。

在人类工程学的歷史长河中,这微不足道。

但在这个小车库里,这是第一次,四条原本孤立的物理证据链,严丝合缝地对上。

不是那种被滤波算法涂抹过的完美擬合,而是带著真实物理世界粗糙毛边的,足够清晰的因果逻辑链。

错误,並不是从电机电流异常开始的。

错误,也不是从机身倾斜那一刻开始的。

错误,更不是从那声刺耳的棘爪死锁声开始的。

一切灾难的源头,第一下真正要命的失效,是那次在第十二帧发生的,足端在斜向接触里的微小侧滑。

侧滑,製造了毫米级的接触角偏差。

偏差,把本该顺畅工作的棘爪硬生生拖进了一个错误的机械相位。

棘爪在这个错误的时刻提前嚙合,这才引发了最终的整条运动链的死锁。

逻辑完美闭环。

江临看著屏幕,只觉得头皮发麻。

这套神经系统太可怕了,但也太美了。

如果没有那片该死的足端压力传感器,如果只看外部的录像视频,所有人都会理所当然地以为,是底部的棘爪设计有缺陷,发生了疲劳卡死。

如果没有精確到度数的imu,如果只看粗暴的电机电流曲线,大家都会判定是电机马力不够,遭遇了过载。

如果没有那个全局快门的高速摄像头提供绝对时序同步,如果单看压力曲线那诡异的双峰,又会很容易误判成简单的提前触地干涉。

只有当这四条带著杂音的线束合在一起,交叉印证,失败,才终於第一次在这个狭小的车库里,开口说出了一句完整清晰的话语。

江临在屏幕上按下了暂停键。

右前足端,斜斜地地压在尼龙条上的瞬间。

此时的机身,还没出现任何肉眼可见的倾斜。

决定翻车与否的棘爪,还没有真正咬合锁死。

而代表主轴电流的黄色曲线,才刚刚开始微微抬头。

这是问题真正开始爆发之前,安静隱秘的一帧。

截图,保存,录入日誌。

命名:g01_fail_001_initial_slip_frame.png

【test_id:g01-001】

【terrain:斜向固定尼龙条极限测试】

【start_phase:初始运动相位 52.5°】

【first_event:灾难原点-右前足端斜向接触后发生侧滑】

【propagation:因果链传导-侧滑→接触角偏差畸变→棘爪提前擦齿干涉→瞬时负荷突增导致电流上升→触发主控硬体保护停机】

【final_stop:系统状態-运动链发生不可逆死锁】

【recoverable:自恢復可能-否】

第一条具有完整因果追溯能力的失败日誌,在6月30日这个闷热的夜晚,正式落笔。

夜里九点。

江临打开剪辑软体,把刚才这个颇具歷史意义的翻车过程,隨手剪成了一段只有十六秒的分屏视频。

视频被切分成严谨的四宫格。

左上方,是足端接触瞬间的超高清慢动作特写。

右上方,是实时同步滚动的绿色压力受力图。

左下方,是隨著机身轻微晃动而波澜起伏的红色imu横摆曲线。

右下方,则是那条如同生命线一般,最终飆升至极限的黄色主轴电流。

十六秒的时间里,每一帧的数据跳动,都精准踩在机械咬合的节点上,犹如心跳般震撼。

目录
设置
设置
阅读主题
字体风格
雅黑 宋体 楷书 卡通
字体风格
适中 偏大 超大
保存设置
恢复默认
手机
手机阅读
扫码获取链接,使用浏览器打开
书架同步,随时随地,手机阅读
收藏
换源
听书
听书
发声
男声 女生 逍遥 软萌
语速
适中 超快
音量
适中
开始播放
推荐
反馈
章节报错
当前章节
报错内容
提交
加入收藏 < 上一章 章节列表 下一章 > 错误举报