让我们把nodemcu本地WiFi和检查它的IP地址。那,让我们用下面的小程序:
#包括<< esp8266wifi。H > wificlient客户端; wifiserver服务器(80); const char* SSID =“你的SSID”; const char *密码=“密码”; 无效setup() { 系列。开始(115200); connectwifi(); 服务器。begin(); } 无效loop() { } / * * / 无效连接WiFi connectwifi() { 串行out.println(“连接到无线网络”); 开始WiFi!(WiFi。status() = = wl_connected))) { 延迟(300); 串口打印(“..”); } 串行out.println(“”); 串行out.println(“WiFi连接”); 串行out.println(“nodemcu本地IP是:”); 串口打印((WiFi。
在串行监视器可以看到其IP地址。注意到它。我们将需要连接的Android应用程序。
该代码可以从我的github下载:
nodemcu_connection_test_ext
把我们的机器人,我们需要从Android设备接收命令。这一命令的变量将被定义:
字符串命令=“”;
所以,例如,如果Android应用程序发送一个命令:“前进”,机器人必须前进:
如果(命令= =“前进”) { forwardmotor();
同样必须为所有可能的命令做得到。
下载完整的代码:wifi_robot_nodemcu_android_voice_ext我从GitHub。
更改虚拟WiFi的凭据,用你自己的:
const char* SSID =“你的SSID”; const char *密码=“你的密码;
上传的代码到你的nodemcu而已!你可以检查串口监控如果程序运行,但是,没有更多的。让程序运行你的应用程序在测试下一步。
我们将使用MIT App Inventor我们的Android应用程序开发。
<strong>主要成分1个屏幕上(见上图</strong>):
我们必须在块标签,创建5个按钮。所有的人都会遵循一个在照片中显示的结构。
这个按钮块叫做当前进按钮(“”)压:
例如,当你点击按钮<em>了</em>,3行动将执行:
* ip_address将你屏幕上的1输入。默认的是10.1.0.3,所以真正的消息是:HTTP:/ 10.0.1.3/forward
你可以使用任何你想要的信息,甚至把这一块了。该项目是可选的。
上述块给我们的应用程序的语音识别代码。
需要注意的是,任何语音命令的输入,其结果将是一个较低的情况下命令。这将促进语音识别解码nodemcu。
例如,如果你想让你的机器人了,一个词或句子必须交由nodemcu代码准确的识别。我将在葡萄牙的一个命令(我的语言),但你必须把它自己的语言(一个在你的Android设备的设置),并改变nodemcu正确的代码。在下面的例子,代码将承认任何一个关键词:“前进”,“人”或“ä阵线
如果(命令= =“前进”| |命令= =“人”| |命令= =“人”) { forwardmotor();
所以,当我说“前进”,应用程序将发送例如:<em>HTTP:/ 10.0.1.10/forward</em>和nodemcu将采取什么是收到后的“/”,这是一个命令“前进”。正如我们看到的,这个命令的功能forwardmotor()将被称为。
如果有错误发生,例如当你说出语音指令不被nodemcu认可,上述地块将写在最后一行的错误详细信息(comm_status)的应用程序在上面的照片所示。
你可以创建你的应用程序一步一步像前一步骤显示或上传我的完整的项目(。AIA)在MIT App Inventor修改为你所需要的。如果你还没有在开发Android应用程序的经验,您可以执行。apk文件直接在你的Android设备。
两者的。友邦和apk文件可以从GitHub下载我的:
wifi_voice_robot_ctrl_v2.aia
wifi_voice_robot_ctrl_v2.apk
下面的视频显示与应用程序的一些电机试验:
一如既往,我希望这个项目可以帮助别人在电子的精彩世界找到自己的方式,机器人和物联网!
请访问我的文件重新更新:
无线语音控制机器人
更多的项目,请访问我的博客:mjrobot.org
从南部的世界向你!
在我看到你下命令!
谢谢你