Skip to content
master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
lib
 
 
 
 
 
 
 
 
 
 
 
 

dcpctrl_v2


Overview

dcpctrl_v2 contains software developed for interfacing with & controlling the Digital Construction Platform (DCP). It is the second iteration of software for the DCP. The first iteration (contained in the mdcp repo) relied on the LabJack T7 for interfacing with the AT40GW and KUKA, and ran in standard MATLAB scripts and functions. This iteration is based more heavily in Simulink, and takes advantage of Simulink's real-time capabilities (particularly Simulink Desktop Real-Time) to implement hard(er) real-time controllers.

This software is being developed during academic year 2016-2017 by the Mediated Matter Group at the MIT Media Lab.

Style guide:

We vaguely follow https://sites.google.com/site/matlabstyleguidelines/

Structure:

dcpctrl_v2/
	apps/ -- All applications to run DCP. Contains both online (Simulink) and offline (MATLAB) tools
	
	data/ -- Location to store data generated by programs. Do not commit data to repository unless you have a very good readson - this folder should be generally regarded as a temp folder.
	
	experimental/ -- Sandbox location for storing small, personal projects. Not indexed by init. If something is getting larger than one or two files, create a branch.	

	lib/ -- Core libraries for DCP operation.
		rvctools/ -- Peter Corke's Robotics Toolbox (http://petercorke.com/wordpress/)
		
	robots/ -- Device-specific libraries & functions. Also contains DCP robot description file, config_dcpv2.m
		at40gw/
		kuka/
		
	template/ -- Templates for various software (Simulink Desktop Real-Time models, etc.)
	
	util/ -- Non-robot-specific utility functions

Basic Usage:

To successfully use dcpctrl_v2, you need a DCP. Good luck!

Once you have a DCP, the general procedure for using code in this library is:

  • Run init to set up environment
  • Create waypoints and task-space trajectory from input file using program like img2vecttoolpath or img2rasttoolpath (/apps/wayptgen/img2lightpainting)
  • Create joint-space trajectory from task-space trajectory using converter like xtraj2qtraj (/apps/trajgen/)
  • Create Simulink timeseries trajectory from joint-space trajectory using converter like qtraj2slxtraj (/apps/controller/at40_pctrl)
  • Execute trajectory with controller like at40_pctrl (/apps/controller/at40_pctrl)

Contact:

Please contact Julian Leland (jleland(at)mit(dot)edu) with questions or comments.

About

Code developed 2016-2017 to control the second iteration of the Digital Construction Platform.

Resources

Releases

No releases published

Packages

No packages published

Languages