# Simba-ELCT-FrameWork


<table>
<tr>
<td><img src="https://git.simba-robotics.com/assets/img/logo.svg" width = "200" height = "200" alt="Simba-git" /></td>
<td><img src="https://git.simba-robotics.com/avatars/cd8e5bc7a1039e1cbadabefe03e647af1bbbd8722d659d437479b93c8c6fa799?" width = "200" height = "200" alt="ELEC" /></td>
</tr>
</table>

[![Author](https://img.shields.io/badge/Author-LSMushui-orange.svg)](https://gitee.com/LSMushui)
![language](https://img.shields.io/badge/language-C-blue.svg)
![license](https://img.shields.io/badge/license-GPLv3-green.svg)


## 简介

> Simba自己的C板电控框架！

本项目的计划是基于 **DJI C型开发板** 的基础上打造一个更适合Simba同学们的代码框架

本框架致力于实现不同类型的机器人的代码通用化，只需要选择底盘云台的类型，修改一下对应物理参数即可实现对机器人的适配

本分支为Arm-GCC分支，即使用GCC编译器编译，目前仅为测试分支

## 配套套件

> 上位机，ROS接口待开发

## 模块支持

详细信息请参考 [Simba-ELCT-FrameWork文档](./doc/framework.md)

### 主要模块

- **Robot cmd**\
  机器人控制模块：
  - [ ] 大疆电机
  - [ ] 达妙电机
  - [ ] 瓴控电机
  - [ ] 小米电机
  - [ ] 超级电容控制板
  - [ ] 板间通信(CAN)
  - [ ] PWM 控制舵机
  - [ ] PWM 控制气泵
- **Chassis**\
  底盘模块：
  - [ ] 麦轮底盘
  - [ ] 全向轮底盘
  - [ ] 舵轮底盘
  - [ ] 平衡底盘
- **Gimbal**\
  云台模块：
  - [ ] yaw-pitch 直连云台
  - [ ] yaw直连-pitch丝杆 云台
  - [ ] yaw-pitch 丝杆云台
- **Shoot**\
  发射机构模块：
  - [ ] 摩擦轮+拨弹盘
  - [ ] 摩擦轮+弹鼓+推杆
- **Communication**\
  通信模块：
  - [ ] 板间通信(CAN2)
  - [ ] 上下位机通信
- **Music**\
  音乐模块：
  - [ ] 开机声
  - [ ] 报错音
  - [ ] 裁判系统接入提示音
  - [ ] 《卡农》
  - [ ] 《天空之城》
  - [ ] 《恭喜发财》
  - [ ] 《好运来》
  - [ ] 《See You Again》
  - [ ] 《Unity》
  - [ ] 《你》

## 开发工具

本项目使用HAL库编写，通过CubeMX生成项目，使用FreeRTOS

使用VSCode作为代码编辑器，GCC编译器进行编译，Ozone进行调试



## 欢迎贡献

如果你发现了本项目中的问题和可优化的点，可用创建issue进行讨论

并且fork本项目后提交pr来贡献你的代码

我们的管理员审核后会将你的代码合并进来

> ***贡献代码时请参照 [注意事项](./doc/注意事项.md/#贡献代码) 中的贡献代码部分。***
>
> 编写代码时参考[API](./doc/API.md)

## 开发日志

[LOG.md](./doc/LOG.md) 记录了大家在开发过程中的各种奇思妙想和经验。多翻一翻或许能发现惊喜哦。大家有什么想法也都可以往里面写

[API.md](./doc/API.md) 为开发过程中所使用的模块接口标准，若在编写代码时发现代码与标准冲突，基于本标准修改代码

## 后续计划

具体要做的事情在[TODO](./doc/TODO.md)中

## 致谢

感谢各个战队的代码开源，所有本框架涉及到的主要的参考资料位于[reference.md](./doc/reference.md)

## 附录

本文的详细补充内容写在 [附录](./doc/appendix.md) 中

如发现本项目中的问题，请添加至[问题列表](./doc/questions.md)并与相关负责人联系，如果有解决方案可以提交pull request

## 通讯信息

- 作者 `连山木水` 微信：18088745066 QQ：1194309310
