开源|用树莓派打开小米手机:摇晃手机控制小车,前进后退加转弯 | sharifi

博雯 发自 凹非寺
量子位 报道 | 公众号 QbitAI
人体姿态控制见得多了,手机姿态控制的来一个?
左右前后倾斜手机,面前的小车也跟着移动:
开源|用树莓派打开小米手机:摇晃手机控制小车,前进后退加转弯 | sharifi
文章插图
【 开源|用树莓派打开小米手机:摇晃手机控制小车,前进后退加转弯 | sharifi】看这灵活的身姿,转个弯也毫无问题:
开源|用树莓派打开小米手机:摇晃手机控制小车,前进后退加转弯 | sharifi
文章插图
绝对正儿八经的“手机遥控器”,可以倒翻小车看看这个轮胎转动:
开源|用树莓派打开小米手机:摇晃手机控制小车,前进后退加转弯 | sharifi
文章插图
再一看,诶,车上又有我们熟悉的树莓派:
开源|用树莓派打开小米手机:摇晃手机控制小车,前进后退加转弯 | sharifi
文章插图
这就是油管主MohammadReza Sharifi用树莓派DIY的“手机姿态控制”的机器小车。
而整个项目的花销只有大概40英镑,不到350元!
手机加速计操控小车那么,这个拿手机当遥控器的小车在结构上有什么特殊之处呢?
Sharifi老哥公布了他所采用的全部材料:
树莓派×1
HC05蓝牙模块×1
L298电机驱动器×1
机器人底盘×1(还是非常便宜的塑料材质)
直流齿轮马达×4
跳线×n
开源|用树莓派打开小米手机:摇晃手机控制小车,前进后退加转弯 | sharifi
文章插图
嗯……毕竟总成本只有约40英镑,还要啥自行车呢。
而安装在底板上的价格不到3英镑的Raspberry Pi Pico,无疑就是小车的核心了。
开源|用树莓派打开小米手机:摇晃手机控制小车,前进后退加转弯 | sharifi
文章插图
这是树莓派今年年初发布的微型处理器新品,基于其自研的RP2040芯片构建,搭载双核ARM Cortex M0+处理器,运行频率133MHz,内置264KB的片上RAM。
和以往的树莓派产品相比,Raspberry Pi Pico更擅长低时延的I/O通信和模拟信号输入。
开源|用树莓派打开小米手机:摇晃手机控制小车,前进后退加转弯 | sharifi
文章插图
而Sharifi老哥就是打算用Raspberry Pi Pico实时处理运动数据,并将信息发送给小车的电机驱动程序,带着小车跑起来的。
那么树莓派接收到的运动信息又从何而来呢?
智能手机中的加速计。
这是手机内部的一个传感器组件,用于检测手机受到的加速度的大小和方向。
(很多人会把加速计功能叫做重力感应功能,这是因为手机静置时只受到重力加速度)
开源|用树莓派打开小米手机:摇晃手机控制小车,前进后退加转弯 | sharifi
文章插图
这就是Sharifi老哥的“手机姿态控制”的完整思路,即通过蓝牙设备将手机加速计的运动数据传给树莓派,再控制机器小车移动。
三小时编写代码要在手机加速计和Raspberry Pi Pico之间传递数据,当然还是得靠代码。
Sharifi老哥使用的是一个叫做MIT App Inventor的代码开发平台:
开源|用树莓派打开小米手机:摇晃手机控制小车,前进后退加转弯 | sharifi
文章插图
这是由一个基于模块的可视化编码平台,可以相对轻松地开发移动设备应用程序:
开源|用树莓派打开小米手机:摇晃手机控制小车,前进后退加转弯 | sharifi
文章插图
在确定手机加速度计的角速度和加速度的大小,以及机器小车的相对坐标轴这些任务上,Sharifi老哥花了不少时间。
不过最终他还是在三小时内完成了构思和编程。
像这样,手机连接蓝牙,打开开发好的App:
开源|用树莓派打开小米手机:摇晃手机控制小车,前进后退加转弯 | sharifi
文章插图
和设备成功连接之后,转动手机,四个小轮胎也就跟着开始转了:
开源|用树莓派打开小米手机:摇晃手机控制小车,前进后退加转弯 | sharifi
文章插图

推荐阅读