上午十点整,林辰站在总监办公室门口,指尖还残留着母亲赶早蒸的热包子的余温。衬衫是昨天的,在沙发上睡了一宿,看起来皱巴巴的。他深吸一口气,推开了那扇磨砂玻璃门。
总监李涛坐在办公桌后,脸上没什么表情,握着一支笔正在签署什么文件。
“先坐。”
他指了指对面的椅子,开门见山,“昨天的方案我看了,中规中矩,没什么亮点。老板那边对三季度的业绩很不满意,咱们部门年底要优化三个人,你心里有数吧?”
林辰点头:“我知道,李哥。四季度我会冲一冲。”
“冲一冲不够!”李涛放下笔,身体往前倾了倾,“给你交个底,你这个位置,现在有好几个年轻人盯着,能拼能熬,要价还比你低。公司不是慈善机构,将近四十岁的销售主管,要是带不动业绩,性价比还不如刚毕业的小孩。”
他顿了顿,语气缓和了点,想让声音更加温和一点:“给你两个月,把西区那几个难啃的客户拿下来,业绩冲到部门前三,你就稳。冲不上去……你也知道现在大环境不好,自己早做打算。”
从办公室出来的时候,走廊的阳光有点刺眼。林辰靠在墙上,摸出烟盒,抽出一根又塞回去,他不会抽烟!快四十岁,被人当着面说“性价比不如年轻人”,换作五年前,他大概会觉得屈辱,可现在,心里只剩现实。
房贷、药费、学费、生活费,每一样都在提醒他,这份工作不能丢。可同样刻在脑子里的,是父亲扭伤腰时疼得冒汗的脸,是母亲深夜里扶不动人的哭声。职场的安稳本就摇摇欲坠,他总不能连父母的养老也一起赌进去。
午休时间,林辰没去吃饭,抽空回家但没回到家,坐在地库车里翻着昨晚整理的配件清单。小区楼下有间闲置的小车库,今天电话里跟房东谈好了,六百块一个月,押一付三。积蓄不算多,但先投进去试试,就算最后失败了,至少尝试试过。
他是市场营销出身,干了十二年智能设备销售,见过无数产品,听过无数客户吐槽。他比很多工程师都清楚,普通家庭需要什么样的养老机器人——不是展厅里花里胡哨的概念机,是皮实、好用、便宜,能真真正正替子女盯在家里的“半个家人”,有没有问题倒是其次。
可懂需求是一回事,把东西做出来又是另一回事。
三天后,车库正式成了他的临时工作室。找几块旧木板随便搭下就是工作台,搭成的工作台摆着电烙铁、万用表、剥线钳,纸箱里堆着主控板、传感器、减速电机、小型移动底盘,墙上贴着他打印的引脚定义图和功能清单。空气里混着潮湿的霉味和焊锡的松香味道,灯光昏黄,却让他生出一种久违的、像创业初期的亢奋。虽然一省再省,可这么多年藏得私房钱还是快被一扫而空。
第一批配件到货那天,他兴致勃勃地照着网上的开源教程接线。主控板用的是市面上最常用的开源嵌入式板,血压模块选了医用级的成品传感器,语音识别模块挑了口碑最好的第三方,移动底盘是现成的小型AGV改装款。他以为只要按图索骥拼起来,烧录进示例代码,就能跑起来。
但现实给了他当头一棒。
第一次通电,主控板电源指示灯刚亮了两秒,瞬间变红,串口调试工具跳出一串乱码,紧接着一股淡淡的焦糊味飘了出来。林辰心里一紧,赶紧拔了电源,摸了摸主控芯片,烫得吓人,明显过载了。
“怎么回事?”他对着电路图反复核对接线,红黑正负极没反,引脚也对应得上,怎么会烧?
他翻出购买链接里的教程,从头到尾看了三遍,教程只说了“按图示接线即可”,半句没提常见故障排查,这是默认不考虑新手安装。去技术论坛发帖求助,等了半天,只有两条回复:“这都能接反?新手先去补基础吧。”“啥都不懂也来玩嵌入式?现在跨界门槛这么低了?”
错误太低级没人愿意搭理!
嘲讽比问题本身更扎眼。林辰盯着屏幕看了会儿,关掉帖子,拿出万用表,一根线一根线地测通断,一个引脚一个引脚地查电压。测到第三个引脚时,才发现教程里的引脚图标错了,VCC和GND的位置画反了。
就这么一个低级错误,烧坏了他第一块主控板。
“他喵的。”林辰低声骂了一句,把烧坏的板子扔到一边,又拆了一块新的。这点挫折不算什么,他做销售的时候,被客户拒之门外几十次都有,总不能一块板子就打退堂鼓。
可接下来的日子,碰壁成了家常便饭。
硬件适配是第一道坎。血压模块和主控板的通信协议不匹配,I2C接口始终读不出数据,换了三种驱动都不行;语音模块灵敏度要么太高,一点杂音就误触发,要么太低,老人说话大声都没反应;移动底盘的两个电机转速怎么调整都不一致,走起来永远跑偏,调了无数次PID参数,还是歪歪扭扭像喝酒的醉汉。
程序报错更是经常遇到。有时候用AI改一行代码,测试编译能通过,一烧录就死机,串口打出一堆看不懂的错误信息。他对着错误码一个个查,从变量溢出到内存泄漏,从时序冲突到驱动不兼容,很多术语他听都没听过,只能一边用AI查一边做笔记,一点一点地啃。
最难的时候,他想起了以前合作过的研发部张工。张工是公司里的技术骨干,做过三年机器人底层开发,以前对接项目时一起吃过几次饭。林辰特意买了烟和咖啡,趁午休跑到研发部楼下等他。
张工听他说完来意,叼着烟笑了:“林哥,不是我泼你冷水啊。做销售你是行家,可研发这东西,真不是看俩教程就能搞成的。隔行如隔山,我们团队十几个人,熬了半年才出一台商用样机,你一个人想做家用养老机器人?说句不好听的,纯属不自量力。”
他弹了弹烟灰,语气随意却扎心:“你要是想给父母买,我帮你搞个性价比高的,买台现成的就行。自己做?费钱费力,最后做出来也是个玩具,真没啥用。”
林辰听了没啥意外,跨行跨界纯小白玩技术,他自己也想说不自量力。但他还是忍不住,陪着笑脸继续问通信协议的问题。张工也不是故意损他,只是“技术大拿”和技术白痴的俯视视角,总算弄明白了问题,还问到了一堆指导书。
深秋的风刮在脸上有点凉。他攥着没送出去的烟,走回车库,看着工作台上散落的零件和满屏的报错代码,坐了很久。
是啊,他是个销售,是搞市场的,凭什么觉得自己能跨界做机器人?张工说得没错,不自量力!
可下一秒,他又想起父亲坐在沙发上,强撑着笑说“不给你添麻烦”的样子。如果现成的产品好用,如果几万块一台的机器人他能眼睛不眨就买,他又何必自己遭这个罪?市面上的产品要么贵得离谱,要么难用得像个智障——智能顾得上一种功能,真正满足自家老人需求的,太少了。
“玩具就玩具。”林辰低声骂了句,重新拿起万用表,“先做个能用的玩具再说。”
他不再追求一步到位,用上了做营销方案的思路——先做再做好,先做最小可用版本,再慢慢修改。复杂的人脸识别、情感交互、自主导航全部砍掉,只留四个核心功能:移动避障、血压测量、定时吃药提醒、一键紧急呼叫。先把这四个做通,能跑能用,再谈其他。
策略一变,思路瞬间清晰了很多。
他不再死磕底层驱动,转而找现成的适配库,改参数、做兼容,还好科技发达兼容协议多的是,就是要小心下载区的病毒;电机转速不一致,就手动加偏差补偿,哪怕精度差点,能走直线就行;语音识别不准,就把指令词缩减到最少,只保留最常用的十几句,提高识别率。
此后的大半个月,林辰过起了两点一线的生活。白天在公司冲业绩,应付客户和主管;下班就扎进车库,对着一堆零件熬到凌晨两三点。泡面和咖啡成了标配,手上被电烙铁烫了好几个水泡,旧的没好新的又叠上去,衬衫袖口永远沾着焊锡的痕迹。
妻子跟他吵过一次:“林辰你魔怔了?好好的班不上,天天捣鼓这些破烂,钱花了不少,你做出什么了?万一工作再丢了,全家喝西北风?”
他没反驳,只是等妻子气消了,才低声说:“再给我两个月,就试试。成了,以后爸妈养老有个着落;不成,我就安心上班,再也不折腾了。”
他不是没动摇过。
有天夜里,血压模块的校准又失败了,测出来的数值比实际差了三十,改了十几版程序都没用。刚巧母亲打来电话,说父亲下床想倒水,又差点摔了,幸好扶着桌子才稳住。挂了电话,林辰盯着屏幕上跳动的错误数据,猛地把鼠标摔在工作台上,零件散落一地。
他抱着头蹲在地上,疲惫、挫败、无力感一起涌上来,有些事情不是多试试就行的。将近四十岁的人了,工作岌岌可危,父母照顾不好,想做点事又处处碰壁,简直一无是处!
可指尖碰到口袋里的手机,屏保是去年全家拍的合照,父母笑得满脸皱纹。他想起那天深夜从医院回来,母亲说“你好好的,我们就放心了”。
他不能放弃。
林辰深吸一口气,捡起鼠标,重新坐回椅子上。驱动不行就换模块,校准不准就一遍遍测,人工记录数据拟合曲线。他不是工程师,不懂什么最优算法,可他有最笨的办法——试,一千次不行就一万次,总能试出能用的参数。
就这样又熬了三天。
凌晨三点,车库里只有风扇的嗡嗡声和电脑主机的轻响。林辰揉了揉通红的眼睛,对着面前粗糙的机器人,试探着说了句:“测量血压。”
语音模块的指示灯闪了闪,识别成功。机器人底部的轮子轻轻转动,调整了一下位置,带着袖带的机械臂缓缓抬起来,对准了旁边的模拟手臂。袖带慢慢充气,屏幕上的数字开始跳动。收缩压128,舒张压82。
和标准血压计的数值只差了两个单位。
林辰屏住呼吸,又下达指令:“前进。”轮子转动,机器人晃晃悠悠往前挪了两步,碰到地上的扳手前,红外避障传感器触发,稳稳停了下来。
成了!
就这么简单的两个动作,他熬了整整二十三天。
林辰坐在小板凳上,看着眼前这个丑得有点可爱的家伙。外壳是找淘保店3D打印的,白色PLA材料,边缘还有没打磨干净的毛边;机身不高,刚好到成年人膝盖,方便老人操作;顶部装着摄像头和应急呼叫按钮,肚子上是一块小小的触控屏。
它不精致,不智能,功能简陋得可怜,可它是林辰亲手一根线一根线接起来,一行代码一行代码改出来的。
“就叫你零吧。”林辰伸手,轻轻碰了碰冰凉的机身,“从零开始,一切都从零开始。”
他给零做了第一次完整的功能测试:定时提醒正常,紧急呼叫能拨通他的手机,避障、血压测量基本达标。虽然反应慢了点,精度差了点,走路还有点晃,但核心功能都能用了。
初代雏形,终于成了。
林辰心里憋着一股劲,打算周末就把零带回家,给父母一个惊喜。有这个家伙盯着,至少父亲卧床静养的这半个月,能按时吃药、随时测血压,有急事也能第一时间通知他。
他收拾着工作台,准备最后通一次电,检查一下整体稳定性,就关电源回家睡觉。
“零,前往厨房位置。”林辰随口下达了指令,模拟家里的场景。
零的轮子转动起来,缓缓往前。走了不到两米,原本平稳的机身突然猛地一顿,轮子开始疯狂打转,程序像是彻底乱了套。没等林辰反应过来,零一头撞在工作台的铁腿上,“哐当”一声,顶部的血压模块被震得直接脱落,摔在水泥地上。屏幕闪了两下,彻底黑了。主控板的位置,散发出一股熟悉的焦糊味。
林辰心里一沉,赶紧蹲下去,拔掉电源,拆开外壳检查。主控芯片已经烫手了,电源模块附近的线路已经烧黑了一小片。他反复按开机键,机器毫无反应。
车库里瞬间安静下来,只有风扇还在嗡嗡转着。
窗外的天已经蒙蒙亮了,淡青色的光从车库门缝里透进来,照在散落的零件和发黑的主板上。林辰蹲在地上,手里拿着冰凉的机身,指尖还能感受到刚才残留的温度。
他以为跨过了最难得技术坎,做出了能用的雏形,却没想到,第一次全功能试运行,就迎来了致命的硬件故障。
是电源功率不匹配?还是程序逻辑有冲突?又或是底层驱动和硬件本身就存在先天缺陷?他毫无头绪。
手机震了一下,是母亲早上发来的消息,语气永远是报喜不报忧:“辰子,你爸今天能坐起来了,恢复得挺好,你不用再过来了。你别惦记家里,好好上班,别太累。”
林辰看着那条消息,又看了看瘫在地上、一动不动的零。雏形初生的喜悦还没散去,现实就又给了他重重一击。他甚至不知道,这台亲手拼凑出来的机器,到底能不能真的走到父母面前。
车库外,清晨的风卷着落叶掠过。而他的跨界之路,才刚刚迈出第一步,就已经遍布荆棘。
作者寄语: