【平衡小车】学习日志(十)

本文介绍了如何使用安卓端的【BluetoothElectronics】蓝牙控制软件,通过创建自定义界面实现小车的前进后退、转向等运动控制。文章详细描述了蓝牙命令设置和遇到的问题及解决方法,包括PID参数调整。
摘要由CSDN通过智能技术生成
完善:在手机移动端通过蓝牙对小车运动进行控制
我这里使用了安卓端的蓝牙控制软件【Bluetooth Electronics】
//Written by keuwlsoft——author website( www.keuwl.com )
  • 此上位app可以创建自己的控制界面,选取控件进行蓝牙远程操控
  • 根据蓝牙部分的程序设置相应的控件参数,可以实现大量的功能,甚至能远程调参
本次调试只在程序中设置了几个简单的功能(前进后退等运动控制),后续还可以基于软件的高度自由化进行功能完善

主页面

  • 左上角——软件的基本信息、作者信息、导入控制器模板
  • 顶部——蓝牙连接情况
  • 右上角——蓝牙连接配置
  • Edit——点击设置控制面板
  • Run——运行

面板配置

  • 右边可以为面板选择不同的控制方式——文本、按键、开关等
  • 在下拉栏中选中控制方式置入面板中

点击按键可Edit编辑具体数据控制

如图:
  • 按下按键时——发送二进制数据【0x41】(十进制数据【65】)(ASCII码【A】),使小车前进
  • 松开按键时——发送二进制数据【0x5A】(十进制数据【90】)(ASCII码【Z】),使小车停止
//蓝牙控制命令
u8 Fore,Back,Left,Right;
void BluetoothCMD(int Uart_Receive)
{
    switch(Uart_Receive)
        {
            case 90://停止 Z
                Fore=0,Back=0,Left=0,Right=0;
                break;
            case 65://前进 A
                Fore=1,Back=0,Left=0,Right=0;
                break;
            case 72://左前 H
                Fore=1,Back=0,Left=1,Right=0;
                break;
            case 66://右前 B
                Fore=1,Back=0,Left=0,Right=1;
                break;
            case 71://左转 G
                Fore=0,Back=0,Left=1,Right=0;
                break;
            case 67://右转 C
                Fore=0,Back=0,Left=0,Right=1;
                break;
            case 69://后退 E
                Fore=0,Back=1,Left=0,Right=0;
                break;
            case 70://左后,向右旋 F
                Fore=0,Back=1,Left=0,Right=1;
                break;
            case 68://右后,向左旋 D
                Fore=0,Back=1,Left=1,Right=0;
                break;
            default://停止 Z
                Fore=0,Back=0,Left=0,Right=0;
                break;
        }
}
//依照小车行进方向代码部分进行蓝牙控制按键Edit编辑
注意:小车的前进后退具有一定惯性,即使松开按键也会沿之前的方向行进一小段距离

蓝牙连接

  • 选择蓝牙连接方式
从左到右依次为:经典蓝牙Bluetooth Classic、低功耗蓝牙Bluetooth Low Energy、USB连接
此处选择【经典蓝牙Bluetooth Classic】
  • Discover寻找新的蓝牙设备,将之前使用AT有线连接配置好的蓝牙模块加入已知列表
  • 在Paried Devices中选择自己的设备(我的小车蓝牙模块叫PrayMe)
连接好了之后即可在【主页面】顶部看到设备已连接,这时就可以选择刚刚自定义配置好的面板运行以完成蓝牙控制功能

改进问题:
1、前进后退时会有回到原地的趋势较大
  • 解决方法:加大【速度环】控制
2、转向后有左右轻微抖动蓝牙控制APP
  • 解决方法:减小【转向环】控制
修改后的PID参数如下:
#define BLC_KP 230        //直立环Kp
#define BLC_KD 0.7        //直立环Kd
#define SPD_KP -110    //速度环Kp
#define SPD_KI -0.55    //速度环Ki
#define TURN_KP -30    //转向环Kp
#define TURN_KD -0.42    //转向环Kd

测试视频


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值