---
# System prepended metadata

title: Onboarding Meeting (1/26/22)

---

# Onboarding Meeting (1/26/22)

## Software
- Went over the wiki for a non-technical overview of the parts we're working on

[*System Overview from the wiki*](https://wiki.purduearc.com/wiki/robot-arm/software#system-overview)

![](https://i.imgur.com/dvJrgXx.png)


### High level (Behavior Planning box)
**What should the robot do next?** 

Pick up a chess piece? Place it? What piece and what square? This is the job of the high level behavior planner.

Uses a "behavior tree" to represent the next states.

Interfaces with the chess engine to get the next chess move and the chessboard detection module to determine the actual state of the chessboard

**Status**: Not implemented yet
**Difficulty**: Intuitive to understand, no coding required to build one, using the https://github.com/BehaviorTree/Groot library

**Interested**?
- Ellis Lacy <ehlacy@purdue.edu>
- <add your name>


### Planning/Control

This part is easy for us humans. Its the part we don't think about. Just picking up the chess piece and moving it according to whichever move you thought of.

For a robot, it's a few more steps, we need to 

1. Use our vision system to determine a location in 2D space on the board where the piece is
2. Determine a "configuration" of our robot arm(i.e set of joint angles $[\theta_1,\theta_2,..]$) that result in the mouth of the gripper to be at the chess piece
3. Determine a "path" (array of joint angles each at a time $t$) for our robot arm to take to go from the current configuration to our new configuration, while handling constraints like avoiding other pieces, taking an "optimal" path
4. Executing the path in the real world
5. Grasping the chess piece

**Status**: In-progress
**Difficulty**: Not for beginners, need to have coding experience (python is fine) and preferrably some exposure to terminal, working with images, little bit of ROS but not required

**Interested**?
- <add your name>

## How to get started
1. You can type in these notes, add your name to an area you're interested in working on
2. Read the [wiki](https://wiki.purduearc.com/wiki/robot-arm/software) and read up on some of the prerequisites, make sure to ask questions you get
3. Talk with @Raghava on Discord or at a meeting and we'll setup some further steps to get you setup to contribute
    
## Hardware

This semester: Manufacturing and assembly a new robot arm (MOVEO robot arm)

Currently on pause as we're moving into a new space of BIDC, so 3D printers are not set up. 
    
There is CAD design work around adding a 6th degree of freedom to the new arm that we're building led by Anoop. Can check in with him at the Sunday meeting.
    
**Interested**?
- <add your name>






