From Clothbot
MakerBot: Control System Design, Implementation and Characterization
Time to brush off some of that rusty old control system design knowledge I once majored in.
Goals
My goals will be to:
- Describe the MakerBot thermal, electrical and mechanical system in terms of a state-space model.
- Model said system using the GNU Octave free open-source software (FOSS) suite of tools.
- Design test and measurement criteria and data to generate a set of parameter estimation functions to calibrate the control system model.
- Generate discrete-time state-space octave model.
- Implement discrete-time algorithm using microcontroller or DSP (as required).
The Model
Controllable Parameters
Extruder
- Heater On/Off (PWM control code)
- DC Motor Voltage (PWM control code)
- Nozzle aperture diameter (fixed)
- Incoming filament diameter (fixed)
X Axis
- Stepper Velocity (step rate)
Y Axis
- Stepper Velocity (step rate)
Z Axis
- Stepper Velocity (step rate)
Observable Parameters
Extruder
- Relative Nozzle Temperature (thermistor ADC code)
- Calibrated Nozzle Temperature (thermocouple based digital thermometer)
- Incoming filament position (with encoder wheel/sensor)
- Incoming filament travel (callipers)
- Outgoing filament diameter (callipers)
- Outgoing filament length (callipers)
- Outgoing filament mass (scale)
- Open loop
- Possibly closed loop with build platform integrated weight cells.
X Axis
- Endstop activation
- Position (ruler)
Y Axis
- Endstop activation
- Position (ruler)
Z Axis
- Endstop activation
- Position (ruler)
Variable Definition Table
Global Variables
Subsystem
| Variable
| Units
| Description
|
Global
| Tra
| Celcius
| Room Ambient temperature
|
Build Platform and Chamber
Subsystem
| Variable
| Units
| Description
|
Build Platform
| Vbp
| Volts
| Build Platform, PWM generated voltage through nichrome
|
Tbp
| Celcius
| Build Platform temperature, ADC sampled thermistor
|
Mbp
| grams
| Build Platform mass, including deposited material over time.
|
Build Chamber
| Tbc
| Celcius
| Build Chamber temperature, ADC sampled thermistor
|
Extruder
Subsystem
| Variable
| Units
| Description
|
Extruder
| Vem
| Volts
| Extruder Motor, geared DC, PWM generated voltage
|
θwe
| Degrees
| Rotational Extruder displacement of drive motor shaft.
|
Veh
| Volts
| Extruder Heater, PWM generated voltage through nichrome
|
Ten
| Celcius
| Extruder nozzle temperature, ADC sampled thermistor
|
Dif
| mm
| Input Filament diameter, entering extruder
|
Def
| mm
| Exiting Filament diameter, emerging from nozzle
|
Den
| mm
| Exit Nozzle diameter
|
Motion Control
Subsystem
| Variable
| Units
| Description
|
X Axis
| Vlx
| mm/s
| Linear X velocity
|
Dlx
| mm
| Linear X position
|
θwx
| Degrees
| Rotational X displacement of drive motor shaft.
|
Y Axis
| Vly
| mm/s
| Linear Y velocity
|
Dly
| mm
| Linear Y position
|
θwy
| Degrees
| Rotational Y displacement of drive motor shaft.
|
Z Axis
| Vlz
| mm/s
| Linear Z velocity
|
Dlz
| mm
| Linear Z position
|
θwz
| Degrees
| Rotational Z displacement of drive motor shaft.
|
References
Books
- Digital Control Systems Design
- Modern Control Systems
Online Course Material
Electrical Engineering and Computer Science
Mechanical Engineering
Materials Science and Engineering