会说话的购物车 ——语音与屏幕双通道提示的适老智能购物车
会说话的购物车
——语音与屏幕双通道提示的适老智能购物车
做中学·探未来|科学教育实践案例 方向六:人工智能
作品信息
项目 | 内容 |
作品名称 | 会说话的购物车——语音与屏幕双通道提示的适老智能购物车 |
主题方向 | 方向六:人工智能(语音识别、二维码识别、人机交互) |
适用学段 | 小学高年级(4—6 年级) |
主控平台 | ESP32(运动与称重)+ 行空板 K10(识别与播报)双主控 |
编程软件 | Mind+(图形化) |
结构材料 | 超市成品购物车改造、3D 打印连接件与外壳、椴木板、亚克力圆盘 |
一、项目介绍
1.1 从一次陪奶奶买菜开始
去年冬天,我陪奶奶去超市。她在货架前站了很久,把酱油瓶举到离眼睛很近的地方,又放下,最后问我:“这上面写的啥?”我念给她听,她又问:“贵不贵?”我这才发现,货架上的标签字很小,而她想比较的两瓶酱油,隔着半米远。
那天我们还遇到三件小事:购物车装了两袋米以后很沉,奶奶推着走一段就要停一下;想买散装的青菜要去称重台排队,称完又要回到货架确认价格;结账时前面排了十几个人,她站不住,只能靠着购物车等。回到家她说了一句:“现在的超市,东西多了,人却更累了。”
据国家统计局公布的 2023 年数据,我国 60 岁及以上人口约 2.97 亿,占全国人口的 21.1%。老年人不是少数,超市也不是特殊场所,可是我们习以为常的“看标签、推车、排队”这三件小事,对他们来说每一件都要多花几倍力气。
于是我想到一个问题:能不能让购物车自己会说话——把它“看到”的价格和重量,用听得见的声音和看得清的字说出来?
1.2 我把问题拆成了四个可以测量的疑问
“做一台适合老人的购物车”这句话太大,没办法验证。我把它拆成四个能用数字回答的问题,后面所有实验都围绕这四个问题展开:
编号 | 探究问题 | 怎么判断答对了 |
Q1 | 按键控制电机,装满东西后还能及时响应吗? | 空载与 12 kg 负重各测 5 次,记录反应与耗时 |
Q2 | 称出来的重量和电子秤差多少? | 10 种商品逐一比对,算绝对误差与相对误差 |
Q3 | 扫商品二维码,能不能又快又准地认出来? | 10 件商品各测 1 次,记录耗时与识别结果 |
Q4 | 语音播报,老人能听清吗? | 逐条记录播报是否清晰,统计模糊的条数与原因 |
1.3 它怎么用:三个场景
这台车是在超市成品购物车上改的:后轮换成带减速电机的动力轮,把手右侧装一块行空板 K10,车篮里放一个称重平台。老人只需要记住三个动作——按住按钮、把东西放上平台、把二维码对准屏幕。
· 推着走 按住把手右侧的前进键,车就往前走;松开手,车立刻停下。想后退就按另一个键。不用推、不用拐弯使劲,走路不稳的老人也能一只手扶车、一只手按键。
· 放上称 把散装商品放在车篮里的圆形平台上,把手上方的 OLED 小屏立刻显示重量,不用再去称重台排队。
· 听价格 把商品包装上的二维码对准行空板屏幕,屏幕显示商品名称和价格,同时用语音念一遍;买完了扫屏幕上的收款码就能付款,不必挤在收银台前等。
1.4 背后的科学原理
这一节是我做得最费力的部分。车子会推、会称、会说,背后其实是五件很基础的事,每一件都能用课上学过的知识解释清楚。
(1)为什么要“两条通道”:多模态提示的原理
老年人最常见的两种感官衰退是视力下降和听力下降,而这两件事往往不是同时发生的。只用屏幕提示,花眼的老人看不清;只用语音提示,耳背的老人听不清;在嘈杂的超市里,语音还会被环境噪声盖住。
所以我把同一条信息同时用两种方式给出:屏幕写字(视觉通道)+ 语音播报(听觉通道)。在信息学里这叫“冗余编码”——两条通道互为备份,任意一条失效,信息仍然能被收到。这不是把功能做两遍,而是让两种能力不同的人都能用上同一台机器。
(2)二维码:一小块黑白格子里存了什么
二维码是把一串字符按黑白方块编码成的图案。它的三个角上有“回”字形的定位块,摄像头无论从哪个角度看,都能先找到这三个角,把倾斜的画面校正成正视,再逐格读出黑白,还原成字符。二维码里还有纠错码,即使被磨掉一小块、被手挡住一角,仍然能读出来。我把每件测试商品的名称和价格做成二维码,贴在包装上,扫描结果就是那串字符。
这也解释了我最初失败的原因:一开始我用的是“物体分类”模块,让机器直接认商品。但商品摆放角度一变、光线一变,识别结果就跟着变。二维码不依赖外观,只要图案完整就读得出来——把“看图猜是什么”换成“读一串已经写好的字”,稳定性立刻上来了。
(3)减速电机:为什么要“减速”才有劲
电机本身的转速很高、力气很小,直接装在轮子上,车会窜得很快却推不动重物。减速电机在电机和输出轴之间加了一组齿轮,把转速降下来、把扭矩提上去。功率不变时,转速和扭矩成反比:转速降到几分之一,扭矩就放大到几倍。我用的是 12 V 减速直流电机,装在后轮上,靠两个按键给驱动板不同的电平组合,实现前进(两轮同向)、后退(两轮反向)和停止(两轮断电)。
(4)称重模块:重量怎么变成屏幕上的数字
称重平台下面是一根金属梁,梁上贴着电阻应变片。物体压上去,梁发生极微小的弯曲,应变片被拉长或压短,电阻随之改变;四片应变片接成电桥,电阻变化就变成毫伏级的电压差。这个电压太小,单片机读不出来,所以要先经过 HX711 芯片放大并转换成数字量,再送进 ESP32。
程序里有一个“比例系数”,把读到的原始数字换算成克。我反复试了几次,最后定为 106。这个系数就是校准的结果——同一块平台、同样的安装方式,系数定了,读数才稳定。
(5)按键与电平:为什么“按下”读到的是 0
按键模块一端接引脚、一端接地。引脚内部接了一个上拉电阻,平时被拉到高电平,读数是 1;按下按键,引脚直接接地,读数变成 0。所以程序里判断的是“如果引脚读到 0,就前进”。这个设计还有一个好处:手一松开,读数立刻回到 1,电机就停——这相当于一个“松手即停”的保险,老人手滑或者突然站不稳时,车不会自己跑掉。
1.5 对应哪些课程内容
学科 | 对应内容 |
科学 | 电与磁、简单机械(齿轮传动与扭矩)、力的测量、信息的多种载体 |
信息科技 | 传感器数据采集;二维码与编码;程序的顺序、分支与循环;用数据描述现象 |
劳动 / 综合实践 | 工具使用与焊接;3D 建模与打印;产品测试、评价与改进 |
道德与法治 / 心理健康 | 关注身边的老年人,理解他人的困难与需要 |
二、运行演示
2.1 成品外观
整台车保留了超市购物车的原有车架和车篮,改动集中在三个地方:后轮换成动力轮、把手上装了行空板与按键、车篮里装了称重平台。这样做的原因是——老人已经熟悉购物车的样子,外形不变,他们才敢用。

图 1 成品外观:左为整体——沿用超市购物车的车架与车篮,后轮换装减速电机,线束沿车架捆扎;右为把手——3D 打印外壳固定行空板 K10,下方并排两颗按键,屏幕朝向使用者
图 2 车篮内的称重平台:椴木板底座、亚克力圆盘承物面,下面藏着应变式称重传感器
2.2 推着走:自动助力
下面是实际运行时的顺序。这里有一个设计上的取舍:我没有做“按一下走、再按一下停”,而是做成“按住才走、松手就停”。前者更省力,但老人一旦忘记松手,车会一直往前;后者累一点,却不会失控。
步骤 | 发生了什么 | 使用者看到 / 听到什么 |
① | 双手扶住把手,拇指按住右侧前进键 | OLED 显示“前进” |
② | 驱动板给两个后轮电机输出同向电平,车轮转动 | 车缓慢前移,屏幕保持“前进” |
③ | 松开按键,引脚读到高电平,电机断电 | 屏幕显示“停止”,车停下 |
④ | 按住后退键,两轮反向转动 | 屏幕显示“后退”,车缓慢后退 |
图 3 负重测试:车篮内装入 3 个收纳箱(合计约 12 kg),沿直线推行 20 m 与 50 m 各 5 次
2.3 放上称:边买边称
车篮中间的圆形平台就是称重面。放上商品,OLED 立刻刷新读数,单位是克。读数会有一点跳动,这是因为车在动、平台受到轻微晃动,属于正常现象;车停稳后读数会很快稳定下来。
2.4 听价格:扫码播报与结算
步骤 | 发生了什么 | 使用者看到 / 听到什么 |
① | 按下称重键,或直接把商品举到屏幕前 | 屏幕切到摄像头画面 |
② | 摄像头读到包装上的二维码,进入识别模式 | (识别中) |
③ | 程序取出二维码里的商品信息,写入变量 | 屏幕第一行显示商品名 |
④ | 语音合成念出价格,屏幕第二行显示金额 | 听到“今日青菜价格,2.48 元 1 斤” |
⑤ | 买完扫屏幕上的收款码付款 | 手机提示支付成功,不必去收银台排队 |
图 4 扫码识别:商品包装上的二维码对准行空板摄像头,屏幕同步显示识别结果
图 5 屏幕实拍:第一行商品名“青菜”,第二行价格“2.15 元一斤”,同一句话由语音念出
三、探究过程与结果
3.1 先问用的人:超市里的十次访谈
动手之前,我先去超市找正在购物的老人聊天。开场我先说明自己是一个小学生,在做一项关于购物的调查,问他们愿不愿意说说平时购物的麻烦。多数老人很愿意讲,有一位还带着我走到货架前,指给我看哪一排标签最难看清。
图 6 在超市进行的现场访谈(画面中人物面部已做模糊处理)
我一共问了十个问题,从“看不看得清标签”到“希不希望有电动助力”,一个问题对应一种可能的功能:
序号 | 访谈问题 | 想验证什么 |
1 | 您在超市购物时,通常会遇到什么困难? | 开放式,先让老人自己说 |
2 | 您觉得最需要改进的地方是什么? | 排出优先级 |
3 | 您有没有因为视力问题看不清价格或标签? | 视觉通道是否失效 |
4 | 购物车推起来是否费力?怎样才能更轻松? | 是否需要助力 |
5 | 您排队结账时觉得等待时间长吗? | 结算环节的痛点 |
6 | 买散装食品时遇到过称重不准吗? | 称重环节的痛点 |
7 | 您希望购物车能自动识别商品和价格吗? | 对自动识别的接受度 |
8 | 如果提供语音提示,告诉您价格和总额,有帮助吗? | 听觉通道是否可用 |
9 | 您希望购物车帮您在超市里导航找商品吗? | (本次未实现) |
10 | 如果有电动助力帮您推车,会觉得更轻松吗? | 助力的价值判断 |
把十位老人的回答归并后,出现频率最高的诉求集中在六件事上:
诉求 | 老人原话(整理) | 对应到本作品的功能 |
车太沉 | 装满东西以后推不动,走一段要歇一下 | 减速电机+按键助力 |
看不清 | 价签字太小,得凑很近,还看不清 | 屏幕大字显示商品名与价格 |
听不清 / 记不住 | 念一遍我就记住了,不用记数字 | 语音播报价格 |
称重要排队 | 买把青菜还得跑去称,来回两趟 | 车篮内置称重平台 |
结账排队久 | 站不住,队伍太长就不买了 | 屏幕收款码,随买随结 |
找不到商品 | 超市太大,转两圈找不到 | (本次未实现,列入下一步) |
访谈给我的三点结论:① 老人最怕的不是“不会用”,而是“用了更麻烦”,所以操作必须比原来更省事;② “看不清”和“听不清”往往同时存在,只做一种提示会漏掉一半人;③ 排队和称重是两处可以省掉的流程,省流程比加功能更受欢迎。
3.2 画出方案:从结构图到流程图
确定功能后,我先把整台车拆成“传感器—主控—执行器”三段。这里有一个和别的项目不同的地方:我用了两块主控。ESP32 负责实时性要求高的部分(按键响应、电机输出、称重采样),行空板 K10 负责算力要求高的部分(摄像头识别、屏幕、语音)。两块板各自跑各自的程序,一块卡住不会拖累另一块。
图 7 系统结构图:按键传感器、称重传感器、摄像头负责“感知”,两块主控负责“判断”,电机、OLED、屏幕与语音负责“动作”
接着画运行逻辑。三个判断是并行轮询的:称重平台上有东西就显示重量,按键被按下就驱动电机,摄像头读到二维码就显示并播报;三个条件都不满足,就回到初始化,什么也不做。这张图后来成了我排查故障的顺序表——先看传感器读数对不对,再看程序判断对不对,最后看执行器动没动。

图 8 运行逻辑流程图:三个判断并行轮询,任一条件不满足即返回初始化,不做任何动作
3.3 改装:从拆轮胎到装把手
购物车是网上买的成品。传统购物车的轮子没有动力,所以第一步是把后轮拆下来,再用 3D 建模软件设计一个能把减速电机和后轮连起来的结构件——这是整个项目里返工最多的一步,因为孔位差 1 毫米,电机就装不正,车会跑偏。
图 9 3D 建模的连接件:左侧为电机与轮轴的固定座,右侧为车架抱箍,孔位按实测尺寸建模
结构件打印出来后,把减速电机的引线焊长、套上热缩管,再固定到后轮上。这一步我犯过一个错:第一次焊完没有测通断,装上车才发现其中一个电机不转,只好全部拆开重焊。
图 10 给减速电机加长引线:焊点套热缩管,避免车架摩擦破皮短路
把手部分是第二个改动。考虑到老人的身高和视线,我用一个管道抱箍把行空板固定在把手横杆上,屏幕朝上倾斜,站着就能看清;两颗按键并排装在拇指能碰到的地方,不需要低头找。
图 11 用抱箍把行空板外壳固定在把手横杆上,屏幕朝向使用者
图 12 后轮改装:3D 打印连接件把减速电机与轮轴连成一体,两侧同步安装
3.4 怎么测:把四个疑问变成四项测试
我按四个问题设计了四项测试,每项都规定了记录口径。失败也要记下来,否则数据没法分析。
序号 | 测试项目 | 测试方法 | 记录内容 |
1 | 自动助力 | 装入 12 kg 物品,分别推行 20 m 与 50 m 各 5 次 | 前进/后退/停止是否及时、总耗时 |
2 | 称重准确度 | 10 种商品先在电子秤上称实际重量,再放上平台读数 | 实际重量、显示重量、差值 |
3 | 二维码识别 | 10 件不同类别商品,扫码并等待播报完成 | 耗时、识别是否正确 |
4 | 语音清晰度 | 听播报内容,判断是否能听清商品与价格 | 清晰 / 模糊,并记录原因 |
3.5 测试数据
(1)自动助力:10 次测试中 9 次正常,1 次三个按键全部无反应,检查后发现是电机线接头松动。两次距离的耗时如下表,折算速度基本一致,说明电机在 20 m 与 50 m 上的输出是稳定的。
推行距离 | 次数 | 成功 | 各次耗时(s) | 平均耗时 | 折算速度 |
20 m(12 kg) | 5 | 4 | 8.2 / 5.9 / — / 9.5 / 7.1 | 7.7 s | 约 2.6 m/s |
50 m(12 kg) | 5 | 5 | 19.8 / 22.6 / 18.6 / 18.9 / 20.3 | 20.0 s | 约 2.5 m/s |
“—”表示该次因线路松动未完成,不计入平均。“折算速度”由距离除以平均耗时得到,测试在室内短距离进行,起步与停止的时间都计入总时长,该数值只用于比较两次测试是否一致。
(2)称重:10 种商品的平均绝对误差为 0.023 kg;除土豆外,其余 9 种商品的绝对误差均不超过 0.02 kg,平均相对误差 3.5%。土豆的误差达到 0.14 kg,相对误差 28%,是全部测试中最大的一次。
商品 | 类别 | 实际(kg) | 显示(kg) | 误差(kg) | 相对误差 | 判断 |
苹果 | 水果 | 0.18 | 0.18 | 0 | 0% | 精准 |
香蕉 | 水果 | 0.22 | 0.24 | 0.02 | 9.1% | 合理范围 |
西红柿 | 蔬菜 | 0.35 | 0.34 | 0.01 | 2.9% | 精准 |
黄瓜 | 蔬菜 | 0.45 | 0.45 | 0 | 0% | 精准 |
巧克力糖果 | 糖果 | 0.25 | 0.24 | 0.01 | 4.0% | 合理范围 |
橙子 | 水果 | 0.30 | 0.31 | 0.01 | 3.3% | 合理范围 |
土豆 | 蔬菜 | 0.50 | 0.36 | 0.14 | 28.0% | 误差较大 |
梨 | 水果 | 0.40 | 0.42 | 0.02 | 5.0% | 合理范围 |
果仁糖 | 糖果 | 0.18 | 0.17 | 0.01 | 5.6% | 合理范围 |
胡萝卜 | 蔬菜 | 0.60 | 0.61 | 0.01 | 1.7% | 合理范围 |
(3)二维码识别:10 件商品的识别全部正确(10/10),平均耗时 2.08 s;其中语音播报清晰的有 8 件,另有 2 件因商品名称较长,播报时听不清。
商品 | 类别 | 耗时(s) | 价格(元) | 语音播报 | 识别结果 |
苹果 | 食品 | 2.1 | 12.99 | 清晰 | 正确 |
碗碟套装 | 家居 | 2.3 | 89.5 | 清晰 | 正确 |
蓝牙耳机 | 电子 | 1.8 | 199 | 清晰 | 正确 |
牛奶 | 食品 | 1.5 | 6.8 | 清晰 | 正确 |
床单 | 家居 | 2.0 | 55 | 清晰 | 正确 |
手机充电器 | 电子 | 2.4 | 29.9 | 内容较长,有点模糊 | 正确 |
面包 | 食品 | 1.6 | 8.5 | 清晰 | 正确 |
电视 | 电子 | 3.2 | 2599 | 清晰 | 正确 |
台灯 | 家居 | 2.2 | 45 | 清晰 | 正确 |
酱油(无添加) | 食品 | 1.7 | 15 | 内容较长,有点模糊 | 正确 |
图 13 左:十种商品的称重误差;右:十件商品的扫码识别耗时(数据来自原始记录表)
3.6 从数据里读出的三件事
第一,语音那 2 次“模糊”,问题不在喇叭,而在句子太长。两件播报不清的商品是“多功能手机充电器”和“无添加无防腐剂酱油”,名字都超过 7 个字。我把播报内容改成只念关键词、限制在 5 个字以内(“手机充电器”“无添加酱油”),重测后清晰度恢复正常。结论是:给老人听的信息要短,一次只讲一件事。
第二,称重的误差不是平均分布的,它集中出现在一种商品上。如果不看逐条数据,只看“平均误差 23 g”,会得出“称重基本准”的结论;但把 10 条摊开看,9 条都在 20 g 以内,唯独土豆差了 140 g。土豆形状不规则,只有几个凸起接触平台,受力集中在一点,梁的形变比平放时小。这说明要提高精度,光换更贵的传感器没用,得先解决“怎么让物体受力均匀”。
第三,助力测试的失败是“零响应”,反而最好查。10 次里那 1 次三个按键全都没反应——如果只是变慢,我会怀疑是电机没劲;完全没反应,说明信号根本没传过去,所以我直接去查线路,两分钟就找到了松动的接头。故障现象越“极端”,越容易定位。
四、软硬件清单与制作步骤
4.1 硬件清单
类别 | 名称 | 型号 / 规格 | 数量 | 用途 |
主控 | ESP32 开发板 | ESP32-WROOM-32,双核 | 1 | 电机控制、称重采样、OLED 显示 |
主控 | 行空板 K10 | DFRobot,板载屏/摄像头/麦克风/喇叭 | 1 | 二维码识别、屏幕显示、语音播报 |
驱动 | 直流电机驱动板 | 双路 H 桥(如 TB6612 / L298N) | 1 | 控制两个后轮正反转 |
执行 | 减速直流电机 | 12 V,带减速箱 | 2 | 驱动后轮 |
感知 | 称重传感器 | 电阻应变式 + HX711 模块 | 1 | 测量商品重量 |
感知 | 按键模块 | 大按键,带上拉 | 3 | 前进 / 后退 / 称重 |
显示 | OLED 屏 | SSD1306,128×64,I²C | 1 | 显示运动状态与重量 |
结构 | 购物车 | 超市成品四轮购物车 | 1 | 车身基础 |
结构 | 3D 打印件 | PLA,电机座 / 抱箍 / 主控外壳 | 1 套 | 连接电机、固定主控 |
结构 | 椴木板 / 亚克力 | 3 mm 椴木板、亚克力圆盘 | 1 套 | 称重平台 |
电源 | 锂电池组 / 降压模块 | 12 V 输出,降压至 5 V 供主控 | 1 | 整机供电 |
其它 | 扎带、热缩管、杜邦线 | — | 若干 | 走线与固定 |
预算参考:两块主控约 350—450 元,电机与驱动约 120 元,传感器与显示约 80 元,购物车约 150 元,结构件(打印耗材+木板+亚克力)约 80 元,整机约 800—900 元。没有 3D 打印机时,电机座可改用铝角件加垫片替代;没有行空板时,可用手机扫码+语音合成软件临时替代,但需要另一台设备配合。
4.2 引脚接线
模块 | 接到 ESP32 | 说明 |
前进按键 | P12 | 低电平有效,读到 0 时前进 |
后退按键 | P13 | 低电平有效,读到 0 时后退 |
称重按键 | P23 | 低电平有效,读到 0 时切换到称重页面 |
OLED 屏 | SDA 21 / SCL 22 | I²C 接口,设备地址 0x3C |
左轮电机 | P26 / P27 | 两路电平决定正转、反转与停止 |
右轮电机 | P32 / P33 | 与左轮同向则前进,反向则原地转向 |
称重模块 HX711 | Dout 15 / SCK 16 | 读取数字量,程序内比例系数取 106 |
供电 | 12 V → 降压模块 → 5 V | 电机与主控分开供电,避免启动瞬间掉电重启 |
本表按程序中的引脚设置整理,发布前建议对照实物再核一遍;行空板 K10 的摄像头、屏幕、麦克风、扬声器均为板载,无需另外接线。
图 15 引脚接线示意:上为 ESP32(运动与称重),下为行空板 K10(识别与播报);两块主控各自独立运行
4.3复刻建议
· 先做最小原型 只想验证识别功能,可以不做整车,把行空板和摄像头固定在纸盒上做一个“扫码台”。
· 器材替代 没有行空板时,可用手机扫码+蓝牙音箱播报替代,成本更低,但需要另一只手操作。
· 容易踩的坑 电机与主控一定要分开供电,共地不共源,否则电机启动瞬间的电流会把主控拉重启。
· 优先改这里 称重平台的承物面越大、越硬,不规则物体的误差越小;这是本项目最值得改进的一处。
五、开源代码
程序分两块板、五段功能编写。每段都可以单独下载测试,确认无误后再合到整车上。
5.1 运动控制:三个按键决定四种状态
这段程序先初始化 OLED 屏(I²C,SCL 22、SDA 21,地址 0x3C),然后判断两个按键的读数:读到 0 就给左、右电机的四路引脚输出相反的电平组合,让两轮同向转动;两个按键都回到 1 时,四路全部置 0,电机停转。同时在屏幕上刷新“前进 / 后退 / 停止”。
图 16 电机控制程序:按键读数决定四路引脚的电平组合,并同步刷新屏幕状态
5.2 称重:比例系数 106
按下称重键后切换到称重页面,读取 HX711 的数字量,乘以比例系数 106,单位换算成克后显示。这个系数是我用标准砝码反复试出来的,不是查来的——同一块平台换一个安装位置,系数就要重定。
图 17 称重程序:HX711 读数 × 比例系数 106,换算为克并显示
5.3 扫码与播报:把“看到”变成“听到”
进入二维码识别模式后,程序循环读取识别结果,先把它写进变量并显示在第一行;再根据变量内容判断是哪件商品,从预设的价格表里取出价格,用语音合成念出来,同时显示在第二行。按键 A 按下时清空变量,准备识别下一件。
图 18 二维码识别与语音播报程序:识别结果写入变量 → 判断商品 → 屏幕显示 + 语音播报
完整源程序见附件《02_会说话的购物车_源程序与结构件.zip》(含行空板主程序、ESP32 电机与称重程序,Mind+ 工程文件可直接打开;同一压缩包内附 3D 打印件的 STL / 3MF 文件)。
六、优化记录与失败尝试
这一章记录的是“没做成”的部分。它们没有出现在成品里,但决定了成品现在的样子。
遇到的问题 | 当时的做法 | 现在的判断 / 下一步 |
物体分类识别不稳,换个角度就认错 | 把商品摆正、正对摄像头再扫 | 换成二维码识别。不依赖外观,只要图案完整就能读出来,准确率从“看运气”变成 10/10 |
长名称商品语音播报模糊 | 把语速调慢 | 句子太长是根本原因。改成只播关键词、限制 5 个字以内,重测后清晰 |
土豆称重误差 0.14 kg | 换一个位置再放一次 | 平台太小、表面太软,只有几个点受力。下一步换更大的硬质承物面,或加三点支撑 |
10 次里 1 次按键全无反应 | 反复按、反复开关机 | 是电机线接头松动,不是程序问题。已用扎带固定并加焊点加固 |
收银码第一版太小,手机对不上焦 | 近距离凑近扫 | 改成满屏显示、加大留白(第二版),并加一句语音提示“请扫屏幕上的二维码” |
车推起来有点跑偏 | 用手扶着走 | 两侧电机转速不完全一致。下一步可加编码器做闭环,或先在程序里给一侧降速补偿 |
另外两件事是我做完了才想明白的:
一是“能演示”和“老人能用”之间差得很远。我给同学演示时,他一按就会;但换成老人,第一反应是“这个屏幕会不会被我按坏”。所以真正要改的不是功能数量,而是让人敢按——按键做大、屏幕放平、每一步都有反馈。
二是省掉一个步骤,比增加一个功能更有用。称重和结账这两件事,我没有让车“做得更好”,而是让老人“不用再做”。访谈里几位老人提到排队时的原话,比任何功能清单都更能说明该做什么。



