LYTSwitch™-1 LED驱动器IC可降低22 W以内灯泡

LYTSwitch™-7 LED结合PFC及恒流输出特性

符合安规要求,非常适合工业控制及三相电源应用

手机遥控蓝牙平衡小车V1资料全部开源

  • 手机遥控蓝牙平衡小车V1资料全部开源
  • 手机遥控蓝牙平衡小车V1资料全部开源
  • 手机遥控蓝牙平衡小车V1资料全部开源
  • 手机遥控蓝牙平衡小车V1资料全部开源
  • 手机遥控蓝牙平衡小车V1资料全部开源

手机遥控蓝牙平衡小车V1资料全部开源

手机遥控蓝牙平衡小车V1资料全部开源

手机遥控蓝牙平衡小车V1资料全部开源

手机遥控蓝牙平衡小车V1资料全部开源

手机遥控蓝牙平衡小车V1资料全部开源


声明:该设计资料转自lb8820265网友分享,仅供学习参考,不可用于商业用途。

手机遥控蓝牙平衡小车概述:

       蓝牙平衡玩具小车,具有的功能有:手机APP虚拟遥感控制模式,自动行走避障模式,碰撞自动后退,倒下自动停止,预警模式,跳舞模式,说话,语音表情,压强播报,温度播报,湿度播报,前方障碍物距离播报,PC上位机无线调参,示波器显示,3D姿态显示。是集趣味性,智能性,易操作性,可研究性于一体的蓝牙平衡小车。

视频演示:

采用的硬件如下:

  • 处理器: Nucleo STM32F411核心板
  • 传感器模块: Nucleo IKS01A1(包括陀螺仪,加速度计,磁力计,温度计,湿度计,压强计)
  • 蓝牙模块: CC2541 蓝牙4.0模块
  • 无线模块: NRF24L01+模块
  • 电机驱动模块: BT6612模块
  • 测距模块: 夏普2Y0A21红外测距模块
  • 舵机: SG90模拟舵机
  • 语音模块: SYN6658语音模块
  • 电池: 狮子11.1V 2200mAh
  • 电源: LM2596电源模块
  • 电机: 诗凯支架自带,3530直流减速电机
  • 光电编码器: 电机自带,13440线每轮转,AB相输出 
  • 手机: 魅族MX3
  • 上位机接收端: MSP430G2553核心板
  • 电脑: 这个随意

整个系统的硬件拆解图图下图所示:

整个系统可大致分为4个部分,分别是:小车部分,上位机接收机,PC上位机,安卓手机控制端。

4个部分的关系如下图所示:

其中以平衡小车为中心,能将信息通过无线发送给上位机接收端,上位机接收端再将数据通过串口的形式发送给PC上位机。同时上位机亦可以发送调参与控制指令给上位机接收端,上位机接收端再将信息发送给平衡小车。安卓APP也能通过蓝牙传输信息给CC2541模块,将信息通过串口的形式发送给平衡小车进行控制。


编写的软件如下:
  • 小车: 采用IAR7.3编写
  • 上位机接收端: 采用CCS5.1编写
  • 上位机: 采用VC6.0 MFC编写
  • 手机APP: 采用Android studio 1.2.2编写

手机APP

之前的帖子已经讲了,如何实现蓝牙4.0的收发,那么接下来就是通信协议的制定与界面的编辑了,

下图是手机APP的截图:

PC上位机端

上位机采用VC6.0编写,PC上位机主要是用来进行参数调整、虚拟示波器显示波形、3D姿态显示。下图是上位机截图。采用MSComm串口控件进行数据的发送与接收。能够进行端口扫描,并连接串口,实现数据发送,错误显示,实现了4个整形数字与4个浮点数的调整,并且能够读取系统的原始数据,显示发送状态,且能够显示信号强弱,同时能够进行示波器显示,调节显示间隔。

由于采用的是NRF24L01+带数据的ACK模式进行数据传输,所以上位机不发送数据的时候,小车并不会发送回来,所以上位机能够掌握显示数据的间隔。示波器采用的IPlot控件,能够实现4个数据波形显示,且能够让任意一组数据显示、实现轴的缩放、在顶端显示数值。3D姿态显示采用的是OpenGL库,画出小车模型,设置为半透明,能实时清晰的显示小车的姿态。

PC上位机示波器显示紧挨着3D姿态显示亲热照!

蓝牙平衡玩具小车全家福!

电路相关文件

电路图文件
原理图与PCB.zip
描述:原理图与PCB
源代码
STM32F411程序+安卓蓝牙遥控程序.zip
描述:STM32F411程序+安卓蓝牙遥控程序
其他文件
上位机源码+接收端程序.zip
描述:上位机源码+接收端程序
教程
收藏 (18)
扫码关注电路城

电路城电路折扣劵获取途径:

电路城7~10折折扣劵(全场通用):对本电路进行评分获取;

电路城6折折扣劵(限购≤100元电路):申请成为卖家,上传电路,审核成功后获取。

(版权归lb8820265所有)

版权声明:电路城所有电路均源于网友上传或网上搜集,供学习和研究使用,其版权归原作者所有,对可以提供充分证据的侵权信息,本站将在确认后24小时内删除。对本电路进行投诉建议,点击投诉本电路反馈给电路城。

使用说明:直接使用附件资料或需要对资料PCB板进行打样的买家,请先核对资料的完整性,如果出现问题,电路城不承担任何经济损失!

换一批 more>>

大家都在看:

继续阅读

  • 小白福利,非常详细的Arduino平衡小车源码及原理图

    前言:本资料来自于平衡小车之家(http://www.minibalance.com/forum.php)分享的是Arduino平衡小车源码以及原理图,把提供的库文件拷贝到您的Arduino安装目录下的Libraries文件夹即可以应用,资料在附件中下载。原理图截图:源码截图:代码解释的非常详细,对于初学者有很大的帮助!
    来自:智能车时间:2017-09-26 arduino 平衡小车
  • 国外开源-可以骑的球平衡器iRoll

    平衡球骑行视频 球传动这是驱动系统。有4个大型775齿轮马达驱动两英寸Colson车轮摩擦耦合到保龄球。每个轴有两个电机,每对电机串联。左侧显示的版本使用球上方的4球传输支持。后来我用一个单独的自制低矮脚轮轮替代了球传输。最初我将使用5号篮球,以获得良好的牵引力和顺利的骑行。但是,有几项测试证实,过度充气的篮球不足够刚性。所以,我买了一个便宜的6磅保龄球。它是由聚酯制成,非常光滑。事实上,这并不真正有效。Google发现了一篇关于增加保龄球的牵引力的文章。它涉及将它们浸泡在溶剂MEK中。这是底部框架。它由tig焊接铝通道制成。电机每个插槽有4个螺丝,以便调节2英寸驱动轮和保龄球之间的张力。框架的侧面实际上由于增加的力而略微扭转,产生扭转弹簧以保持球上的张力。这是安装在自制隔振器上的Sparkfun IMU陀螺仪和加速度计。这被认为是防止电动机振动严重干扰加速度计的正常操作的必要条件。板被拧到一块钢板上。钢块粘合到1/8英寸厚的橡胶片上。橡胶胶合到一块聚碳酸酯上,该聚碳酸酯在另一块橡胶的顶部被拧到框架上。这是替代4球传输的低调支撑脚轮。它运行更安静,但由于重量集中在一个车轮而不是4个球,保龄球表面上的力是4倍。我使用了一个4英寸的转盘和一个带滚珠轴承的加工铝轮。车轮偏离中心约5/8英寸。这是Dimension Engineering 的Sabertooth 2X25电机控制器的视图。它将控制2个直流有刷电机,最高达25安培和24伏。我通过9600波特的串口发出速度控制命令。电池是六颗A123电池,串联20伏@ 2200MAH。电池使用时间约为6至10分钟。需要更大的电池。这是Arduino CPU和模拟处理器板。这是一个混合模拟/数字系统。免费滤波器是模拟运算放大器,而用于电机调速和平衡的PID控制器都是Arduino中的所有软件。有一个现有的Arduino的PID库,但我不得不修改它。我也写了一个第一阶低通滤波器库函数。是的,如果采样率足够慢,Arduinos可以做DSP。我使用浮点采样200Hz。模拟补偿滤波器几乎与无线电控制球平衡机器人中使用的滤波器相同,只是一个细微的改进。最初的速率陀螺仪通过系统直流耦合。任何陀螺仪直流偏移漂移严重混乱了真正的垂直校准。有些日子,机器人会认为15度是垂直的,需要重新校准!愚蠢的机器人 因此,我在陀螺仪路径中添加了一个第一级的0.16 Hz高通滤波器(见原理图 C15,R57),以阻止DC并阻止此。不幸的是,这样做加剧了与加速度计的微妙相位关系,导致组合的频率响应不平坦。通过反复试验,我创建了一个相位补偿网络(见 原理图) C14,R47),以恢复平坦的频率响应。这是模拟处理器板的另一个视图。
    来自:DIY创意产品时间:2017-08-30 平衡小车 开源制作
  • (毕业设计)基于51单片机的多功能循迹、避障、手机蓝牙及重力感应小车(完整设计资料)

    基于51单片机设计多功能智能小车功能介绍:1、本设计采用STC89C52/作为主控芯片,LCD1602液晶作为显示屏幕;以下为各种版本介绍!2、直行避障:小车前面有一个超声波,小车处于往前直行状态,当前面的超声波遇到障碍物自动拐弯并继续行走,可按键随意设定小车避障的安全距离。3、红外线寻迹:小车前面三个红外线传感器,能在黑色轨道(黑胶带)自动行走。4、安卓蓝牙小车:通过安卓手机控制小车前进、后退、左转、右转;APP为安卓软件,能按键松手自动停止,并且有重力感应操控方式,操作手感好。以上为本作品全部功能,也可根据你的想法进行有偿添加,如:自制无线遥控、红外遥控控制、wifi控制等想法。附件内容截图:按键说明:开机后进入模式选择页面“模式键”:按一下后进入避障模式,并且开始避障工作,液晶第二行显示当前前后距离障碍物的距离。在此模式下还有调节避障距离功能,按“设置键”进入调节页面,第一个微闪的数值表示正在设定前方避障的距离,在按“设置键”,表示现在在设定的是第二个数值是后方躲避的距离,按“加键”“减键”就是增加或者减少数值,在按“设置键”第三次时返回避障模式 。在“模式”第二次后进入循迹模式,只要把车放在黑线上即可自动走完全程;并且液晶还显示当前小车前进还是停止的状态,如下图在“模式”第三次后进入安卓蓝牙遥控模式和重力感应模式合一,在此模式下打开手机蓝牙连接小车,并且打开相应具有“重力感应和遥控功能能APP软件”,即可控制小车;有两款APP如下图(买家任选)设计资料:1.源程序(KEIL工程源文件、word版本、记事本,程序大部分中文注释)2.设计图(Altium工程源文件、word版本、PDF版本、截图版本)3.元器件清单(默认Excel表格,元件看不懂可随时提问)4.演示视频5.设计用到的相关参考文档(芯片和传感器资料)6.设计用到的相关开发工具(普中程序下载软件、串口驱动软件,KEIL编程软件、Altium画图软件、串口助手)7.常见元器件的详细说明与介绍8.注意事项(常见制作过程遇到的问题和解决方案)补充说明:(设计资料的中提到的51单片机、Altium Design等教学视频、KEIL编程软件、Altium画图软件、串口助手由于资料太大不好上传,需要的另外发送)资料在于精而不在于多,资料越杂,新手越乱,对症下药,保证有效!基于51单片机设计多功能智能小车实物购买链接:https://item.taobao.com/item.htm?spm=a1z10.3-c.w40...供电说明:使用两颗18650充电电池结合L298N驱动模块为小车电机和整个系统供电,购买套件以及成品配送充电器一个、电池两颗,如下此图所示:
    来自:智能车时间:2017-06-13 单片机 毕业设计 蓝牙小车
  • 【最终篇】手机遥控十分mimi蓝牙小车V2资料全部开源

    继电路城之前上传的2篇手机遥控蓝牙小车资料:手机遥控蓝牙平衡小车V1资料全部开源,http://www.cirmall.com/circuit/6201/detail?3手机遥控蓝牙平衡小车V1.1资料开源,http://www.cirmall.com/circuit/6202/detail?3现在介绍该手机遥控十分mimi蓝牙小车V2版本设计,http://www.cirmall.com/circuit/6204/detail?3CannonRobot将会拥有的功能如下:1. 手机遥控小车两轮行走2. 包括两个手臂,一个头部,共5个舵机3. 手臂可以接取东西,可以在地上自动爬起来4. 可以反馈电池电量到手机5. MP3播放,录音6. 手机调参软件7. 支持无头模式、方向盘模式、重力感应模式8. 运行微型操作系统9. 惯性导航(待定)10. 智能语音(待定)11. 智能避障(待定)12. 物联网智能家居功能(待定)硬件组成: 这次的小车将会十分mini,主控芯片采用小钢炮开发板,上面集成了stm32f401,BlueNRG,陀螺仪,加速度计,磁力计,温度计,湿度计,压强计,TF卡槽。电机驱动是TB6612,语音芯片采用WM8978,测距我想采用VL53L0,目前这款芯片现在还未量产。 小车主要是由一块小钢炮开发板、一块PCB板、一块STA350BW语音板、三个舵机、小车支架组成,相关物料见“相关文件”下载。舵机粘在了面板上,将语音板粘在舵机上,喇叭粘在语音板上,所有的接线全是用细线焊接出来的,实在是不好看呢。其中还需要将LED灯拆下,因为语音的IIC使用的是PB3与PB10,并没有使用板子留出的IIC,PB3正好是LED灯的接口,IIC这里需要注意加一个上拉电阻,不加也可以,不过偶尔会出现干扰的情况。 注意:上面的电源模块需要先调好5V电压然后才焊接上去。如果没有使用舵机和语音那么下面的6V电压模块就可以不焊接了。视频演示:主要文件: STM32端源码使用KEIL5打开,主要文件及功能如下: 代码运行流程: 整个代码分为两个部分,一个是被操作系统接管的部分,一个是独立与操作系统的部分。独立于操作系统的部分主要是用来控制小车直立,主要是出于实时性的考虑。被操作系统接管的部分,主要是为了享受操作系统带来的便利。 先来看看独立于操作系统的部分,这里主要是由两个中断驱动的,IMU配置为fifo模式,阈值设为6,开启中断,IIC使用DMA传输,开启中断。因此流程为IMU的fifo充满6个12位数据触发外部引脚中断,在中断函数中利用IIC的DMA读取,读取完进入IIC中断,中断函数中处理数据,并进行小车控制。这里的中断不想让操作系统接管,主要原因是为了增强实时性,同时也使得系统变得简单。 (Tips:IMU的IIC频率可以设置为1MHz,IMU的pulling模式读取数据需要将CTRL3_C寄存器中的BDU位置1,不然会有小概率出现错值) 操作系统部分,初始化函数在on_ready();都是直接初始化,蓝牙的初始化在有专门在初始化任务执行,这是因为蓝牙的初始化会有SPI引脚中断,而由于SPI是非可重入函数,这里做了互斥量所以这里SPI中断被操作系统接管了。任务包括:蓝牙接收任务,蓝牙发送任务,音乐播放任务(当无TF不会初始化),音乐播放控制任务(当无TF不会初始化),LED闪烁任务(当有TF时时不会初始化),电压发送函数,主函数任务,SPI中断任务,蓝牙初始化任务,任务的初始化后都有注释。以后也许还会有更多的任务。蓝牙数据协议: JUMA的蓝牙包将原本20字节的数据变成了1字节的type,1字节长度,18字节的数据。本协议中type发送与接收永远都是1,这里可以理解为数据帧头吧,然后长度的这一字节没有用到,怕不准,因为AndroidSDK发送是1字节type,后面接着数据,长度自动计算出来的,这个并不可靠。然后后面18个字节的数据,第一个字节是数据的ID,因为从APP发送过来的数据类型相当多(目前有7个),所以需要将数据都一一编号,这就是ID的作用了,除了数据ID有宏定义,还有数据的长度,这个主要是用来更加准确解码数据,中间的数据因为类型不同解码方式也不同,在宏定义处有解释,数据最后一位是CkeckSum。小车控制: 控制采用的传统的PID控制,直立采用PD控制,解算出来的角度乘以P,然后直接用陀螺仪的值乘以D,速度采用PI控制,速度差乘以D,速度的积分乘以I,这里需要将积分限幅限得相当的小,不然前进时需要小车停止,小车会向前运行一段距离然后退回到之前需要停止的点。转向就是其中一个电机加上一定的PWM值,另一个电机减去相同量的PWM值。APP的转向控制分两种情况,一种是普通模式的转向控制,一种是朝向模式的转向,朝向模式就是APP虚拟摇杆的方向或者手机的姿态就是小车运行的方向,普通模式就是给定一个转向的速度一直不停的旋转。操作模式也分为两种,一种是使用摇杆,一种是使用手机的姿态,所以两两相乘就产生了四种控制模式。三个控制直接线性融合,其中速度和直立控制的周期不同,速度控制为50ms,其实速度是对直立控制的一种干扰,所以周期需要设置的长一些。小车姿态解算: 小车使用了两个姿态解算,一个是使用6轴Mahony算法解算出Pitch,一个是9轴Mahony用来解算Yaw,这也就是为啥我会觉得小车没用啥高深的技术和算法的主要原因了,等小车硬件稳定后,会仔细研究姿态解算算法和控制算法。总结: 小车没有用到什么高深的技术和算法,全部开源,包括PCB源文件,STM32源文件,Android端源文件,物料采购推荐,所有文件都在“相关文件”下载。大家只需要购买好相关的物料,打板焊接好烧录程序即可,好像小钢炮淘宝网站中也有整车购买,建了个QQ群:187045895,欢迎加入。
    来自:智能车时间:2017-06-09 蓝牙小车 手机遥控
  • 【续】手机遥控蓝牙平衡小车V1.1资料开源

    声明:该设计资料转自lb8820265网友分享,仅供学习参考,不可用于商业用途。继电路城之前该小车资料,手机遥控蓝牙平衡小车V1资料全部开源(http://www.cirmall.com/circuit/6201/detail?3),现介绍该蓝牙平衡小车V1.1(BlueNRG+虚拟摇杆)开源设计(http://www.cirmall.com/circuit/6202/detail?3)。前面介绍了基于CC2541的蓝牙模块平衡小车,之前BlueNRG由于损坏所以才采用CC2541,这次又得到了一块BlueNRG,现在集齐三块ST的模组可以召唤神龙了,之前预留了BlueNRG的6个接口,所以只需要直接将扩展板插在传感器板上就可以了,然后再增加一点高度。这里主要是虚拟的摇杆的实现,详细“相关文件”下载视频演示:CC2541模块厂家已经写好相关代码使其变成一个透传模块,而BlueNRG是需要自己写好代码的,不过好在ST已经有了例程,而且也是使用STM32F4来驱动,这就大大的方便了开发,BlueNRG相关工具和软件下载地址:http://www.st.com/web/en/catalog/tools/PF261442点击最下面download。进入X-CUBE-BLE1\Projects\Multi\Applications\SampleApp,这是一个简单的使用蓝牙对话的例程,可以直接烧到STM32F411板子中查看效果,打开手机蓝牙搜索,可以搜索到BlueNRG_Chat的蓝牙,连接就后可以发送和接收数据了,查看工程中的代码也是十分简单的,有详细的注释,初始化之后,就是两个函数HCI_Process()与User_Process(),第一个函数用来处理各种事件,第二个是用户函数里面是一个监听按键并发送的函数。数据的收取主要是在ample_service.c中case EVT_BLUE_GATT_ATTRIBUTE_MODIFIED:和case EVT_BLUE_GATT_NOTIFICATION:两个事件中,第一个用来接收数据,第二个用来接收通知信息。 另一个重要的改进是添加了虚拟摇杆,可以在虚拟摇杆与SEEKBAR之间切换,同时简化了界面,如下图所示:更新:修复复杂环境下搜索BLE崩溃BUG,采用JUMA SDKAndroid源代码:https://github.com/flyloong/NUCLEO_Balance_Car_AndroidSTM32F411源代码:https://github.com/flyloong/NUCLEO_Balance_Car_STM32
    来自:智能车时间:2017-06-09 蓝牙小车 手机遥控 bluenrg
销量
211
查看
2733
参数名 参数值
发布于 2017 年 06 月 09日
Moore8直播课堂