Initial tutorial project
This commit is contained in:
@@ -0,0 +1,72 @@
|
||||
# Tutorial Medulla Plugins
|
||||
|
||||
本仓库用于放置最小 Medulla 插件示例,方便从产品化项目中抽离出底盘 IO 与遥控器逻辑。示例不引用 `MDCSToolBox`;其中 `MultiWheelM` 为了使用底盘几何模型,会额外引用 `CommonUsage`。
|
||||
|
||||
## 目录结构
|
||||
|
||||
```text
|
||||
Tutorial/
|
||||
Tutorial.sln
|
||||
DiffWheelM/
|
||||
差速底盘最小 Medulla 插件
|
||||
MultiWheelM/
|
||||
多舵轮底盘最小 Medulla 插件
|
||||
```
|
||||
|
||||
`build/`、`obj/` 和 `.vs/` 是本地构建或调试输出,已在 `.gitignore` 中忽略。
|
||||
|
||||
## DiffWheelM
|
||||
|
||||
`DiffWheelM` 参考 `StandardKivaM`,保留差速底盘最小 IO:
|
||||
|
||||
- `SpeedLeft` / `SpeedRight`: 左右轮下发速度,`AsUpperIO`,超时自动复位
|
||||
- `ActualSpeedLeft` / `ActualSpeedRight`: 左右轮实际速度反馈,`AsLowerIO`
|
||||
- `MaxManualSpeed`: 手动最大轮速初始化参数,默认 `0.3m/s`
|
||||
|
||||
遥控器使用 `Up,Down,Left,Right` 控制前后与转向,`Q,W` 控制速度比例。
|
||||
|
||||
## MultiWheelM
|
||||
|
||||
`MultiWheelM` 参考 `StandardMultiWheelLifterM`,保留多舵轮底盘最小 IO:
|
||||
|
||||
- 四个舵轮速度:`SpeedLeftFront`、`SpeedLeftRear`、`SpeedRightFront`、`SpeedRightRear`
|
||||
- 四个舵轮转角:`ThLeftFront`、`ThLeftRear`、`ThRightFront`、`ThRightRear`
|
||||
- 对应的实际速度与实际转角反馈
|
||||
- `MaxManualSpeed`、`MaxManualAngularSpeed`、`MaxManualTheta` 初始化参数
|
||||
- 舵轮几何参数:`WheelBaseHalfLength`、`WheelTrackHalfWidth`、`WheelAngleLowerLimit`、`WheelAngleUpperLimit`
|
||||
|
||||
遥控器支持普通转向、旋转、横移和斜行几个最小模式:
|
||||
|
||||
- `Up,Down,Left,Right`: 速度摇杆
|
||||
- `Q,W`: 速度比例
|
||||
- `R`: 旋转模式
|
||||
- `C`: 横移模式
|
||||
- `S`: 斜行模式
|
||||
- `A,D`: 车头方向偏置
|
||||
|
||||
当前多舵轮示例使用 `CommonUsage.Chassis.MultiWheelChassis` 做遥控几何分解,不接真实下位机,`MotorRoutine` 会把下发速度/角度镜像到实际反馈变量,便于 Medulla UI 或 Clumsy 侧观察。
|
||||
|
||||
## 构建
|
||||
|
||||
```powershell
|
||||
dotnet build .\Tutorial.sln
|
||||
```
|
||||
|
||||
默认输出目录:
|
||||
|
||||
```text
|
||||
build\Medulla\plugins\
|
||||
```
|
||||
|
||||
## 依赖
|
||||
|
||||
两个插件都只引用:
|
||||
|
||||
- `D:\MDCS\Dependencies\Medulla\RefCartActivator.dll`
|
||||
- `D:\MDCS\Dependencies\Medulla\RefMedullaCore.dll`
|
||||
- `D:\MDCS\Dependencies\Medulla\RefMedulla2.dll`
|
||||
- `D:\MDCS\Dependencies\deps\RefFundamentalLib.dll`
|
||||
|
||||
`MultiWheelM` 额外引用:
|
||||
|
||||
- `D:\MDCS\Dependencies\Commons\CommonUsage.dll`
|
||||
Reference in New Issue
Block a user