电子说
步骤1:零件
硬件
1。支持安装了Android KitKat或更高版本的OTG的Android手机。大多数现代电话都支持OTG。 (我在这里使用了UMI Emax,因为它功能强大且便宜!)
2。基于Arduino Uno的机器人平台。我建议使用MakeBlock Starter Robot Kit(可以使用IR或蓝牙版本)。
3。仪表板手机支架的顶部(我使用了BlackFox Digidock CR-3104)
4。 OTG电缆(在ebay或Amazon上很容易找到)
5。标准的微型USB电缆(最好是一根很短的电缆,如果可以找到,最好是适配器模块)
6。磁性潜望镜镜头(在Amazon或ebay上很容易找到)
软件
1。 Arduino IDE
2。 DroidScript IDE
第2步:制作机器人底座
1。首先根据MakeBlock指令构建标准的跟踪机器人模型。
2。检查是否可以使用随附的红外控制器驱动机器人。
步骤3:重新配置硬件
1。取下电池盒,并使用两个扎带将其绑在机器人下方。
2。取下超声波传感器及其金属板,然后将其重新安装在所示的较低位置。
3。将超声波测距传感器连接到控制板上的端口4。
步骤4:连接电话架
-使用扎线带,双面胶带或维可牢尼龙搭扣垫将手机支架固定在机器人的顶部。
-将手机放在支架中,然后将潜望镜镜头安装到手机的相机上。
-将OTG电缆和micro USB电缆连接在一起,然后将它们连接到手机和机器人的控制板之间。确保OTG电缆插入手机而不是反过来,否则它将不起作用。
步骤5:对MakeBlock Orion(Arduino Uno)开发板进行编程
-安装Arduino IDE
-安装MakeBlock Arduino库:
-使用标准将机器人控制板连接到计算机微型USB电缆。
-从“工具”菜单中选择“ Arduino Uno”作为板类型。
-创建以下新草图(即程序):-
//-------------------------------------------------------
// Smart Rover - Arduino Sketch for controlling a
// Makeblock robots from DroidScript via OTG cable.
//
// This program can be tested using the Aurduino serial
// monitor.
//
// Examples:
// type ‘lft100x’ to turn left at speed 100.
// type ‘buzy’ to turn buzzer on, ‘buzn’ to turn it off.
//
// Copyright: droidscript.org
// License: Creative Commons Attribution ShareAlike 3.0
//--------------------------------------------------------
#include
#include
#include
#include
//Global variables.
char g_version[] = “0.10 ”;
MeDCMotor g_motorL( M1 );
MeDCMotor g_motorR( M2 );
MeUltrasonicSensor ultraSensor( PORT_4 );
unsigned long timer = 0;
//Setup the hardware.
void setup()
{
//Setup USB serial comms.
Serial.begin( 115200 );
Serial.setTimeout( 100 );
}
//This function is called forever.
void loop()
{
//Read serial commands.
while( Serial.peek() != -1 )
{
//Read 3 character command.
char cmd[4] = “---”;
Serial.readBytes( cmd, 3 );
//Execute command.
if( strcmp( cmd, “buz” )==0 ) Buzzer();
else if( strcmp( cmd, “stp” )==0 ) Stop();
else if( strcmp( cmd, “fwd” )==0 ) Forward();
else if( strcmp( cmd, “rev” )==0 ) Reverse();
else if( strcmp( cmd, “lft” )==0 ) Left();
else if( strcmp( cmd, “rgt” )==0 ) Right();
else if( strcmp( cmd, “ver” )==0 ) GetVersion();
}
//Report status every second.
if( (millis()-timer) 》 1000 )
{
timer += 1000;
Report();
}
}
//Get software version.
void GetVersion()
{
Serial.print( g_version );
}
//Send status back to DroidScript App.
void Report()
{
int dist = ultraSensor.distanceCm();
Serial.println( String(“dist:”) + dist + String(“;”) );
}
//Control buzzer.
void Buzzer()
{
//Read on/off parameter.
char onOff;
Serial.readBytes( &onOff, 1 );
//Start of stop buzzer.
if( onOff==‘y’ ) buzzerOn();
else buzzerOff();
}
//Turn vehicle left.
void Left()
{
//Read speed parameter.
int speed = Serial.parseInt();
//Turn on motors.
g_motorL.run( -speed );
g_motorR.run( speed );
}
//Turn vehicle right.
void Right()
{
//Read speed parameter.
int speed = Serial.parseInt();
//Turn on motors.
g_motorL.run( speed );
g_motorR.run( -speed );
}
//Drive vehicle forward.
void Forward()
{
//Read speed parameter.
int speed = Serial.parseInt();
//Turn on motors.
g_motorL.run( speed );
g_motorR.run( speed );
}
//Reverse vehicle.
void Reverse()
{
//Read speed parameter.
int speed = Serial.parseInt();
//Turn on motors.
g_motorL.run( -speed );
g_motorR.run( -speed );
}
//Stop vehicle.
void Stop()
{
//Turn off motors.
g_motorL.run( 0 );
g_motorR.run( 0 );
}
步骤6:创建电话应用
-从Google Play安装免费的DroidScript IDE应用。
-导航使用手机的浏览器访问以下链接,并从此处下载DroidScript项目(.SPK)文件:-http://androidscript.org/demos/rover
-使用文件浏览器,例如Explorer +或ES单击文件资源管理器,然后打开下载的.spk文件。然后将.project文件自动安装到DroidScript中(询问您是否信任源文件时,选择“是”)。
步骤7:试用一下!
-将电池放在控制器板上,然后打开滑动电源开关。
-将OTG电缆插入(或重新插入)手机(
-触摸DroidScript中的图标,启动“ Rover”应用。
-按“ fwd”键,然后按“ 3”键,然后按“运行”按钮(您的流动站应向前行驶3秒钟)。
-按“语音”键并尝试与之通话(注意:通常最好下载离线语音识别
-尝试在超声波传感器向前移动时将手放在超声波传感器的前面。
-尝试按住
第8步:进一步的实验
有负载 mor可以使用DroidScript添加到此机器人的酷功能,例如 GPS 导航,罗盘方向,面部跟踪,运动检测,远程摄像头流等。只需浏览一下DroidScript示例,看看您能找到什么。
对机器人进行编程的最佳方法是使用DroidScript的 WiFi IDE 。这使您可以通过WiFi连接到手机,并使用PC或Mac上运行的网络浏览器远程编辑程序(只需按DroidScript应用程序左上方的小箭头按钮即可进行连接)。
全部0条评论
快来发表一下你的评论吧 !