Thanks to the popularity of a symbol desktop 3D printers these days, the average printer operator rarely spends much time with physical electronics, unless faced with a problem to address. A component that craters on the PCB, a connection that becomes loose, or a new wire harnessed to route through the body of the printer. Those of us who got started with desktop 3D printers when they were kids have spent much more time with this critical system. Even those of us without much experience designing circuits have found the experience helped to inform our understanding of the machine as a whole. Let's spend some time taking a high level overview of the boards for the Ultimaker 2+. While the electronics vary from manufacturer to manufacturer, thanks to some early fields standardization around micro-controllers, firmware, stepper motors, temperature sensors, and other basic components, there are many similarities from vineyard vendor. Critical node in the nervous system of your printer. Within the printer, the control system plays a critical role in the operation of your printer. The central subsystem of the control system is the control board itself, which can also be called the motherboard, logic board or main board, depending on the vendor and your preference. My preference in these lectures is control board. While it is tempting to call the control board the brain of your printer, and compare it to the CPU of your laptop, this isn't the brain of a highly evolved mammal. Think of it as a brain of an earthworm, or other primitive life form. The board does send and receive a range of inputs and outputs, but no complex analysis nor complex decision-making is happening on the fly. The critical instructions for what happens during 3D printing is driven by the G-code job file, prepared ahead of time on a computer. The control system executes those instructions. Primary roles of the control board subsystem. The electronics control subsystems primary roles are; to keep time and execute instructions written to the G code files before the job begins, and to send and receive power and communication pulses that impact all the other aspects of the machine. The electronics control subsystems secondary roles are; to synchronize timing for other electronics driven components, such as daughter boards like the interface, auto leveling sensors and hidden built platform electronics, and to route communications and power to secondary electronic systems as well. Four popular approaches; the subsystems and components of the control board element can vary widely from vendor to vendor. So instead, let's explore four common approaches for how to set up the electronics in a desktop 3D printer. Dead bug city. Some printers will build up the electronics as a series of separate components and control boards patched together via lead wires and various extension cables and wire harnesses. This might allow a machine designer to avoid the development time and expense to design, produce, test and manufacturer new electronics, but at the cost and putting far more of the electronics burden on the shoulders of the end user. It is worth mentioning that this route exists, but it has fallen out of favor for all of the individual machine builders themselves, as it becomes easier and easier to run custom PCB is even in small quantities. Stacked modular electronics packages; this has been the most common approach in the RepRap movement, and thanks to the role of RepRap and the evolution of desktop 3D printing in general, you will still see examples of this solution out in the field. For stacks modular electronics, you generally start with a popular and trusted development board, like an Arduino Mega or BeagleBone Black that houses the micro-controller, and produce a shield to add components and routing to allow you to drive your printer. The stack doesn't have to end there either. You can then add breakout boards and allow your control board to manage stepper drivers, extruder controllers and more. While this approach allows you to stand on the shoulders of other electronics engineers and manufacturers, not all users, even intermediate ones, have the proper skills and equipment to install and repair sub-components without damaging elements. All in one control board. As a hardware development world continues to expand, with more affordable routes to affordably fabricate custom PCBs, many manufacturers create their own all in one control boards. Many of these take advantage of the opportunity to incorporate elements from open source development boards so that they do not have to start from zero with every machine. The main disadvantage are the development times and costs, and minimum order quantities, that can make even minor design and manufacturing mistakes very costly. Electronics managed by embedded system. Lately a 4th element is gaining traction., adding an embedded Linux computer into the mix and reapportion the various tasks and systems between the motherboard and the embedded system. We'll explore one example of this using the Ultimaker three electronics routing. A PCB tour. In the case of the Ultimaker to electronics, the 3D printer control electronic subsystem consists of; a main board, power supply and routing, XYZ stepper motor controllers, extruder motor controllers, heat brick and print part cooling fan controllers, heater and temperature monitoring controllers, bed heater and temperature monitor, XYZ in stops, case LED strips, and interfaces with any daughter boards, such as the interface board. First, let's start with a power brick, converting AC to DC power to deliver into the electronics for distribution across the system. Next, the widest spread but less obvious component of the subsystem is the wiring itself. Like the traces on the main board PCB, the hookup wires and harnesses are bringing all the electronics components into communication with a micro-controller at its heart. Because of a hookup wiring, it's possible to physically move the outboard, electronically powered, and communicating components right to where they need to be. Third, they USB connection, which while visible largely as a USB port on the back of the machine, is its own sub-component, managing USB to serial communications, so that it is possible to program firmware and control the machine externally. What helped me Master machines in the past, was a simple act of routing all the cables and patching them into the corresponding ports on the board. At first, the silk-screened abbreviations and mysterious components populating across the PCBs were more of a game of memory, matching like with like from the instructions, but given that there are a lot of similarities from vendor to vendor, it's worth looking at the routing from the Ultimaker 2 main board electronics, from an Ultimaker 2+, to help orient you how this board connects into the other components in the machine. In cases like the Ultimaker 3, a more computationally powerful embedded Linux system has taken over a majority of the central management position. The micro-controller driven subsystem continues to play a critical role, but now several of the elements of the control electronics can now be split out and monitored in parallel by the Linux system. Routing the nervous system signals out. You'll notice that all around the edges of the main board are places to patch in wires and Connectors. We'll start with the pulses and signals heading out from the board to the rest of the machine. Stepper drivers. First, there are five stepper driver controllers. Three of these are for the x, y, and z axis stepper motors and two are for filament drive steppers for 1-2 extruders. Desktop 3D printers, CNCs, pinned plotters and laser cutters often use bipolar stepper motors to drive mechanical motion elements. The reason being that the step part of the stepper name refers to the ability to predictably drive the motor forward or backward, a specified number of small increments. Micro stepping refers to motor hardware capable of executing additional accurate placements between the major step increments established by the coils. The H-Bridge elements on the main board receive movement instructions from the microcontroller and in return, transform these instructions into the pulses across the individual components in the motor hardware to achieve the desired result. H-bridge refers to a type of bipolar switching circuit design where voltage can be applied across a load in opposite directions. Heaters. The three pairs of green terminal blocks are for the heater leads for up to two tool heads and the heated bill platform. Current sent here powers the cartridge heaters, raising the power to heat them up and dropping the power to cool them down. Unlike an electric kettle or a light switch, these are not all or nothing circuits. To best understand them, you have to consider them in relationship with the temperature sensing components and the control loops that govern their behavior. Fans, LEDs. There are often a number of additional components run from the Control Board from fans to LEDs. How each component is triggered and tuned differs from purpose to purpose. For example, some of the fans operate at a set speed regardless of printing operation, and some of them are managed by PWM signals. For example, how LED brightness and color are executed. Notice that there are different patching points for each with specific power and logic as needed for each type. Breakout boards. The EXP 1 and EXP 2 headers are for patching, power and communications out and back from the data boards. In this case, they display an SD card reader within the alte controller electronics. This system doesn't just issue instructions. It also receives back sensor data from in stops, temperature sensors, active leveling sensors and signals from expansion boards such as the electronics interface subsystem in this example. Temp sensors. There are places to patch in three temperature sensors up to two tool heads and one for the heated bed. These are used in combination with onboard electronics and firmware set values for the PID control loops. We'll talk about those shortly. In stops. The in stops are used at the beginning of each print job to establish the initial baseline position. When the arm of the in stops depresses its button, a signal is sent to the electronics declaring that the position of the Machine in reference to that in stop is known. By triggering x, y, and z in stops at the startup footprint, a desktop printer declares the ground truth about its tool head positions. A declaration that all coordinated movement that follows must believe implicitly. Breakout boards. As mentioned before, the EXP 1 and EXP 2 expansion slots are receiving signals back from the alte controller from the electronics interface. Routing the nervous system, Control loops. While I have described before that the electronics behave more like the nervous system of an earthworm than a mammal, there is another topic worth exploring, control loops. In particular, one type that is essential to desktop 3D printing, PID or proportional integral derivative temperature controller. In order to keep the heating elements of a desktop 3D printer both effective and safe, it is important to measure and evaluate what temperature has been achieved at the tool head or heated bed. It doesn't work to assume that a certain amount of voltage over a certain amount of time will result in the right target temperature. Not only is there ambient and component standing temperature to consider, the act of heating the cartridge heaters can be nonlinear in certain temperature ranges usually low and high. Therefore, there is a dedicated circuit on a desktop 3D printer Control Board for taking readings from attempt sensor and using it to tune how the electronics accomplishes raising or dropping the temperature of a specific component. Now, Control Theory is its own Engineering discipline with an entire graduate sequence worth of topics regarding both theory and practical applications of this process. Thankfully, designers of desktop 3D printers can lean on significant advances in these fields and in terms of the types of components considered for both heating and measure. To simplify this topic to the basics for this discussion, this type of controller aims to measure the difference between desired target temperature and measured temperature and significant effort on the part of each machine manufacturer goes into these efforts. A, determining what level of precision is possible and necessary from the temperature sensor and heater cartridge. B, setting the temperature floor for the temperature sensor in terms of the amount of voltage it reports back, how it reports the temperature. Setting the wrong value here is precisely like moving the values up and down on a thermometer. If what is reported as 300 Celsius ran the lowest value that they can measure or a "cold" is actually a 100 degrees Celsius, you have a real problem. Luckily there are auto-tuning circuits that can help at the factory and to adjust the tool heads should there be discrepancies there. C, determining the best strategy for sampling in terms of frequency of samples and the math applied to taking a series of values and averaging them together. Well, end users typically only consider the PID control loop when tuning their machine for unusual materials requiring either working temperatures at the very top or very bottom, where the temperatures range to monitor or something that distorts the temperature sampling entirely, like running material through the nozzle so quickly that temperature monitored on the heater block cannot correctly monitor the temperature inside the chamber. It is also important to consider that this element may be tuned from firmware update to firmware update, and that the use of a third party tool head may require some deeper research before you patch in new sensors and years to the electronics. With this in mind, let's address one more odd thing about the Control Board that drives this subsystem and components of a 3D printer. Blind to itself. In most desktop machines, the machine is blind to itself can only make assumptions about position and successful operation based on executing a homing action at the start of a print job to trigger the end stops establishing an initial position that will be reference for the rest of the print job. In the terms of robotics motion control systems, desktop printers tend towards open rather than closed loop. More on this when we discuss motion mechanical subsystem. There are other positions between open and closed that are possible. Thanks to some clever firmware tweaks in combination with feedback loops from certain stepper drivers. The machine with the right firmware can reference the amount of power drawn by the stepper motor to identify slips and adjustments, keeping the machines synchronized with its initial position even when unexpected obstacles or interference occurs. So even though the electronics are primitive compared to say a factory line or a self-driving car, an impressive amount of care and tuning goes into squeezing out every bit of performance possible from the microcontroller and other components, and this is accomplished by tuning the firmware on the control electronics to work with what hardware and components are available. The team at ultimaker has one last treat for you. The electronics used in the Ultimaker two plus printer are open-source. See the resources with the course for chance to take a look at the actual files and bombs, they guide the manufacturer of the boards, for additional insights into how the boards function and what opportunities exist for modification and extension.