Staubli SDK
.NET
Python
LabVIEW
Plug & Play
わずか数分でロボットを接続できます。ライセンス マネージャーをインストールしたり、USB キーをインストールしたりする必要はありません。ライブラリのみを参照してください。
ロボットにインストールするプラグインはありません
ロボットコントローラーによって標準として提供されるネットワークプロトコルの使用。
ROS
30日間のトライアル
30日間無料で試してみてください、コミットメントなし、登録は必要ありません
一度支払い、永遠に使用してください
ロボット、開発者、または再配布されたソフトウェアの数に関係なく、永続的なライセンス、サブスクリプションは必要ありません
Staubli Communication Library
Staubliロボットでネイティブに利用可能なイーサネットプロトコルを実装します
100% managed assembly
CS8およびCS9コントローラとの迅速な統合
最新の、十分に文書化されたライブラリ
物理的なUSBキーライセンスは不要
Staubli SDK機能: CS8 & CS9用SOAPプロトコル
ロボットを移動します
リモートに電力を供給し、共同移動コマンドまたはデカルト座標の送信。Frame intermediate = controller.Soap.ForwardKinematics(robot: 0, joints).Position;intermediate.Py += 0.05;controller.Soap.SetPower(true);// Joint move to joint values, in radiansIMoveResult result = controller.Soap.MoveJJ(robot: 0, joints, mdesc);// Joint move to a Cartesian frameresult = controller.Soap.MoveJC(robot: 0, target, mdesc);// Straight line to a Cartesian frameresult = controller.Soap.MoveL(robot: 0, target, mdesc);// Circle through an intermediate frame, to a target frameresult = controller.Soap.MoveC(robot: 0, intermediate, target, mdesc);// The controller accepted the move, or tells why notif (result.ReturnCode != MotionReturnCode.Success)Console.WriteLine($"Move {result.Id} refused: {result.ReturnCode}");controller.Disconnect();}Click to see the full codeアプリケーション
タスクのロード、開始、停止、一時停止、実行の監督。var controller = new StaubliController();controller.Connect("192.168.0.254");// Path of the project on the disk of the controllerstring project = "Disk://myProject/myProject.pjx";// Load the application in memory, without starting itcontroller.Soap.LoadProject(project);// Start itcontroller.Soap.StartApplication(project);controller.Disconnect();}Click to see the full code現在のポジション
ロボットの現在位置 (デカルト座標と関節角度を含む) を取得する。var controller = new StaubliController();controller.Connect("192.168.0.254");// Joints and flange position of the first robot, in one requestCartesianJointPosition position = controller.Soap.GetCurrentCartesianJointPosition(robot: 0);// Joint values, in radiansdouble[] joints = position.JointsPosition;// Flange position in the world frame: X, Y, Z in meters, Rx, Ry, Rz in radiansCartesianPosition flange = position.CartesianPosition;Console.WriteLine($"X={flange.X} Y={flange.Y} Z={flange.Z}");Console.WriteLine($"Rx={flange.Rx} Ry={flange.Ry} Rz={flange.Rz}");controller.Disconnect();}Click to see the full code直接および逆の運動学
ジョイントの角度からデカルト位置を計算し、その逆を使用します。var controller = new StaubliController();controller.Connect("192.168.0.254");double[] current = controller.Soap.GetCurrentJointPosition(robot: 0);JointRange range = controller.Soap.GetJointRange(robot: 0);// Target: the current flange frame, 50 mm higherIForwardKinematics fk = controller.Soap.ForwardKinematics(robot: 0, current);Frame target = fk.Position;target.Pz += 0.050;// Keep the current configuration of the armIReverseKinematics ik = controller.Soap.ReverseKinematics(robot: 0, current, target, fk.Config, range);if (ik.Result == ReversingResult.Success)Console.WriteLine(string.Join(", ", ik.Joint));elseConsole.WriteLine($"No solution: {ik.Result}"); // OutOfWorkspace, JointOutOfRange...controller.Disconnect();}Click to see the full codeインフォメーション
モデル、ソフトウェアのバージョン、電源の状態など、コントローラと制御対象ロボットの特性を取得します。var controller = new StaubliController();controller.Connect("192.168.0.254");// The robots driven by the controller. The index in this array// is the robot number that the other methods take.Robot[] robots = controller.Soap.GetRobots();for (int i = 0; i < robots.Length; i++){Robot robot = robots[i];Console.WriteLine($"Robot {i}: {robot.Arm}"); // for example TX2-60Console.WriteLine($" Kinematic: {robot.Kinematic}"); // Anthropomorph6, Scara...Console.WriteLine($" Mount type: {robot.MountType}"); // Floor, Ceiling, WallConsole.WriteLine($" Tuning: {robot.Tuning}");}controller.Disconnect();}Click to see the full codeエントリ /出力
コントローラーのエントリと出力をリスト、読み取り、書き込みvar controller = new StaubliController();controller.Connect("192.168.0.254");// Names as returned by GetAllPhysicalIosstring[] names = { @"BasicIO-1\%I0", @"BasicIO-1\%Q0" };// One state per name, in the same orderPhysicalIoState[] states = controller.Soap.ReadIos(names);for (int i = 0; i < names.Length; i++){PhysicalIoState state = states[i];// State tells if the name exists on this controllerif (state.State != PhysicalIoEnumState.Defined){Console.WriteLine($"{names[i]}: {state.State}");continue;}Console.WriteLine($"{names[i]} = {state.Value} locked={state.Locked} simulated={state.Simulated}");}controller.Disconnect();}Click to see the full codeドキュメントを閲覧します
よくある質問
Staubli ロボット側に何かインストールする必要はありますか。
いいえ。SDK はコントローラの SOAP サーバを使います。Staubli Robotics Suite (SRS) も使うインタフェースです。コントローラがネットワークから到達可能で、要求する操作の権限を持つユーザアカウントが必要です。
どの Staubli コントローラに対応していますか。
CS8 と CS9 コントローラに、同じ API で対応しています。SDK はコントローラのロボット、位置、入出力、VAL 3 アプリケーションを読み取り、ロボットを動かすこともできます。
Staubli SDK の価格はいくらですか。
ライセンスは永久で、サブスクリプションはありません。Standard:300 EUR / 350 USD。Pro:600 EUR / 700 USD。Source:1200 EUR / 1400 USD。1 つのライセンスで 1 つの組織の 1 つの所在地をカバーし、開発者、ロボット、納入するアプリケーションの数に制限はありません。アップデートは Standard で 1 年間、Pro と Source で 3 年間含まれます。大学には 40% の割引があります。
購入前に SDK を試せますか。
はい。初回使用から 30 日間、登録なしですべての機能を使えます。試用期間はご要望に応じて延長できます。Windows 用デモアプリケーションで、コードを書かずにお使いのロボットで SDK を試せます。
SDK は Linux と macOS で動作しますか。
はい。ライブラリは .NET Standard 2.0 と 2.1 向けにコンパイルされており、Windows、Linux、macOS の x64 と ARM で動作します。Linux または macOS で Python を使う場合は、.NET ランタイムをインストールし、Python を起動する前に export PYTHONNET_RUNTIME=coreclr を実行してください。
Python から SDK を使えますか。
はい。pip install UnderAutomation.Staubli でパッケージと pythonnet がインストールされ、pythonnet が .NET ライブラリを Python プロセスに読み込みます。対応バージョンは Python 3.7 から 3.13 です。API は .NET と同じで、名前は Python の命名規則に従います。
LabVIEW 版はありますか。
LabVIEW ライブラリはご要望に応じて提供しています。お問い合わせください。
ソースコードは入手できますか。
はい、Source ライセンスで入手できます。ライブラリの C# コード全体と Visual Studio ソリューションが含まれます。使用許諾契約 (EULA) の範囲内で、変更してお客様のアプリケーションで使用できます。Standard と Pro ライセンスでは難読化された DLL のみが提供されます。
ダウンロードしてテストする
Windowsアプリケーションの例SDKのすべての機能を簡単なインターフェイスでテストできます。 この例は、.NET 8を使用して「Self Conted」および「Single File」でコンパイルされています。アプリケーションはインストールなしでポータブルです。
UnderAutomation.Staubli.Showcase.Forms.exe (139 MB)ダウンロードすることにより、一般的な使用条件を受け入れます。
利用規約を見るお見積り・ご注文
価格
ライブラリは無料でダウンロードでき、30日間テストできます。 この期間の後、トライアル期間を延長するように頼むか、自分に最適なライセンスを購入することができます: サイト (不明瞭なバイナリのみ) またはソース (ソースコード) 。 購入後、1年のメンテナンス期間があり、サポートへの優先アクセスと更新の可能性が得られます。 使用するライセンスを購入する場合、ロボットブランドにリンクされているため、顧客に再配布するロボット、開発者、またはソフトウェアの数に関係なく、繰り返し料金を払うことなく永久に使用できます。 あなたがディストリビューターであり、お客様に当社の製品のいずれかを提供したい場合は、特別な条件と価格について話し合うためにお問い合わせください。
標準サイトライセンス
$350一生$210大学向け (40% 割引)今すぐ購入産業環境向けに設計されており、生涯にわたる全機能へのアクセスを提供します。1 年間のメンテナンスが含まれています (アップデートへのアクセス)サポートが優先されず、メンテナンスが 1 年間であることを除いて、Pro ライセンスと同じ条件です。内部情報源はありません。 難読化された DLL のみが提供されます。ビデオ会議によるサポートはありません (電子メールのみ)。最も人気のあるプロライセンス
$700一生$1060$420大学向け (40% 割引)今すぐ購入優先サポートと長期メンテナンスが必要な重要な実稼働環境向け。3 年間のメンテナンスが含まれており (アップデートへのアクセス)、この期間中の更新注文はありません (事務手続きは不要)完全かつ永続的なSDK: 定期的なサブスクリプションは必要ありません。ライセンスは永遠にあなたのものであり、ロボットブランドのすべてのプログラミング言語で機能します。指示された郵便住所で、ライセンスを保持している組織がのみ使用できます。 すべてのチーム開発者は、開発マシンの数に関係なく、同じライセンスを共有します。SDKを使用して開発されたアプリケーションは、接続するロボットの数に関係なく、追加費用なしで顧客の無制限の数に配信できます。ライセンスは、機能のロックを解除するコードを呼び出すためのパスワードの一種です。 インストールする追加のソフトウェアはありません。 USBキーはありません。優先サポート (平均 24 時間未満)リモート アシスタンス (電子メールおよび最大 2 時間のビデオ会議)内部情報源はありません。 難読化された DLL のみが提供されます。いつでもソースにアップグレード (差額を支払う)ソースコードライセンス
$1400一生$840大学向け (40% 割引)今すぐ購入完全な技術主権、詳細なカスタマイズ、完全な独立性を実現します。プロライセンスと同じ条件C# によるライブラリの完全な内部コード数年かけて開発された数千行のコードを含む Visual Studio ソリューション一般利用規約で定義されている制限内で、このソース コードを変更してアプリケーションで使用できます。完全なソースコードアクセスと付属のコンテキストファイル(AGENTS.md)により、AIコーディングエージェント(Claude、Copilot、Cursor、Codex等)との連携が最適化され、LLMがSDK内部構造を正確に把握できます