极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 29487|回复: 18

第一款arduino小车

  [复制链接]
发表于 2012-1-29 13:50:40 | 显示全部楼层 |阅读模式
本帖最后由 tianbin4279 于 2012-2-2 11:29 编辑

  1. m#include <RoboduinoMotor.h>
  2. String comdata = "";
  3. int mark = 0;
  4. String Tag;
  5. int Speed=0;
  6. void setup()
  7. {
  8.     Serial.begin(9600);   
  9.     RoboduinoMotor.mapMotor(1,1, false);
  10. }
  11. void loop()
  12. {
  13.     //String Tag;
  14.    
  15.     while(Serial.available()>0)
  16.     {
  17.         comdata+=char(Serial.read());
  18.         delay(3);
  19.         mark=1;
  20.     }
  21.     if(mark==1)
  22.     {
  23.          Tag=String("");
  24.          Speed=0;
  25.         for(int i = 0; i < comdata.length() ; i++)
  26.         {
  27.             if(i > 0 && comdata[i] == 'X' && comdata[i - 1] == 'A' && comdata.length() - i >= 6)
  28.             {
  29.                 Tag = comdata[i + 1];
  30.                 Tag += comdata[i + 2];
  31.                 Speed = int(comdata[i + 3]-'0')*100 + int(comdata[i + 4]-'0')*10+int(comdata[i+5]-'0');
  32.                 i = i + 5;
  33.             }
  34.         }
  35.         mark=0;
  36.         comdata=String("");
  37.         /*for(int i = 0; i < comdata.length() ; i++)
  38.         {
  39.             if(i > 0 && comdata[i] == 'X' && comdata[i - 1] == 'A' && comdata.length() - i >= 9)
  40.             {
  41.                 SpeedL = int(comdata[i + 2]-'0')*100 + int(comdata[i + 3]-'0')*10+int(comdata[i+4]-'0');
  42.                 SpeedR = int(comdata[i + 6]-'0')*100 + int(comdata[i + 7]-'0')*10+int(comdata[i+8]-'0');

  43.                 if(comdata[i + 1]=='-')
  44.                   SpeedL=0-SpeedL;
  45.                 if(comdata[i + 5]=='-')
  46.                   SpeedR=0-SpeedR;
  47.                 i = i + 8;
  48.             }
  49.         }*/
  50.         //RoboduinoMotor.start(SpeedL,SpeedR);s
  51.     }
  52.     if(Tag=="UP")
  53.     {
  54.         RoboduinoMotor.start(Speed,Speed);      
  55.     }
  56.     else if(Tag=="RH")
  57.     {
  58.         RoboduinoMotor.start(Speed,0-Speed);
  59.     }
  60.     else if(Tag=="DW")
  61.     {
  62.         RoboduinoMotor.start(0-Speed,0-Speed);
  63.     }
  64.     else if(Tag=="LF")
  65.     {
  66.         RoboduinoMotor.start(0-Speed,Speed);
  67.     }
  68.     else
  69.     {
  70.         RoboduinoMotor.stop();
  71.     }
  72.     delay(30);
  73. }
复制代码

比较穷,所以只好塑料泡面支撑了..用到了RoboduinoMotor这个.稍微修改了下支持双电机控制.上位机是用c#做的.同时也可以用silverlight通过socket在网页上远程遥控..摄像头不知道怎么搞..貌似很多种..正在学习...请大家指教


本来想通过html5控制.这样手机直接访问就可以了...但是发现不论是android和苹果都不行...最后放弃..改用安卓程序通过socket连接到服务器控制小车运行...都是没钱买wifi模块惹的祸...

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

发表于 2012-1-29 16:26:22 | 显示全部楼层
好高级。。网页控制
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-1-30 08:31:30 | 显示全部楼层
本帖最后由 tianbin4279 于 2012-1-30 08:32 编辑

目前正在看看能不能用HTML直接和服务器做socket交互..这样就不用银光介入了..呵呵
摄像头谁能介绍一下啊..完全不解...是直接买可以远程传图像的还是买需要通过arduino传送图像的呢
回复 支持 反对

使用道具 举报

发表于 2012-1-31 11:33:34 | 显示全部楼层
高级的上位机,完全不懂哈

不过泡沫板貌似不健康,影响散热还容易出静电吧{:soso__2930097042307125384_4:}
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-2-1 14:43:03 | 显示全部楼层
穷嘛..没工具...凑合呗..HTML5上位机也完成..但是手机不能访问...现在开始研究android..写个小上位机试试
回复 支持 反对

使用道具 举报

发表于 2012-2-13 17:01:01 | 显示全部楼层
本帖最后由 树·水·风 于 2012-2-13 17:01 编辑

求教一下连接电脑和小车的那个很粗的天线是什么东西?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-2-14 12:54:54 | 显示全部楼层
树·水·风 发表于 2012-2-13 17:01
求教一下连接电脑和小车的那个很粗的天线是什么东西?

APC220 射频的无线控制..本来手机要是遥控小车的话上wifi就可以直接控制了..但是wifi太贵,所以用APC220.电脑写了个服务转发手机的控制信号..变相实现了手机控制..也衍生出网页控制..加个摄像头就可以实现网上控制小车探险了
回复 支持 反对

使用道具 举报

发表于 2012-2-25 20:55:22 | 显示全部楼层
求教手机如何控制小车,是手机往电脑串口发字符么,手机端的软件是什么啊?真心求教
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-2-28 08:53:07 | 显示全部楼层
traccding 发表于 2012-2-25 20:55
求教手机如何控制小车,是手机往电脑串口发字符么,手机端的软件是什么啊?真心求教

手机可以通过wifi直接控制小车..但是我没有设备...我的是APC220一端接车,一端接电脑..就和接USB线一样发数据就可以了...手机通过socket和电脑连接发送数据给小车.
回复 支持 反对

使用道具 举报

发表于 2012-2-28 09:12:19 | 显示全部楼层
好强大的小车,期待学习中,上位机学习难吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-2-28 09:57:46 | 显示全部楼层
uno19901022 发表于 2012-2-28 09:12
好强大的小车,期待学习中,上位机学习难吗?

我就是c#程序员....所以....但是我发现iphone开发真的很操蛋....
回复 支持 反对

使用道具 举报

发表于 2012-2-29 08:39:11 | 显示全部楼层
tianbin4279 发表于 2012-2-28 09:57
我就是c#程序员....所以....但是我发现iphone开发真的很操蛋....

咋操蛋了。。说来听听!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-2-29 08:54:17 | 显示全部楼层
uno19901022 发表于 2012-2-29 08:39
咋操蛋了。。说来听听!

....人家都是 class a=new class();a.statr(); object-c就分要[a start];这么写....string就string呗..他非要NSString
回复 支持 反对

使用道具 举报

发表于 2012-2-29 09:13:49 | 显示全部楼层
tianbin4279 发表于 2012-2-29 08:54
....人家都是 class a=new class();a.statr(); object-c就分要[a start];这么写....string就string呗..他 ...

目前听不过懂,你QQ多少,加一下,以后学C#的话教一下,学习一下!
回复 支持 反对

使用道具 举报

发表于 2012-3-26 19:53:26 | 显示全部楼层
tianbin4279 发表于 2012-1-30 08:31
目前正在看看能不能用HTML直接和服务器做socket交互..这样就不用银光介入了..呵呵
摄像头谁能介绍一下啊.. ...

我有一个低成本的建议,TP 的w703n刷一个集成摄像头驱动的openWRT固件,再加上一个支持的摄像头就可以实现wifi CAM了,成本也就100多块吧,不过刷路由固件有点风险。现在我已经做成一个wifi CAM了,但是对网络知识不太懂,C#基本是小白,我现在的问题是,怎么通过这个路由器连接arduino MEGA+W5100,上下位机控制程序怎么写?最近搞的头好大啊,不知道楼主能否给些建议和帮助呢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-3-29 19:53 , Processed in 0.047487 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表