Staubli SDKStäubli 로봇을 자체 소프트웨어에서 제어
스토브리 산업용 로봇과 통신하는 .NET, Python, LabVIEW 애플리케이션을 빠르게 만들 수 있습니다. 바로 쓸 수 있는 소프트웨어 라이브러리입니다. PC가 네트워크 케이블로 로봇과 통신합니다.
300 € / $350부터, 1회 결제

1// dotnet add package UnderAutomation.Staubli2using UnderAutomation.Staubli;34var controller = new StaubliController();5controller.Connect("192.168.0.254");67double[] joints = controller.Soap.GetCurrentJointPosition(robot: 0);8var tasks = controller.Soap.GetTasks();9var ios = controller.Soap.GetAllPhysicalIos();
제공되는 것
Plug & Play
단 몇 분만에 로봇을 연결하세요. 설치할 라이센스 관리자도 없고 USB 키도 없습니다. 라이브러리만 참조하세요.
로봇에 설치할 플러그인이 없습니다
로봇 컨트롤러가 표준으로 제공 한 네트워크 프로토콜 사용.
30일 평가판
30일간 무료, 약정 없음, 등록 필요 없음
한 번 지불하고 영원히 사용하십시오
로봇, 개발자 또는 재배포 된 소프트웨어에 관계없이 영구 라이센스, 구독 필요 없음
Staubli SDK 기능: CS8 & CS9용 SOAP 및 FTP
각 기능에는 코드 예제가 있습니다. 클릭하면 전체 코드를 볼 수 있습니다.
로봇 이동
원격으로 전원을 켜고 조인트 또는 데카르트 좌표로 모션 명령을 전송할 수 있습니다.
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();}
애플리케이션 처리
작업의 로드, 시작, 중지, 일시 중지 및 실행을 감독합니다.
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();}
파일 전송
컨트롤러의 파일을 나열, 업로드, 다운로드, 삭제하고, VAL 3 애플리케이션 전체를 한 번의 호출로 전송합니다. FTP 또는 Staubli Robotics Suite로 에뮬레이션된 컨트롤러의 .controller 파일로 동작합니다.
var controller = new StaubliController();controller.Connect(parameters);// The application must not be in memory while its files are replacedcontroller.Soap.StopAndUnloadAll();// Copies C:\MyApps\myApp and its sub-folders to /usr/usrapp/myApp on the controllerstring remoteFolder = controller.File.UploadApplicationToController(@"C:\MyApps\myApp",progress => Console.WriteLine($"{progress:0}%"));// /usr/usrapp/myApp/myApp.pjx is Disk://myApp/myApp.pjx for the SOAP methodscontroller.Soap.LoadProject("Disk://myApp/myApp.pjx");controller.Soap.StartApplication("Disk://myApp/myApp.pjx");controller.Disconnect();}
위치 및 키네마틱스
로봇의 관절 값과 직교 좌표 위치를 읽고, 컨트롤러에서 정기구학과 역기구학을 계산합니다.
var controller = new StaubliController();controller.Connect("192.168.0.254");// Joint values in radians, here the current onesdouble[] joints = controller.Soap.GetCurrentJointPosition(robot: 0);// The controller computes the flange frame for these jointsIForwardKinematics fk = controller.Soap.ForwardKinematics(robot: 0, joints);// Position of the frame origin, and its orientation as a rotation matrixFrame frame = fk.Position;Console.WriteLine($"P = [{frame.Px}, {frame.Py}, {frame.Pz}]");// Configuration of the arm for this position (shoulder, elbow, wrist)Config config = fk.Config;Console.WriteLine(config);controller.Disconnect();}
정보
모델, 소프트웨어 버전, 전원 상태 등 컨트롤러와 제어 중인 로봇의 특성을 파악할 수 있습니다.
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();}
입력/출력
컨트롤러 입력 및 출력 목록, 읽기 및 쓰기
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();}
실제 동작 보기
SDK와 함께 제공되는 데모 애플리케이션의 동영상과 스크린샷입니다.
Windows 응용 프로그램 예제
코드를 작성할 필요가 없습니다. 데모 애플리케이션으로 로봇에서 SDK를 테스트하세요.

Github의 예
이 SDK의 사용 예는 Github에서 사용할 수 있습니다.
파이썬 예제
로봇의 데카르트 위치를 복구하기 위해 파이썬 으로이 SDK의 작동 예.
명령 하나로 설치
언어를 선택하세요. 30일 체험은 처음 사용할 때 시작되며, 등록이 필요 없습니다.
.NET
C# 및 VB.NET용 NuGet 패키지. .NET Framework부터 최신 .NET까지 지원합니다.
dotnet add package UnderAutomation.StaubliPython
PyPI의 Python 패키지. Windows, Linux, macOS를 지원합니다.
pip install UnderAutomation.StaubliAI 에이전트
AI 코딩 에이전트(Claude Code, Cursor, Copilot 등)용 Skill: 어시스턴트가 SDK의 API를 알게 됩니다.
npx skills add underautomation/skills --skill underautomation-staubli-csharp문서를 찾아보십시오
문서를 사용하면 라이브러리로 신속하게 개발을 시작할 수 있습니다. 모든 지원되는 언어에서 동일한 기능을 사용할 수 있습니다.
문서를 찾아보십시오
문서를 사용하면 라이브러리로 신속하게 개발을 시작할 수 있습니다. 모든 지원되는 언어에서 동일한 기능을 사용할 수 있습니다.
.NET 시작하기
NuGet.org에서 제공되는 100% 관리형, 종속성 없는 라이브러리를 사용하여 원하는 버전 및 아키텍처(x86, x64, ARM, Linux, Windows, MacOS, .NET Framework, .NET Core, UWP 등)로 C# 또는 VB로 애플리케이션을 코딩할 수 있습니다.
Python 시작하기
이 라이브러리를 사용하여 로봇과 통신하는 Python 프로그램을 빠르게 개발하세요. PyPI에서 사용할 수 있습니다.
가이드 및 실용 문서
각 문서는 하나의 작업을 단계별로 설명하며, 복사해서 쓸 수 있는 코드를 제공합니다.
Get the robot position
Read the position of a Staubli robot from C# or Python: joints, flange or tool position, and which method to choose. Complete program included.
Read and write I/O
Find the I/O names, wait for an input and switch an output of a Staubli CS8 or CS9 controller from C# or Python.
Move the robot from a PC
Power the arm and move a Staubli robot in a straight line from C# or Python, without a VAL 3 program. Which move to choose, and the frequent errors.
Run a VAL 3 program
Load a VAL 3 project from the disk of the controller, start it, check its tasks and stop it, from C# or Python.
Monitor the state of the robot
Poll the applications and the VAL 3 tasks of a Staubli controller, print each change of state and each runtime error.
물가
라이브러리는 무료로 다운로드 할 수 있으며 30 일 동안 테스트 할 수 있습니다. 이 기간이 지나면 시험 기간을 연장하거나 가장 적합한 라이센스를 구입하도록 요청할 수 있습니다 : 사이트 (가로 된 바이너리 전용) 또는 소스 (소스 코드). 구매 후 1 년의 유지 보수 기간이있어 지원 및 업데이트 가능성에 우선적으로 액세스 할 수 있습니다. 사용할 라이센스를 구매하면 로봇 브랜드와 연결되어 있으며 고객에게 재분배하는 로봇, 개발자 또는 소프트웨어의 수에 관계없이 반복 비용없이 영원히 사용할 수 있습니다. 유통 업체이고 고객에게 당사 제품 중 하나를 제공하려면 특별 조건과 가격에 대해 문의하십시오.
표준 사이트 라이센스
•
프로 라이선스
•
소스 코드 라이선스
•
자주 묻는 질문
GitHub의 라이브러리
각 패키지는 변경 내역과 함께 GitHub에 게시됩니다.