5.39 综合案例2.0 - STM32蓝牙遥控小车3(摇杆控制)

最新案例教程点击下方链接跳转,CSDN已停止更新

点击跳转HaaS506官方最新案例







成品展示

用python开发板和stm32制作一个摇杆控制蓝牙全向智能车,源码开放

案例说明

用STM32单片机做了一辆蓝牙控制的麦轮小车,分享一下小车的原理和制作过程。
控制部分分为手机APP,语音模块控制,Haas506开发板(遥感 + 体感)控制三种。
本文介绍Haas506(遥感)控制的方法以及小车的制作。

器件说明

器件数量说明
STM32F103C8T6单片机开发板1使用5V供电
L298N电机驱动2只能控制电机正反转,要调节速度,每个模块使用4路PWM,案例总共需要8路PWM
MLT BT05蓝牙模块1与Haas506-320开发板进行蓝牙连接,需要5V供电
0.96寸OLED显示屏1用于显示蓝牙接收的消息
4电机加底座1普通TT小电机,需要5V以上供电
麦克纳姆轮4
Haas506-320开发板1利用开发板自带的蓝牙连接并控制蓝牙小车
PS2摇杆模块1检测摇杆x、y轴用于控制小车。

小车连线

  • 器件连线
    在这里插入图片描述
  • 麦轮安装方向
    在这里插入图片描述

小车源码

代码思路结构、

  • 源码见ESP32蓝牙遥控小车3(摇杆控制)
  • L298N电机驱动模块只能控制电机正反转,原理:2路引脚分别控制电机正负极,正极高电平,负极置零,电机正传;反之反转。
  • 为了控制小车速度,这里总共使用了8路PWM来控制每个 L298N电机驱动模块的引脚,每个电机使用2路PWM控制,如果需要正传,正极占空比调高,负极占空比调零。在这里插入图片描述

PS2摇杆手柄

用ADC读取PS2模块的X、Y轴数据,将ADC数据转化为范围在(-10~10)内的数据,用于控制小车的速度与方向。
请添加图片描述

遥控连线

用ADC采集PS2S的模拟信号值
在这里插入图片描述

摇杆代码

代码见ESP32蓝牙遥控小车3(摇杆控制)

  • 代码需要更改蓝牙名称。Haas506作为主机去扫描蓝牙小车,搜索蓝牙名称进行连接。
    在这里插入图片描述
  • ADC采集的原始数据最大值3200左右,需要转化为如下数值范围。如果代码数值有误差需自行调整。
  • 坐标最后输出格式必须以 ‘ * ’作为结尾举例 X10Y-5*
    在这里插入图片描述
  • 0
    点赞
  • 42
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: STM32F103C8T6是一款常用的单片机开发板,采用Cortex-M3内核,具有丰富的外设资源和强大的处理能力。它拥有高性能的时钟系统、多个通信接口和大容量的闪存存储器,可以满足各种应用场景的需求。 MPU6050是一款常用的九轴传感器模块,集成了3轴加速度计和3轴陀螺仪。它具有高精度、低功耗和小尺寸的特点,适用于姿态控制、运动监测等领域。 使用STM32F103C8T6开发板与MPU6050可以实现许多有趣的应用。首先,通过硬件连接和引脚配置,将MPU6050传感器模块连接到STM32芯片的对应引脚。然后,使用STM32的开发环境进行软件开发,通过编程读取MPU6050的传感数据。 通过读取加速度计数据,我们可以实现姿态检测和运动追踪。比如,可以通过传感器的数据计算物体的倾斜角度,从而实现倾斜控制。同时,通过读取陀螺仪数据,我们可以实现旋转控制和惯性导航。比如,可以通过计算陀螺仪的角速度变化来判断物体的旋转方向和速度。 此外,还可以结合其他模块和外设进行更复杂的应用开发。比如,可以通过串口通信将传感器数据发送到上位机,并使用上位机软件进行数据处理和可视化。另外,还可以通过添加无线通信模块,实现传感器数据的远程监测和控制。 总之,STM32F103C8T6开发板和MPU6050传感器模块的结合,可以为我们带来许多有趣的应用开发和项目实践的机会。无论是项目初学者还是专业工程师都可以通过这个组合进行学习、实验和创作。 ### 回答2: stm32f103c8t6开发板是一种基于ARM Cortex-M3内核的单片机开发板,具有丰富的外设资源和强大的处理能力。它是一种常用的嵌入式开发平台,可用于开发各种应用,如物联网、智能家居以及工业控制等。stm32f103c8t6开发板具有丰富的GPIO、串口、SPI、I2C等接口,方便与其他外设进行通信。 而MPU6050是一种六轴传感器模块,集成了三轴陀螺仪和三轴加速度计。它采用数字式输出,支持通过I2C总线与其他设备进行通信。MPU6050可以用来测量物体的倾斜、角速度和加速度等重要参数。它在姿态测量、飞行控制和动作追踪等领域有广泛的应用。 stm32f103c8t6开发板可以与MPU6050进行连接,并通过I2C总线进行通信。通过读取MPU6050输出的数据,可以得到物体的倾斜角度、旋转速度和加速度等信息。这些数据可以用来进行姿态估计、姿态控制以及动作识别等应用。 使用stm32f103c8t6开发板和MPU6050可以实现很多有趣的项目,比如智能车、平衡车、遥感器、虚拟现实设备等。在这些项目中,stm32f103c8t6开发板可以控制其他外设,收集处理传感器数据,并根据需要对外设进行控制。MPU6050可以提供物体的姿态和动作数据,为控制算法提供输入。这种组合可以帮助我们开发出更加智能、高效的嵌入式系统。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值