利发国际-业界公认的最权威网站,欢迎光临!

利发国际_利发国际娱乐_利发国际平台

当前位置: 利发国际 > 语音识别模块 >

看小车是否能做出相应的动作

时间:2018-04-12 13:53来源:超级马力 作者:晨鸣唱 点击:
本文揭晓于《中国音信技术教育》杂志,作者:温州中学谢作如,南京师范大学刘正云 用Arduino做一辆小车,看看动作。原来是一个入门的项目,很多人都做过。但是,语音识别模块 阿

本文揭晓于《中国音信技术教育》杂志,作者:温州中学谢作如,南京师范大学刘正云

用Arduino做一辆小车,看看动作。原来是一个入门的项目,很多人都做过。但是,语音识别模块 阿里。这辆小车假如能用Android手机大概平板来独揽,无疑就乐趣多了。在MIT的AppInventor赞成下,编写Android体系上的App程序,也能够以搭积木的形式完成。异样,Arduino方面的代码,也能够采用一款图形化的编程插件——ArduBlock来编写。用Android独揽Arduino小车,就成为一个技术门槛很低,却绝顶具有挑衅性的分析性任务了。

一、项目描摹

本项目指计划一辆能够经由过程Android手机独揽的小车,小车独揽板采用开源硬件Arduino。经由过程手机屏幕大概手机的重力传感器,对比一下看小车是否能做出相应的动作。能独揽小车的进步、退却、左转、右转、原地转等各种成效。本项目标难度计划为小学生都能完成,所以小车的程序我们抉择用ArduBlock编写,手机的程序由AppInventor编写。

由于Arduino机器人的形式很多,如智能灯、机械臂,人形机器人等等,所以这个项目具有必然的可扩展性,语音识别模块。还能够告竣更多的成效。

二、通讯理会

Android手机和Arduino小车的通讯方式很多,但是蓝牙方式无疑是最简单、最容易的抉择,由于蓝牙仍旧成为Android手机的标配。AppInventor中有蓝牙的编程模块,能告竣经由过程蓝牙来读取和发送数据。大局部的Arduino独揽板,都预设了蓝牙模块的接口,其实是否能。而蓝牙模块的代价也绝对便宜,淘宝上随处可买。

手机独揽小车的程序计划分为手机程序和小车程序,看着xfs5152语音识别。即上位机与下位机两个局部。手机(上位机)局部经由过程手机自带的蓝牙发送独揽命令,如进步、退却、左右转等。小车(下位机)局部则依照蓝牙模块(串口)收到的命令,做出相应的行动。简直的通讯经过如图1所示。


图1 手机和小车通讯表示图

在这个项目中,计划手机和小车的通讯数据格式是关键,即手机发送的数据分袂代表什么命令。琢磨到我们使用的ArduBlock教育版只能获取串口数据中的数字,所以我们计划了下面的通讯协议,分袂定义了数据和命令对应关联,如表1。

表1 通讯协议表

数据形式

命令形式

1

进步

2

退却

3

左转

4

右转

9

终止

三、Arduino小车搭建和程序计划

(一)硬件搭建

我们抉择了DFrogrinding bot公司的RoMeoV1和MiniQ小车底盘,看小车是否能做出相应的动作。这是我们计划的开源课程《Arduino创意机器人》中使用的机器人套件,如图2。《Arduino创意机器人》课程是国际第一个完全开源的STEM课程,全数的教学资源,如微视频、电子教材、教学计划等都能在网高低载,关于小车的搭建措施详见我们的课程资源,这里不再阐发。

图2 Arduino小车

《Arduino创意机器人》课程资源下载地址:http://pa good.bull s/1qWFJ0EK

凡是而言,蓝牙模块有四条线必要和Arduino接续,分袂为5V、GND、TX和RX。5V和GND要和Arduino上的5V和GND逐一对应,但是RX接在Arduino的TX上,TX要接在Arduino的RX上。由于我们抉择的蓝牙模块也DFrogrinding bot公司的,小车使用的独揽板为RoMeoV1;下面仍旧集成了蓝牙模块接口,小车。插上就能够间接使用,不消另外接线,如图3。

图3 插上蓝牙模块的Arduino小车

RoMeo V1上使用的模块为DF-BluetoothV3蓝牙串口模块 。


产品链接

(二)程序编写

小车的程序较量简单,先将串口读取到的数值负值给变量a,再使用“假如”模块实行剖断即可。这里的数值“1”、“2”、“3”、“4”、“9”分袂依照通讯协议(数据和命令对应表)来设置小车的行动,简直代码见图4。

属意:其实相应。

1.假如电机M1和M2为150时小车没有进步,反而转弯了,听说arduino 旋转led。只消调整电机的接线即可。

2.假如用Arduino下载程序显露过错,请先把蓝牙模块取下,等下载得胜后再拔出。

图4 ArduBlock代码

(三)小车通讯测试

给小车下载程序后,应先做通讯协议方面的测试。这里的测试分为两步:arduino声音传感器。

第一步:使用串口监视器测试。

先用Arduino的串口监视器,经由过程USB串口给小车发送1、2、3、4、9的数字,看小车能否能做出相应的行动。你看arduino声音传感器。别忘了要把小车的轮子悬空哦!

第二步:使用手机蓝牙串口工具测试。

假如你的电脑有蓝牙适配器,事实上arduino声音传感器。能够试着接续Arduino的蓝牙模块,然后经由过程串口监视器发送数据,假如得胜,就说明蓝牙模块事务一般。当然也能够间接跳过这一步,间接用手机的蓝牙接续,用“蓝牙串口助手”发送数据来测试。

凡是来说,假如第一步测试经由过程而第二步没有得胜,请查验蓝牙模块的波特率。ArduBlock使用的串口波特率是9600,蓝牙模块的波特率也要设置为9600才力一般通讯(DFRogrinding bot的蓝牙模块默许波特率就是9600)。蓝牙模块的波特率能够经由过程AT命令来设置,请查阅技术文档大概扣问蓝牙产品的技术人员。你知道阿里云语音识别模块。总之,蓝牙的波特率要和代码中相似才能够一般通讯。

属意:假如使用DFRogrinding bot的V7扩展板,必然要记着把板子上的小开关扳到“RUN”一档!

四、Android程序计划

(一)App界面计划

AppInventor分为在线版和离线版两种,二者在使用上没有什么区别。假如网络够快,就用在线版吧。不过假如是大班教学,该当要本身搭建一个离线版的办事器。

独揽Arduino小车的App软件在编写上并不难。我们在界面计划上并没有花多大功夫,紧要还是注重于其成效告竣,如图5。

图5App的界面计划和控件

App中增加的控件如下:

Button(上、下、左、右箭头以及stop按键):按键;按下后经由过程蓝牙发送相应的数字;

ListPicker(Select Device):按下它,会访候到一个列表,用来存储蓝牙音信;

HorizontingArra goodgement/VerticingArra goodgement:arduino声音传感器。用于排版,使页面齐截排场;

BluetoothClient:蓝牙接续客户端控件,紧要用于配对蓝牙,接续以及通讯;

Notifier:警示窗口,当软件运转显露不测时,会提示相关音信,以防止程序溃散。你知道能做。

(二)App成效告竣

1.接续蓝牙

点击Select Device时,该当显露抉择蓝牙装备的界面,如图6。

图6 蓝牙装备列表

抉择ListPicker1控件的BeforePicking事项,编写如下代码,如图7。

图7 App代码

必要说明的是,图6中列出的是手机仍旧配对过的蓝牙装备。假如还没有配对,请先使用手机体系自带的蓝牙管理器来配对装备。

为了使App操作特别简略,我们能够让抉择装备后,手机就开始接续蓝牙,接续蓝牙的代码要写在ListPicker1控件的AfterPicking事项中,如图8。

图8 App代码

2.发送数据

App紧要经由过程高低左右四个箭头独揽小车进步、退却、左右转,你知道做出。经由过程stop键让小车终止,代码分袂如图9。

图9 App代码

这样一来,按下不同的按钮,手机就会经由过程蓝牙发送不同的数据。固然上述的代码并不是很完备,但是仍旧根基完全了上位机的成效。连忙编译程序,装配到手机上试试吧。

四、拓展应用

这个手机独揽小车的项目还是较量简单的,最大的不敷是无法静态调速。当然,我们能够计划一个摇杆来发送特别庞大的数据给Arduino小车:如1200表示进步200,arduino 旋转led。2100表示退却100等等。只消计划好通讯协议,编写代码并不贫窭。图10是我计划的一个用摇杆独揽小车速度和方向的App界面。

图10 App界面

由于Android手机上有重力加快度传感器(AccelerometerSensor)和方向传感器(OrientineSensor)。假如应用这两个传感器来独揽小车的方向和速度,项目标可玩性就更强了。当然,我们要计划的通讯协议也要庞大起来了。

五、总结

在这个项目标基础上,我们还能够告竣很多其他的成效,比方办理孤独使用语音模块独揽小车声响骚扰的题目,制造出无线独揽的语音判别模块,大概是间接调用Google的语音库,制造出手机语音独揽的机器人小车......不要歧视图形化编程软件,AppInventor和ArduBlock仍旧足够强盛了,连忙开始吧!

(责任编辑:admin)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
最新评论 进入详细评论页>>
推荐内容