Benchtop Brushless DC Motor Controllers
- One-, Two-, and Three-Channel Models Available
- Supports 3-Phase, Brushless, DC Servo Motors
with up to 5 A Peak Coil Current
- Encoder Feedback
- APT™ Control Software Suite
|Benchtop Motion Controllers|
|1-, 2- and 3-Channel Brushless DC Servo Controllers|
|1-, 2-, and 3-Channel Stepper Motor Controllers|
|1- and 3-Channel Open Loop Piezo Controllers|
|1- and 3-Channel Closed Loop Piezo Controllers|
|2-Channel NanoTrak® Auto-Alignment Controller|
|Other Brushless DC Servo Controllers|
|K-Cube™ Single-Channel Controller|
Click to Enlarge
BBD202 Rear Panel
The image above shows a typical system, comprising of the BBD202 brushless DC motor controller, an MJC001 joystick console, and an MLS203 XY stage mounted to an Olympus XI71 microscope.
- Supports Thorlabs' Range of 3-Phase, Brushless DC Servo Motor Products
- Encoder Feedback for Closed-Loop Velocity and Position Control
- USER I/O Port Exposes Encoder Signals for Monitoring
- AUX I/O Port Exposes Digital Input and Output Signals
- Fully Supported by the APT™ Software Control Suite
- USB Plug-and-Play
- Seamless Integration with All APT™ Family Controllers
- ActiveX® Software Graphical Panels
The BBD Series of Brushless DC Motor Controllers are ideal for motion control applications demanding operation at high speeds (hundreds of mm/s) and with high encoder resolution (<100 nm). These controllers offer up to three channels of high-precision motion control for a wide range of applications, particularly microscopy sample manipulation if paired with our MLS203 Series of Dual-Axis Scanning Stages. With the latest digital and analog techniques and high-bandwidth, high-power servo control circuitry, these controllers have been designed to drive Thorlabs' range of rotary and linear 3-phase, brushless DC servo motor products.
Integrated into the APT family of products, these controllers offer Thorlabs' standard control and programming interface, allowing for easy integration into automated motion control applications. These units are capable of being reprogrammed in-field, allowing the option of upgrading the units with future firmware releases as soon as new programming interfaces (such as microscopy standard command sets) are added.
USB connectivity provides easy plug-and-play PC operation. Multiple units can be connected to a single PC via standard USB hub technology for multi-axis motion control applications. Coupling this with the user friendly APT™ software allows the user to get reasonably complex move sequences up and running in a short space of time. For example, all relevant operating parameters are set automatically for Thorlabs stage and actuator products. Advanced custom motion control applications and sequences are also possible using the extensive ActiveX® programming environment described in more detail on the Motion Control Software tab. These ActiveX Controls can be incorporated into a wide range of software development environments including Labview, C++, and Matlab.
We have ensured that the software interfaces to the BBD series are highly integrated with all other APT™ family controllers, providing easy system integration and reduced learning curve. As one of the newest members of the APT™ family of controllers, these units are backed up by the fully featured APT™ suite of PC software tools for immediate and easy out-of-the-box configuration and usage.
Note: The BBD20x series controllers is specifically designed for benchtop use. For a 19" rack application, please use our RBD201 controller.
Not For Use with Brushed DC Motors
This controller is designed for use with high power, brushless DC servo motors. For control of the Thorlabs brushed DC servo motor devices, please see the KDC101 DC Servo Motor Driver K-Cube.
Optional Joystick Console
The MJC001 joystick console has been designed for microscope users, to provide intuitive, tactile, manual positioning of the stage. The console features a two axis joystick for XY control. In most applications, the default parameter settings saved within the controller allow the joystick to be used out-of-the-box, with no need for further setup, thereby negating the requirement to be connected to a host PC, and allowing true remote operation.
|Number of Channels||1||2||3|
|Drive Connector||8 Pin DIN, Round, Female|
|Feedback Connector||15-Pin D-Type|
|Brushless Continuous Output||2.5 A||5 A||5 A|
|PWM Frequency||40 kHz|
|Operating Modes||Position and Velocity|
|Control Algorithm||16-Bit Digital PID Servo Loop with Velocity and Acceleration Feedforward|
|Position Count||32 Bit|
|Position Feedback||Incremental Encoder|
|Encoder Bandwidth||2.5 MHz (10 M Counts/sec)|
|Encoder Supply||5 V|
|AUX Control Connector||15-Pin D-Type|
|External System Communications||Type B USB, Female|
|Input Power Requirements||250 VA
Volt: 100 to 240 VAC
Freq: 47 to 63 Hz
Fuse: 3.15 A
|Dimensions||174 mm x 245 mm x 126 mm
(6.85" x 9.65" x 4.96")
|240 mm x 337.9 mm x 124.8 mm
(9.5" x 13.3" x 4.9")
|Weight||3.46 kg (7.6 lb)||6.1 kg (13.42 lb)|
|1||Motor Phase V||5||Stage ID|
|3||Temp Sensor (Not Used)||7||Motor Phase W|
|4||Motor Phase U||8||Enable|
|2||GND||10||Limit Switch +|
|3||Not Connected||11||Limit Switch -|
|4||Index -||12||Index +|
|5||QB -||13||QB +|
|6||QA -||14||QA +|
|7a||5 V||15||Not Connected|
|1||5 V||9||QA +|
|2||Trigger IN||10||QA -|
|6||For Future Use||14||Index/Ref -|
|7||For Future Use||15||Ground|
|8||For Future Use|
|1||Digital O/P 1||9||Digital Ground|
|2||Digital O/P 2||10||Digital Ground|
|3||Digital O/P 3||11||For Future Use|
|4||Digital O/P 4||12||For Future Use|
|5||Digital Ground||13||Digital I/P 4|
|6||Digital I/P 1||14||5 V Supply O/P|
|7||Digital I/P 2||15||5 V Supply O/P|
|8||Digital I/P 3|
Mini DIN Female
|1||RX (controller intput)/RS232||4||Supply Voltage for Handset 5V|
|2||Ground||5||TX (controller output)/RS232|
|1||Not Connected||6||Not Connected|
|2||RX (controller input)||7||Not Connected|
|3||TX (controller output)||8||Not Connected|
|4||Not Connected||9||Not Connected|
Type B USB Female
Thorlabs offers two platforms to drive our wide range of motion controllers: our Kinesis® software package or the legacy APT™ (Advanced Positioning Technology) software package. Either package can be used to control devices in the Kinesis family, which covers a wide range of motion controllers ranging from small, low-powered, single-channel drivers (such as the K-Cubes™ and T-Cubes™) to high-power, multi-channel, modular 19" rack nanopositioning systems (the APT Rack System).
The Kinesis Software features .NET controls which can be used by 3rd party developers working in the latest C#, Visual Basic, LabVIEW™, or any .NET compatible languages to create custom applications. Low-level DLL libraries are included for applications not expected to use the .NET framework. A Central Sequence Manager supports integration and synchronization of all Thorlabs motion control hardware.
Kinesis GUI Screen
APT GUI Screen
Our legacy APT System Software platform offers ActiveX-based controls which can be used by 3rd party developers working on C#, Visual Basic, LabVIEW™, or any Active-X compatible languages to create custom applications and includes a simulator mode to assist in developing custom applications without requiring hardware.
By providing these common software platforms, Thorlabs has ensured that users can easily mix and match any of the Kinesis and APT controllers in a single application, while only having to learn a single set of software tools. In this way, it is perfectly feasible to combine any of the controllers from single-axis to multi-axis systems and control all from a single, PC-based unified software interface.
The software packages allow two methods of usage: graphical user interface (GUI) utilities for direct interaction with and control of the controllers 'out of the box', and a set of programming interfaces that allow custom-integrated positioning and alignment solutions to be easily programmed in the development language of choice.
A range of video tutorials is available to help explain our APT system software. These tutorials provide an overview of the software and the APT Config utility. Additionally, a tutorial video is available to explain how to select simulator mode within the software, which allows the user to experiment with the software without a controller connected. Please select the APT Tutorials tab above to view these videos.
The APT video tutorials available here fall into two main groups - one group covers using the supplied APT utilities and the second group covers programming the APT System using a selection of different programming environments.
Disclaimer: The videos below were originally produced in Adobe Flash. Following the discontinuation of Flash after 2020, these tutorials were re-recorded for future use. The Flash Player controls still appear in the bottom of each video, but they are not functional.
Every APT controller is supplied with the utilities APTUser and APTConfig. APTUser provides a quick and easy way of interacting with the APT control hardware using intuitive graphical control panels. APTConfig is an 'off-line' utility that allows various system wide settings to be made such as pre-selecting mechanical stage types and associating them with specific motion controllers.
APT User Utility
The first video below gives an overview of using the APTUser Utility. The OptoDriver single channel controller products can be operated via their front panel controls in the absence of a control PC. The stored settings relating to the operation of these front panel controls can be changed using the APTUser utility. The second video illustrates this process.
APT Config Utility
There are various APT system-wide settings that can be made using the APT Config utility, including setting up a simulated hardware configuration and associating mechanical stages with specific motor drive channels. The first video presents a brief overview of the APT Config application. More details on creating a simulated hardware configuration and making stage associations are present in the next two videos.
The APT Software System is implemented as a collection of ActiveX Controls. ActiveX Controls are language-independant software modules that provide both a graphical user interface and a programming interface. There is an ActiveX Control type for each type of hardware unit, e.g. a Motor ActiveX Control covers operation with any type of APT motor controller (DC or stepper). Many Windows software development environments and languages directly support ActiveX Controls, and, once such a Control is embedded into a custom application, all of the functionality it contains is immediately available to the application for automated operation. The videos below illustrate the basics of using the APT ActiveX Controls with LabVIEW, Visual Basic, and Visual C++. Note that many other languages support ActiveX including LabWindows CVI, C++ Builder, VB.NET, C#.NET, Office VBA, Matlab, HPVEE etc. Although these environments are not covered specifically by the tutorial videos, many of the ideas shown will still be relevant to using these other languages.
Part 1 illustrates how to get an APT ActiveX Control running within Visual Basic, and Part 2 goes on to show how to program a custom positioning sequence.
Full Active support is provided by LabVIEW and the series of tutorial videos below illustrate the basic building blocks in creating a custom APT motion control sequence. We start by showing how to call up the Thorlabs-supplied online help during software development. Part 2 illustrates how to create an APT ActiveX Control. ActiveX Controls provide both Methods (i.e. Functions) and Properties (i.e. Value Settings). Parts 3 and 4 show how to create and wire up both the methods and properties exposed by an ActiveX Control. Finally, in Part 5, we pull everything together and show a completed LabVIEW example program that demonstrates a custom move sequence.
Part 1: Accessing Online Help
Part 2: Creating an ActiveX Control
Part 3: Create an ActiveX Method
Part 4: Create an ActiveX Property
Part 5: How to Start an ActiveX Control
The following tutorial videos illustrate alternative ways of creating Method and Property nodes:
Create an ActiveX Method (Alternative)
Create an ActiveX Property (Alternative)
Part 1 illustrates how to get an APT ActiveX Control running within Visual C++, and Part 2 goes on to show how to program a custom positioning sequence.
For assistance when using MATLAB and ActiveX controls with the Thorlabs APT positioners, click here.
To further assist programmers, a guide to programming the APT software in LabVIEW is also available here.