Skip to content

力传感器 Force Sensor

一个带弹簧按钮的传感器,既能当开关(按下/松开),也能测力的大小(0-10 牛顿)。

能测什么

模式读值
是否按下(pressed)真/假
是否用力按(hard-pressed)真/假(按压超过约 5 N)
力(force)0-10 N,精度 0.1 N 左右

Word Blocks 积木

<力传感器 [E] [被按下]>
<力传感器 [E] [被用力按下]>
(力传感器 [E] 压力 %)
等待到 <力传感器 [E] 被按下>

示例 1:按下出发

调试时的"软启动按钮"——按一下传感器,机器人才开始跑:

当程序启动时
设置移动马达 [A+E]
等待到 <力传感器 [E] 被按下>
等待到 <不成立 <力传感器 [E] 被按下>>     ← 等松手再走,防止手还没拿开机器人就冲
移动 [前进] [5] 圈

示例 2:碰墙检测

把力传感器装在机器人尾部,倒车顶墙,按钮被压下说明已贴紧墙面:

开始移动 [后退]
等待到 <力传感器 [E] 被按下>
停止移动
重设偏航角 [0]        ← 已知贴墙姿态,顺手校准陀螺仪方向

Python 写法

python
import runloop, force_sensor
from hub import port

async def main():
    if force_sensor.pressed(port.E):
        pass
    f = force_sensor.force(port.E)   # 单位:分牛顿(dN),0-100 对应 0-10 N

runloop.run(main())

Python 返回分牛顿

force() 返回 0-100,单位是分牛顿(1 N = 10 dN)。读值 35 = 3.5 N。

FLL 里的用途

  • 靠墙校准的确认信号:比"倒车固定圈数"可靠,真正压到墙才算到位(靠墙校准的完整做法见 FLL 实战技巧)。
  • 调试触发器:场边按一下跑一段,不用回电脑点运行。
  • 附件到位检测:机械臂压到目标时停止,防止过冲烧马达。

常见坑

  • 按钮行程只有几毫米,安装时要保证撞击方向正对按钮轴线,斜着撞可能压不下去。
  • 它是接触式传感器:需要真的撞上去。轻拿轻放的任务用距离传感器

下一个:Hub 内置传感器——重头戏陀螺仪在这里。