无需编程DIY自己智能小车的Android蓝牙遥控软件精文档格式.docx
《无需编程DIY自己智能小车的Android蓝牙遥控软件精文档格式.docx》由会员分享,可在线阅读,更多相关《无需编程DIY自己智能小车的Android蓝牙遥控软件精文档格式.docx(12页珍藏版)》请在冰豆网上搜索。
系统需求:
1Macintosh:
MacOSX10.5,10.6
2Windows系列:
WindowsXP,WindowsVista,Windows7都可以的
3GUN/Linux系统:
Ubuntu8+,Debian5+等。
1MozillaFirefox3.6或更高
2AppleSafari5.0或更高
3GoogleChrome4.0或更高
4IE6及更高
其次测试一下你的Java环境配置是否正确:
这需要在你的电脑上能够运行Java,目前官方更新到了Java7,如果没有安装的话,可以在Oracle官方网站上去下载(我的电脑有没有装了java呢?
到java的官方链接里看一下知道了
要有一个Gmail帐号,个人认为Gmail邮箱是必备的邮箱啊,没有就申请一个。
最后,安装AppInventor软件包:
在使用AppInventor之前,你还需要安装一个叫做AppInventorSetup的软件包在你的电脑上。
当然你需要根据你的操作系统来下载不同的软件包的。
这里我提供的是Windows
系统下的软件包,其他的可以在Google的网站上去下载!
Download!
!
下载完成后的文件名应该是:
AppInventor_Setup_Installer_v_1_2.exe(~92MB,点击打开安装即可,这里建议最好不要更改安装路径的。
这里提供以下地址:
http:
//beta.appinventor.mit.edu/learn/setup/setupwindows.html
到目前为止,以上4个步骤如果都顺利,那么我们可以登录这里开始编写Android软件啦:
//appinventor.mit.edu/
点击右边的红色“Invent”按钮进入MyProjects页面,这里就可以新建工程,开始编写Android软件了。
网站上也提供了一些教程。
有兴趣可以浏览下。
二、编写下位机(单片机小车程序,设置好蓝牙通信协议。
走到第二步,对于很多智能小车、机器人爱好者来说都不是问题了。
先理一下Android手机与小车的遥控方式:
这样一来,手机发送事先规定好的数据指令,蓝牙模块接收到,再传送给小车,小车对指令进行一下Switch,,是前进指令的就前进、该后退的就后退……
相应的,下位机小车应该要有的几个基本功能函数,它们应该是:
前进函数(Forward(void、后退(Backward(void、左转(Lift(void、右转(Right(void、停止(Stop(void。
这里名称是否一致,内容是什么的无关紧要,你也可以拿来控制机器人相应的动作,下位机由人怎么写控制函数的程序段都行。
。
这里是我们设定的小车的协议,有这个现成的下位机程序供我们驱动,玩其他智能小车、机器人的童靴可以自己编嘛。
(程序在:
LHcar光盘\No.3-Lighthouse源代码\Chapter10-小车综合程序\No.8-Android遥控蓝牙小车
目前就先控制这几个命令吧,协议里面加、减速,转圈等功能就不做控制了。
个人按照自己的要求写好下位机程序,这一步就算完成了。
三、利用Appinventor开始搭建Android控制软件。
第三步了,在这之前先对Appinventor界面做一下讲解:
A、建立一个新工程:
(红框所示位置
B、如图,进入到了软件编辑界面以此可见各个区域的功能(控件编辑区、虚拟的软件界面、软件所添加使用的控件、当前选中控件的属性、“BlockEditor”and“PackageforPhone”
我们将需要使用的控件从控件编辑区拖拽到虚拟的软件界面,并对相应的控件,修改其属性。
添加完控件,点击“BlockEditor”将进入搭积木式的编程界面:
“Newemulator”是生成一个Android模拟机,由于体态传感器和蓝牙设备模拟器是无法实现的,所以还是连接自己的手机吧,右边的“ConnecttoDevice”可以连接自己的手机,这样编程过程中,会实时的显示软件界面和程序运行状况。
无需编程,DIY自己智能小车的Android蓝牙遥控软件(二
分类:
单片机小车2012-09-0420:
131435人阅读评论(4收藏举报BlockEditor里面各类模块代表的意义:
现在该考虑一下我们的Android软件要怎么运行,列出来需要哪些控件。
向前按钮、向后按钮、向左、向右、………,哦,不要这样吧,试一试手机的重力感应功能,通过手机体态传感器来控制小车显然比按按钮更酷一些。
简要流程图:
我的手机软件截图:
可能要添加的控件:
Button:
按钮,用来触发某功能
Label:
标签,用来显示当前状态
BluetoothClient:
蓝牙控件,用来蓝牙配对、连接、通信。
Clock:
时钟,定时触发某程序段
OrientationSensor:
体态传感器,目前绝大多数的手机都有的,用来获取手机当前的状态(倾倒度数、斜率角度等等;
TinyDB:
一款手机上的简易数据库控件,这里用来记录软件上次运行时配对过的蓝牙设备,便于选取。
Notifier:
警示窗口,当软件运行出现意外时,提示信息,避免程序崩溃掉。
Arrangement:
把按钮、Label等控件排列整齐
图文详解:
考虑更多的细节……
1、
程序初始化时:
应该检查体态传感器是否存在于手机,没有传感器的话,再往下也就没有执行的意义了;
时钟当前最好设置为关闭状态,因为蓝牙还没有连接呢,还不需要读取传感器、判断手机动作吧;
读取数据库,之前有没有配对过的蓝牙设备呢?
有的话就列出出来,供我们下面选择,没有也得告诉一下我们吧;
这里借用一张图片:
(X轴:
Pitch,Y轴:
Roll,Z轴:
Yaw,(AppInventor中称为Azimuth方位角.
4、
我们把发送指令的程序段放在时钟里面,这里每300ms执行一次程序段:
5、
最后考虑一下当程序出错了要怎么办吧:
Final:
自此,程序模块搭建完成了,返回到软件便捷界面。
点击“DownloadtothisComputer”等一小会就会下载下来打包的.apk文件,安装到手机里面就可以使用了。
这里提供一个好看点的Ico图标:
-----------------------------------------华丽的分割线-----------------------------------------------想学习51单片机的童鞋可以考虑入手下。
淘宝店的地址:
LHcar小车的地址:
p;
还有优酷的视频链接,有兴趣可以了解一下:
(请复制下列链接并在新窗口打开遥控类程序演示链接:
其他功能演示:
网址: