APTソフトウェア


APTソフトウェア


Please Wait

当社のAPT™コントローラ一式には、小型ドライバ、高出力ベンチトップ型コントローラ、19インチラックベースのユニットが含まれ、当社の様々な精密ステージおよびアクチュエータを制御し、数十センチからナノメートルにわたるモーションコントロールをサポートしています。製品のラインナップにはステッピングモータおよびDCモーターコントローラ、閉ループおよび開ループピエゾコントローラ、歪ゲージリーダ、ソレノイドドライバなどがあります。高性能のフィードバックコントローラ(NanoTrak®)もあり、様々なアライメントシナリオの結合パワーを最適化します。APTベースのコントローラは統合されたPCベースのプログラミングAPI(APT™ソフトウェア統合パッケージ)にサポートされているため、高水準のカスタム仕様のアプリケーションの構築が素早く簡単に行えます。USB接続が可能なため、様々な位置決めやアライメントの用途において、複数のコントローラーユニットをつなげた多軸モーションコントロールが非常に簡単に行えます。

LabVIEWを使用して、ActiveX技術によるAPTベースのコントローラの操作ができます。プログラムには、一式のツールとオブジェクトを使用して、フロントパネルとして知られるインターフェイスをお客様自身で構築し、グラフィカル表記の関数を使ってコードを追加し、フロントパネルオブジェクトを制御します。LabVIEWチュートリアルでは、ActiveXを使用してAPT駆動デバイスのGUIを作成する方法をご覧いただけます。そこでは、LabVIEWでAPTベースのコントローラを制御する基本的な方法や、LabVIEW GUIを用いてAPTベースのデバイスを操作する前に行うべき設定の手順についても解説しています。さらに、当社がご提供しているLabVIEWの仮想計測器(VI)のサンプルをダウンロードすることもでき、コントローラ用のLabVIEWプログラムを作成するための補助としてお使いいただけます。

LabVIEWを用いたAPT制御を行う際の包括的ガイドはこちらからダウンロードいただけます。

一般的に、ActiveXコントロールは、グラフィカルユーザーインターフェイスとプログラム可能なインターフェイスの両方を提供する、再利用可能なソフトウェアコンポーネントです。このようなコントロールの多くはWindowsアプリケーションの開発に利用でき、イメージファイルの操作やインターネット接続、または単にボタンやリストボックスなどのユーザーインターフェイスコンポーネントの提供などの多岐にわたる再利用可能な機能を提供しています。APTシステムでは、エレクトロニクスコントローラーユニットを直接制御(または、ユニットの状況を反映)できるようにActiveXコントロールが導入されています。

ActiveXコントロールは、ActiveXインターフェイス技術をベースとした言語非依存のソフトウェアコンポーネントです。このように、ActiveXコントロールは、様々なソフトウェア開発環境に組み込まれ、クライアントアプリケーションソフトウェアの開発者に利用されています。Visual Basic、LabVIEW、Visual C、C Builder、VB.NET、C#.NETなどの開発環境をサポートしています。例が「インターフェイス」のタブでご覧いただけます。

アプリケーション内でのActiveX Controlの発生をインスタンスと呼びます。開発者は設計時(つまり、ソフトウェアアプリケーションの作成時)に、多数のコントロールインスタンスを1つまたは複数のアプリケーションウィンドウ上にドラッグ&ドロップして必要に応じた位置決めやリサイズを行い、特定のレイアウトを完成させます。プロパティ(下で解説)として知られるコントロール設定は設計時にご希望に合わせて変更できます。「ランタイム」(つまり、ソフトウェアアプリケーションの実行時)では、コントロールはお客様が直接操作することができます(ユーザーインターフェイスがある場合。ない場合もあります)。その際は、ソフトウェア開発者による追加のプログラミングが多少必要になります。

ActiveX Control for APT Stepper Controller
APTステッピングモーターコントローラ用のActiveXコントロールGUIインターフェイス

ActiveXコントロールのプログラム可能なインターフェイスは、以下の3つの構成要素から成っています:メソッド、プロパティ、イベント(下で解説しています)。

APTシステムでは、ActiveXコントロールは非常に便利なソフトウェア機能パッケージを提供しています。これにより、単一のコントロールで全てのユーザーインターフェイスおよび特定のハードウェアユニットに関連するプログラム機能を提供できます。

右写真のAPTステッピングモーターコントローラーユニット用ActiveXコントロールを例に挙げます。このコントロールには完全なユーザーグラフィカル機器パネルが付いているので、モーターユニットの手動制御が可能です。また、ソフトウェア関数の完全なセットも提供されているので、クライアントアプリケーションによって全てのパラメータの設定やモータの操作を自動化することもできます。この機器パネルには、接続されたコントローラーユニットの現在の操作状況が反映され、モータの位置などのパラメータが表示されます。

パネルのアップデートは、クライアントアプリケーションが同じコントロール内にソフトウェア呼び出しを実行する際に自動的で行われます。例えば、クライアントアプリケーションがステッピングモーターコントロールにモータを動かすように指示を与えると、位置の変化はグラフィカルインターフェイス上に読み出され、モータが移動する過程が自動的に反映されます。これ以上のプログラムの介入必要はありません。

定義

メソッド
「メソッド」は、ソフトウェア関数に関するActiveXの用語です。メソッドを呼び出すには、関数を呼び出す際と同様に、必要なパラメータを渡します。APTシステムでは、メソッドはハードウェアの設定や設定変更、および動作(例えば、モータの移動やフィードバックループモードの切り替えなど)を行ったり、ホストコントローラPCに付属するハードウェアユニットの構成を決定したりする際に使用されます。

プロパティ
「プロパティ」は基本的に、ActiveXコントロールに関連するパラメータの設定を指します。プロパティは、「読み取り専用」または「読み取り/書き込み可能」で使用でき、デザイン時(開発環境によってはプロパティウィンドウ上から行うことも多い)と実行時のどちらでもアクセスできます。

APTシステムには、ハードウェア固有の設定に関するプロパティはほとんどありません。むしろ、左、上、幅、高さなど、すべてのコントロールで見られるような一般的なプロパティ値がほとんどです。

ただし、多くのAPTコントロールに付いているHWSerialNumプロパティは、特定のActiveXコントロールインスタンスを物理ハードウェアユニットに接続するために重要な設定です。このプロパティの詳細は、APT Serverのヘルプファイルのリファレンスの章に記載されています。

イベント
「イベント」は、コントロールがクライアントアプリケーションによって実行されたメソッドを呼び出す場合など、ActiveXコントロールがホストクライアントアプリケーションに送る通知です。このコントロールで呼び出すことができるメソッドは、一般的には「イベントハンドラ」と呼ばれることも多く、イベントハンドラを呼び出す過程は通常、「イベントの発行」と表現されます。

ActiveXコントロールは、クライアントアプリケーションに動作や、状況の変化、その他のシステムイベントの発生などを通知する際にイベントを発行します。シンプルなボタン制御時では、ボタンをクリックするだけでイベントの発行が可能です。クライアントアプリケーション内で実行されるイベントハンドラには、通常、発行されたイベントを処理するコードが含まれています。例えば、ボタンコントロールの場合、「クリック」イベントハンドラはユーザ宛のメッセージを表示します。

APTサーバーシステム内の様々なコントロールは、重要なハードウェアイベントが発生した時(例えば、モータの動きが停止した時MoveCompleteイベントが発行されます)にイベントが発行できるようになっています。その際は、関連するイベントハンドラが状況の変化に対応します(例えば、パワーレベルを測定し、次の位置まで移動させるなど)。

APT™ (Advanced Positioning Technology) シリーズは、小型で低出力のシングルチャンネルドライバ(T-Cubeなど)から高出力でマルチチャンネルの19インチラックナノポジショニングシステム(APTラックシステム)まで幅広い種類のモーションコントローラを網羅しています。

APTシリーズのコントローラはすべて、共通のソフトウェアプラットフォーム「APTシステムソフトウェア」を共有しており、当社のAPTソフトウェアダウンロードページからダウンロードいただけます。このページには、当社製品の使用およびプログラミングに関する豊富な情報が入っているソフトウェアパッケージもご用意しています。

共通のソフトウェアプラットフォームにより、あらゆる単体のAPTコントローラを簡単に組み合わせることができます。ソフトウェアツールは1セット習得するだけで共通した操作が可能です。 低出力の1軸システムのコントローラから高出力多軸システムのコントローラまで、あらゆるコントローラを組み合わせ、全てを1台のPCのソフトウェアインターフェイスから制御することが実現可能です。

APTシステムソフトウェアを使用するには2つの手段があります。コントローラを直接つないで制御を行なう付属のGUI(グラフィカルユーザーインターフェイス)ユーティリティ、またはご希望の開発言語でカスタム仕様の位置決めやアライメントを簡単にプログラムできる一連のプログラミングインターフェイスです。

APTシステムソフトウェアをよりご理解いただけるために様々なチュートリアルビデオもご用意しております。 ビデオではソフトウェアの概要とAPT構成ユーティリティをご説明しています。 また、ソフトウェア内のシミュレーターモードを利用すると、コントローラを接続しないでソフトウェアを試すことができますが、その方法を説明したビデオもあります。 これらのビデオをご覧になるには「APTチュートリアル」のタブをご覧ください。ビデオはコントローラに付属するソフトウェアCDにも入っています。

ソフトウエア

バージョン 3.21.5

当社APT™システムコントローラを制御するGUI、ならびにハンドブック、ヘルプファイル、チュートリアルビデオやFAQなど豊富なサポート情報が付属。

下記もご用意しております:

  • 通信プロトコル
Software Download
APTConfig
APTユーザ GUI画面

こちらのページでご覧いただくAPTビデオチュートリアルは、付属のATPユーティリティに関する説明と、いくつかのプログラミング環境におけるAPTシステムのプログラミングに関する説明の2つの部分から構成されています。

免責事項:これらの動画は、当初はAdobe Flashによって作成されました。2020年のAdobe Flashのサポート終了後、これらのチュートリアルは再録画されています。各動画の下にはFlash Playerの操作ボタンが見えますが、機能はしません。

APTコントローラには、APTUserユーティリティとAPTConfigユーティリティが付いています。APTUserを用いると、直感的操作が可能なグラフィック制御パネルを介して、APTで制御するハードウェアに素早く簡単に接続することができます。APTConfigは「オフライン」ユーティリティで、メカニカルステージのタイプを事前に選択し、それらを特定のモーションコントローラに対応付けるなど、システム全体のさまざまな設定を行うことができます。

APT Userユーティリティ

下の左側の動画では、APTUserユーティリティの操作概要について説明しています。シングルチャンネルコントローラのOptoDriverは、制御用のPCが無くても前面パネルのコントローラを介して操作できます。前面パネルのコントローラに保存されている操作に関する設定は、APTUserユーティリティを使用して変更することができます。そのプロセスは下の右側の動画でご覧いただけます。

APT User - 概要
APT User - OptoDriverの設定


APT Configユーティリティ

シミュレートされたハードウェア構成のセットアップや、メカニカルステージの特定のモータードライブチャンネルへの対応付けなど、APT Configユーティリティを使用してAPTシステム全体の様々な設定ができます。下の最初の動画ではAPT Configの概要をご覧いただけます。シミュレートされたハードウェア構成の作成方法やステージと対応付ける方法についての詳細は、その右側の2つの動画でご覧いただけます。

APT Config - 概要
APT Config - シミュレータのセットアップ
APT Config - ステージとの対応付け


APTのプログラミング

APTソフトウェアシステムは、ActiveXコントロールのコレクションとして実装されています。ActiveXコントロールは言語に依存しないソフトウェアモジュールで、グラフィカルユーザーインターフェイスとプログラミングインターフェイスの両方を提供します。ハードウェアユニットのタイプごとにActiveXコントロールのタイプがあります。例えば、Motor ActiveXコントロールはすべてのタイプのAPTモーターコントローラ(DCまたはステッパ)の操作に対応します。ActiveXコントロールは多くのWindowsソフトウェア開発環境やソフトウェア言語で直接サポートされており、そのようなコントロールがカスタムアプリケーションに組み込まれると、そこに含まれるすべての機能が即座にアプリケーションで利用できるようになります。下の動画では、LabVIEW、Visual Basic、Visual C++によるAPT ActiveXコントロールの基本的な使用方法について説明しています。これ以外に、LabWindows CVI、C++ Builder、VB.NET、C#.NET、Office VBA、Matlab、HPVEEなどの多数の言語でもActiveXはサポートされています。これらの言語環境についてはチュートリアルのビデオでは特に取り上げていませんが、動画内の考え方の多くは他の言語環境でも適切に使用できます。

Visual Basic

Part 1ではVisual Basicで動作するAPT ActiveXコントロールを設定する方法について説明しており、Part 2では独自の位置決めシーケンスをプログラミングする方法について説明しています。

Visual BasicによるAPTプログラミング:Part 1
Visual BasicによるAPTプログラミング:Part 2


LabVIEW

LabVIEWはActiveXをフルサポートしています。下の一連のチュートリアルビデオでは、APTによる独自のモーションコントロールシーケンスを作製する際の基本的な構成要素を示しています。まずソフトウェア開発中にオンラインヘルプを呼び出す方法をご紹介します。Part 2ではAPT ActiveXコントロールの作成方法をご紹介します。ActiveXコントロールではメソッド(機能)とプロパティ(数値設定)の両方を設定できます。Part 3と4では、ActiveXコントロールで示されたメソッドとプロパティを作成してワイヤで接続する方法をご紹介します。最後に、Part 5では全体をまとめて、独自の移動シーケンスを実行するLabVIEWのプログラム例をご紹介します。

LabVIEWによるAPTプログラミング -
Part 1:オンラインヘルプへのアクセス方法
LabVIEWによるAPTプログラミング -
Part 2:ActiveXコントロールの作成方法
LabVIEWによるAPTプログラミング -
Part 3:ActiveXのメソッドの作成方法
LabVIEWによるAPTプログラミング -
Part 4:ActiveXのプロパティの作成方法
LabVIEWによるAPTプログラミング -
Part 5:ActiveXコントロールの開始方法


下のチュートリアルビデオでは、メソッドおよびプロパティのノードを作成する別の方法について説明しています。

LabVIEWによるAPTプログラミング -
ActiveXメソッドの作成方法(別の方法)
LabVIEWによるAPTプログラミング -
ActiveXプロパティの作成方法(別の方法)


Visual C++

Part 1ではVisualC++で動作するAPT ActiveXコントロールを設定する方法について説明しており、Part 2では独自の位置決めシーケンスをプログラミングする方法について説明しています。

Visual C++によるAPTプログラミング:Part 1
Visual C++によるAPTプログラミング:Part 2


MATLAB

当社のAPTポジショナにMATLABおよびActiveXコントロールを使用する場合は、こちらの資料をご覧ください。

プログラマー向けとして、LabVIEWでAPTソフトウェアをプログラミングする方法もこちらからご覧いただけます。


Posted Comments:
user  (posted 2021-06-09 13:31:38.767)
Hello, My Name is Faisal Saeed and i am working on Thor Lab KBD101 Brushless motor controller and also attached DDSM100/M to it, I want to design my program in Labview using Active X APT server although i have installed the APT software (32 bit) and working Labview 2020(32 bit) but my problem is that when i open control pallete on front panel of Labview then go to .NetActive X and then select Active X container and then right click on it and go to insert Active X object container in labview by right click then i do not get MG17Motor control on it. Kindly suggest me what to do? Thank you Best Regards
DJayasuriya  (posted 2021-06-09 11:02:01.0)
Thank you for your inquiry. We will reach out to you directly to resolve your issue.
Steve Burke  (posted 2021-04-13 12:46:34.577)
Event log is below. If I run the APT software stand alone it works fine. And when I run several calls strung together it also works fine. But when I incorporate into a larger LabVIEW framework I get this error. Any call after the Start Control errors in this way. Delay after Start Control doesn't help. I am running LV2018. Any suggestions? Thank you ***************************************************************************** Event Log generated 12:37:20 Tuesday, April 13, 2021 Thorlabs APT Logging Server (Built: Dec 12 2013 11:36:11). Server Version:- 1:6:0:0. 12:35:17:0044> [SN 40847248] CMGMotorCtrl::StartCtrl() [Internal Code: 17352111; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:35:22:0813> [SN 40847248] CMGMotorCtrl::LoadParamSet(17NST103) [Internal Code: 12220411; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:35:25:0519> [SN 40847248] CMGMotorCtrl::GetPosition(v,rv) [Internal Code: 19060901; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:35:26:0398> [SN 40847248] CMGMotorCtrl::EnableHWChannel(0) [Internal Code: 23452901; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:35:27:0402> [SN 40847248] CMGMotorCtrl::MoveHome(0, 0) [Internal Code: 16411703; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:35:29:0941> [SN 40847248] CMGMotorCtrl::LLSetEncoderCount(v,v) [Internal Code: 15560807; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:35:30:0392> [SN 40847248] CMGMotorCtrl::GetPosition(v,rv) [Internal Code: 19060901; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:35:33:0392> [SN 40847248] CMGMotorCtrl::StopCtrl() [Internal Code: 17362111; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:35:45:0467> [SN 40847248] CMGMotorCtrl::StopCtrl() [Internal Code: 17362111; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:35:45:0472> [SN 40847248] CMGMotorCtrl::StopCtrl() [Internal Code: 17362111; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:36:52:0978> [SN 40847248] CMGMotorCtrl::StartCtrl() [Internal Code: 17352111; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:36:58:0687> [SN 40847248] CMGMotorCtrl::LoadParamSet(17NST103) [Internal Code: 12220411; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:36:58:0687> Error [Code = 10109]:- [SN 40847248] CMGMotorCtrl::LoadParamSet(17NST103); Internal Code = 19110511. Description: Control HW Communications Disabled Notes: A software call has been made to a control which is not currently communicating with any hardware. This may be because the control has not been started or due to incorrect serial number or missing hardware. Extra Info: No extra information. ***************************************************************************** ***************************************************************************** Event Log generated 12:44:44 Tuesday, April 13, 2021 Thorlabs APT Logging Server (Built: Dec 12 2013 11:36:11). Server Version:- 1:6:0:0. 12:44:27:0079> [SN 40847248] CMGMotorCtrl::StartCtrl() [Internal Code: 17352111; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:44:32:0812> [SN 40847248] CMGMotorCtrl::LoadParamSet(17NST103) [Internal Code: 12220411; Description: 'Normal' category event.; Notes: No notes.; Extra Info: No extra information.] 12:44:32:0812> Error [Code = 10109]:- [SN 40847248] CMGMotorCtrl::LoadParamSet(17NST103); Internal Code = 19110511. Description: Control HW Communications Disabled Notes: A software call has been made to a control which is not currently communicating with any hardware. This may be because the control has not been started or due to incorrect serial number or missing hardware. Extra Info: No extra information. *****************************************************************************
cwright  (posted 2021-04-14 11:26:54.0)
Response from Charles at Thorlabs: Hello and thank you for your query. I will reach out to you to ask for a copy of your VI and help troubleshoot this issue. To help us provide a faster and more detailed response please reach out to your local technical support team with a copy of the VI you are running, a screenshot of the error, and a list of which controllers and actuators are attached.
Ventsislav Valev  (posted 2021-02-02 04:27:10.277)
I am running a Labview Program with several of your motors. Most of the time, it runs well, but yesterday I got the following error message. [MG17Motor, OCX] Internal Internal Code: 18310705 Hardware Notificaiton Hardware response code 35002 received from hardware unit SN 83860551. Response details: Motor Overcurrent. Could you advise please?
cwright  (posted 2021-02-02 05:16:04.0)
Response from Charles at Thorlabs: Hello and thank you for your query. Motor Overcurrent is when the motor cannot provide enough current to do the job without damage. Essentially the stage needs to overcome some issue that is making it hard to move the moving world. The controller responds to this issue by ramping up the current to the motor. If the resistance is sustained then the motor will shut down to prevent damage. The most common cause of a persistent overload error is using too much weight on the stage or applying excessive torque to the stage. Technical support will reach out to you to troubleshoot this.
wong river  (posted 2020-12-08 00:08:05.06)
Hello, I need the latest version of APT user that is compatible with XP. Can you send me an installer? Regards, wong
cwright  (posted 2020-12-09 04:36:16.0)
Response from Charles at Thorlabs: Thank you for contacting us. We will reach out to you directly with an install link for this, please note that not all of our stages and controllers are compatible with APT for Windows XP.
Isacco Gobbi  (posted 2020-11-02 04:04:00.273)
Hi, I am trying to use APT Active X controls in a Windows Form but I am unable to import them. Could you please show a working example of Windows Form application with embedded APT controls? Thank you
Rahul Patil  (posted 2020-09-08 10:16:46.607)
Hi, I am unable to control the MFF101/M filter flipper using APT in Labview. I have gone through the APT pdf guide, it does not mention anything about the flipper or the methods that the device responds to. Can we have an illustration of the same? Thank You.
cwright  (posted 2020-09-10 05:08:57.0)
Response from Charles at Thorlabs: Hello Rahul and thank you for contacting us. The PDF guide is just an example of how to get started with various controls and is not an extensive list of examples for every controller we produce. The commands relevant to the MFF101 and our other controllers/ stages with integrated controllers can be found in the APT API which can be found in C:/ProgramFiles(This should be x86 if you use 32 bit)/ThorLabs/APT/APT Server and will have the name APT Server.chm. I will send you an email with an example.
Chenxu Lu  (posted 2020-08-06 19:38:59.343)
Hello,when we use KDC101 to drive rotation motor in windows xp, we encountered the following problems which we never met when using TDC001 as the control box. I'd appreciate it very much, if you could help to point out what's wrong and tell us the solution. If the hardware driver is wrong, can you send us the right driver for XP? Bests, Lu Error [Code = 10001]:- Description: Internal Error Notes: An APT Server internal error has occurred. Extra Info: Unknown serial number prefix. Error [Code = 10003]: Description: Invalid Parameter Notes: An invalid parameter has been passed. Extra Info: Invalid lHWType [= 1] parameter.
YLohia  (posted 2020-09-24 03:54:45.0)
Hello, thank you for contacting Thorlabs. The KDC101 was released in February 2016, while the version 3.2 of APT, which you say you are using, was released in 2014. This is why you would get the error "Extra Info: Unknown serial number prefix.", which would suggest that the device has not been programmed into the software. The latest version of APT would recognize it but is very unlikely to work with XP. We would suggest that you upgrade the operating system of the computer you are using since we do not support new releases for XP due to its age.
Chenxu Lu  (posted 2020-08-06 19:36:37.5)
Hello,when we use KDC101 to drive rotation motor in windows xp, we encountered the following problems which we never met when using TDC001 as the control box. I'd appreciate it very much, if you could help to point out what's wrong and tell us the solution. If the hardware driver is wrong, can you send use the right driver for XP? Bests, Lu Error [Code = 10001]:- Description: Internal Error Notes: An APT Server internal error has occurred. Extra Info: Unknown serial number prefix. Error [Code = 10003]:- Description: Invalid Parameter Notes: An invalid parameter has been passed. Extra Info: Invalid lHWType [= 1] parameter.
DJayasuriya  (posted 2020-08-11 09:04:30.0)
Thank you for inquiry. This could be due to an older APT version. We have reached out to you directly to resolve the issue.
Pan Shengzhe  (posted 2020-08-01 16:45:29.193)
Hello, I need the latest version of APT user that is compatible with XP. Can you send me an installer? Regards, Pan
DJayasuriya  (posted 2020-08-04 05:57:45.0)
Thank you for you inquiry. Please note that our last release for a XP compatible version would be in 2010. We will get in touch with you directly to send this through.
Min Park  (posted 2020-07-29 08:27:19.67)
Hello, I need the latest version of APT user that is compatible with XP. Can you send me an installer? Regards, Min
DJayasuriya  (posted 2020-08-04 05:55:02.0)
Thank you for you inquiry. Please note that our last release for a XP compatible version would be in 2010. We will get in touch with you directly to send this through.
Han Xu  (posted 2020-07-14 06:02:30.15)
I forget to mention that I have bought a new KST101 and ZST225B recently. I download the software from your website (32 bits for 32 bits windows) and install it on windowsXP system. It is not working. So I need an APT software which can support the new KST101 controller and also be able to work on XP. Is that possible? Best, Han
cwright  (posted 2020-07-15 10:50:47.0)
Response from Charles at Thorlabs: Hello and thank you for contacting us. Unfortunately, due to limitations related to the .NET framework available to Windows XP (up to 4.0.3), while it will be possible to get your PC to a point where all of the APT OCXs and other native components are installed and registered, the C# components will not be available. This means the primary GUI applications such as APT User, APT Config and the Firmware Update Utility will not work but you should be able to use the APT OCX's with LabView and other third-party tools where they are available for Windows XP. We will reach out to you directly to assist you with this.
Han Xu  (posted 2020-07-14 05:56:51.18)
Hi, could you please send me APT software which is working on Windows XP? Thank you very much! Best, Han
vmiranda  (posted 2020-07-16 10:37:48.0)
Charles Wright responded to feedback.
Ozan Aktas  (posted 2020-03-05 09:11:01.897)
Hello, I need the latest version of APT user that is compatible with XP. Can you send me an installer? Regards, Ozan
AManickavasagam  (posted 2020-03-06 10:22:44.0)
Response from Arunthathi at Thorlabs: Thanks for your query. I have contacted you directly with the most latest XP compatible version we have.
user  (posted 2019-12-17 10:47:07.553)
I am using the "translation stage 150" with MATLAB. I am taking pictures and moving the translation stage as it is scanning my system. The latest version of MATLAB 2019 is now informing that "Warning: ACTXCONTROL will be removed in a future release. For more information, see Recommendations for Java and ActiveX Users on mathworks.com. https://www.mathworks.com/products/matlab/app-designer/java-swing-alternatives.html?s_tid=pi_app_designer_R2019b_activex" I am now wondering if there a way to call the translation stage via MATLAB without ActiveX and the command actxcontrol? I really need a solution. I would prefer MATLAB over LABVIEW.
DJayasuriya  (posted 2019-12-19 06:12:27.0)
Response from Dinuka at Thorlabs: Thank you for your enquiry. The other option is to send serial commands with our Kinesis-controlled devices from Matlab (see our communication protocol here: https://www.thorlabs.com/software_pages/ViewSoftwarePage.cfm?Code=Motion_Control&viewtab=1). I will get in touch with you directly with an example code.
Guy Bonneville  (posted 2019-11-14 12:58:11.027)
these motors are way too complicated for nothing. ActiveX, and .Net components. all that is needed is simple Commands. I haven't been able to control these stages properly
DJayasuriya  (posted 2019-12-03 06:01:22.0)
Response from Dinuka at Thorlabs: Thank you for your comment. I am sorry that you have difficulties here. I will contact you directly to troubleshoot this issue.
Kuo WeiLin  (posted 2019-11-12 07:12:22.03)
Hardware unit (S.N. 21807792), detected firmware version 1.0.4, latest firmware version is 1.0.8 I can't upgrad this firmware correctly. Dose any method can be slove? thanks a lot.
cwright  (posted 2019-11-12 09:54:15.0)
Response from Charles at Thorlabs: Hello Kuo, unfortunately I cannot identify your controller from the serial number provided and will need more information. I will contact you directly to help resolve this issue.
yiting Liu  (posted 2019-08-23 12:07:37.873)
Dear engineer, I met some problems when using apt. When open the software, it comes up with the information “fail to load application settings”. Please tell me how to solve it. Thank you. Regards, Yiting Liu
rmiron  (posted 2019-08-27 04:50:53.0)
Response from Radu at Thorlabs: Hello Yiting Liu. In order to know why this error is being raised, I require a bit more information. Therefore, I will contact you directly in order to assist with troubleshooting.
Dzianis Saladukha  (posted 2019-07-03 05:49:05.617)
Hi, I am currently writing software to control CR1/M-Z7 with TDC001 in LabVIEW 2014. I've read the Thorlabs guide with attention, however still meet several issues. At first I tried to use .Net (Kinesis) component as LabVIEW control. The installation went with no errors.I also added all .dll files to my project folder. However when I tried to insert "Thorlabs.MotionControl.Controls.dll" into the .Net container I've got "An error occurred trying to load the assembly. Kinesis software itself worked fine. So I had no choice rather then switch to APT software. Installation went fine and I also was able to add Ative-X component in my LabVIEW program with no problem. However APT software reads wrong stage in my system: Z606(B) instead of CR1/M-Z7. So it reads a linear stage instead of rotation one. This problem stays in both LabVIEW and APT software. I wasn't able to change the stage settings. I would appreciate if you help with those two issues and report me any possible solution. Thank You, Dzianis
rmiron  (posted 2019-07-03 07:10:48.0)
Response from Radu at Thorlabs: Hello, Dzianis. I will start by addressing the problem you have with the stage not being correctly recognised. This does not happen in Kinesis because CR1/M-Z7 is equipped with an identifying resistor which tells TDC001 that it is dealing with this stage. However, APT was not programmed to recognise stages automatically. In order to amend the problem, you will have to enter the APT Config application, go to Stage, select the serial number of your cube from the Motor drop-down menu and and associate it with CR1-Z7 from the Stage drop-down menu. Regarding your difficulty in inserting the Controls dll, have you checked whether LabVIEW's and Kinesis' bit-versions match? I will contact you directly in case that is not the underlying problem.
hakchu lee  (posted 2019-05-15 15:41:28.183)
Hi, I have K10CR1 motorized rotation stage. I'm looking for APT sample codes for remote interfacing using embarcadero C++ Builder programming environment. Thank you
rmiron  (posted 2019-05-16 07:37:38.0)
Response from Radu at Thorlabs: Unfortunately, we do not have any suitable sample codes at the moment. I recommend that you contact your local technical support team. They will be able to offer you some assistance towards writing the C++ program that you require.
Dawei Liu  (posted 2019-03-23 11:55:19.597)
Hello, I just use MATLAB to run the APT and control the stage MAX341/M. Now I meet the problem "Control HW Communications Disabled". According to the previous problem, I have added the wait time to "identify" process but it still has the "disabled" problem. Can you give me some solutions? Thank you very much
user  (posted 2019-03-27 05:15:04.0)
Response from Arunthathi at Thorlabs: Thanks for contacting us. Can APT see the device without MATLAB? The error you see may be due to an incorrect serial number (please could you ensure the serial number showing in APT config has been used and whether it is the same as the one printed on the device) or this may be because the control has not been started. If the error still persists please contact techsupport@thorlabs.com directly to troubleshoot further.
david.lowndes  (posted 2018-12-07 16:46:17.537)
I think I have found a typo in "APT_Communications_Protocol.pdf" version 20 (issue 23). The command structure for MGMSG_MOT_REQ_ENCCOUNTER lists the first byte as 0x11 which I looks like a copy/paste from MGMSG_MOT_REQ_POSCOUNTER. From the function description I assume the first byte should actually be 0x0A?
rmiron  (posted 2018-12-10 12:02:55.0)
Response from Radu at Thorlabs: Thank you for taking the time to let us know, David. Having checked our source code files, I can confirm that you are correct. The first byte is 0x0A. We will amend the documentation of our serial communications protocol shortly.
shuwen.zeng  (posted 2018-11-08 16:03:36.38)
Dear friend, Can you send me an APT software that is for Windows XP? Many thanks and best regards, Shuwen ZENG
rmiron  (posted 2018-11-09 11:46:47.0)
Response from Radu at Thorlabs: Dear Shuwen, we keep an archive containing all the previous iterations of APT. I will contact you directly in order to send you the latest version that is compatible with XP.
user  (posted 2018-08-08 00:14:50.083)
Hello, i am currently developing the C# program to control the K10CR1/M, i would like to ask if the minimum requirement of the .Net framework supports the Active X module? Thank you very much
rmiron  (posted 2018-08-09 12:23:31.0)
Response from Radu at Thorlabs: APT is based on ActiveX controls and .NET is not used within the server. However, given that Windows 2008 Server is the oldest OS compatible with APT, one can assume that the software requires at least the 3.5 version of the .NET framework.
kokbin  (posted 2018-06-18 23:37:03.417)
Hi, We have a LTS300/M in our lab, we want to automate it by using activeX control instead of the pre-made one from Thorlabs (APTuser, APTconfig). However, we face a problem right from the beginning of writing the code using Microsoft Visual Studio. The steps were referred to your APT Tutorial video, but when we try to execute the program, the GUI opened in new window only shows the design, but all the buttons(jogger, enable, home, etc) and numbers(positions, velocity, etc) didn't show up. The steps that we've done so far are as follows: 1. Install "LTS300/M" APT software from Thorlabs. 2. In Microsoft Visual Studio, open "Windows Forms Application" 3. Import "MGMotor Control" from COM components under "Tools" >> "Choose Toolbox Items". 4. Draw "MGMotor Control" from "Toolbox" 5. Changed "HWSerialNum" under "Properties" to our respective serial number 6. Write code: ****************************************************************** Public class Private Sub Form_Load() AxMG17Motor1.HWSerialNum = 45847108 AxMG17Motor1.StartCtrl() End Sub End Class ****************************************************************** 6. Run. This code is executable, but having the problem as mentioned above (absent of buttons and numbering). We would like to know what is the actual problem and how do we solve the problem. Thank you and I looking forward to your reply. Thanks with best regards. Ng kokbin@um.edu.my
rmiron  (posted 2018-06-26 06:32:44.0)
Response from Radu at Thorlabs: I think this issue occurs because AxMG17Motor1 is not properly initialised and therefore its methods and properties are not recognised. Are you certain that you are not receiving any error messages or that your code only consists of the lines written above? I suggest that you change the code to: "Public Class Form1 Private Sub AxMG17Motor1_Enter(sender As Object, e As EventArgs) Handles AxMG17Motor1.Enter AxMG17Motor1.HWSerialNum = 45847108 AxMG17Motor1.StartCtrl() End Sub End Class" I will contact you directly in case this does not fix the problem.
carmen.buttler  (posted 2018-03-26 07:30:42.183)
We are having a problem with our APT software and three FW103 motors. Windows 7 recognizes the drivers when the USBs are connected and the motors show up in the firmware update window, but whenever these motors are connected, neither APT user nor APT config will run. Both throw a windows error window saying they have stopped working, with a "Problem Event Name: APPCRASH" We have several TDC001 motors connected to this same computer that run just fine when the FW103's are not connected, but APT User and Config will not run if any of the FW103's are connected, whether the TDC001's are connected or not. Any idea what the problem might be?
bhallewell  (posted 2018-04-03 12:15:41.0)
Response from Ben at Thorlabs: I will contact you directly to troubleshoot this problem. When it comes to solving software errors, it's usually best to contact your local Technical Support team directly.
matteo.bernardello  (posted 2018-03-12 10:41:26.317)
To whom it may concern, I am using a FW103H filter wheel, connected to the BSC201 High-Speed Switching Controller. I would like to control them through LabVIEW and APT software, through ActiveX. I manage it, but I would like to know more about the methods parameters. For example, I am using the MoveAbsolute method, but I don't know what does the bWait parameter imply, at the input and output of the method. Also, there are different methods that I could probably use, but I don't know what they actually do (e.g. MoveAbsoluteEnc, MoveAbsoluteEx, and many more)and I don't know what do their input and output paramenter's role. Is there an list with the description of all the methdos and ALL their input and output parameters? Thank you very much, Bests, Matteo Bernardello
bhallewell  (posted 2018-03-16 08:18:58.0)
Response from Ben at Thorlabs: Thank you for your feedback here. The bWait parameter specifies the way in which the Move command methods return. If the bWait parameter is set to 'False', the method returns as soon as the move has been initiated. If bWait is set to 'True', MoveRelative for example returns only after the motors have completed their moves. In either mode, a MoveComplete event is fired once the motor moves have been completed. You can find a full list of commands which apply to the Filter wheel within the APTServer help file > Motor Control methods.
adavid  (posted 2018-02-22 16:27:17.56)
I am using an old version of APT (1.0.22) on Windows XP. I use it with various stages connected to TDC001 cubes without issue. I have recently acquired an MFF101 motorized mount, connected by USB. The mount shows as "APT USB device" in the Windows hardware manager, so it looks like the driver installed without issue. However, the MFF101 doesn't appear in the APT User software. - Do I understand correctly that the MFF101 should show up directly in APT User? Or do I need to configure it in APT Config first? if so, how? (it doesn't appear as a motor like other stages in the pull-down menu) - Is the NFF101 not showing because my APT version is too old? If so, where can I find a software version compatible with win XP which would recognize this stage? Thanks!
bhallewell  (posted 2018-03-01 05:52:53.0)
Response from Ben at Thorlabs: Thank you for your feedback. This version of APTUser you’ve referenced is a part of the following APT Software Versions 2.11.0 (Released 17-09-10) 2.12.0 (Released 09-05-11) 2.13.0 (Released 23-01-12) The MFF* series was released at the end of 2013. I have a more recent Windows XP compatible version of Software I will send you which includes support for the MFF* series mount. It is worth checking the Change Log for our APT Software for awareness of changes in functionality across software updates. An icon for this can be found next to the Download icon for APT. https://www.thorlabs.com/software_pages/ViewSoftwarePage.cfm?Code=Motion_Control
kgosc  (posted 2018-02-06 16:33:22.12)
For different reasons I need to make my software to work on Win7 and later as well as on WinXP x86. From earlier posts I see that I'm not alone in that. The hardware used is TDC001. Will it be possible to get the latest archive version of the APT software that works with XP 32bit? Regards Krzysztof Goscinski
bhallewell  (posted 2018-02-09 03:51:26.0)
Response from Ben at Thorlabs: I'll contact you directly with an archived APT version which will generally support TDC001 on Windows XP. Please note however that there may be limitations on the hardware & functionality that this version supports. We would always recommend customers to use the latest version of our new Kinesis or APT software from this webpage. https://www.thorlabs.com/software_pages/ViewSoftwarePage.cfm?Code=Motion_Control
jinic.kim  (posted 2018-01-20 15:25:27.033)
Hello, I have LTS150 & 300 and running APT Active X on VBA. But recently, I found one of computer for a device is running under Windows XP and current version 3.21.1 seems not working on XP. Can I have APT Active X for XP if you have? Thanks!
bhallewell  (posted 2018-02-06 10:28:04.0)
Response from Ben at Thorlabs: We no longer support XP versions of software. I may be able to obtain an archived XP compatible version for you with reduced functionality. I'll contact you directly.
kkim  (posted 2018-01-02 22:31:20.123)
We have problem in using your 'Active X' module. The OS system we use and the other vision systems which go with the Thorlabs stages are in 64bit, so we tried to use 64bit APT to control the stages but, the 64 bit Active X of APT would not be installed. When we install 32bit APT, we could make it work on Visual Studio 2013 but, it made problem with other 64 bit sources. Would you please check the 64 bit SDK?
rmiron  (posted 2018-01-12 12:54:35.0)
Response from Radu at Thorlabs: Thank you for letting us know. We will contact you directly to get more information about the errors that were raised. If the SDK appears to be bugged, we will gladly look for the problem and fix it for the next release.
Eoin-S.Bolger  (posted 2017-11-07 11:54:31.403)
All of these products would be improved if Thor labs supplied a simple programming manual instead of having to use the DLL's supplied. for example simple VISA/GPIB commands.
bhallewell  (posted 2017-11-10 09:36:03.0)
Response from Ben at Thorlabs: Thank you for your feedback. Aside from the .NET & ActiveX dlls available within APT & Kinesis, we also publish our low level serial communications protocol which can be found within the 'Communications Protocol' tab within the following link. https://www.thorlabs.com/software_pages/ViewSoftwarePage.cfm?Code=Motion_Control
yamoussa.sanogo  (posted 2017-10-17 14:11:13.4)
Hello, I'm trying to interface a BSC203 in my LabVIEW application following the instructions in the manual Kinesis-LabVIEW. I'm stacked because of the lack of clear information on interfacing this instrument using LabVIEW...When use Kenesis versus APT Software? In any cases, unlike what's shown in the manual Kinesis, I didn't see any way to interface this instrument using .Net approach in LabVIEW. It would be better to make information more clear and case-oriented instead of giving a tutorial on LabVIEW, which is obviously the missions of National Instruments guys.
bwood  (posted 2017-10-20 08:36:16.0)
Response from Ben at Thorlabs: Thank you for your feedback. Kinesis is designed to be the successor to APT, which is considered to be legacy software. In most circumstances we would recommend Kinesis over APT. You can find a guide on how to use Kinesis'.NET framework with LabView at the following link, but please feel free to contact your local technical support office if you are still experiencing difficulties: https://www.thorlabs.com/Software/Motion%20Control/KINESIS/Kinesis-Labview.pdf
pgrimes  (posted 2017-09-27 16:10:07.88)
Hi, I'm trying to connect to two TDC001 cubes using serial connections over USB from python on a Raspberry Pi running Raspian linux. I can get the IDENTIFY command to run once, but it will fail after that. Using the InstrumentKit python package, I can also get a response from the TDC001 to a Hardware request by tailing the devices, but not within the python programs. Are there any particular serial configuration elements required (termination characters, etc.) to get communication to work? Most of the work in writing a pure python driver has been done by the InstrumentKit team, but some configuration information is missing. Thanks, Dr Paul Grimes, Smithsonian Astrophysical Observatory Receiver Laboratory
bhallewell  (posted 2017-11-20 05:37:24.0)
Response from Ben at Thorlabs: Thank you for getting in touch with us. I see that the InstrumentKit will communicate with APT devices through Serial communication via a Virtual COM Port. The Virtual COM port you create will need to hold parameters as outlined on page.12 of the Thorlabs APT Controllers Host-Controller Communications Protocol document which can be found in the following link. Here details of the message structure & methods are detailed also. https://www.thorlabs.com/software_pages/ViewSoftwarePage.cfm?Code=Motion_Control
fyk15isy  (posted 2017-09-21 09:30:10.07)
Hi! I'm using an LSM 300/M Rev B translation stage along with the APT User software (version 3.3.6274). However, recently the software just stopped wokring. Whenever I try to launch it, it gives me an "APT User has stopped working". OS is Windows 10. Thank you!
bhallewell  (posted 2017-09-28 10:04:33.0)
Response from Ben at Thorlabs: I will contact you directly to troubleshoot the problem with you.
aquiles  (posted 2017-08-30 16:39:55.757)
I cannot find documentation on the Thorlabs APT dll. That would be extremely helpful for developing custom GUIs and command-line applications in Python.
bhallewell  (posted 2017-09-11 08:06:31.0)
Response from Ben at Thorlabs: Thank you for your post. You can retrieve APT.dll from within the 'APT Software' setup.exe download in the following link. https://www.thorlabs.com/software_pages/ViewSoftwarePage.cfm?Code=Motion_Control Within this link we have the APTServer help file outlining each function contained. You can also find further reference to the communications protocol within the following link. https://www.thorlabs.com/Software/Motion%20Control/APT_Communications_Protocol.pdf Whilst we don't directly support Python, a following Open Source Python wrapper can be found on the following site. https://github.com/UniNE-CHYN/thorpy
vinx-d  (posted 2017-08-22 13:20:07.497)
hi, i'm using an APT stage, but when i run the software an internal error with the internal code 15492511 appears. I wanted to know i solve this problem. thanks
bhallewell  (posted 2017-08-23 09:13:27.0)
Response from Ben at Thorlabs: This is an APT Server error which is typically related to a driver error. I'd recommend a full uninstall & re-install of the latest version of software which can be downloaded from here... https://www.thorlabs.com/software_pages/ViewSoftwarePage.cfm?Code=Motion_Control I'd also recommend considering updating to our new software package Kinesis, which includes a refined interface with improved Move Sequence manager, USB-HID joystick control & device connectivity management.
lu_yan  (posted 2017-07-26 18:35:28.85)
Hi, I wanted to work with micromanager to control one of our APT stage, but it seems that I will need to install 64-bit APT user v1.0.0.3. Could you please send me a copy of the software? Thanks, Lu
bhallewell  (posted 2017-07-27 10:51:53.0)
Response from Ben at Thorlabs: I will contact you directly to assist you
dolerite  (posted 2017-05-23 13:04:58.667)
Dear Manager, After Installed APT Software. I tried to Active X of APT to make a program with Visual C++ to control KDC101. But It is impossible to insert "Active X" in the dialogue box because "MGMotor Control" is not listed in the list of Active X. Please let me know how to insert "Active X" supplied by APT software in the Visual C++ program.
bhallewell  (posted 2017-06-02 09:17:53.0)
Response from Ben at Thorlabs: You can find our video tutorials in the following link to clarify the steps for inserting the ActiveX control in your Visual C++ project. https://www.thorlabs.com/tutorials/APTProgramming.cfm If the Active X control doesn't exist in this, this may be due to installing a version of APT which isn't compatible with platform type of Visual Studio e.g. running 64-bit APT ActiveX controls within a 32-bit platform. I will contact you directly to assist you.
jiezhang  (posted 2017-05-11 13:51:00.073)
I have a TDC001 motor controller and a linear stage with Z812B motor attached. The serial umber is 83829586. I am trying to use LabVIEW to operate. It worked fine for a while, but stops working now. Doesn't matter what I do, the "active" led is always flashing. The only way to stop its flashing is to unplug the power supply. Can anybody help me to understand what is wrong? Thanks, Jie
bhallewell  (posted 2017-05-22 08:30:26.0)
Response from Ben at Thorlabs: Most commonly the Active LED is configured to flash when the motor reaches a forward or reverse limit switch, or when the Ident button is pressed in the GUI panel. It can also be configured to be lit when the motor is moving. It is worth checking what states are assigned to flash the LED from Settings > Advanced in Kinesis. I will contact you directly to troubleshoot this with you.
giulia.sinnl93  (posted 2017-04-04 06:18:02.557)
Is there a way to solve the "Control HW communications disabled" error? I'm trying to connect your motorized stage MTS50-Z8 with Labview but I keep getting that message. The VI is pretty basic: I set the serial number, then I use StartCtrl method, then I have the executing loop, and finally StopCtrl. As I connect the motorized stage to the PC the APT User interface works fine, while when I create the ActiveX panel in my VI the GUI remains dead. I've already tried the following things: using the correct serial number, restarting the computer, shutting down the apt software while running LabView. Any suggestions?
bwood  (posted 2017-04-11 11:56:08.0)
Response from Ben at Thorlabs: Thank you for your feedback, we will contact you directly to troubleshoot this issue. One potential cause of this issue is that StartCtrl may not have completed initialising. If you are using this in LabView or other 3rd party environment then please add a Wait after the StartCtrl method to allow this to complete before calling any further methods.
erfan.qaderi  (posted 2016-11-15 04:31:57.38)
my apt software does not recognize my thorlabs piezo control module - the serial number does not appear in view>graphical panel>piezo - what should I do?
bhallewell  (posted 2016-11-15 10:31:24.0)
Response from Ben at Thorlabs: We will contact you directly to configure your setup. I would advise using our new Kinesis software package as configuring hardware is more straightforward than in APT.
alenciouslo  (posted 2016-08-30 19:45:53.82)
Is there a version of the APT software that support 32 bits WinXP? If so, how do I obtain it?
bwood  (posted 2016-08-30 10:32:14.0)
Response from Ben at Thorlabs: Thank you for you question. I will be in contact with you directly with the latest archive version of APT which is compatible with XP.
pananrin_1  (posted 2016-01-18 05:14:38.063)
I want to download software old version. How to download?
bhallewell  (posted 2016-01-18 11:02:55.0)
Response from Ben at Thorlabs: Thank you for your question. You can find previous versions of APT & Kinesis Motion Control software in the 'Archive' tab in the link below. Should there be an alternative version you require, please contact your local support entity & we can sort this for you. https://www.thorlabs.com/software_pages/ViewSoftwarePage.cfm?Code=Motion_Control