|
KiCADKicad
|
|
|
arduino IDEArduino
|
High-performance 3-axis stepper motor control panel
In this project, I show you my new development which is a high-performance 3-axis stepper motor control board. It is high-performance because it uses the super-fast Teensy 4.0 microcontroller and it also uses a modern TMC429 stepper motor ramp generator controller together with three TMC2209 stepper motor drivers. The board can be controlled via buttons and a joystick, and I also programmed it to be fully controllable by sending commands and parameters via the serial terminal.
The board is originally intended to be used for a 3-axis stage setup, for example, as an X-Y stage and Z focus in a microscope system. But it can be used anywhere where 3 motors need to be moved with high precision. The system has three modes.
- A joystick-controlled mode where the user can control the 3 axes with a 3-axis joystick
- A button-controlled mode where the user can select an axis and move it in the positive or negative direction with buttons
- A USB-controlled mode where the user can send commands and parameters from the computer to control the 3 axes.
The system has 6 limit switches, where each axis has 2 switches. Each switch acts as a stop switch. If they are hit during the movement of the motor, the motor stops and then it parks. Furthermore, each axis has a switch (in my application, it is set to be the left switch) that acts as the reference/home switch. Upon startup, each motor goes to its home position and parks using the left switch of the respective axis.
The board has an extra header pin set for the i2c bus (SDA0 and SCL0). It is useful for adding external switches. Furthermore, all “regular” GPIO pins of the Teensy 4.0 are available on the board, so if other pins are needed, they can be accessed with a regular Dupont wire. Also, there are some extra 3.3 V and ground pins available on the board in case the user wants to power something.
Remarks:
Due to the uniqueness of the board, I only prepared the usual interactive BOM for this board. This is because the user can freely vary many components, especially the terminals. For example, the controls such as the buttons, joystick and switches can be directly connected to the board by soldering their cables in the PCB. In that case, all the jumper headers are unnecessary. The same applies to the microcontroller and other modules, however, it might be a good idea to mount them as I did (removable) in case they fail for some reason and they need to be replaced. Also, some parts, especially the Teensy 4.0 microcontroller and the TMC429 ramp generator cannot be sourced from AliExpress or similar sites. They have to be purchased from Mouser, Farnell or similar distributors. On the other hand, the MP2315 voltage regulator is only available on websites such as Amazon or AliExpress.
Don't forget that the circuit needs a "modification" in order to provide 3.3 V. The trace under the potentiometer (ADJ) has to be cut and the solder tabs at the silkscreen that says 3.3V must be shorted together. I also describe this in my video.
If you want a "more official" product, then the SparkFun BabyBuck Regulator can also work. Just pay attention to the polarity of the pins, because the VIN and VOUT are the opposite of the MP2315.
https://www.sparkfun.com/products/18357
High-performance 3-axis stepper motor control panel
*PCBWay community is a shared platform and we are not responsible for any design issues.
- Comments(3)
- Likes(5)
- Engineer Apr 19,2024
- Jeffery Thompson Mar 22,2024
- Engineer Mar 19,2024
- İsmet BÜYÜKÜNAL Mar 19,2024
- John John Vu Mar 05,2024
- 1 USER VOTES
- YOUR VOTE 0.00 0.00
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
-
1design
-
1usability
-
1creativity
-
1content
More by Curious Scientist
- ADS1256 - Atmega32u4 Custom DAQ board IntroductionIn this project, I show you two things. One is a new version (v1.2) of my custom DAQ bas...
- Debounced rotary encoder module In this project, I show you my approach to making a rotary encoder module.One can buy different rota...
- Custom ADS1256 board with ATmega32U4 I created my own ADS1256 PCB after working with this AD converter for several years. I wanted to bui...
- ADS1256 - RP2040 Custom DAQ This is my (hopefully) last iteration of the ADS1256-based DAQ board. I replaced the ATmega32U4 micr...
- High-performance 3-axis stepper motor control panel In this project, I show you my new development which is a high-performance 3-axis stepper motor cont...
- STM32F070F6P6 miniature USB microcontroller board A small but powerful Arduino-compatible STM32 board.I designed this board because I was curious if i...
- Stepper motor developing platform IntroductionIn this project, I show you my newest device which is a stepper motor developing platfor...
- Custom-made self-contained DC power meter This project realizes a tiny "self-sufficient" power meter that can be inserted into any DC power li...
- 10-channel NTC thermistor-based temperature logger This project is designed to be a 10-channel temperature logger based on 10k NTC thermistors.I design...
- Educational board for strain gauges, Wheatstone bridges and op-amps I show you a little device that I built so I can explain more things related to strain gauges, Wheat...
- Focus Stacking Mechanism In my previous project, I shared the PCB for this mechanism. In this project, I share the parts of t...
- Focus Stacking Circuit For Macro Photography This circuit is mainly designed to serve as a tool for shooting pictures for focus stacking macro ph...
- Self-contained PCB weighing scale Note! Please follow the attached interactive BOM. It will help you to find the correct components an...
- Weighing scale made of a PCB In this project, I wanted to try something new and fun.First, I wanted to know if I can use the trac...
- TCD1304 miniature PCB In this project, I continued working with the TCD1304 linear CCD. I created this PCB to fit on the b...
- Reflow hot plate controller board Description:This project realizes a custom made reflow hot plate controller. I made a fancy graphica...
- A custom ATmega32u4 board I decided to make my own ATmega32u4-based microcontroller board for several reasons. I wanted to hav...
- Custom DRO panel with ATTiny85 This PCB allows you to replace the original display of the DRO or just use it as a secondary one. It...
-
Open Source Very Large Stick - Freejoy & MMjoy2 breakout board
497 0 0 -
RF Control training board for students based on ESP32 C3
668 0 2 -
Aquarius+ Computer, Standard PCB
886 0 4 -
KINETIC COASTERS with a TWIST! Laser or 3D Print some DIY Magic
604 0 1 -
RPI - 8 IO PLC With ATTiny85 Watch Dog
528 0 1 -
Nintendo Famicom HVC-001 Controller Shells
623 0 1 -
COMMODORE 128 DIAGNOSTIC REV.785260 KEYBOARD DONGLE
586 0 4 -
COMMODORE 128 15KHz DISPLAY ADAPTER (C128 80 COLUMN ADAPTER)
794 1 6 -