设为首页收藏本站

[项目] 宠物互动--逗宠萌物

好奇吖斌 发表于 2017-5-17 16:01:10 | 显示全部楼层 [复制链接]
22 1302
本帖最后由 好奇吖斌 于 2017-5-17 16:33 编辑

话不多说,来段视频压压惊先:


做逗喵小球的故事如下↓
       相信很多人都喜欢小动物(不仅仅喜欢小动物,还要吃掉小动物,这个我开玩笑的),例如小狗或小喵什么的!现在分享一个好玩的小玩意!类似Sphero的球型机器,可以用来逗喵溜狗。2016年大概5月份的时候看到做BB-8机器人的泰哥做了一个遥控小球,我也好想做一个,可是他说电脑坏了重装系统后建模文件没了。恰好2016年暑假8月份我家走来了一只流浪小喵,好萌好可爱啊!我正好在学习solidworks三维建模,于是就决定自己试着做一个逗喵的小球。

小喵

小喵

        看图,是不是好可爱呢?喵~~不过好瘦小啊,呜呜呜,好可怜QAQ!!!正好家里有老鼠,父母把小喵收养下来了,我也正式成为一名铲屎官啦。过了不久10月份的时候又来多了一只小黄喵,一起收养了,现在他们成为好朋友啦ˏ₍•ɞ•₎ˎˏ₍•ʚ•₎ˎ

小黄喵

小黄喵

好朋友

好朋友


小球3D建模效果图:

SW效果图

SW效果图

一边学习Solidworks一边建模,断断续续地画,大概画了一个多月吧,建完模后又修改了好多遍才满意。
零件清单:
材料名称
数量
1(建议多买几个备用)
N20减速电机4mm出轴(转速大约300RPM/6V)
2
1
1
3
1
1
2
杜邦线、28号硅胶线、热缩管、扎带
若干
14
按stl文件说明打印(轮子多打印几个备用

材料

材料

橡胶圈是买这种橡胶圈车轮拆下来的,尺寸大概是外径28mm、内径25mm、线径3mm。

皮带轮

皮带轮

       想自己做的自己到网上购买上面说的电子零件,在这里说说做小球时走过的坑!用DF活动的现金券在DF商店买了Bluno Nano、3.7v锂电、HR8833微型电机驱动板结果发现没一个能用上,原来那个集成蓝牙功能的Bluno Nano是个不通用的蓝牙,蓝牙软件必须用官方提供的app,不支持密码配对,自己弄好的蓝牙遥控app用不了;HR8833驱动板需要两个5V或以上的电源输入才能工作,我还以为一个是电源输入,另外一个可以输出电源的,折腾了我快一个多星期才搞懂了,真是每块板子都有它不工作的脾气啊!!!希望DFRobot能完善一下这些电子零件和模块,做个通用的蓝牙Nano板,电机驱动板也做得更人性化易用;3.7v电池电机启动瞬间会把电压拉低,导致蓝牙自动断开然后小球会失控,一直滚停不下来,所以改用7.4v锂电就没有问题了。

接线图:接线很简单,就是一个蓝牙小车的接线方式

接线图

接线图
组装零件
第一个版本内部尺寸小了,两边的牛眼轮距离外壳有个空隙

第一版

第一版

第二个版本修改建模尺寸后让别人重新打印

底版

底版

焊接1

焊接1

焊接2

焊接2

焊接3

焊接3

小球程序:
[C] 纯文本查看 复制代码
/*
 *   日期:2017-03-30
 *   功能:逗宠萌物程序
 */

#define IN1 4 // 4 5 右轮
#define IN2 5 
#define IN3 6 // 6 7 左轮
#define IN4 7 

#define LEFT '3' //左转编码
#define RIGHT '4'//右转编码
#define GO '1'//前进编码
#define BACK '2'//后退编码
#define STOP '0'//停止编码

void setup() {
  Serial.begin(9600);//设置蓝牙波特率
  pinMode(IN1,OUTPUT);
  pinMode(IN2,OUTPUT);
  pinMode(IN3,OUTPUT);
  pinMode(IN4,OUTPUT);
  initCar();
}

void loop() {
  if(Serial.available()>0){
      char ch = Serial.read();
      if(ch == GO){
         //前进
         go();
         Serial.print("GO\n");
      }else if(ch == BACK){
         //后退
         back();
         Serial.print("BACK\n");
      }else if(ch == LEFT){
         //左转
         turnLeft();
         Serial.print("turnLeft\n");
      }else if(ch == RIGHT){
        //右转
        turnRight();
        Serial.print("turnRight\n");
      }else if(ch=='0'){
        //停车
        stopCar();
        Serial.print("stop\n");
      }
    }
}

void initCar(){
  //默认全是低电平,停止状态
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,LOW);
  digitalWrite(IN3,LOW);
  digitalWrite(IN4,LOW);
}

/**
* 左转
*/
void turnLeft(){
  digitalWrite(IN1,HIGH);
  digitalWrite(IN2,LOW);        //右轮前进
  digitalWrite(IN3,HIGH);
  digitalWrite(IN4,LOW);        //左轮后退
}

/**
* 右转
*/
void turnRight(){
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,HIGH);        //右轮后退
  digitalWrite(IN3,LOW);
  digitalWrite(IN4,HIGH);        //左轮前进
}

/**
* 前进
*/
void go(){
  digitalWrite(IN1,HIGH);
  digitalWrite(IN2,LOW);         //右轮前进
  digitalWrite(IN3,LOW);
  digitalWrite(IN4,HIGH);        //左轮前进
}

/**
* 倒车
*/
void back(){
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,HIGH);        //右轮后退
  digitalWrite(IN3,HIGH);
  digitalWrite(IN4,LOW);         //左轮后退
}

/**
* 停车
*/
void stopCar(){
  initCar();
}

感觉小球程序用PWM控制好像会好点
蓝牙模块先不要安装,先烧录程序,通过Arduino IDE串口发送字符测试电机转向,方向不对就修改子函数下的digitalWrite(INX,HIGH或者LOW);测试好再装蓝牙模块

蓝牙模块设置参考:蓝牙HC05模块探究-设置AT指令
蓝牙模块设置教程.zip (44.33 KB, 下载次数: 4)
抱歉没有逗猫视频了
有个不好的消息就是小黄喵走丢了,五一放假回家的时候已经走丢1个月了,这个4月我的心情也不怎么好,猫丢了我更伤心,所以没有逗猫视频了,也不知道接下来要做些什么,想静下来学自己想学的,提高技术才能做更好玩的东西

互动1

互动1

互动2

互动2



帖子其实4月份就写好了,但只放了在个人站,之后也有一些人加我好友来与我一起交流了,费点劲搭个人站做主站分享还是挺不错的,好了现在发到其它地方一起玩吧!

Android程序
开源程序地址
pet-toy.rar (2.39 MB, 下载次数: 15)
发表于 2017-5-17 18:44:23 | 显示全部楼层
沙发!6666666最喜欢这种逗小动物的了

这种操控方向,是不是和实际运动方向相反?

另外电机驱动一般会要求有两个电源,一个是逻辑供电,另一个是电机供电。这样设计是有道理的,如果用相同的供电口,当电机工作时,可能会抽取大量的电流,然后导致主控没电,就失控了。
回复 支持 反对

使用道具 举报

发表于 2017-5-17 22:04:20 来自手机 | 显示全部楼层
Grey 发表于 2017-5-17 18:44
沙发!6666666最喜欢这种逗小动物的了

这种操控方向,是不是和实际运动方向相反?

调试好电机转向就不会反方向了!话说我以前用的电机驱动板都是一个电源输入的,L298N和L9110这些,尴尬了....
回复 支持 反对

使用道具 举报

发表于 2017-5-18 08:14:15 来自手机 | 显示全部楼层
电机上加个大电容就好啦
回复 支持 反对

使用道具 举报

发表于 2017-5-18 09:54:25 | 显示全部楼层
建模好碉啊
回复 支持 反对

使用道具 举报

发表于 2017-5-18 20:58:11 | 显示全部楼层
好奇吖斌 发表于 2017-5-17 22:04
调试好电机转向就不会反方向了!话说我以前用的电机驱动板都是一个电源输入的,L298N和L9110这些,尴尬了 ...

不用在意细节~
回复 支持 反对

使用道具 举报

发表于 2017-5-18 21:02:27 | 显示全部楼层
yoyojacky 发表于 2017-5-18 08:14
电机上加个大电容就好啦

好,学习了!
回复 支持 反对

使用道具 举报

发表于 2017-5-19 16:19:52 | 显示全部楼层
楼主好棒!!!
回复 支持 反对

使用道具 举报

发表于 2017-5-19 16:26:14 | 显示全部楼层
舵机电机方面之前也遇到过不少坑,多个舵机瞬间启动导致板子复位,除了电容之外,最近发现一个NCP380貌似也能起到作用,还未实验
回复 支持 反对

使用道具 举报

发表于 2017-5-20 09:38:10 | 显示全部楼层
尼玛,透明外壳移动看着好像滑板学的感觉
回复 支持 反对

使用道具 举报

发表于 2017-5-20 09:59:42 | 显示全部楼层
其实我一直在纠结外面那个透明的球。谢谢楼主分享
回复 支持 反对

使用道具 举报

发表于 2017-5-20 14:04:01 | 显示全部楼层
楼主好牛!学习了
回复 支持 反对

使用道具 举报

发表于 2017-5-20 19:11:54 | 显示全部楼层
楼主牛逼,向你学习
回复 支持 反对

使用道具 举报

发表于 2017-5-22 16:33:14 | 显示全部楼层
心灵手巧外加有爱心,一枚棒棒哒铲屎官
回复 支持 反对

使用道具 举报

发表于 2017-5-26 19:33:31 | 显示全部楼层
kevinzhang19701 发表于 2017-5-22 16:33
心灵手巧外加有爱心,一枚棒棒哒铲屎官

嗯嗯,做一只玩玩吧!
回复 支持 反对

使用道具 举报

发表于 2017-5-29 11:24:04 来自手机 | 显示全部楼层
如果有stl文件更好啦
回复 支持 反对

使用道具 举报

发表于 2017-5-29 19:13:16 | 显示全部楼层
yoyojacky 发表于 2017-5-29 11:24
如果有stl文件更好啦

有啊,打印件有sw源文件和stl文件的

点评

赞!我已经做出来了.  发表于 5 天前
回复 支持 反对

使用道具 举报

发表于 2017-6-6 23:09:53 | 显示全部楼层
yoyojacky 发表于 2017-5-18 08:14
电机上加个大电容就好啦

请教一下,大概需要加多大的电容呢
回复 支持 反对

使用道具 举报

发表于 2017-6-15 01:12:28 来自手机 | 显示全部楼层
大神,我按照你的教程做了一套,调试过程中蓝牙模块变得供电不足了,这个问题你遇到过吗?
回复 支持 反对

使用道具 举报

发表于 5 天前 | 显示全部楼层
gehhxing 发表于 2017-6-15 01:12
大神,我按照你的教程做了一套,调试过程中蓝牙模块变得供电不足了,这个问题你遇到过吗? ...

电源供在蓝牙上,然后引出的线再给 arduino 供电.就好啦.而且电池建议充满.
回复 支持 反对

使用道具 举报

发表于 4 天前 | 显示全部楼层
yoyojacky 发表于 2017-6-22 19:32
电源供在蓝牙上,然后引出的线再给 arduino 供电.就好啦.而且电池建议充满.

谢谢回复~
回复 支持 反对

使用道具 举报

12下一页
您需要登录后才可以回帖 登录 | 立即注册  

本版积分规则 允许回帖同步到新浪微博  

  • 中级技师
  • 356
  • 3

推荐阅读

精华导读




公司简介| 联系我们| 小黑屋| 加入我们| 微博| 优酷| 英文网站| DF创客社区 ( 沪ICP备09038501号-4  
友情链接| 硬创邦| 花生壳社区| 模友之吧| 电子发烧友社区| 创客星球| 云汉电子社区| 电子工程网| 与非网| Arduino中文社区| 南极熊3D打印网| OneNET|

上海智位机器人有限公司  沪ICP备09038501号-4   

Powered by Discuz! X3.1

Licensed Comsenz Inc.

返回顶部 返回列表