如何用声音控制任何串行控制的机器人

电子说

1.3w人已加入

描述

第1步:你需要什么:

你只需要一些东西此

1。由COM端口控制的机器人。

2。运行Microsoft Visual Studio的计算机和您的代码编辑软件(在本例中是我的Arduino)

3。用于将草图上传到机器人的USB电缆

步骤2:从机器人开始

我已附上以下代码但是,如果您没有使用Arduino软件,我已经在下面发布了它。这就是我用于RobotShop.com的漫游机器人。我采用了一个简单的WASD草图并对其进行了修改,以允许程序“远程”控制它。复制代码后,您可以使用USB电缆或用于上传到机器人的任何方式将其上传到机器人。

//Setting motor variables

int motorSpeed = 6;

int motor2Speed = 5;

int motor1 = 8;

int motor2 = 7; void setup() {

int i;

for(i=5;i《=8;i++)

pinMode(i, OUTPUT);

Serial.begin(9600); //Start Serial Communication } void loop() {

//waiting for any serial communication. If any is received conduct the switch statement.

char data = Serial.read();

//Setting speed. 255 is max speed, you can change the values below to slow it down if you want.

int leftspeed = 255;

int rightspeed = 255;

switch (data) {

case ‘0’: //If the arduino receives a 0 then it will run the halt command which is defined below.

halt ();

break;

case ‘1’:

forward (leftspeed, rightspeed);

break;

case ‘2’:

reverse (leftspeed, rightspeed);

break;

case ‘3’:

left (rightspeed, leftspeed);

break;

case ‘4’:

right (rightspeed, leftspeed);

break;

} } void halt(void)

{

digitalWrite(motorSpeed, LOW);

digitalWrite(motor2Speed, LOW);

} void forward(char a, char b)

{

analogWrite(motorSpeed, a); //releasing the “brake”

digitalWrite(motor1, LOW); //Applying full power to the pin. This would typically be HIGH but, my wires are hooked up backwards so I just switched the command.

analogWrite(motor2Speed, b);

digitalWrite(motor2, LOW);

} void reverse (char a, char b)

{

analogWrite(motorSpeed, a);

digitalWrite(motor1, HIGH);

analogWrite(motor2Speed, b);

digitalWrite(motor2, HIGH);

}

void left (char a,char b)

{

analogWrite (motorSpeed, a);

digitalWrite(motor1, HIGH);

analogWrite (motor2Speed, b);

digitalWrite(motor2, LOW);

}

void right (char a,char b)

{

analogWrite (motorSpeed, a);

digitalWrite(motor1, LOW);

analogWrite (motor2Speed, b);

digitalWrite(motor2, HIGH);

}

步骤3:Microsoft Visual Studio C#应用程序

现在是时候启动Microsoft Visual Studio了。我们首先创建一个C#windows窗体应用程序。我首先创建UI。这包括5个标签,1个富文本框和2个按钮。可以使用屏幕左侧的工具箱将这些添加到表单中。

添加上述项目后,您可以双击应用程序的顶部边框。这将打开程序背后的C#代码窗口。在附件和下面的代码中,我试图评论很多,它应该很容易遵循。如果没有,我已附加程序的“已发布”版本和Visual Studio项目文件。

您可以编辑COM端口到您的机器人所在的任何位置。我的机器人在COM5上。

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using System.Windows.Forms;

using System.IO.Ports;

using System.Speech;

using System.Speech.Recognition;

using System.Speech.Synthesis;

第4步:现在是时候把它放在一起了!

我们一直在等待的那一刻!启动机器人和程序。一切都启动后,单击启用并说出您的第一个命令!我很好,有时程序可能有点奇怪,并重复多次命令。这从来没有打扰过我,所以我接受它。我希望你看看视频,让我知道这是否有助于你控制你的机器人!祝你有个美好的一天!

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分