MakerBotControlSystem
From Clothbot
(Difference between revisions)
Revision as of 19:18, 7 May 2010 (edit) AndrewPlumb (Talk | contribs) (→Materials Science and Engineering) ← Previous diff |
Current revision (21:23, 8 May 2010) (edit) AndrewPlumb (Talk | contribs) (→References) |
||
Line 68: | Line 68: | ||
* Position (ruler) | * Position (ruler) | ||
** Open loop | ** Open loop | ||
+ | |||
+ | == Variable Definition Table == | ||
+ | |||
+ | === Global Variables === | ||
+ | |||
+ | {| border="1" | ||
+ | ! Subsystem | ||
+ | ! Variable | ||
+ | ! Units | ||
+ | ! Description | ||
+ | |- | ||
+ | |rowspan="1"|Global | ||
+ | |T<sub>ra</sub> | ||
+ | |Celcius | ||
+ | |Room Ambient temperature | ||
+ | |} | ||
+ | |||
+ | === Build Platform and Chamber === | ||
+ | |||
+ | {| border="1" | ||
+ | ! Subsystem | ||
+ | ! Variable | ||
+ | ! Units | ||
+ | ! Description | ||
+ | |- | ||
+ | |rowspan="3"|Build Platform | ||
+ | |V<sub>bp</sub> | ||
+ | |Volts | ||
+ | |Build Platform, PWM generated voltage through nichrome | ||
+ | |- | ||
+ | |T<sub>bp</sub> | ||
+ | |Celcius | ||
+ | |Build Platform temperature, ADC sampled thermistor | ||
+ | |- | ||
+ | |M<sub>bp</sub> | ||
+ | |grams | ||
+ | |Build Platform mass, including deposited material over time. | ||
+ | |- | ||
+ | |rowspan="1"|Build Chamber | ||
+ | |T<sub>bc</sub> | ||
+ | |Celcius | ||
+ | |Build Chamber temperature, ADC sampled thermistor | ||
+ | |} | ||
+ | |||
+ | === Extruder === | ||
+ | |||
+ | {| border="1" | ||
+ | ! Subsystem | ||
+ | ! Variable | ||
+ | ! Units | ||
+ | ! Description | ||
+ | |- | ||
+ | |rowspan="7"|Extruder | ||
+ | |V<sub>em</sub> | ||
+ | |Volts | ||
+ | |Extruder Motor, geared DC, PWM generated voltage | ||
+ | |- | ||
+ | |θ<sub>we</sub> | ||
+ | |Degrees | ||
+ | |Rotational Extruder displacement of drive motor shaft. | ||
+ | |- | ||
+ | |V<sub>eh</sub> | ||
+ | |Volts | ||
+ | |Extruder Heater, PWM generated voltage through nichrome | ||
+ | |- | ||
+ | |T<sub>en</sub> | ||
+ | |Celcius | ||
+ | |Extruder nozzle temperature, ADC sampled thermistor | ||
+ | |- | ||
+ | |D<sub>if</sub> | ||
+ | |mm | ||
+ | |Input Filament diameter, entering extruder | ||
+ | |- | ||
+ | |D<sub>ef</sub> | ||
+ | |mm | ||
+ | |Exiting Filament diameter, emerging from nozzle | ||
+ | |- | ||
+ | |D<sub>en</sub> | ||
+ | |mm | ||
+ | |Exit Nozzle diameter | ||
+ | |} | ||
+ | |||
+ | === Motion Control === | ||
+ | |||
+ | {| border="1" | ||
+ | ! Subsystem | ||
+ | ! Variable | ||
+ | ! Units | ||
+ | ! Description | ||
+ | |- | ||
+ | |rowspan="3"|X Axis | ||
+ | |V<sub>lx</sub> | ||
+ | |mm/s | ||
+ | |Linear X velocity | ||
+ | |- | ||
+ | |D<sub>lx</sub> | ||
+ | |mm | ||
+ | |Linear X position | ||
+ | |- | ||
+ | |θ<sub>wx</sub> | ||
+ | |Degrees | ||
+ | |Rotational X displacement of drive motor shaft. | ||
+ | |- | ||
+ | |rowspan="3"|Y Axis | ||
+ | |V<sub>ly</sub> | ||
+ | |mm/s | ||
+ | |Linear Y velocity | ||
+ | |- | ||
+ | |D<sub>ly</sub> | ||
+ | |mm | ||
+ | |Linear Y position | ||
+ | |- | ||
+ | |θ<sub>wy</sub> | ||
+ | |Degrees | ||
+ | |Rotational Y displacement of drive motor shaft. | ||
+ | |- | ||
+ | |rowspan="3"|Z Axis | ||
+ | |V<sub>lz</sub> | ||
+ | |mm/s | ||
+ | |Linear Z velocity | ||
+ | |- | ||
+ | |D<sub>lz</sub> | ||
+ | |mm | ||
+ | |Linear Z position | ||
+ | |- | ||
+ | |θ<sub>wz</sub> | ||
+ | |Degrees | ||
+ | |Rotational Z displacement of drive motor shaft. | ||
+ | |} | ||
= References = | = References = | ||
+ | |||
+ | == Books == | ||
+ | |||
+ | * Digital Control Systems Design | ||
+ | ** Authors: Mohammed S. Santina, Allen R. Stubberud, Gene H. Hostetter | ||
+ | ** ISBN 0-03-076012-7 | ||
+ | * Modern Control Systems | ||
+ | ** Authors: Richard C. Dorf, Robert H. Bishop | ||
+ | ** ISBN 0-201-50174-0 | ||
== Online Course Material == | == Online Course Material == | ||
Line 90: | Line 228: | ||
==== Mechanical Engineering ==== | ==== Mechanical Engineering ==== | ||
+ | * [http://ocw.mit.edu/OcwWeb/Mechanical-Engineering/2-001Fall-2006/CourseHome/index.htm 2.001 Mechanics & Materials I] | ||
+ | * [http://ocw.mit.edu/OcwWeb/Mechanical-Engineering/2-002Spring2004/CourseHome/index.htm 2.002 Mechanics and Materials II] | ||
+ | * [http://ocw.mit.edu/OcwWeb/Mechanical-Engineering/2-003Spring-2005/CourseHome/index.htm 2.003 Modeling Dynamics and Control I] | ||
+ | * [http://ocw.mit.edu/OcwWeb/Mechanical-Engineering/2-003JSpring-2007/CourseHome/index.htm 2.003J / 1.053J Dynamics and Control I] | ||
+ | * [http://ocw.mit.edu/OcwWeb/Mechanical-Engineering/2-004Fall-2007/CourseHome/index.htm 2.004 Systems, Modeling, and Control II] | ||
+ | * [http://ocw.mit.edu/OcwWeb/Mechanical-Engineering/2-12Fall-2005/CourseHome/index.htm 2.12 Introduction to Robotics] | ||
+ | * [http://ocw.mit.edu/OcwWeb/Mechanical-Engineering/2-72Spring-2009/CourseHome/index.htm 2.72 Elements of Mechanical Design] | ||
+ | * [http://ocw.mit.edu/OcwWeb/Mechanical-Engineering/2-067Spring-2004/CourseHome/index.htm 2.067 Advanced Structural Dynamics and Acoustics (13.811)] | ||
+ | * [http://ocw.mit.edu/OcwWeb/Mechanical-Engineering/2-093Computer-Methods-in-DynamicsFall2002/CourseHome/index.htm 2.093 Computer Methods in Dynamics] | ||
+ | * [http://ocw.mit.edu/OcwWeb/Mechanical-Engineering/2-094Spring-2008/CourseHome/index.htm 2.094 Finite Element Analysis of Solids and Fluids] | ||
+ | * [http://ocw.mit.edu/OcwWeb/Mechanical-Engineering/2-158JSpring-2003/CourseHome/index.htm 2.158J / 1.128J / 16.940J Computational Geometry] | ||
+ | * [http://ocw.mit.edu/OcwWeb/Mechanical-Engineering/2-171Fall-2006/CourseHome/index.htm 2.171 Analysis and Design of Digital Control Systems] | ||
+ | * [http://ocw.mit.edu/OcwWeb/Mechanical-Engineering/2-26Spring2004/CourseHome/index.htm 2.26 Compressible Fluid Dynamics] | ||
* [http://ocw.mit.edu/OcwWeb/Mechanical-Engineering/2-830JSpring-2008/CourseHome/index.htm 2.830J / 6.780J / ESD.63J Control of Manufacturing Processes (SMA 6303)] | * [http://ocw.mit.edu/OcwWeb/Mechanical-Engineering/2-830JSpring-2008/CourseHome/index.htm 2.830J / 6.780J / ESD.63J Control of Manufacturing Processes (SMA 6303)] | ||
Line 108: | Line 259: | ||
* [http://ocw.mit.edu/OcwWeb/Materials-Science-and-Engineering/3-22Spring-2008/CourseHome/index.htm 3.22 Mechanical Behavior of Materials] | * [http://ocw.mit.edu/OcwWeb/Materials-Science-and-Engineering/3-22Spring-2008/CourseHome/index.htm 3.22 Mechanical Behavior of Materials] | ||
* [http://ocw.mit.edu/OcwWeb/Materials-Science-and-Engineering/3-225Fall-2007/CourseHome/index.htm 3.225 Electronic and Mechanical Properties of Materials] | * [http://ocw.mit.edu/OcwWeb/Materials-Science-and-Engineering/3-225Fall-2007/CourseHome/index.htm 3.225 Electronic and Mechanical Properties of Materials] | ||
+ | |||
+ | == Other == | ||
+ | |||
+ | * [http://barzilai.org/math_sym.htm Math Characters in HTML] |
Current revision
Contents |
[edit]
MakerBot: Control System Design, Implementation and Characterization
Time to brush off some of that rusty old control system design knowledge I once majored in.
[edit]
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).
[edit]
The Model
[edit]
Controllable Parameters
[edit]
Extruder
- Heater On/Off (PWM control code)
- DC Motor Voltage (PWM control code)
- Nozzle aperture diameter (fixed)
- Incoming filament diameter (fixed)
[edit]
X Axis
- Stepper Velocity (step rate)
[edit]
Y Axis
- Stepper Velocity (step rate)
[edit]
Z Axis
- Stepper Velocity (step rate)
[edit]
Observable Parameters
[edit]
Extruder
- Relative Nozzle Temperature (thermistor ADC code)
- Closed loop
- Calibrated Nozzle Temperature (thermocouple based digital thermometer)
- Open loop
- Incoming filament position (with encoder wheel/sensor)
- Closed loop
- Incoming filament travel (callipers)
- Open loop
- Outgoing filament diameter (callipers)
- Open loop
- Outgoing filament length (callipers)
- Open loop
- Outgoing filament mass (scale)
- Open loop
- Possibly closed loop with build platform integrated weight cells.
[edit]
X Axis
- Endstop activation
- Closed loop
- Position (ruler)
- Open loop
[edit]
Y Axis
- Endstop activation
- Closed loop
- Position (ruler)
- Open loop
[edit]
Z Axis
- Endstop activation
- Closed loop
- Position (ruler)
- Open loop
[edit]
Variable Definition Table
[edit]
Global Variables
Subsystem | Variable | Units | Description |
---|---|---|---|
Global | Tra | Celcius | Room Ambient temperature |
[edit]
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 |
[edit]
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 |
[edit]
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. |
[edit]
References
[edit]
Books
- Digital Control Systems Design
- Authors: Mohammed S. Santina, Allen R. Stubberud, Gene H. Hostetter
- ISBN 0-03-076012-7
- Modern Control Systems
- Authors: Richard C. Dorf, Robert H. Bishop
- ISBN 0-201-50174-0
[edit]
Online Course Material
[edit]
MIT OpenCourseWare
[edit]
Electrical Engineering and Computer Science
- 6.011 Introduction to Communication, Control, and Signal Processing
- 6.231 Dynamic Programming and Stochastic Control
- 6.241 Dynamic Systems & Control
- 6.243J / 2.156J / 16.337J Dynamics of Nonlinear Systems
- 6.245 Multivariable Control Systems
- 6.091 Hands-On Introduction to Electrical Engineering Lab Skills
- 6.152J / 3.155J Micro/Nano Processing Technology
- 6.302 Feedback Systems
- 6.341 Discrete-Time Signal Processing
- 6.432 Stochastic Processes, Detection, and Estimation
- 6.435 System Identification
- 6.774 Physics of Microfabrication: Front End Processing
- 6.777J / 2.372J Design and Fabrication of Microelectromechanical Devices
[edit]
Mechanical Engineering
- 2.001 Mechanics & Materials I
- 2.002 Mechanics and Materials II
- 2.003 Modeling Dynamics and Control I
- 2.003J / 1.053J Dynamics and Control I
- 2.004 Systems, Modeling, and Control II
- 2.12 Introduction to Robotics
- 2.72 Elements of Mechanical Design
- 2.067 Advanced Structural Dynamics and Acoustics (13.811)
- 2.093 Computer Methods in Dynamics
- 2.094 Finite Element Analysis of Solids and Fluids
- 2.158J / 1.128J / 16.940J Computational Geometry
- 2.171 Analysis and Design of Digital Control Systems
- 2.26 Compressible Fluid Dynamics
- 2.830J / 6.780J / ESD.63J Control of Manufacturing Processes (SMA 6303)
[edit]
Materials Science and Engineering
- 3.00 Thermodynamics of Materials
- 3.016 Mathematics for Materials Scientists and Engineers
- 3.032 Mechanical Behavior of Materials
- 3.044 Materials Processing
- 3.063 Polymer Physics
- 3.064 Polymer Engineering
- 3.14 Physical Metallurgy
- 3.185 Transport Phenomena in Materials Engineering
- 3.A04 Modern Blacksmithing and Physical Metallurgy
- 3.11 Mechanics of Materials
- 3.20 Materials at Equilibrium (SMA 5111)
- 3.205 Thermodynamics and Kinetics of Materials
- 3.21 Kinetic Processes in Materials
- 3.22 Mechanical Behavior of Materials
- 3.225 Electronic and Mechanical Properties of Materials
[edit]