App Inventor 2 向心力实验App - 探究向心力F与角速度ω、半径r、质量m的关系

简介: 高中物理新课标要求学生通过实验探究向心力F=m·r·ω²,但现有实验器材操作不便、精度低。本文介绍如何使用App Inventor 2开发向心力实验App,利用手机内置加速度计和陀螺仪传感器,实现低成本、高精度的向心力探究实验,支持F-ω、F-r、F-m三组关系探究及理论曲线对比。

一、实验背景

向心力公式:F = m · r · ω²

即:向心力 = 质量 × 半径 × 角速度²

高中物理新课标要求学生通过实验探究向心力,但现有实验器材(手摇向心力演示仪)操作不便、精度低。本App利用手机内置传感器,实现低成本、高精度的向心力探究实验。

1.1 与 phyphox 的区别

phyphox(德国亚琛工业大学开发)可以测量向心加速度 a = r · ω²,但存在以下局限:

对比项 phyphox 离心加速度实验 本App(向心力实验)
测量物理量 向心加速度 a 向心力 F = m·r·ω²
可变质量探究 手机质量固定 用户输入任意质量
F-ω 关系图 不支持 支持
F-r 关系图 不支持 支持
F-m 关系图 不支持 支持
理论曲线对比 不支持 支持
教学引导 不支持 支持

核心差异:本App弥补了 phyphox 无法探究向心力(F = m·r·ω²)的市场空白。

二、核心物理公式

公式 含义
F = m · r · ω² 向心力
a = r · ω² = v²/r 向心加速度
v = r · ω 线速度
T = 2π/ω = 2πr/v 周期

需要探究的三个关系:

关系 固定量 变量 预期结论
F vs ω m, r 固定 ω 变化 F ∝ ω²(二次函数)
F vs r m, ω 固定 r 变化 F ∝ r(正比)
F vs m r, ω 固定 m 变化 F ∝ m(正比)

三、实现原理

利用手机传感器测量 a 和 ω,用户手动输入 m 和 r,App 计算 F = m · a:

  1. 加速度计(AccelerometerSensor) — 实时测量向心加速度 a
  2. 陀螺仪(GyroscopeSensor) — 实时测量角速度 ω
  3. 用户输入质量 m(可模拟不同质量物体)
  4. 用户输入半径 r(可设置不同旋转半径)
  5. 自动计算 F = m · r · ω²
  6. 实时绘制 F-ω、F-r、F-m 关系曲线
  7. 叠加理论曲线对比验证

四、所需组件

组件 用途 App Inventor 支持
AccelerometerSensor 测量加速度 a 内置组件
GyroscopeSensor 测量角速度 ω 内置组件
Chart 绘制关系曲线 Chart组件
TextBox 输入质量 m、半径 r 基础组件
Clock 定时采集数据 基础组件
File 数据导出(CSV) 内置组件

五、积木块实现

5.1 传感器数据采集

当 时钟1.计时器执行 时
  设置 全局变量 当前加速度X 为 加速度传感器1.加速度X
  设置 全局变量 当前角速度Z 为 陀螺仪传感器1.角速度Z

  // 计算向心加速度(取XY平面合加速度)
  初始化局部变量 ax = 加速度传感器1.加速度X
  初始化局部变量 ay = 加速度传感器1.加速度Y
  设置 全局变量 向心加速度 为 开平方(ax*ax + ay*ay)

  // 计算向心力 F = m × a
  初始化局部变量 m = 取文本为数字(文本输入框_质量.文本)
  初始化局部变量 r = 取文本为数字(文本输入框_半径.文本)
  设置 全局变量 向心力 为 m × 全局变量 向心加速度

  设置 标签_加速度.文本 = "加速度: " + 全局变量 向心加速度 + " m/s²"
  设置 标签_角速度.文本 = "角速度: " + 全局变量 当前角速度Z + " rad/s"
  设置 标签_向心力.文本 = "向心力: " + 全局变量 向心力 + " N"

5.2 数据处理(滑动平均)

定义 滑动平均(新值, 数据列表, 窗口大小)
  追加列表项(数据列表, 新值)
  如果 长度(数据列表) > 窗口大小 则
    从列表中移除(数据列表, 1)    // 移除最旧数据
  结束如果

  // 计算平均值
  初始化局部变量 总和 = 0
  对于 初始化局部变量 i = 1 到 长度(数据列表)
    设置 总和 = 总和 + 选择列表项(数据列表, i)
  结束对于
  返回 总和 / 长度(数据列表)

5.3 图表数据添加

当 按钮_记录数据.被点击 时
  // 添加到F-ω图表
  调用 图表_F_omega.添加数据点("实测值", 全局变量 当前角速度Z, 全局变量 向心力)

  // 添加理论值
  初始化局部变量 m = 取文本为数字(文本输入框_质量.文本)
  初始化局部变量 r = 取文本为数字(文本输入框_半径.文本)
  初始化局部变量 理论F = m × r × 全局变量 当前角速度Z × 全局变量 当前角速度Z
  调用 图表_F_omega.添加数据点("理论值", 全局变量 当前角速度Z, 理论F)

5.4 数据导出(CSV)

当 按钮_导出.被点击 时
  初始化局部变量 csv内容 = "角速度,向心加速度,向心力,质量,半径\n"
  对于 初始化局部变量 i = 1 到 长度(全局变量 实验数据)
    初始化局部变量 数据项 = 选择列表项(全局变量 实验数据, i)
    设置 csv内容 = csv内容 + 获取键的值(数据项, "omega", "") + ","
      + 获取键的值(数据项, "a", "") + "," + 获取键的值(数据项, "F", "") + ","
      + 获取键的值(数据项, "m", "") + "," + 获取键的值(数据项, "r", "") + "\n"
  结束对于
  调用 文件1.保存文件(csv内容, "/Download/centripetal_data.csv")

六、实验操作步骤

6.1 准备工作

  1. 在手机上安装向心力实验App
  2. 准备一个旋转装置(如沙拉甩干机、小型旋转台、手摇转盘)
  3. 准备手机固定支架
  4. 准备不同质量的物体(如砝码,用于验证 F 与 m 的关系)

6.2 探究 F 与 ω 的关系

  1. 输入质量 m(如 0.2 kg)和半径 r(如 0.15 m)
  2. 将手机固定在旋转装置上
  3. 点击"开始采集"
  4. 以不同角速度旋转手机
  5. 观察实时 F-ω 曲线
  6. 点击"停止采集"
  7. 对比理论曲线 F = m·r·ω²

预期结论:F-ω² 图为过原点直线,斜率 = m·r

6.3 探究 F 与 r 的关系

  1. 固定质量 m,保持角速度 ω 基本不变
  2. 改变旋转半径 r(调整手机在旋转台上的位置)
  3. 记录不同 r 下的 F 值
  4. 绘制 F-r 图

预期结论:F-r 图为过原点直线,斜率 = m·ω²

6.4 探究 F 与 m 的关系

  1. 固定半径 r,保持角速度 ω 基本不变
  2. 在App中输入不同质量 m 值
  3. 记录不同 m 下的 F 值
  4. 绘制 F-m 图

预期结论:F-m 图为过原点直线,斜率 = r·ω²

七、注意事项

  1. 传感器量程:不同手机加速度计量程不同(30~80 m/s²),高速旋转时注意不要超量程
  2. 数据滤波:建议使用 0.5 秒滑动平均减少震动干扰
  3. 手机固定:务必牢固固定手机,防止飞出
  4. 安全提示:建议使用远程控制功能,实验时远离旋转装置
  5. 精度限制:手机传感器精度有限,适用于教学演示,不替代专业实验设备

参考资料


文档版本:2026.05 | 作者:App Inventor 2 中文网 www.fun123.cn

原文来源:MIT App Inventor 官方文档 | MIT App Inventor GitHub

MIT App Inventor 官方文档采用 CC BY-SA 4.0 授权。本文档由 ai2claw 整理,仅供学习参考。

相关文章
|
9天前
|
人工智能 开发工具 iOS开发
Claude Code 新手完全上手指南:安装、国产模型配置与常用命令全解
Claude Code 是一款运行在终端环境中的 AI 编程助手,能够直接在命令行中完成代码生成、项目分析、文件修改、命令执行、Git 管理等开发全流程工作。它最大的特点是**任务驱动、终端原生、轻量高效、多模型兼容**,无需图形界面、不依赖 IDE 插件,能够深度融入开发者日常工作流。
3136 8
|
12天前
|
Shell API 开发工具
Claude Code 快速上手指南(新手友好版)
AI编程工具卷疯啦!Claude Code凭借任务驱动+终端原生的特性,成了开发者的效率搭子。本文从安装、登录、切换国产模型到常用命令,手把手带新手快速上手,全程避坑,30分钟独立用起来。
3198 20
|
5天前
|
人工智能 Linux BI
国内用 Claude Code 终于不用翻墙了:一行命令搞定,自动接 DeepSeek
JeecgBoot AI专题研究 一键脚本:Claude Code + JeecgBoot Skills + DeepSeek 全平台接入 一行命令装好 Claude Code + JeecgBoot Skills + DeepSeek 接入,无需翻墙使用 Claude Code,支持 Wind
2130 3
国内用 Claude Code 终于不用翻墙了:一行命令搞定,自动接 DeepSeek
|
24天前
|
人工智能 JSON 供应链
畅用7个月无影 JVS Claw |手把手教你把JVS改造成「科研与产业地理情报可视化大师」
LucianaiB分享零成本畅用JVS Claw教程(学生认证享7个月使用权),并开源GeoMind项目——将JVS改造为科研与产业地理情报可视化AI助手,支持飞书文档解析、地理编码与腾讯地图可视化,助力产业关系图谱构建。
23591 15
畅用7个月无影 JVS Claw |手把手教你把JVS改造成「科研与产业地理情报可视化大师」
|
1天前
|
人工智能 自然语言处理 文字识别
阿里云百炼Qwen3.7-Max简介:能力、优势、支持订阅计划参考
Qwen3.7-Max是阿里云百炼面向智能体时代推出的新一代旗舰模型,对标GPT-5.5、Claude Opus 4.7等闭源旗舰。该模型支持百万级token上下文窗口,具备顶级推理能力、多模态搜索与视觉理解增强、流式输出低延迟响应等核心优势,覆盖编程、办公、长周期自主执行等复杂场景。同时支持OpenAI接口兼容,便于系统快速迁移。用户可通过Token Plan团队版、Coding Plan或节省计划等订阅方式灵活调用,适合企业级高要求场景使用。
|
11天前
|
人工智能 JSON BI
DeepSeek V4-Pro 接入 Claude Code 完全实战:体验、测试与关键避坑指南
Claude Code 作为当前主流的 AI 编程辅助工具,凭借强大的代码理解、工程执行与自动化能力深受开发者喜爱,但原生模型的使用成本相对较高。为了在保持能力的同时进一步降低开销,不少开发者开始寻找兼容度高、价格更友好的替代模型。DeepSeek V4 系列的发布带来了新的选择,该系列包含 V4-Pro 与 V4-Flash 两款模型,并提供了与 Anthropic 完全兼容的 API 接口,理论上只需简单修改配置,即可让 Claude Code 无缝切换为 DeepSeek 引擎。
2645 3
|
3天前
|
人工智能 自然语言处理 安全
Claude Code 全攻略:命令大全+三种模式+记忆体系+实战工作流完整手册
Claude Code 是当前最流行的终端级 AI 编程助手,能够直接在命令行中完成代码生成、项目理解、文件修改、命令执行、错误修复等全流程开发工作。它不依赖图形界面、不占用额外资源,却能深度理解项目结构,自动生成规范代码,大幅提升研发效率。
772 2
|
10天前
|
人工智能 安全 开发工具
Claude Code 官方工作原理与使用指南
Claude Code 不是传统代码补全工具,而是 Anthropic 推出的终端 AI 代理,具备代理循环、双驱动架构(模型+工具)、全局项目感知、6 种权限模式等核心能力,本文基于官方文档系统解析其工作原理与高效使用技巧。
1443 0