1.1 버전 및 범위
개요
SDK 공개 주 진입점:
- C++17:
include/arm_api.h - C99:
include/c_arm_api.h
연결 의미
Arm::Connect()/Arm_Connect()호출자는controllerIp와 선택 사항인teachPanelIp만 명시적으로 전달하면 됩니다.teachPanelIp를 비워 두면 SDK가 기본 연결 규칙에 따라 주소를 보완합니다.
공개 모듈
| 모듈 | 진입점 | 설명 |
|---|---|---|
Arm | include/arm_api.h | 주 진입점 |
ControllerInfo | include/info.h | 정보 조회, 서보, 소프트 모드 |
AlarmClient | include/alarm.h | 알람 조회 및 리셋 |
MotionControl | include/motion.h | 운동, 자세, 페이로드 |
JoggingControl | include/jogging.h | 스텝 티칭, 연속 조그, 정지 |
ProgramManager | include/program.h | 프로그램 실행, 프로그램 포인트 |
BasScript | include/bas_script.h | 생성기 |
IoSignals | include/io_signals.h | IO 읽기/쓰기 |
RegisterBank | include/registers.h | R/PR/SR/MR/MH/MI |
TrajectoryManager | include/trajectory.h | 궤적 제어 |
RealTimeTrajectoryControl | include/real_time_trajectory.h | 실시간 궤적 제어 |
ControllerFileManager | include/file_manager.h | 파일 관리 |
ExtensionClient | include/extension.h | 플러그인 조회, 전환, EasyService 호출 |
TopicPubSub | include/sub_pub.h | WebSocket 구독/발행 |
CoordinateSystemManager | include/coordinate_system.h | 사용자 / 도구 좌표계 관리 |
ModbusClient | include/modbus.h | Modbus 마스터 및 슬레이브 핸들 |
패키지 의존성
build/build.ps1는output/release/cpp17-sdk/,output/release/c99-sdk/,AgilebotCppSdk-cpp17.zip,AgilebotCppSdk-c99.zip을 생성합니다.- C++17 릴리스 디렉터리와 zip 패키지에는 컴파일 시 필요한 jsoncpp 의존성인
include/json/및lib/jsoncpp.lib가 추가로 포함됩니다. - C99 헤더는 jsoncpp 타입을 외부에 노출하지 않으므로 C99 패키지에는
include/json/및lib/jsoncpp.lib가 포함되지 않습니다. 단, 두 패키지의runtime/에는 실행에 필요한jsoncpp.dll이 포함됩니다. - 예제 프로젝트는 릴리스 패키지 안의 의존성을 우선 사용하며, 사용자 환경에 jsoncpp가 미리 설치되어 있을 필요가 없습니다.
범위 설명
- C++17이 주요 인터페이스입니다.
- C99는
ArmHandle*세션 모델을 사용하며 다음을 다룹니다:core / info / alarm / motion / program / bas-script / jogging / extension / registers / signals / sub-pub / trajectory / file-manager / coordinate / modbus。 - 예제는
ControllerInfo,MotionControl,JoggingControl,ProgramManager,BasScript,ExtensionClient,CoordinateSystemManager, C99Arm Info, C99Arm Alarm, C99Arm Motion, C99Arm Program, C99Arm Registers, C99Arm Signals, C99Arm Trajectory, C99Arm FileManager, C99Arm Jogging, C99Arm Extension, C99Arm SubPub, C99Arm CoordinateSystem, C99Arm Modbus를 포함합니다. - C99 실시간 궤적 분할은
ArmTrajectorySegmentC로 외부에 제공됩니다.
C99 BasScript 생성기
C99는 ArmBasScriptHandle / ArmBasExtraParamHandle 을 통해 BasScript 생성기 기능을 제공합니다. 자주 사용하는 진입점에는 Arm_BasScript_Create() , Arm_BasScript_CreateWithName() , Arm_BasScript_AppendLine(s) , Arm_BasScript_GetText() , Arm_BasScript_Execute() 가 있습니다. 전체 함수는 include/c_arm_bas_script.h 와 4.6 C99 BasScript 생성기를 참고하세요.