Skip to content

Commit acf79e7

Browse files
authored
Add Robotics Project Master Guide
- Add Robotics Project master guide - Add support for MermaidJS diagrams - Add content to topic stub pages
1 parent 2c2d256 commit acf79e7

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

76 files changed

+18014
-61
lines changed

.ruby-version

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2.7.8
1+
3.2.2

Gemfile

+1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ end
1313

1414
gem "nokogiri", ">= 1.10.8"
1515
gem "kramdown", ">= 2.3.0"
16+
gem 'webrick', "~> 1.7"
1617
gem "minimal-mistakes-jekyll"
1718

1819

Gemfile.lock

+2
Original file line numberDiff line numberDiff line change
@@ -267,6 +267,7 @@ GEM
267267
unf_ext
268268
unf_ext (0.0.9.1)
269269
unicode-display_width (1.8.0)
270+
webrick (1.9.0)
270271

271272
PLATFORMS
272273
ruby
@@ -281,6 +282,7 @@ DEPENDENCIES
281282
kramdown (>= 2.3.0)
282283
minimal-mistakes-jekyll
283284
nokogiri (>= 1.10.8)
285+
webrick (~> 1.7)
284286

285287
BUNDLED WITH
286288
2.1.4

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ The Robotics Knowledgebase makes use of the following:
5454

5555
### Directories
5656
The wiki itself is contained in the `/wiki` folder. The `/docs` folder exists to contain future documentation on contributing and supporting the wiki. The wiki contains the following categories:
57-
- **Actuation**
57+
- **Controls & Actuation**
5858
- Topics related to the moving components including motors and controls.
5959
- **Common Platforms**
6060
- Covers common hardware and software frameworks used in robotics. ROS is included here.

_config.yml

+3
Original file line numberDiff line numberDiff line change
@@ -165,6 +165,9 @@ kramdown:
165165
toc_levels: 1..6
166166
smart_quotes: lsquo,rsquo,ldquo,rdquo
167167
enable_coderay: false
168+
parse_block_html: true
169+
syntax_highlighter_opts:
170+
disable: true
168171

169172

170173
# Search

_data/navigation.yml

+22-3
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,26 @@ wiki:
99
- title: Wiki Index
1010
url: /wiki/
1111
- title: Contribute
12-
url: /docs/
12+
url: /docs/index/
13+
- title: Robotics Project Guide
14+
url: /wiki/robotics-project-guide/master-guide/
15+
children:
16+
- title: Define your goals and requirements
17+
url: /wiki/robotics-project-guide/define-your-goals-and-requirements/
18+
- title: Choose a robot
19+
url: /wiki/robotics-project-guide/choose-a-robot/
20+
- title: Make a robot
21+
url: /wiki/robotics-project-guide/make-a-robot/
22+
- title: Choose a language (or languages)
23+
url: /wiki/robotics-project-guide/choose-a-language/
24+
- title: Robot communication
25+
url: /wiki/robotics-project-guide/choose-comm/
26+
- title: Choose a simulator
27+
url: /wiki/robotics-project-guide/choose-a-sim/
28+
- title: Test and debug your robot
29+
url: /wiki/robotics-project-guide/test-and-debug/
30+
- title: Demo day!
31+
url: /wiki/robotics-project-guide/demo-day/
1332
- title: System Design & Development
1433
url: /wiki/system-design-development/
1534
children:
@@ -120,7 +139,7 @@ wiki:
120139
url: /wiki/sensing/azure-block-detection/
121140
- title: DWM1001 UltraWideband Positioning System
122141
url: /wiki/sensing/ultrawideband-beacon-positioning.md
123-
- title: Actuation
142+
- title: Controls & Actuation
124143
url: /wiki/actuation/
125144
children:
126145
- title: Motor Controller Feedback
@@ -365,7 +384,7 @@ docs:
365384
- title: Wiki Index
366385
url: /wiki/
367386
- title: Contribute
368-
url: /docs/
387+
url: /docs/index/
369388
- title: Contribute
370389
children:
371390
- title: Introduction

_includes/mermaid.html

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
<script src="https://unpkg.com/[email protected]/dist/mermaid.min.js"></script>
2+
<script>
3+
$(document).ready(function () {
4+
mermaid.initialize({
5+
startOnLoad:true,
6+
theme: "default",
7+
});
8+
window.mermaid.init(undefined, document.querySelectorAll('.language-mermaid'));
9+
});
10+
</script>

_includes/scripts.html

+12
Original file line numberDiff line numberDiff line change
@@ -51,3 +51,15 @@
5151
});
5252
</script>
5353
{% endif %}
54+
55+
<script src="https://unpkg.com/[email protected]/dist/mermaid.min.js"></script>
56+
<script>
57+
$(document).ready(function () {
58+
mermaid.initialize({
59+
startOnLoad:true,
60+
theme: "default",
61+
});
62+
window.mermaid.init(undefined, document.querySelectorAll('.language-mermaid'));
63+
});
64+
</script>
65+

about.md

+1
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ To accelerate the development of both projects and individual skills, we need an
1414
*This* is that knowledge base. Here, you will find guidance on the full spectrum of our field.
1515

1616
### Where should I start?
17+
This wiki is meant for people in various stages of their career, including absolute beginners. If you are just starting out in robotics, we recommend you to start from [Robotics Project Guide](wiki/robotics-project-guide/master-guid). This tutorial talks about what to consider and plan for in each step of a robotics project and provides ample resources.
1718

1819
### How can I contribute?
1920

Loading
Loading
2.41 MB
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading
Loading

docs/index.md

+3-1
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,9 @@ The Robotics Knowledgebase makes use of the following:
8080

8181
### Directories
8282
The wiki itself is contained in the `/wiki` folder. The `/docs` folder exists to contain future documentation on contributing and supporting the wiki. The wiki contains the following categories:
83-
- **Actuation**
83+
- **Robotics Project Guide**
84+
- Overall guide on start-to-end for robotics projects.
85+
- **Controls & Actuation**
8486
- Topics related to the moving components including motors and controls.
8587
- **Common Platforms**
8688
- Covers common hardware and software frameworks used in robotics. ROS is included here.

wiki/actuation/__all_subsections.md

+1,077
Large diffs are not rendered by default.

wiki/actuation/index.md

+51-4
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,53 @@
11
---
2-
date: 2017-09-13
3-
title: Actuation
2+
date: 2024-12-05
3+
title: Controls & Actuation
44
---
5-
**This page is a stub.** You can help us improve it by [editing it](https://github.com/RoboticsKnowledgebase/roboticsknowledgebase.github.io).
6-
{: .notice--warning}
5+
<!-- **This page is a stub.** You can help us improve it by [editing it](https://github.com/RoboticsKnowledgebase/roboticsknowledgebase.github.io).
6+
{: .notice--warning} -->
7+
8+
The "Controls & Actuation" section provides a detailed guide to implementing and understanding a range of actuation and control methodologies essential for robotics and automation. Topics span from high-level motion planning to low-level motor controllers, helping engineers bridge the gap between conceptual design and physical motion. The section includes insights into both theoretical foundations and practical implementations.
9+
10+
## Key Subsections and Highlights
11+
12+
- **[Drive-by-wire Conversion for Autonomous Vehicles](/wiki/actuation/drive-by-wire/)**
13+
Explains the principles and types of drive-by-wire systems, including throttle-by-wire, brake-by-wire, and steer-by-wire, and their role in modern autonomous vehicles.
14+
15+
- **[Linear Actuator Resources and Quick Reference](/wiki/actuation/linear-actuator-resources/)**
16+
A comprehensive overview of linear actuation systems, covering linear guides, belt drives, screw systems, and rack-and-pinion setups.
17+
18+
- **[Model Predictive Control Introduction and Setup](/wiki/actuation/model-predictive-control/)**
19+
Discusses Model Predictive Control (MPC), its benefits, and implementation in robotics for handling constraints in multi-input, multi-output systems.
20+
21+
- **[Motor Controller with Feedback](/wiki/actuation/motor-controller-feedback/)**
22+
Introduces motor controllers with encoder feedback, highlighting the Pololu Jrk 21v3 USB Motor Controller as an example.
23+
24+
- **[MoveIt Motion Planning and HEBI Actuator Setup and Integration](/wiki/actuation/moveit-and-HEBI-integration/)**
25+
Outlines using MoveIt in ROS for robotic motion planning and integrating it with HEBI actuators for hardware execution.
26+
27+
- **[PID Control on Arduino](/wiki/actuation/pid-control-arduino/)**
28+
Explains implementing PID control on Arduino platforms, including tips for tuning and integrating Kalman filters for noisy sensors.
29+
30+
- **[Pure-Pursuit Based Controller for Skid Steering Robots](/wiki/actuation/Pure-Pursuit-Controller-for-Skid-Steering-Robot/)**
31+
Covers the Pure-Pursuit algorithm for trajectory tracking in skid-steering robots, including implementation steps and constraints.
32+
33+
- **[Task Prioritization Control for Advanced Manipulator Control](/wiki/actuation/task-prioritization-control/)**
34+
Details task prioritization control for robotic manipulators to manage redundant degrees of freedom and prioritize multiple simultaneous tasks.
35+
36+
- **[Using ULN 2003A as a Motor Controller](/wiki/actuation/uln2003a-motor-controller/)**
37+
Explains how the ULN 2003A Darlington Array can be used as a motor controller for low-power motors and relays.
38+
39+
- **[Vedder Open-Source Electronic Speed Controller](/wiki/actuation/vedder-electronic-speed-controller/)**
40+
Highlights features and advantages of the Vedder ESC, an open-source electronic speed controller for brushless DC motors.
41+
42+
## Resources
43+
44+
- [Drive-by-wire System Overview](https://carbiketech.com/drive-by-wire-technology-working/)
45+
- [Linear Motion Components - Misumi](https://us.misumi-ec.com/)
46+
- [Model Predictive Control - MATLAB Guide](https://www.mathworks.com/videos/series/understanding-model-predictive-control.html)
47+
- [Pololu Jrk 21v3 USB Motor Controller](https://www.pololu.com/product/1392)
48+
- [MoveIt Tutorials for ROS](https://ros-planning.github.io/moveit_tutorials/)
49+
- [Arduino PID Library](http://playground.arduino.cc/Code/PIDLibrary)
50+
- [Task Priority Control - Robotics Journal](https://journals.sagepub.com/doi/10.1177/027836498700600201)
51+
- [Pure-Pursuit Algorithm Reference](https://www.ri.cmu.edu/pub_files/pub3/coulter_r_craig_1992_1/coulter_r_craig_1992_1.pdf)
52+
- [ULN 2003A Documentation](https://www.ti.com/lit/ds/symlink/uln2003a.pdf)
53+
- [Vedder ESC Project](http://vedder.se/2015/01/vesc-open-source-esc/)

0 commit comments

Comments
 (0)