Setting up a VT1000 vibratome

Setting up a Faulhaber motor controller with a Leica VT1000

The Leica VT1000 vibratome head works well and requires just a DC motor controller. The motor and encoder in a VT1000 is made by Faulhaber so if you buy a Faulhaber motor controller it is easy to run the unit at a defined RPM. The following instructions assume you are using a Faulhaber MCDC 3006 S RS controller, but likely they will also cover other very similar controllers.

There are instructions further down below for what to do if you did not (or can not) hook up the encoder.

Connecting the controller

Hook up the motor to a 12V DC 1 A supply.

Snip off the green connector coming off the motor on the vibratome, strip the leads, and tin the bare wires.

Hook up to the controller as shown below. Note the far right motor +/- leads power the motor; here these wires looker thicker for those cables as the originals were extended. The thinner black and red wires are power for the encoder. The encoder sensor wires are the remaining two: white and brown.

Finish off the install by hooking up the serial cable to the PC. Power on the device!

Connect to the controller

The following instructions are for Faulhaber Motion Manager 6, which you should install now.

Click "Establish Connection" in the top left. Select the COM port of your device then "Next". The select the first entry in the drop-down ("Motion Control V2.x") and select "Next", then "Next" through the next window.

You will then see a window that lists your controller:

Click "Finished" and the main window will now look like this:

Set the drive parameters

Press "Select motor" under the "Establish connection" button. You will need to make a motor with the right properties. Press "Create" in the following window:

Now fill in the next window as follows:

Press "Next" and in the next window fill it in as follows:

Now "Save". Confirm the settings on the original page look as follows. The encoder is a HEDS-5500-A which has a spec sheet that says it has 500 lines/reg. So set the pulses per rev to 500 pulses/rev. Correct that if needed and hit "Next"

Skip the next window describing the gear train ("Load transmission"). Just "Next" through it.

In the following window ("Factor of inertia"), J_Load should be "20".

In the next window, just press 'Next' to select the default "quiet running".

"Finished" on the summary page. This sends the parameters to the motor and you should say "Yes" when offered to store these to the device.

You can test the device by going to the "Operate motor" section and running the motor at 3200 RPM, which is the default speed in BakingTray.

The motor should run almost silently with the blade holder and blade attached, assuming everything is bolted down tightly. Quit the software.

Confirming the vibratome can communicate with BakingTray

You should have already added BakingTray to your path. The following sample session shows how to start up the class for controlling the vibratome and sending commands to it.

>> f=FaulhaberMCDC('COM2'); % connect to the vibratome on COM port 2

If you have run through all of the steps, ensure that the controller is in the correct mode for running with the encoder:

>> f.set2CONTMOD;

You do not need to run that again: the mode of the encoder has been stored to its non-volatile memory.

You can now control the motor in RPM:

>> f.startVibrate(1000);  % 1000 RPM
>> f.startVibrate(2000);  % 2000 RPM
>> f.stopVibrate; % Stops the motor
>> delete(f) % disconnects from the controller

Running without the encoder

If you could not set the motor up with the encoder using the above steps then follow this section. Perform the following steps with the vibratome securely mounted, blade in blade holder, and blade holder mounted. Nothing should be loose. Do not excessively tighten things, though, this is not needed.

Without the encoder it is easy to run the vibratome motor far harder than the manufacturer intended. Start at slow speeds and be sure you know how to cut power to the device if you need to.

The following sample session shows how to start up the class for controlling the vibratome and sending commands to it.

>> f=FaulhaberMCDC('COM2'); % connect to the vibratome on COM port 2
Setting up Faulhaber MCDC3006 DC motor controller.
Motor max speed: 60 revs per second.

You now need to tell the controller to run without the encoder:

>> f.set2IXRMOD;

You do not need to run that again: the mode of the encoder has been stored to its non-volatile memory.


%Let's start a gentle vibration
>> f.startVibrate(5); % You should now see a modest vibration of the blade
>> f.stopVibrate;  % And we stop it

You should consider the sample speed setting, which is the input argument to startVibrate, to be in arbitrary units. The goal now is to identify a reasonable speed setting for slicing the sample.

% Try a range of speeds and stop once it becomes more noisy
>> f.startVibrate(10); % quiet
>> f.startVibrate(11); % quiet
>> f.startVibrate(12); % still quiet
>> f.startVibrate(13); % Getting loud: vibrations are clearly audible
>> f.startVibrate(10); % <--- Back off a few steps. Make a note of this setting.
>> f.stopVibrate;

% Terminate the session
>> delete(f)
Closing connection to Faulhaber MCDC motor controller

If you run the vibratome too fast you will wear our the axle or the bearings and may need to replace the whole unit after a year or two. Make a note of the vibrate speed chosen above. You will later use this when making the BakingTray settings file and only modify if it if you notice cutting problems.

Note that BakingTray can also run devices such as the Leica VT1200 (the unit used by Economo et al) by gating its operation with a TTL pulse via the JaneliaLeicaContoller class.

Last updated