User:Muhsin.King

From REU@MU
Revision as of 16:26, 12 June 2015 by Muhsin.King (Talk | contribs)

Jump to: navigation, search


Research Topic

Adviser: Dr. Andrew Williams Working with Matt Morris and the reset of the HEIRlab team, I'm working to implement the software side of a soccer-playing humanoid robot. My job is to achieve constant communication between the robot's controller, a CM-700, and an onboard Linux Mini-PC. While normally this wouldn't be a complicated task, I have to preserve the built-in firmware so that we can utilize RoboPlus motion files, and the default firmware has no support for the kind of direct PC to controller connection we need to establish.

Once I'm finished establishing this link, I will continue to work on other pieces of the project, including high-level decision making protocols based on visual input (on the Mini-PC side) and creating the RoboPlus task files that will initiate motions based on serial inputs.

Assuming we're successful in creating a soccer-playing humanoid, I would then move on to try and adapt the control scheme of the Darwin-OP to our own robot.

Milestones & Goals

1. Design and build a prototype embedded system using CM-700, mini-PC, Robotis servos and mini-PC

2. Port and adapt code to new embedded control system

3. Evaluate system on MU-L8 humanoid

4. Adapt embedded control system to ROS and evaluate

5. Learn to program OP2 vision and motion system.

6. Study the Robotis OP 2 (OP2) humanoid platform hardware and software.

Research Log

Week 1 - June 1-5

Monday

Orientation part 1

Tuesday

Orientation part 2

Wednesday

Familiarized myself with the HEIRlab
Set up workstation

Thursday

Began exploring methods of communicating with the CM-700 microcontroller from a Linux PC
  • Found methods using Embedded C
  • These wipe the factory firmware, which we need
Exploring methods of exporting RoboPlus motion files to C/C++
  • Turns out this is impossible/unsupported by Robotis
  • Moving forward: how to call roboplus files programmatically?
Attempted to explore Darwin OP2 code from source
  • Can't mount files on windows, installing Linux virtualbox

Friday

Found Python code to issue commands to a Bioloid (CM-510) from a Mac
  • Very poorly documented; might not be viable.
  • Can't test, as our LN-101 cable (connects CM-700 to USB) seems to be broken
Set up a Git repository for the HEIR lab Robocup 2015 team

Week 2 - June 8-12

Monday

Waiting for new LN101 cables so I can connect to CM-700
Set up teammate Ryan Walsh with source control
  • Created a Github repository for his vision code
  • Created a git cheatsheet for him so he can maintain it himself
Began designing hardware and software control structure for a soccer-playing robot
  • Hardware: webcam sends image data to Linux, Linux relays commands serially to CM-700, CM-700 actuates motors
  • Software: vision code detects objects, relays commands to Linux controller, Linux controller sends command signals to the CM-700 task file, task file interprets signals and initializes the appropriate motion page
Investigated dynamixel documentation
Investigated further methods of reading data into RoboPlus Task files
  • Zigbee SDK: wireless communication with CM-700
  • Not as good as a wired connection, but more officially supported
Ran through a few RoboPlus tutorials

Tuesday

Still waiting on LN-101 cables
Set up software environments to run the PySerial and Zigbee code
  • Installing dependencies for Mac (Python, PySerial, Tkinter, etc.)
  • Set up Zigbee SDK
Helped teammate deconstruct the old humanoid platform

Wednesday

LN-101s arrived!
  • New issue: LN-101 does not connect correctly
  • Does not automatically install drivers (as on Windows)
  • Found FTDI drivers
  • Not compatible with current version of OSX...
Updated OSX
Setup runtime environment on Linux MiniPC


Thursday

Installed FTDI drivers on Linux
RoboPlus tutorials
Created RoboPlus motion/task files to move a simple motor given a button push (Windows)
RoboPlus troubleshooting
REU group meeting on research presentations

Friday

Created wiki page
New issue: LN-101 doesn't show up in /dev on Linux
Investigated different FTDI drivers
  • VCP vs. D2XX

Week 3 - June 15-19

Monday

Tuesday

Wednesday

Thursday

Friday

Week 4 - June 22-26

Monday

Tuesday

Wednesday

Thursday

Friday

Week 5 - June 29-July 3

Monday

Tuesday

Wednesday

Thursday

Friday

Week 6 - July 6-10

Monday

Tuesday

Wednesday

Thursday

Friday

Week 7 - July 13-17

Monday

Tuesday

Wednesday

Thursday

Friday

Week 8 - July 20-24

Monday

Tuesday

Wednesday

Thursday

Friday

Week 9 - July 27-31

Monday

Tuesday

Wednesday

Thursday

Friday

Week 10 - August 3-7

Monday

Tuesday

Wednesday

Thursday

Friday

-->