How does it work?
Multi Stepper Click as its foundation uses the TB67S109AFTG, a two-phase bipolar stepping motor driver using a PWM chopper (customized by external resistance R2 and capacitor C1) from Toshiba Semiconductor. The TB67S109AFTG comes with a built-in clock-in decoder (CLOCK-in controlled), which means that each up-edge of the CLK signal, routed to the PWM pin of the mikroBUS™ socket, will shift the motor’s electrical angle per step. It also incorporates a low on-resistance MOSFET output stage, which can deliver a 2.8A current with a motor output voltage rating of 47V, in addition to integrated protection mechanisms such as over-current and over-temperature detection. In addition, it allows from full-step up to 1/32 steps resolution, with the help of which motor noise can be significantly reduced with smoother operation and more precise control.
As mentioned before, the TB67S109AFTG supports various step resolution configurations through its control signals. These control signals are provided through the PCA9555A port expander, which establishes communication with the MCU via the I2C serial interface. This Click board™ also allows a connection of external step-resolution control signals on the onboard header J1 on pins labeled as P1 and P2 for the device’s DMODE1 and DMODE2 control. The PCA9555A also allows choosing the least significant bit (LSB) of its I2C slave address by positioning SMD jumpers labeled as ADDR SEL to an appropriate position marked as 0 and 1.
The output channels current value can be set manually using an onboard trimmer labeled as VR1, which sets the reference voltage from 0V to 3.3V. The default configuration of the JP4 jumper is the VREF position that sets both channels’ output current via the VR1 trimmer. In this case, avoid position P4 on a jumper JP4 since the VREFA pin requires an analog signal for setting.
Also, this Click board™ has a Standby function, activated when all three step-resolution control signals are on its low logic state, used to switch to Standby mode by setting all motor control pins to a low logic state. When the Standby mode is active, the TB67S109AFTG stops supplying the power to the internal oscillating circuit and motor output part (the motor drive cannot be performed).
In addition to the I2C communication, several GPIO pins connected to the mikroBUS™ socket are also used. The Enable pin, labeled as EN and routed to the CS pin of the mikroBUS™ socket, optimizes power consumption used for power ON/OFF purposes. Also, a simple rotation direction function routed to the AN pin on the mikroBUS™ socket allows MCU to manage the direction of the stepper motor (clockwise or counterclockwise), while the RST pin of the mikroBUS™ socket initializes an electrical angle in the internal counter to set an initial position.
When it comes to angle monitoring, this driver has a dual way of monitoring selected by positioning SMD jumper labeled as JP5 to an appropriate position marked as P6 or INT, which choose to monitor via expander or INT pin of the mikroBUS™ socket. In the case of the selected INT position of the JP5 jumper, the JP10 jumper needs to be unpopulated. Also, it has an additional LED for anomaly indication. Suppose a state such as an overtemperature or overcurrent is detected. In that case, such anomaly is indicated by a red LED marked as DIAG and via P7 pin over the I2C INT to the mikroBUS™ INT pin ,proceeding JP5 is set to P6.
Multi Stepper Click supports an external power supply for the TB67S109AFTG, which can be connected to the input terminal labeled as VM and should be within the range of 10V to 47V, while the stepper motor coils can be connected to the terminals labeled as B+, B-, A-, and A+.
This Click board™ can operate with both 3.3V and 5V logic voltage levels selected via the VCC SEL jumper. This way, it is allowed for both 3.3V and 5V capable MCUs to use communication lines properly. However, the Click board™ comes equipped with a library containing easy-to-use functions and an example code that can be used, as a reference, for further development.
Specifications
Type
Stepper
Applications
Can be used for stepping motors in various applications such as office automation, commercial, and industrial equipment
On-board modules
TB67S109AFTG – CLOCK-in controlled bipolar stepping motor driver from Toshiba Semiconductor
Key Features
Low power consumption, capable of controlling 1 bipolar stepping motor, from full-step up to 1/32 steps resolution, built-in clock decoder, integrated error detection circuits, and more
Interface
GPIO,I2C
Feature
No ClickID
Compatibility
mikroBUS™
Click board size
L (57.15 x 25.4 mm)
Input Voltage
3.3V or 5V,External
Driving Signal
Clock
Voltage Max
50V
Current Max
4A
Micro Step
32
RDSOn
0.49
ADMD
Yes
MO
Yes
Error Signal (LO)
Yes
ULVO
No
Pinout diagram
This table shows how the pinout on Multi Stepper Click – TB67S109 corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Onboard settings and indicators
Label | Name | Default | Description |
---|---|---|---|
LD1 | PWR | – | Power LED Indicator |
LD2 | DIAG | – | Anomaly Detection LED Indicator |
JP1-JP2 | ADDR SEL | Left | I2C Address Selection 0/1: Left position 0, Right position 1 |
JP3 | VCC SEL | Left | Logic Level Voltage Selection 3V3/5V: Left position 3V3, Right position 5V |
JP4 | JP4 | Left | A-Channel Current Reference Selection VREF/P4: Left position VREF, Right position P4 |
JP5 | JP5 | Left | Angle Monitoring Selection P6/INT: Left position P6, Right position INT |
JP10 | JP10 | Populated | Angle Monitoring via Expander |
J1 | J1 | Unpopulated | External Step Resolution Signals Connection Header |
VR1 | VR1 | – | Current Threshold Trimmer |
TP1 | VREF | – | Voltage Reference Testpoint |
TP2 | OSCM | – | Oscillating Circuit Crequency Testpoint |
TP3 | GND | – | Ground Testpoint |
Multi Stepper Click – TB67S109 electrical specifications
Description | Min | Typ | Max | Unit |
---|---|---|---|---|
Supply Voltage VCC | 3.3 | – | 5 | V |
External Supply Voltage VM | 10 | 24 | 47 | V |
Motor Output Current | – | 2.8 | – | A |
Motor Output Voltage | 10 | – | 47 | V |
Operating Temperature Range | -20 | +25 | +85 | °C |
Software Support
We provide a library for the Multi Stepper TB67S109 Click as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
Package can be downloaded/installed directly from NECTO Studio Package Manager(recommended way), downloaded from our LibStock™ or found on Mikroe github account.
Library Description
This library contains API for Multi Stepper TB67S109 Click driver.
Key functions
-
multisteppertb67s109_set_step_mode
This function sets the step mode resolution settings. -
multisteppertb67s109_drive_motor
This function drives the motor for the specific number of steps at the selected speed. -
multisteppertb67s109_set_direction
This function sets the motor direction by setting the AN pin logic state.
Example Description
This example demonstrates the use of the Multi Stepper TB67S109 Click board™ by driving the motor in both directions for a desired number of steps.
void application_task ( void )
{
log_printf ( &logger, " Move 200 steps clockwise rnn" );
multisteppertb67s109_set_direction ( &multisteppertb67s109, MULTISTEPPERTB67S109_DIR_CW );
multisteppertb67s109_drive_motor ( &multisteppertb67s109, 200, MULTISTEPPERTB67S109_SPEED_FAST );
Delay_ms ( 2000 );
log_printf ( &logger, " Move 100 steps counter-clockwise rnn" );
multisteppertb67s109_set_direction ( &multisteppertb67s109, MULTISTEPPERTB67S109_DIR_CCW );
multisteppertb67s109_drive_motor ( &multisteppertb67s109, 100, MULTISTEPPERTB67S109_SPEED_FAST );
Delay_ms ( 2000 );
}
The full application code, and ready to use projects can be installed directly from NECTO Studio Package Manager(recommended way), downloaded from our LibStock™ or found on Mikroe github account.
Other Mikroe Libraries used in the example:
- MikroSDK.Board
- MikroSDK.Log
- Click.MultiStepperTB67S109
Additional notes and informations
Depending on the development board you are using, you may need USB UART click, USB UART 2 Click or RS232 Click to connect to your PC, for development systems with no UART to USB interface available on the board. UART terminal is available in all MikroElektronika compilers.
mikroSDK
This Click board™ is supported with mikroSDK – MikroElektronika Software Development Kit. To ensure proper operation of mikroSDK compliant Click board™ demo applications, mikroSDK should be downloaded from the LibStock and installed for the compiler you are using.
For more information about mikroSDK, visit the official page.