Design of Control System for 3D Printer Based
On DSP and FPGA
Dima Younes
School of Mechanical and Electronic Engineering, Wuhan University of Technology, Wuhan, China
Email: dima_dy@yahoo.com
Tan Yuegang, Cheng Xin, Essa Alghannam, and Amjad Altazah
School of Mechanical and Electronic Engineering, Wuhan University of Technology, Wuhan, China
School of Information Engineering, Wuhan University of Technology, Wuhan, China
Email: {ygtan, chengx, essaalghannam} @ whut.edu.cn and amjad_wuhanligon@yahoo.com
Abstract—3D printing technology is a rapidly-evolving field,
which has seen an explosion of interest in the last decade
due to the influence and great degree of maker movement
and the rapid prototyping. A set of specialized print control
systems is the basis for the fabrication of electronic
technology. The use of closed-loop control to improve
performance in robots is a well-established technology, by
adding the necessary sensors and computational hardware,
it is easy to establish a low-cost and efficient 3D printer
system. Success of a motion control systems depends not
only on the controlling algorithm but also on the control
hardware structure. Compared with common robot
manipulators, 3D printer system has a more open-ended
structure, which needs the control system to be flexible to
the flexibility in 3D printer system. Based on DSP and
FPGA, unique flexibility and excellent control capability of
the motion controller can be designed to fit the
requirements of the flexibility in 3D printer system. In this
thesis, a kind of closed-loop control structure based on DSP
and FPGA for 3D printer has been proposed. The main
contents include: (1) the analysis of mechanical parts of
common low-cost commercial 3D printer and its
requirement for control system. (2) FPGA and DSP can
inherently handle processes in parallel, therefore a kind of
closed-loop control system has been designed to execute G-
code, compute curves and accelerations, and drive multiple
stepper motors simultaneously. The thesis illustrates the
frame of control system, and provides the design of
hardware circuits and software architecture. (3) The linear
acceleration and deceleration algorithms of multi-axes have
been analyzed, and the simulation results of trajectory
following by closed-loop control prove the efficiency of the
work in this thesis. The limited contributions of this thesis
include, (1) a kind of design of hardware and software for
3D printer system based on DSP and FPGA; (2) the analysis
of motion control of the multi-axes implemented in this
control architecture. The platform developed seeks to
increase awareness of the potential for the integration of
closed-loop control into existing open source designs and
will help to improve the performance of the low-cost 3D
printer system.
Index Terms—3D printer, motion control, FPGA, DSP,
stepper motor, closed loop
Manuscript received February 21, 2018; revised April 23, 2018.
I. INTRODUCTION
Controlling our environment and the things around us
has been one of the fundamental goals and one of the
greatest achievements of the human endeavor. The
motion controller acts as the brain of the driving system
by taking the desired target positions and motion profiles
and then creating the trajectories for the motors to follow,
which is a numerical control instrument in general.
Unique flexibility and excellent control capability of
the motion controller results in effective application of
lots of industrial instruments. Benefit from the
development of high performance and high speed
processor such as digital signal processor DSP and
programmable logic device FPGA, motion control
technology is enormously enhanced [1].
A Field Programmable Gate Array (FPGA) based
system is a great hardware platform to support the
implementation of controllers such as PID controller,
fuzzy controller, adaptive controller, optimum controller,
FIR filter and even neuro network system [2], [3].
The system developed by Takahashi and Goetz [4]
could run a current control algorithm with a Xilinx FPGA
to increase the bandwidth of the current loop control.
Tzou and Kuo [5] performed the vector and velocity
controls of a PMAC servo motor by using FPGA
technology successfully. Other works on FPGA based
motion controls include Paramasivam [6], Bielewicz [7]
PID control was used as the control algorithm in these
works.
The controlling of speed is also one of the important
portions in motion control. In particular, it refers to
acceleration and (or) deceleration controlling. Daniel
Carrica [8] has proposed a recursion algorithm for
applied on FPGA, the algorithm proposed avoided the
complexity in computations but at the same time
increased the loads on digital device. Ngoc Quy Le [9]
also proposed an algorithm for controlling variable speed
and it has been implemented on DSP by using the closed-
loop technique. For this algorithm, the control precision
has been improved, but it was just tested in lab without
any loads connected to the stepper motor, besides the
40
Journal of Automation and Control Engineering Vol. 6, No. 1, June 2018
©2018 Journal of Automation and Control Engineering
doi: 10.18178/joace.6.1.40-46