56226| 44
|
[项目] 基于Romeo mini控制板的杰尼龟小车设计与制作V1.0 |
一.杰尼龟应用背景 市面上有很多很小的模型车,很好看,如下图所示的小车模型: 这种可爱的小车模型很好看,但是由于车子太小,从而无法放置电池和电机这样的大器件从而是的这样的小车只能成为静态模型放在办公桌上作为展示。小编觉得实在是很可惜,如果能够做成电动的并且可以通过手机去控制的小车,那就好玩了。所以本次应用即为做一只小巧可爱的遥控小车。 二.杰尼龟实现简介 设计的小车可搭载该版型、电池与电机等器件,并且保证小车的体积,在已有的基础上可在外形上进行相应的设计,本次设计外观来源于乌龟。 本次应用(杰尼龟小车)有一下功能(初步设定): 1) 蓝牙控制移动;可播放MP3;(可选)灯光效果;(可选)4)摄像头功能;(可选) 三.杰尼龟制作说明 3.1 制作简介 本节将从机械部分,电路部分和软件部分三个角度来分别阐述杰尼龟小车的整个制作过程,机械部分主要阐述了杰尼龟的各个零部件的设计与制作过程;电路部分主要阐述了杰尼龟实现遇到障碍物展开翅膀功能的硬件方案,以及小车寻线功能(选做)的硬件实现过程;软件部分阐述的是基于Arduino控制的程序解决方案。 3.2 机械部分 3.2.1零件介绍 1)底盘 底盘成“X”型,四个角是用来固定电机,中间的两个孔和上面的支持连接固定; 2)车轮支撑 两对车轮支撑,前面一对和后面一对,用于支撑车轮,便于固定车轮和保护。 3)侧边支撑 安装在车轮支撑的侧边,有着定车轮圆心和支撑车轮一边的作用。 4)车轮 中间的十字孔是和电机相连,另一侧圆孔是放置轴承的,周围的深槽是用来固定O型圈。 5)龟型外壳 龟型外壳,设计灵感来源于乌龟,在结合菱角设计方式所演变出来的外形,前方的锥形头骨表示壳的头部,中间的两只孔是避障传感器检测的窗口 6)中间支撑 中间支撑零件的中部共有四个孔,中间两个大孔是用来和底盘连接用的,两个小孔是用来穿底部电机焊接的线。两边的孔是用于固定龟壳用的。 3.2.2 组装 1)组装车轮 所选材料:O型圈+车轮+轴承=车轮部件,如下图所示 2)组装底盘 所选材料:电机+底盘+M2*8机牙螺丝=底盘部件,如下图所示: 3)组装车底身部件 所选材料:底盘部件+车轮部件+侧边支撑+M2*8机牙螺丝+M2*8自攻螺丝+M3*6机牙螺丝+导线=车底身部件,如下图所示: M2自攻螺丝用于安装侧边支撑和车轮支撑,M3挤压螺丝用于安装在侧边支撑的大孔里,M2机牙螺丝用于安装车轮支撑和底盘。 4)安装中部支撑零件: 所选材料:车底身部件+中部支撑+M3*6机牙螺丝+M3螺母=车身部件,如下图所示: 5)安装小车内部电子电路部分 6)完成小车安装 所选材料:完整车身+车壳+M3*6机牙螺丝=杰尼龟,如下图所示。 电路部分连接,在下面的文章里,具体可见电路部分介绍。M3机牙螺丝安装在龟壳侧边的小孔里面,每边两只。至此完成整个小车的组装过程。 3.3 电路部分 3.3.1 电路图 为了实现小车遥控功能,我们搭建了如下图所示的电气连接图: 两个电机连接板子电机输出口,该板子没有电源开关,所以需要外接一个电源开关。控制板为DFRobot自主研发的Romeo mini控制板。该Romeo mini控制板有如下特点:
3.4 软件部分 3.4.1程序流程图 上图为杰尼龟小车的程序流程图,本程序完成的是如何通过手机利用蓝牙来连接该小车上的主板,从而完成小车前进后退等功能。通过该流程图,不难看出程序该小车控制程序很容易实现,通过对按键的检测来辨别电机所输出的形式,成为该程序的核心西路。 3.4.2手机APP DFRobot推出的通用蓝牙遥控器!让你可以与机器人、移动平台或无人机等任何你想要控制的设备进行通信。遥控器具有一个模拟量的摇杆,六个数字按键,采用传统游戏手柄布局,让所有人都可以更快上手。遥控器符合DFRobot标准通讯协议,并可设置数据发送模式。 本应用目前只涉及到遥控器左边遥感部分,后边的控制部分会在日后的升降中涉及到。 四.应用参考 4.1 工具简介 4.1.1 使用平台简介 编程软件平台: 该设计所建立的应用平台是Arduino平台,该平台有着简单易懂,经济实惠等好处,其丰富的开源库以及简单易学的函数接口,使得该平台完全胜任这套设计; 绘图软件平台: Creo是一个整合Pro/ENGINEER、CoCreate和ProductView三大软件并重新分发的新型CAD设计软件包. 该设计所用到的所有图形设计均使用Creo软件设计并绘制出。该软件有个很大的优点在于可以组装已完成的零件,将这些有序的零件搭建成一个整体,从而优化零件尺寸和美化零件外形。 3D打印机: 所有零件是由DFRobot公司自主研发的Dreammaker打印机制作的,该Dreammaker作为国内首款采用远端挤出进料技术的3D打印机,在桌面式打印机中具有非常好的打印速度和稳定性。得益于DreamMaker简单 而精巧的结构,使得骑在保证打印品质的同事,还能扩大打印的面积,成为目前国内打印面积和体积最大的桌面级机型。 4.2零件清单
2.2 制作工具
4.3注意事项 1)O型圈需要用胶水粘在车轮上,最好使用硅胶或白乳胶; 2)小车尽可能不要太重,由于电机比较小,负荷不能大,而且太重了,会造成O型圈脱落; 3)最好将现有的电路连接好,然后测试一下其功能在去完成组装,Romeo mini控制板自带蓝牙模块,支持无线烧录程序,方便日后调试程序。 五.附录 程序源代码——杰尼龟遥控程序 #include "GoBLE.h" //手机蓝牙控制库 #include <Romeo_m.h> Romeo mini库,//需要用到电机驱动函数 int joystickX, joystickY; //定义遥感参数 void setup(){ //初始化 Romeo_m.Initialise(); Goble.begin(); Serial.begin(115200); } void loop() { if(Goble.available()){ //蓝牙控制使能 joystickX = Goble.readJoystickX(); //传递X偏移数据 joystickY = Goble.readJoystickY(); //传递Y偏移数据 int SpeedX=joystickX; int SpeedY=joystickY; if (SpeedX>200 && 100<SpeedY<200){ //判断坐标轴位置 Romeo_m.motorControl(Forward,200,Forward,200); //前进 } else if (100<SpeedX<200 && SpeedY<50){ Romeo_m.motorControl(Forward,100,Reverse,100); //后退 } else if (100<SpeedX<200 && SpeedY>200){ Romeo_m.motorControl(Reverse,100,Forward,100);//左转 } else if (SpeedX<50 && 100<SpeedY<200){ Romeo_m.motorControl(Reverse,200,Reverse,200);//右转 } else {Romeo_m.motorStop();//停止 } } |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed