Skip to the content
PCBKitNew board
2 layers67.7 × 78.4 mmStepper testbench, the printed circuit board in 3D

My BSc sperimental thesis

Size
67.7 × 78.4 mm
Copper layers
2
Thickness
1.6 mm
Parts
76
Nets
134
Pads
284
Tracks, vias
360, 134
Pours
209
Routed
Yes
KiCad
KiCad 6 (file 20211014)
Created
22 Nov 2024
Updated
3 Dec 2024

Overview

Stepper testbench is an open-source printed circuit board by lisasnt, from the lisasnt/Stepper-motor-testbench repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 67.7 × 78.4 mm with 76 parts on 134 nets, routed with 360 tracks and 134 vias.

It is built around the LM358P and L7805. Its parts include 28 resistors, 19 capacitors, 9 connectors, 8 diodes and 6 ICs. It belongs with the robots and motor control boards of this library.

Main components

2

README

README.md

Step-motor-test-bench

Step Motor Testbench is a tool made in collaboration with ProM Facility which can be used to measure the maximum power and the maximum torque of a step motor.
Notice that this is a prototype made up to validate the innovative company idea. stb-lab-pic

Functionalities

  1. Driving the stepper motor
  2. Driving the magnetic brake
  3. Measuring torque, voltage and current of the motor
  4. Set the motor driver parameters and show the plots related to the obtained motor curves using a GUI (Graphical User Interface)

Main components

  • Step motor (device under test)
  • Torque sensor
  • Magnetic brake
  • Master unit made of
    • Nucleo STM32 F7 Board
    • Custom PCB for sensing and signal conditioning
  • Slave unit made of
    • Nucleo STM32 F4 Board
    • STM X-NUCLEO-IHM03A1 stepper driver extension board

System Block Diagram

System block diagram

Thesis Abstract

I attended my academic internship at ProM Facility, a company specialised in creating ad-hoc mecha- tronics applications, and here I decided to take part in solving one of their needs. Since several of their applications involve stepper motors, ProM needed to have a stepper testbench to test these devices: in this way, it would be possible to precisely know their behaviour in order to achieve a better final product quality.

This thesis discusses the design and development of a stepper motor testbench prototype sub- section, which includes an expansion board to acquire sensors signals and an Azure RTOS driver unit based on an STM32 microcontroller to physically drive the motor. The system ideated was built from scratch following ProM’s design requirements.

The expansion board represents the hardware part of the project. It is a Printed Circuit Board (PCB) designed with Kicad, an electronic open-source CAD. After being realised, the board was analysed with a thermographic camera to verify the power-on components’ condition state, with an oscilloscope to test the acquired signals’ noise, and with an electromagnetic scanner to measure the electromagnetic compatibility (EMC). On the other hand, the driver unit represents the firmware development of the stepper driver based on STM-Nucleo F4 series board, it is implemented and debugged with the environment offered by STMicroelectronics called STM32-CubeIDE.

The expansion board and the driver unit firmware work properly: they satisfy ProM’s requirements and lay the foundations for future developments of the prototype.

Project Structure

text
├── 📁 Documentation    -> media and thesis pdf
├── 📁 Firmware         -> slave and master units firmware
├── 📁 GUI              -> graphical user iterface and plot scripts
└── 📁 Hardware         -> custom master unit expansion board kicad project

Expansion Board Overview

The custom-designed PCB is a shield that can be mounted on top of the main board. It allows for the acquisition of current, voltage, and torque signals while controlling the electromagnetic brake, ensuring proper power management and protection.

PCB 3D view

GUI Overview

The GUI is made up of two main windows: the first one is used to control the motor driver parameters, to test the motor under load, to communicate with both units using serial communication and to save the acquired data into a csv file. The second one is used to plot the acquired data into some.

The second one is used to read the sensors values and to plot the acquired data in a dynamic way.

GUI Motor config window

GUI plot window

Parts

76
QtyValueFootprintReferences
60.1uCapacitor_SMD:C_0603_1608MetricC2, C3, C5, C7, C11, C12
6RResistor_SMD:R_0603_1608MetricR16, R17, R23, R24, R26, R27
50Resistor_SMD:R_0603_1608MetricR2, R4, R15, R22, R25
510kResistor_SMD:R_0603_1608MetricR1, R6, R9, R12, R28
3100nCapacitor_SMD:C_0603_1608MetricC1, C4, C6
3620kResistor_SMD:R_0603_1608MetricR8, R11, R13
3CCapacitor_SMD:C_0805_2012MetricC17, C18, C19
3DIODEDiode_SMD:D_0805_2012MetricD1, D2, D5
3LM358PPackage_DIP:DIP-8_W7.62mmU1, U3, U4
20.1u_DNPCapacitor_THT:CP_Radial_D5.0mm_P2.50mmC14, C16
20.33uCapacitor_SMD:C_0603_1608MetricC8, C10
20.33u_DNPCapacitor_THT:CP_Radial_D5.0mm_P2.50mmC13, C15
2330kResistor_SMD:R_0603_1608MetricR7, R10
247Resistor_SMD:R_0603_1608MetricR3, R5
2LEDLED_SMD:LED_0603_1608MetricD7, D8
2Q_NMOS_DGSPackage_TO_SOT_SMD:TO-252-2Q1, Q2
1100kResistor_SMD:R_0603_1608MetricR14
112VTestPoint:TestPoint_Pad_D2.0mmTP3
11kResistor_SMD:R_0603_1608MetricR21
1330Resistor_SMD:R_0603_1608MetricR19
1510Resistor_SMD:R_0603_1608MetricR18
15k1Resistor_SMD:R_0603_1608MetricR20
1BRAKETestPoint:TestPoint_Pad_D2.0mmTP5
1Brake connectorConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ1
1Conn_01x02Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ4
1Conn_01x08Connector_PinHeader_2.54mm:PinHeader_1x08_P2.54mm_VerticalJ2
1Conn_02x08_Odd_EvenConnector_PinHeader_2.54mm:PinHeader_2x08_P2.54mm_VerticalCN8
1Conn_02x10_Odd_EvenConnector_PinHeader_2.54mm:PinHeader_2x10_P2.54mm_VerticalCN7
1Conn_02x15_Odd_EvenConnector_PinHeader_2.54mm:PinHeader_2x15_P2.54mm_VerticalCN9
1Conn_02x17_Odd_EvenConnector_PinHeader_2.54mm:PinHeader_2x17_P2.54mm_VerticalCN10
1DNPCapacitor_SMD:C_0805_2012MetricC9
1D_ZenerDiode_SMD:D_SMAD3
1FerriteBeadResistor_SMD:R_0805_2012MetricFB1
1L7805Package_TO_SOT_THT:TO-220-3_VerticalU6
1LED_GREENLED_SMD:LED_0603_1608MetricD6
1LED_REDLED_SMD:LED_0603_1608MetricD4
1LEM-CAS-6NPSensing lib:LEM-CAS-6-NPU2
1LM7812_TO220Package_TO_SOT_THT:TO-220-3_VerticalU5
1Stepper supplyConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ6
1TORQUETestPoint:TestPoint_Pad_D2.0mmTP2
1UART ConnectorConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ5

Questions

How big is the Stepper testbench PCB?

It measures 67.7 × 78.4 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Stepper testbench use?

76 parts, built around the LM358P and L7805. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Stepper testbench KiCad files?

From the lisasnt/Stepper-motor-testbench repository on GitHub, at the commit this page was made from: the board is Hardware/kicad-project/stepper_testbench.kicad_pcb and its schematic Hardware/kicad-project/connectors.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Stepper testbench design in my own project?

Its repository publishes it under the GPL-3.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

Similar boards

  • 2 layers76.4 × 63.3 mmInfraRedGelUniversalDispenser, the printed circuit board in 3D

    InfraRedGelUniversalDispenser

    abdontroche/InfraRed_Gel_Universal_Dispenser

    This project pretends to be a open source device that could help people fighting against the COVID-19.

    20 parts5CC0-1.0
  • 4 layers56 × 51 mmPsu controller, the printed circuit board in 3D

    Psu controller

    igorzab-stud/wanptek_encoder

    Digital front-panel mod for Wanptek DC power supplies — replaces analog potentiometers with dual rotary encoders, MCP4725 DACs, and an OLED display.

    11 parts3MIT
  • 4 layers186.9 × 129.8 mmBLDC 4, the printed circuit board in 3D

    BLDC 4

    ansh1113/e-bike-conversion-kit

    A 4-layer PCB-based e-bike conversion kit featuring an STM32-based VESC ESC, power management circuits, wireless throttle, GSM, GPS, and more.

    179 parts1
  • 2 layers81.3 × 85.7 mmCNCFia, the printed circuit board in 3D

    CNCFia

    coredump/CNCFia

    CNC Daughte Card for MCU based CNC controllers

    57 parts1
  • 2 layers94.1 × 121.9 mmSCH PowerSupply, the printed circuit board in 3D

    SCH PowerSupply

    UAA-F14/PCBs-Design

    Power electronics PCB coursework — SCR controller, buck converter, Class D amplifier, DC-AC inverter, and a protected power supply Resources

    47 parts1
  • 2 layers80 × 104.5 mmEKG generator, the printed circuit board in 3D

    EKG generator

    asliwaa/ECG-Simulator

    A custom hardware ECG/EKG simulator built with the XIAO ESP32-C6 and an MCP4725 DAC, designed to generate physiologically accurate heart signals.

    18 parts
  • 2 layers100 × 100 mmPCB Tester, the printed circuit board in 3D

    PCB Tester

    hschack/PCB_Tester_2side

    122 parts
  • 2 layers86.5 × 57.1 mmCONTROL PowerSupply, the printed circuit board in 3D

    CONTROL PowerSupply

    IKGB105/PCBs-POWER-ELECTRONICS

    Power electronics PCB coursework — SCR controller, buck converter, Class D amplifier, DC-AC inverter, and a protected power supply Resources

    27 parts