旧手机当开发板

现在手机更新换代实在是太快了,不断有旧手机淘汰下来。这些淘汰下来的手机配合相关APP有很多用处,比如当wifi摄像头,行车记录仪等。还可以当开发板来用,网上也有很多教程,有简单的比如安装Termux可以编程,也有高深的比如定制ROM等。下面记录我的捣鼓过程。

首先手机指的是Android手机,苹果的系统是闭源的,不好折腾。其次,既然是开发板就要外设打交道,手机主板没有引出的GPIO口,那就只有利用USB、WIFI和蓝牙了。这里选择USB口。
既然是开发板,那我们就和树莓派做比较。树莓派4b 2GB裸板要400多,4GB要500。自己的旧手机花费为0,如果没有可以在二手交易平台花200左右买一部(以我的OPPO R9 Plus为例)。
在这里插入图片描述
从上面的比较可以看出,旧手机主要缺少GPIO部分,但多出很多设备。

系统最好是7.0以上,因为Termux最新版最低支持安卓7.0,否则就要找旧版本安装。手机最好root,这样能获得更多权限。

普通软件部分的开发就利用Andorid APP来开发或者安装Termux,[Aid learning](已自带AI开发平台)(http://www.aidlearning.net/),还可以在Termux里安装完整的Debian或Ubuntu Linux(参考Tmoe-linux)。然后在这些系统里安装C,Java,Python,JavaScript(node)等开发环境,也可以安装Apache/Nginx,PHP,MySQL等服务器环境。

如果要做硬件相关开发,那就需要通过USB口加OTG线,然后接Arduino开发板(mini,pro,uno,mega等)来实现。这里以国内版(CH340USB转串口)为例。
可以在手机上安装ArduinoDroid来对Arduino进行程序下载,不过手机上打字不方便,还是建议用电脑版Arduino IDE进行开发,手机上的ArduinoDroid可以做小修改调试。
以下截图就是在手机上做的测试,程序功能是每隔1秒通过串口(USB转串口)向手机发送hello字符串。
在这里插入图片描述
接下来就是在手机上发送接收消息,这里仅测试接收。
方法1,通过手机APP。从CH340官网下载例程进行测试或修改成你自己的APP。
在这里插入图片描述
方法2,在Termux里使用C,Java,Python,JavaScript等开发应用。除了安装Termux这个APP外,还要安装Termux:API这个APP,并在Termux里安装termux-api这个包,这样才可以访问手机的硬件资源。
Termux里安装libusb和clang就可以用C语言开发访问USB。Python可以安装pyusb等,但是我不太会pyusb,没成功。所以我就换了个方式,开发一个Android APP,将USB数据通过TCP服务转发一下。
在这里插入图片描述
在Python里编写socket应用获取tcp数据。
在这里插入图片描述

下面就是获得的数据,每秒收到一个hello字符串。
在这里插入图片描述
发送数据类似,这样就可以在Arduino里编写程序,当收到特定字符串时 打开或关闭LED灯,控制继电器等。

视频监控机器人Ta跟常见的wifi-robot不同。常见的wifi-robot大多采用OpenWRT路由器板子和USB摄像头,而视频监控机器人采用闲置的安卓手机作为机器人的大脑。 这不仅是废物利用的环保理念,而且通过充分利用安卓手机的强大计算能力和硬件资源,让视频监控机器人的功能更加有亮点: 无需外接USB摄像头,直接利用安卓手机的高清摄像头,并通过手机强劲的GPU进行视频H.264压缩编码,以便网络传输。 利用安卓手机的联网能力,wifi、3G、4G都可以联网。并且集成了网灵的P2P云连接功能,从世界任何地方都可以连接机器人。 利用手机计算能力,实现语音识别,用自然语音控制机器人动作。 利用手机计算能力,基于OpenCV软件库,实现手势分析和人脸追踪。 原材料和组件 方形卡通宠物外观的纸巾盒 1个 万能手机夹 1个 网灵机器人3D打印件 1套 Arduino控制板 + 蓝牙小板 1块 L298N电机驱动模块 1块 标准舵机 1个 电池电压传感器模块 1个 可充电锂电池 1块 65mm轮子 + 电机(转速不要太快,大概为50转每分钟) 2套 一寸万向轮 1个 开关 1个 M3x30mm 长螺丝 4根,M3x25mm螺丝若干,M3x8mm螺丝若干,自攻螺丝若干,铜柱长螺丝 2根,M3螺母若干 杜邦线若干,导电线若干 机器人Arduino周边电路连接就很容易。准备一些3Pin杜邦线和导电线,按照下面的电路图连接相应的电路模块: 除了作为大脑的安卓手机外,视频监控机器人还采用了Arduino单片机,用于控制电机舵机和连接传感器模块。 作为大脑的安卓手机Arduino单片机是通过蓝牙串口(例如市面上常见的HC-06)进行通信的,其通信协议很简单,是基于字符串格式的,Arduino向安卓手机周期性发送传感器读数,安卓手机Arduino发送控制命令。 视频监控机器人的显著特点是:可以用手机控制端和电脑控制端从异地远程遥控机器人,并实时观看摄像头图像。这个功能的实现是基于网灵的P2P云连接平台,这是网灵多年来积累的底层核心技术。只要机器人接入网络,就可以从世界上的任何角落连接到机器人,无需设置路由器端口,无需做动态域名映射,完全自动穿透NAT内网。 网灵机器人的控制端软件就是 网灵云控制, 它相当于一个“带视频回传的远程遥控手柄”,有一些手柄按键和2个虚拟摇杆,其UI界面是这样的: 终上所述,网灵机器人的总体框架原理图是这样的: 视频演示: 源代码、3D打印部件、控制端软件至附件下载
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值