电子技术电子技术
 
转帖:Arduino 蓝牙遥控小车
kc2038 2013-9-3 14:10:05
Arduino 蓝牙遥控小车

http://www.arduino.cn/thread-2247-1-1.html

直接用了OJ小车套件,配上蓝牙,简单方便,然后自己也蛋疼的用VB写了个小软件测试(不会写软件,大家不要笑哈,望大伙有兴趣的可以帮忙写个软件测试),下面说明制作步骤

步骤一:材料准备

           1、小车套件(包含小车车体电机加轮子,arduino主控器,L298电机扩展板,传感器扩展板)

           2、蓝牙(HC-05

           3、蓝牙适配器

           4、蓝牙软件安装:
(190.08 KB, 下载次数: 622)

201596

201595




步骤二:  小车调试
用简单电机驱动程序,先让小车动起来,确定小车能跑,这里不多说了,可以参照之前的帖子
http://www.arduino.cn/forum.php?mod=viewthread&tid=1198
步骤三:下载小车示例程序到arduino

void motor(char pin,char pwmpin,char state,int val)
{
    pinMode(pin, OUTPUT);  

  if(state==1)
  {  
    analogWrite(pwmpin,val);
    digitalWrite(pin,1);
   }
  else if(state==2)
{  
   analogWrite(pwmpin,val);
   digitalWrite(pin,0);
}
else if(state==0)
{
    analogWrite(pwmpin,0);
    digitalWrite(pin,0);
}
}

void runfoward(int i)
{
  motor(4,5,1,i);
  motor(7,6,1,i);
}
void runback(int j)
{
   motor(4,5,2,j);
   motor(7,6,2,j);
}
void turnL(int m)
{
  motor(4,5,1,m);
  motor(7,6,2,m);
}
void turnR(int n)
{
  motor(4,5,2,n);
  motor(7,6,1,n);
}
void stop()
{
  motor(4,5,0,0);
  motor(7,6,1,0);
}
void setup()
{
  Serial.begin(9600);
}
void loop()
{
   while (Serial.available() > 0) {
    int inChar = Serial.read();
    inChar=inChar-0x30;
     if(inChar == 1)  //foward
      {
        runfoward(250);
       delay(300);
       stop();
      }
     else if(inChar == 2)  //back
      {
       runback(250);
       delay(300);
       stop();
      }
    else if(inChar == 3)  //R
      {
       turnR(250);
       delay(300);
       stop();
      }
     else if(inChar == 4)  //L
      {
       turnL(250);
       delay(300);
       stop();
      }
      else
      {
        stop();
      }
     inChar=0;
}
}
步骤四:连接蓝牙
1、插上蓝牙适配器,打开千月蓝牙软件(安装好蓝牙软件为前提)
201596




2、小车插上蓝牙,给小车上电,观察蓝牙state灯为快闪状态
3、 蓝牙软件搜索设备
201597




4、配对,密码默认是1234
201598




5、配对成功后建立连接,蓝牙LINK指示灯常亮表明连接成功
201599




步骤五:打开控制软件 (4.9 KB, 下载次数: 251)
打击打开串口,输入你的蓝牙串口号就可以控制小车啦
201600




201601




PS:用VB写的软件和配合这蓝牙软件有点小问题就是 ,VB能自动识别到的串口号最大为16(不然得写API,对于软件小白的我没有多大吸引力),而有时候蓝牙设备和电脑自动连接上时有可能串口号就七十多,这样就得把连接上的串口端号手动改到16以下,不然这样的话就没有法控制小车了,所以总结了下,用VB写软件有点过时了,望有兴趣的同志给做个漂亮的软件,呵呵,手上正在调试一个朋友写的安卓控制蓝牙小车软件,等改好就立即发布。也望新手学习,高手勿喷。
+20  科创币   李大猫   2013-09-03   高质量发帖
2013-9-4 15:34:55
1楼
手机控制才有意思啊!可以拿到哪里都可以用
2016-2-17 14:24:31
2楼
VB写的控制软件,打不开,好像这个软件缺文件。
3楼
[sell=6,2]<img src="http://bbs.kechuang.org/res/js/dev/windeditor/themes/default/rar.png" class="J_file_img" alt="附件" data-id="259393">[/sell]


电脑控制端(1)解压后打开Control文件夹再打开Control文件夹然后再打开bin文件夹接着打开Debug文件夹最后打开Control.exe
电脑控制端(2)解压后打开SerialportSample文件夹再打开bin文件夹接着打开Debug文件夹最后打开SerialportSample.exe

[修改于 3 年前 - 2016-02-17 15:29:47]

想参与大家的讨论?现在就 登录 或者 注册

nkc production server  https://github.com/kccd/nkc.git

科创研究院 (c)2001-2018

蜀ICP备11004945号-2 川公网安备51010802000058号