2019-9-15 13:40:08 [显示全部楼层]
4186浏览
查看: 4186|回复: 1

[MIT IoT] 【MIT IoT官方教程03】陀螺仪

[复制链接]
App Inventor + IoT:陀螺仪传感器app(Arduino101)

实验目标
使用App Inventor和Arduino101控制板上内置的gyroscope陀螺仪完成物联网应用。陀螺仪用来测量角速度(angularvelocity),即测量某个对象(Arduino)旋转的速度。
实验器材
主控板:Arduino 101(内置陀螺仪)

打开ino文件
•       打开AIM- for –Things – Arduino 101.ino文件,将GYROSCOPE设置为ENABLED,其他所有的设置为DISABLED。
•       点击窗口上方的向右箭头,将代码上传到Arduino 101控制板中
【MIT IoT官方教程03】陀螺仪图1

界面设置:
•       在App Inventor中打开IoT_BaseConnect.aia项目文件并另存为IoT_GYROSCOPE
•       从用户界面中拖动一个标签放到标签_数据和蓝牙列表之间
•       将标签重命名为标签_数据
•       设置其文本属性为"数据: "
•       在组件面板中,点击Extension,导入插件
•       将Arduino101Gyroscope拖到工作面板中,并将其BluetoothDevice属性设置为BluetoothLE1
【MIT IoT官方教程03】陀螺仪图2

导入插件方法
•       方法1:将aix文件下载,选择“From my computer”导入
•       方法2:点击URL,直接将网址输入导入http://iot.appinventor.mit.edu/assets/resources/edu.mit.appinventor.iot.arduino101.aix
【MIT IoT官方教程03】陀螺仪图3
【MIT IoT官方教程03】陀螺仪图4

逻辑设计:当蓝牙连接成功后
•       标签显示为“已连接”,隐藏蓝牙列表,调用过程请求更新陀螺仪状态
【MIT IoT官方教程03】陀螺仪图5

逻辑设计:定义变量
初始化变量"X_Angle"的"Y_Angle"为0,这两个变量用来记录陀螺仪当前角度的X和Y的值。
【MIT IoT官方教程03】陀螺仪图6

逻辑设计:定义过程更新数据标签
•       从过程抽屉中拖出定义过程块,并重命名为"更新数据标签"
•       从标签_数据抽屉中拖出设置文本程序块
•       从文本抽屉中拖出合并字符串程序块,点击图中蓝色的扩展按钮,再添加3个“字符串”块到合并字符串中,并按图进行设置
【MIT IoT官方教程03】陀螺仪图7

逻辑设计:当接收到陀螺仪数据时
•       将陀螺仪的X_Angle的值赋给全局变量X_Angle
•       将陀螺仪的Y_Angle的值赋给全局变量Y_Angle
•       调用过程“更新数据标签”,在标签中显示陀螺仪的X、Y的角度值
【MIT IoT官方教程03】陀螺仪图8

测试应用
•       蓝牙设备连接成功,显示“已连接”
•       显示陀螺仪返回的当前X,Y的角度值
•       当晃动Arduino101时,X,Y的值都会发生变化
【MIT IoT官方教程03】陀螺仪图9


资料来源:
http://iot.appinventor.mit.edu/assets/howtos/MIT_App_Inventor_IoT_Button.pdf

Arduino101Gyroscope.zip

213.95 KB, 下载次数: 0

售价: 2 创造力  [记录]  [购买]

.aia

AIM-for-Things-Arduino101.zip

17.87 KB, 下载次数: 0

售价: 2 创造力  [记录]  [购买]

.ino

edu.mit.appinventor.iot.arduino101.zip

59.6 KB, 下载次数: 0

售价: 2 创造力  [记录]  [购买]

.aix

chen1xuan  见习技师

发表于 2019-9-17 20:25:10

谢谢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail