# Robot **Repository Path**: xiao_peipei/robot ## Basic Information - **Project Name**: Robot - **Description**: 五连杆平衡机器人 - **Primary Language**: Unknown - **License**: AFL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2024-07-17 - **Last Updated**: 2024-11-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # RobotEsp32C3控制程序 ## 感谢 @up 遥想星空 【开源啦!】[无刷轮腿平衡机器人](https://www.bilibili.com/video/BV1bP411k75b/?spm_id_from=333.337.search-card.all.click&vd_source=9d95c1487b6090af7b16dae01fb230ae). 开源链接 Gitee:https://gitee.com/skythinker/foc-wheel-legged-robot @up 韭菜的菜_ [RoboMaster平衡步兵机器人控制系统设计](https://www.bilibili.com/video/BV15W4y1i7Sf/?spm_id_from=333.788&vd_source=9d95c1487b6090af7b16dae01fb230ae) 知乎:[五连杆运动学解算与VMC](https://zhuanlan.zhihu.com/p/613007726) 知乎:[RoboMaster平衡步兵机器人控制系统设计](https://zhuanlan.zhihu.com/p/563048952) 知乎:[Mahony姿态解算算法笔记(一)](https://zhuanlan.zhihu.com/p/342703388) ## 程序 | APP | 说明 | 使用 | | -------------------- | -------------------- | -------------------- | | atkp | 匿名上位机通讯库 | 上传数据给匿名上位机,支持通过eps32遥控器wifi透传数据,可在线调参。支持usb接口直接上传数据,在线调参。 | | control | 控制相关的库 | pid和低通滤波算法 | | ledseq | 序列灯控制库 | 模拟操作系统,添加序列灯任务给灯执行函数,实现序列灯按照添加任务的方式,运行以给定的周期运行给定时间 | | MPU6050 | mpu6050驱动库 | 使用Monkey算法进行姿态解算(详见上面知乎链接) | | MyCan | Can通信库 | 负责与底层电机通信(角度 速度 灯控制 数据) | | robots | 平衡控制 | matlab导出的lqr等控制 | | WIFI | WIFI驱动库 | 一个sta client模式和ap server模式 | | mlog | debug输出库 | 负责debug调试,包含printf函数的实现 | | uart | 串口库 | esp32c3该用了usb实现串口 | ## robot.h配置 有三个宏定义 (1、mpu6050采样率 2、是否使用WIFI 3、CAN接受数据时不立刻进行倍率转换,降低算力) (算力是有点不够的,wifi上传数据时,速度会慢很多) // 默认1khz 但是算力应该是不太够 500hz时需要重新调节参数 #define MPU6050_500HzSample // #define WIFI_REMOTER #define FAST_CALA ## robots/motor_config.h配置 1、电机输出电压和力矩之间的增益配置 GAIN_M1_TO_M2 宏定义 (我买的4010电机有两个电机力矩小了3/4,需要修正增益) 2、支持角度控制,底层关节电机角度控制,平衡板输出控制角度以及轮子需要的力矩 3、距离控制/ 速度控制(速度控制还未做) (void set_angle_mirror(float angle)) ## 问题 * A 电机力矩不够,不能控制腿长超过0.075左右 * B 程序较简单,未做正常起立以及支持力检测