Skip to content

Secondary Development API(Robot Basic Parameters Settings)

This Chapter Covers System Initialization, servo control, motion control, Coordinate System Calibration, IO Communication, variable management, callback functions, and other core interfaces.

Function Category Index

System And Initialization

FunctionDescription
NRC_StartControllerStart Controller
NRC_GetControlInitCompleteWait For Initialization To Complete
NRC_SetOperationModeSet Operation Mode(Teach0/Remote1/Auto2)
NRC_RebootControllerReboot Controller
NRC_RestoreFactorySettingsRestore Factory Settings
NRC_ModifyControllerIPModify Controller IP
NRC_GetRobotSumGet Robot Count
NRC_SetRobotModeSet Multi-robot mode
NRC_ShieldedTeachingPendantDisable Teach Pendant Connection Detection(must be called before startup)
NRC_GetNexMotionLibVersionGet Library Version
NRC_GetSyncVersionGet Sync Version Number
NRC_DelaymsDelay(milliseconds)
NRC_LogInfoPrint Log

Servo Control

FunctionDescription
NRC_PowerOn/NRC_PowerOffServo Power On/off
NRC_ServoEnable/NRC_ServoDisableEnable/disable servo in teach mode(requires deadman switch)
NRC_SetServoReadyStatusSwitch Servo Ready Status
NRC_GetServoStatusGet Servo Status(0-Disabled1-Ready2-Alarm3-Enabled)
NRC_GetPowerOffSaveSignalGet Power Status
NRC_ClearServoError/NRC_ClearAllErrorClear Servo/all errors

Motion Control

FunctionDescription
NRC_RobotMoveJointRobot Point-to-point motion
NRC_RobotMoveJointSyncRobot External Axis Point-to-point motion
NRC_RobotMoveLineSyncRobot Linear Motion(body+externalaxis)
NRC_JogMove/NRC_JogMoveStop/NRC_JogMoveStopAllJog Control
NRC_StartResetPointReturn To Reset Point
NRC_SetTargetVelocitySet Target Velocity(PVmode)
NRC_PosReachableCheck If Position Is Reachable
NRC_SetTargetPositionSet Robot Target Position
NRC_GetPlanningPositionGet First Position In Planning Queue
NRC_PV_SetTargetVelocity/NRC_PV_SetTargetAccAndDecPv Mode Velocity/acceleration

Speed Control

FunctionDescription
NRC_SetTeachRunSpeedPer/NRC_GetTeachRunSpeedPerTeach Speed Percentage
NRC_SetAutoRunSpeedPer/NRC_GetAutoRunSpeedPerAuto Speed Percentage
NRC_GetAngularVelGet Joint Angular Velocity(rad/s)
NRC_GetLinerVelGet Linear Velocity(mm/s)
NRC_GetAxisVelSyncGet External Axis Velocity

Jog Configuration

FunctionDescription
NRC_SetJogJointSpeedConfig/NRC_GetJogJointSpeedConfigJog Joint Speed
NRC_SetJogRectangularSpeedConfig/NRC_GetJogRectangularSpeedConfigJog Cartesian Speed
NRC_SetJogSensitivitySpeedConfigJog Sensitivity
NRC_SetJogMoveCalculateNumJog Interpolation Point Count

Coordinate System And Calibration

FunctionDescription
NRC_SetCurrentCoord/NRC_GetCurrentCoordSwitch/get current coordinate system
NRC_PositionACStoMCS/NRC_PositionMCStoACSJoint↔Cartesiancoordinateconversion
NRC_TcpCalculateTCP Fixed Distance Offset Calculation

Tool:

FunctionDescription
NRC_SetToolCoordParm/NRC_GetToolCoordParmSet/get tool parameters
NRC_CalibrationToolCoord_7Pos7-point/6-pointcalibration
NRC_CalibrationToolCoord_2Pos_SetPos/_Cacl/_Save2-point calibration(three steps)
NRC_SwitchToolCoord/NRC_GetCurrentToolCoordSwitch/get current tool

UserCoordinate:

FunctionDescription
NRC_SetUserCoordParm/NRC_GetUserCoordParmSet/get user coordinate parameters
NRC_CalibrationUserCoordUser Coordinate Calibration(3-pointmethod)
NRC_SwitchUserCoord/NRC_GetCurrentUserCoordSwitch/get current user coordinate

Position And Zero Point

FunctionDescription
NRC_GetCurrentPos/NRC_Rbt_GetCurrentPosGet Current Position
NRC_GetOtherToolPosGet Position Under Other Tool Coordinate System
NRC_GetEncoderPositionGet Encoder Position
NRC_SetCurrentPosToZeroPos/NRC_Rbt_SetCurrentPosToZeroPosSet Zero Point/clearmulti-turnvalue
NRC_Rbt_SetSingleCircleValue/NRC_Rbt_GetSingleCircleValueSet/getsingle-turnvalue

External Axis

FunctionDescription
NRC_SetSyncJointNumSet External Axis Count
NRC_SetSyncJointPara/NRC_GetSyncJointParaSet/get external axis parameters
NRC_SetSyncGroupCarbinarion/NRC_CalSyncCalibrationResultExternal Axis Calibration
NRC_SetCurrentSyncPosToZeroPosExternal Axis Zero Point Setting
NRC_SingleSyncAxisMoveJConstVel_For_CustomInstructionCBExternal Axis Constant Velocity Motion
NRC_GetCurrentSyncPos/NRC_Rbt_GetCurrentSyncPosGet External Axis Position

Torque And Dynamics

FunctionDescription
NRC_SetTargetTorque/NRC_GetActualTorqueSet/get torque
NRC_GetActualCurrent/NRC_GetMaxCurrentCurrent Control
NRC_GetRatedTorque/NRC_GetTorqRated Torque
NRC_SetIdentityParamSet Dynamics Identification Parameters
NRC_RunSafeCheckProgram/NRC_RunIdentifyProgramSafety Check/dynamics identification
NRC_SetCollisionParam/NRC_SetCollisionSwitchCollision Detection

IO Control

FunctionDescription
NRC_DigOut/NRC_DigOutByBoardDigital Output
NRC_ReadDigOut/NRC_ReadDigOutByBoardRead Digital Output
NRC_ReadDigIn/NRC_ReadDigInByBoardRead Digital Input
NRC_AnaOut/NRC_ReadAnaOut/NRC_ReadAnaInAnalog IO

Communication Interface

FunctionDescription
NRC_SetCANBaudRate/NRC_SendCANDataCAN Communication
NRC_SetCommunicationParam/NRC_SetCommunicationStatusTCP Communication Parameters
NRC_SetTcpMessageCallbackTCP Message Callback
NRC_CommSendMessageSend TCP Message
NRC_GetModbusSlaveConnectStatus/NRC_GetModbusMasterConnectStatusMod Bus Status
NRC_SetSocketCustomProtocalCB/NRC_SendSocketCustomProtocalCustom Socket Protocol

Messages And Errors

FunctionDescription
NRC_SetMsgHappenCallbackMessage Occurrence Callback
NRC_FirstMessagePop/NRC_LastMessagePopPop First/last message
NRC_GetMessage/NRC_GetMessageSizeGet Message
NRC_ClearMessageClear Message Queue
NRC_TriggerErrorReportActively Trigger Error Report

Variable Management

FunctionDescription
NRC_SetBoolVar/NRC_ReadBoolVarBoo L Variables
NRC_SetIntVar/NRC_ReadIntVarIn T Variables
NRC_SetDoubleVar/NRC_ReadDoubleVarDouble Variables
NRC_SetGlobalPositionVariable/NRC_GetGlobalPositionVariableGlobal Position Variable
NRC_SetGlobalPositionVariableNote/NRC_GetGlobalPositionVariableNoteGlobal Position Variable Comment
NRC_GetCurrentTimeGet Current Time

Robot Parameters

FunctionDescription
NRC_SetRobotTypeConfig/NRC_GetRobotTypeConfigRobot Type
NRC_Rbt_SetRobotTypeConfig/NRC_Rbt_GetRobotTypeConfigRobot Type(multi-robotversion)
NRC_SetRobotDHConfig/NRC_GetRobotDHConfigDh Parameters
NRC_SetRobotJointConfigJoint Parameters
NRC_SetRobotDecareConfig/NRC_GetRobotDecareConfigCartesian Parameters
NRC_CalcConfigurationCalculate Robot Configuration
NRC_GetRobotAxisSumGet Robot Axis Count
NRC_GetSyncAxisSumGet External Axis Count
NRC_SetRobotRangeLimit/NRC_GetRobotRangeLimitRange Limits
NRC_SetServoMapRelation/NRC_SetAllServoMapRelationServo Map Relationships
NRC_GetConnectServoTypeListGet Connected Servo Types
NRC_GetSlaveNumByIDGet Slave Number By ID
NRC_GetPDOAddrMapGet P Do Mapping Address
NRC_GetEthercatIOConfigGet Ether Cat IO Configuration
NRC_EnableCustomIOFunctionEnable Custom IO Function
NRC_SetCustomIODoutConfig/NRC_SetCustomIODinConfigCustom IO D Out/d in configuration
NRC_SetCheckExioEnableBuilt-in tcp interface extended IO detection

Motion Auxiliary Parameters

FunctionDescription
NRC_SetInterpolationMethodSet Interpolation Method(S-curve/trapezoidal)
NRC_SetAbsolutePosResolutionAbsolute Position Resolution
NRC_SetDynamicTrackingErrorMaxAllowDynamic Tracking Error Value
NRC_SetStaticTrackingErrorMaxAllowStatic Tracking Error Value
NRC_SetTeachMaxStepSpeed/NRC_GetTeachMaxStepSpeedTeach Max Single-step speed
NRC_ecatSetCommand/NRC_ecatGetCommandServo Command Word Read/write

Callback Functions

FunctionDescription
NRC_SetCompleteOneInstrCallBackSet Instruction Completion Callback
NRC_SetJobFileCustomInstructionCBSet Custom Instruction Callback
NRC_SetMsgHappenCallbackSet Message Callback
NRC_SetSocketCustomProtocalCBSet TCP Protocol Callback
NRC_SetFaultResetCBSet Fault Reset Button Callback
NRC_robotRunCycle_CallbackSet Communication Cycle Callback(1ms)

Detailed API Documentation

This Chapter Introduces System Startup, initialization, controller network configuration, reboot, and factory reset functions.

1.1SystemStartupandInitialization

Function NameFunction Description
NRC_StartControllerSystem Startup Function.
NRC_GetControlInitCompleteCheck If System Initialization Is Complete.
NRC_RestoreFactorySettingsRestore Factory Settings.
NRC_RebootControllerReboot Controller.
NRC_ModifyControllerIPModify Controller IP Address.
NRC_GetControlCycleGet The Communication Cycle Between Controller And Servo.
NRC_ShieldedTeachingPendantDisables Teach Pendant Connection Detection(mustbecalledbeforethesystemstartupfunction.).
NRC_GetRobotSumGet Robot Count.
NRC_SetRobotModeSet Robot To Multi-robot mode.
NRC_DelaymsSystem Delay For A Certain Time.
NRC_LogInfoPrint Log To The Nrc System.
NRC_GetNexMotionLibVersionGet Ne X Motion Library Version Information.
NRC_GetSyncVersionGet Sync Version Number.

1.2ServoEnableandStatusControl

Function NameFunction Description
NRC_PowerOnServo Power On(enable).
NRC_PowerOffServo Power Off(disable).
NRC_ServoEnablePress The Deadman Switch To Enable The Servo.
NRC_ServoDisableRelease The Deadman Switch To Disable The Servo.
NRC_SetServoReadyStatusSwitch Servo Ready Status.
NRC_GetServoStatusGet Servo Status.
NRC_GetPowerOffSaveSignalGet Robot Power Status.
NRC_SetServoModerOfOperationSet Servo Operation Mode.
NRC_Rbt_SetServoModerOfOperationSet Servo Operation Mode(multi-robotversion).
NRC_GetServoModeGets Servo Operation Mode.
NRC_GetStatusWordRead Servo Status Word.

1.3OperationModeandStatus

Function NameFunction Description
NRC_SetOperationModeSet Operation Mode.
NRC_SetRunModeAutoManBegFlagSet Auto Power-on when switching to run mode.
NRC_GetProgramRunStatusGet Current Program Run Status.
NRC_GetRobotRunStatusGet Current Robot Motion Status.
NRC_GetTeachBoxConnectStatusGet Whether The Teach Pendant Is Connected.

Chapter2:RobotBasicParameterSettings

Overview

This Chapter Introduces Function Interfaces For Setting Robot Basic Parameters, including robot type configuration, servo mapping, Dh Parameters, joint/Cartesian Parameters, and other basic settings.

2.1RobotTypeandConfiguration

Function NameFunction Description
NRC_SetRobotTypeConfigSet Robot Type.
NRC_Rbt_SetRobotTypeConfigSet Robot Type(multi-robotversion).
NRC_GetRobotTypeConfigGet Robot Type.
NRC_Rbt_GetRobotTypeConfigGet Robot Type(multi-robotversion).
NRC_SetRobotDHConfigSet Robot Dh Parameters.
NRC_GetRobotDHConfigGet Robot Dh Parameters.
NRC_SetRobotJointConfigSet Robot Joint Parameters.
NRC_SetRobotDecareConfigSet Robot Cartesian Parameters.
NRC_GetRobotDecareConfigGet Robot Cartesian Parameters.
NRC_CalcConfigurationCalculatestheconfigurationofeachjointatacsPos,validonlyforR_GENERAL_6Srobottype,forotherrobottypesconfvalueis0.

2.2ServoMappingandConfiguration

Function NameFunction Description
NRC_SetServoMapRelationSet Servo Mapping Relationship.
NRC_SetAllServoMapRelationSet Servo Mapping Relationship(single robot only).
NRC_Rbt_SetAllServoMapRelationSet Servo Mapping Relationship(multi-robotversion).
NRC_GetConnectServoTypeListGet Connected Servo Type List.
NRC_GetSlaveNumByIDGet Slave Number List By Slave Vendor ID And Product Code.
NRC_ecatSetCommandSet The Value Of A Servo Command Word.
NRC_ecatGetCommandRead The Value Of A Servo Command Word.
NRC_GetPDOAddrMapGet The P Do Mapping Address Of A Slave.

2.3RobotAxisCountandLimitations

Function NameFunction Description
NRC_GetRobotAxisSumGet Robot Axis Count.
NRC_GetSyncAxisSumGet External Axis Count.
NRC_SetRobotRangeLimitSet Robot Range Limits.
NRC_GetRobotRangeLimitGet Robot Range Limits.
NRC_SetOverToleranceSet Robot Axis Over-tolerance.
NRC_Rbt_SetOverToleranceSet Robot Axis Over-tolerance(multi-robotversion).
NRC_GetToleranceGet Robot Axis Over-tolerance.
NRC_Rbt_GetToleranceGet Robot Axis Over-tolerance(multi-robotversion).
NRC_ShieldFollowErrorDisable Robot Axis Following Error.

Chapter3:ExternalAxisConfigurationandManagement

Overview

This Chapter Introduces Parameter Settings, calibration, and motion control for external axes(groundrails,positioners,etc.).

3.1ExternalAxisBasicSettings

Function NameFunction Description
NRC_SetSyncJointNumSet Robot External Axis Count.
NRC_GetSyncGroupNumGet Current External Axis Group Number.
NRC_SetSyncGroupNumSet Robot External Axis Group Number.
NRC_SetSyncJointParaSet Robot External Axis Parameters.
NRC_GetSyncJointParaGet Robot External Axis Parameters.
NRC_Rbt_GetSyncJointTypeGet Robot External Axis Group Type.
NRC_EncoderZeroOffsetvalueSyncSet External Axis Zero Offset.

3.2ExternalAxisMotionParameters

Function NameFunction Description
NRC_SetSyncJogJointSpeedConfigSet Robot External Axis Jog Joint Speed.
NRC_GetSyncJogJointSpeedConfigGet Robot External Axis Jog Joint Speed.
NRC_GetSyncRackConversionRatioGet External Axis Rack Conversion Ratio.
NRC_SetSyncRackConversionRatioSet External Axis Rack Conversion Ratio.
NRC_SetSyncCooperationSet Whether External Axis Rack Is Cooperative.
NRC_GetSyncCooperationGet Whether External Axis Rack Is Cooperative.
NRC_ResetSyncAxisMultipleTurnsCall This Interface To Reset The External Axis Current Position To Within-360°~360°.Thishasthesameeffectasthe"ResetExternalAxisMulti-turn"commandintheteachpendantinterface.Thisinterfacecanonlyresetasingleexternalaxis.

3.3ExternalAxisCalibration

Function NameFunction Description
NRC_SetSyncGroupCarbinarionCalibrate External Axis Points(groupnumber,pointnumber).
NRC_GetSyncGroupCarbinarionQuery Whether A Group Of External Axes Is Calibrated.
NRC_CalSyncCalibrationResultCalculate External Axis Calibration Result.
NRC_SetCurrentSyncPosToZeroPosSet External Axis Current Position To Zero Point Or Clear Multi-turn value.

3.4ExternalAxisMotionControl

Function NameFunction Description
NRC_RobotMoveJointSyncRobot External Axis Point-to-point motion, robot external axis moves from current position to sync target position in point-to-point mode at vel speed.
NRC_RobotMoveLineSyncRobot External Axis Linear Motion, robot body moves from current position to target position in linear mode at vel speed, robot external axis moves from current position to sync target position in point-to-point mode at vel speed.
NRC_GetAxisVelSyncGet External Axis Motion Speed.
NRC_SingleSyncAxisMoveJConstVel_For_CustomInstructionCBCallthisinterface;inrunmode, theexternalaxissyncAxiswillmoveataconstantvel.Ifmultiplecallsaremadesimultaneously, only the first call is effective.
NRC_StopSingleSyncAxisMoveJConstVel_For_CustomInstructionCBCallthisinterfacetostoptheexternalaxisconstantvelocitymotion.Thisinterfacemustbecalledwhenexternalaxisconstantvelocitymotionisactive;otherwiseitreturns-1.
NRC_GetSingleSyncAxisMoveJConstVelMovingCall This Interface To Get The Single External Axis Constant Velocity Motion Flag.

Chapter4:MotionControlandOperations

Overview

This Chapter Covers Robot Motion Control Interfaces, including operation mode settings, jog control, point-to-point motion, reset, speed control, etc.

4.1JogControl

Function NameFunction Description
NRC_JogMoveStart Jogging An Axis.
NRC_JogMoveStopStop Jogging A Joint.
NRC_JogMoveStopAllStop Jogging All Joints.
NRC_SetJogJointSpeedConfigJog Joint Speed Setting.
NRC_GetJogJointSpeedConfigGet Jog Joint Speed.
NRC_SetJogRectangularSpeedConfigJog Cartesian Speed Setting.
NRC_GetJogRectangularSpeedConfigGet Jog Cartesian Speed.
NRC_SetJogSensitivitySpeedConfigSet Jog Sensitivity.
NRC_SetJogMoveCalculateNumSet Jog Interpolation Point Count.

4.2MotionControl

Function NameFunction Description
NRC_RobotMoveJointRobot Point-to-point motion.
NRC_StartResetPointRobot Returns To There Set Point Position.
NRC_GetPlanningPositionGet The First Point In The Planning Queue.
NRC_SetTargetPositionSet Robot Target Position.
NRC_PV_SetTargetVelocitySet Run Speed In Pv Mode.
NRC_PV_SetTargetAccAndDecSet Run Acceleration And Deceleration In Pv Mode.
NRC_SetTargetVelocitySet Target Velocity Value.
NRC_PosReachableCheck If The Robot Body Target And External Axis Sync Target Exceed Limits, result returned via result parameter, true means reachable, false means unreachable.

4.3SpeedControl

Function NameFunction Description
NRC_SetTeachRunSpeedPerSet Teach Speed Percentage.
NRC_GetTeachRunSpeedPerGet Teach Speed Percentage.
NRC_SetAutoRunSpeedPerSet Auto Speed Percentage.
NRC_SetAutoRunSpeedPer_robotSet Auto Speed Percentage(multi-robotversion).
NRC_GetAutoRunSpeedPerGet Auto Speed Percentage.
NRC_GetAutoRunSpeedPer_robotGet Auto Speed Percentage(multi-robotversion).
NRC_SetTeachMaxStepSpeedSet Maximum Single-step speed in teach mode.
NRC_GetTeachMaxStepSpeedGet Maximum Single-step speed in teach mode.
NRC_SetAbsolutePosResolutionSet Robot Absolute Position Resolution.
NRC_SetInterpolationMethodSet Robot Interpolation Method.

Chapter5:TorqueandDynamicsControl

Overview

This Chapter Includes Torque Control, dynamics identification, collision detection, torque monitoring, and other functions.

5.1TorqueControl

Function NameFunction Description
NRC_SetTargetTorqueSet Robot Target Torque.
NRC_SetMaxTorqueSet Robot Axis Maximum Torque.
NRC_GetMaxTorqueGet Robot Axis Maximum Torque.
NRC_Rbt_SetMaxTorqueGet Robot Axis Maximum Torque(multi-robotversion).
NRC_GetActualTorqueGet Robot Axis Actual Torque.
NRC_GetActualCurrentGet Actual Current.
NRC_GetMaxCurrentGet Maximum Current.
NRC_GetRatedTorqueGet Rated Torque Of Each Joint.
NRC_Rbt_GetRatedTorqueGet Rated Torque Of Each Joint(multi-robotversion).
NRC_GetTorqGet Torque Of Each Joint, unit is per mille.
NRC_Rbt_GetTorqgets each joint torque in per mille units multi-robot version.
NRC_GetSyncTorqGet Torque Of Each External Axis Joint, unit is per mille.
NRC_Rbt_GetSyncTorqgets each external axis joint torque in per mille units multi-robot version.

5.2DynamicsIdentification

Function NameFunction Description
NRC_SetIdentityParamSet The Two Parameters Required For Dynamics Identification And Return The Maximum And Minimum Values Of The Robot End-effect or on the z-axis within the current trajectory range.
NRC_RunSafeCheckProgramRunrangesafetycheckprogram.Thisfunctionrunsthedynamicsidentificationtrajectoryoncetoconfirmthatthesurroundingenvironmentissafe, ensuring the robot will not hit people or objects during identification.
NRC_RunIdentifyProgramExecutedynamicsidentificationprogram.Thisfunctionperformsdynamicsidentificationbyrunningalongapredeterminedtrajectorytentimes.Aftereachrun, it calculates and returns the error between theoretical and actual torque values.
NRC_GetIdentifyErrorGettenidentificationtorqueerrorvalues.Thisfunctiongetstheerrorvaluesbetweentheoreticalandactualtorquefromtenidentificationcalculations.
NRC_StopIdentityProgramStop Dynamics Identification Program.

5.3CollisionDetection

Function NameFunction Description
NRC_SetCollisionParamSettheabsolutevalueofthedifferencebetweentheoreticalandactualtorqueforeachjointwhenacollisionisdetermined.Thelargerthevalue, the lower the collision detection sensitivity.
NRC_SetCollisionSwitchEnable Or Disable Collision Detection.
NRC_GetCollisionSwitchCheck If Collision Detection Is Enabled.
NRC_SetDynamicTrackingErrorMaxAllowSet Maximum Allowed Dynamic Tracking Error.
NRC_SetStaticTrackingErrorMaxAllowSet Maximum Allowed Static Tracking Error.

Chapter6:CoordinateSystemsandCalibration

Overview

This Chapter Introduces Coordinate System Management, tool/user coordinate system calibration, switching, and parameter setting functions.

6.1CoordinateSystemManagement

Function NameFunction Description
NRC_SetCurrentCoordSwitch Current Coordinate System.
NRC_GetCurrentCoordGet Current Coordinate System.
NRC_PositionACStoMCSConvert Robot Joint Coordinate Values To Cartesian Coordinate Values.
NRC_PositionMCStoACSConvert Robot Cartesian Coordinate Values To Joint Coordinate Values.
NRC_TcpCalculateCalculate The Position After A Fixed-distance offset in a specific coordinate system.

6.2ToolCoordinateSystem

Function NameFunction Description
NRC_SetToolCoordParmSet Tool Parameters.
NRC_GetToolCoordParmGet Tool Parameters.
NRC_CalibrationToolCoord_7PosCalibrate Tool--7-point calibration method, calibrates the tool, automatically calculates the offset value of the tool end position relative to the robot end position, there by determining the tool coordinate system.
NRC_CalibrationToolCoord_2Pos_SetPos2-point calibration-set point data.
NRC_CalibrationToolCoord_2Pos_Cacl2-point calibration-calculate calibration result.
NRC_CalibrationToolCoord_2Pos_SaveWritethe2-point calibration result to the specified tool.
NRC_SwitchToolCoordSwitch Current Tool.
NRC_GetCurrentToolCoordGet Current Tool Number.

6.3UserCoordinateSystem

Function NameFunction Description
NRC_SetUserCoordParmSet User Coordinate Parameters.
NRC_GetUserCoordParmGet User Coordinate Parameters.
NRC_CalibrationUserCoordCalibrate User Coordinate, calibrates the user coordinate system, automatically calculates the offset value of the user coordinate system origin relative to the robot cartesian coordinate system origin, there by determining the user coordinate system.
NRC_SwitchUserCoordSwitch Current User Coordinate.
NRC_GetCurrentUserCoordGet Current User Coordinate Number.

6.4PositionandZeroPointSettings

Function NameFunction Description
NRC_SetCurrentPosToZeroPosSet Current Position To Zero Point Or Clear Multi-turn value.
NRC_Rbt_SetCurrentPosToZeroPosSet Current Position To Zero Point Or Clear Multi-turn value(multi-robotversion).
NRC_Rbt_SetSingleCircleValueSet Zero Point Single-turn value(multi-robotversion).
NRC_Rbt_GetSingleCircleValueGet Zero Point Single-turn value(multi-robotversion).
NRC_GetEncoderPositionGet Encoder Position.

Chapter7:PositionandVariableManagement

Overview

This Chapter Includes Position Acquisition, position variable setting, variable management, and other functions.

7.1PositionAcquisitionandMonitoring

Function NameFunction Description
NRC_GetCurrentPosGet Current Position.
NRC_Rbt_GetCurrentPosGet Current Position(multi-robotversion).
NRC_GetOtherToolPosGet Position Represented In Other Tool Coordinate Systems At Current Position.
NRC_GetAngularVelGet Joint Angular Velocity, unit rad/s.
NRC_GetLinerVelGet Joint Linear Velocity, unit mm/s.
NRC_GetCurrentMotorVelGet Motor Speed.
NRC_Rbt_GetCurrentMotorVelGet Motor Speed(multi-robotversion).
NRC_GetCurrentSyncPosGetexternalaxiscurrentposition.Thisfunctioncangettheexternalaxisposition;positiondataisreturnedviaparameterreference.
NRC_Rbt_GetCurrentSyncPosGet External Axis Current Position(multi-robotversion).ThisfunctioncangettheexternalaxispositioninthecoordCoordinatesystem;positiondataisreturnedviaparameterreference.
NRC_GetCurrentTrackingErrorGet Current Tracking Error.
NRC_GetMaxTrackingErrorGet Maximum Tracking Error.

7.2VariableManagement

Function NameFunction Description
NRC_ReadBoolVarRead Boo L Variable Value.
NRC_ReadIntVarRead In T Variable Value.
NRC_ReadDoubleVarRead Double Variable Value.
NRC_SetBoolVarSet Boo L Variable Value.
NRC_SetIntVarSet In T Variable Value.
NRC_SetDoubleVarSet Double Variable Value.
NRC_SetGlobalPositionVariableSet Global Position Variable Coordinate Values.
NRC_SetGlobalPositionVariableNoteSet Global Position Variable Comment.
NRC_GetGlobalPositionVariableGet Global Position Variable Coordinate Values.
NRC_GetGlobalPositionVariableNoteGet Global Position Variable Comment.
NRC_GetCurrentTimeGet Current Time.

Chapter8:IOandCommunicationControl

Overview

This Chapter Introduces Digital/analog IO control, CAN Bus Communication, Ether Cat Configuration, external communication, and other interfaces.

8.1IOConfigurationandOperation

Function NameFunction Description
NRC_GetIOBoardSumReturn IO Board Count.
NRC_GetIOConfigReturn The Number Of IO Ports For A Specific IO Board.
NRC_DigOutOpen Or Close The Digital Output Status Of The Specified IO.
NRC_DigOutByBoardBased On IO Board Number, Open Or Close The Digital Output Status Of The Specified IO.
NRC_ReadDigOutRead The Status Of A Digital IO Output Port.
NRC_ReadDigOutByBoardBased On IO Board Number, Read The Status Of A Digital IO Output Port.
NRC_ReadDigInRead The Status Of A Digital IO Input Port.
NRC_ReadDigInByBoardBased On IO Board Number, Read The Status Of A Digital IO Input Port.
NRC_AnaOutSet The Output Value Of An Analog IO Port.
NRC_ReadAnaOutRead The Status Of An Analog IO Output Port.
NRC_ReadAnaInRead The Status Of An Analog IO Input Port.
NRC_EnableCustomIOFunctionEnable Custom IO Function.
NRC_SetCustomIODoutConfigSet Custom IO D Out Configuration.
NRC_SetCustomIODinConfigSet Custom I Odin Configuration.
NRC_SetCheckExioEnableSet Built-in tcp interface extended IO detection enable flag.
NRC_GetEthercatIOConfigGet Ether Cat IO Configuration.

8.2CommunicationInterface

Function NameFunction Description
NRC_SetCANBaudRateSet CAN Communication Baud Rate.
NRC_SendCANDataSend A Frame Of Data Via CAN Communication.
NRC_SetCommunicationParamCall This Interface To Set External TCP Communication Parameters.
NRC_SetCommunicationStatusSet TCP Communication On/off.
NRC_SetTcpMessageCallbackSet Callback Function For Receiving Messages Via External TCP Communication.
NRC_CommSendMessageCall This Interface To Send A Message To The Controller.
NRC_GetModbusSlaveConnectStatusGet Mod Bus Slave Connection Status.
NRC_GetModbusMasterConnectStatusGet Mod Bus Master Connection Status.
NRC_SetSocketCustomProtocalCBThis Function Customizes The Socket Communication Protocol.
NRC_SendSocketCustomProtocalSend Socket Communication.

Chapter9:ErrorHandlingandMessageManagement

Overview

This Chapter Includes Error Handling, message management, callback function settings, and other functions.

9.1MessageManagement

Function NameFunction Description
NRC_SetMsgHappenCallbackSet Callback Function For Message Occurrence.
NRC_FirstMessagePopPop The Earliest Message From The Queue.
NRC_LastMessagePopPop The Latest Message From The Queue.
NRC_GetMessageGet The Num-th message in the queue.
NRC_GetMessageSizeGet Total Message Count In The Queue.
NRC_ClearMessageGet Current User Coordinate Number.
NRC_TriggerErrorReportUser Actively Triggers An Error Report.

9.2ErrorHandling

Function NameFunction Description
NRC_ClearServoErrorClear Servo Errors.
NRC_ClearAllErrorClear All Errors, clear the message queue, and clear servo errors.
NRC_SetFaultResetCBSeterrorclearbuttoncallbackfunction;doesnotaffectthecontroller'sownerrorclearingfunction.

Chapter10:TeachPendantandJobFileControl

Overview

This Chapter Includes Teach Pendant Interaction, job file operations, custom instructions, andotherfunctions.Forotherinstructiondocumentation, please refer to the job file documentation.

10.1TeachPendantControl

Function NameFunction Description
NRC_GetTeachBoxConnectStatusGet Whether The Teach Pendant Is Connected.
NRC_SendCursorJumpCmdToTeachboxSendsacursorjumpcommandtotheteachpendant.Aftertheteachpendantresponds, the cursor jumps to the specified line of the specified job file.
NRC_GetOpenJobFileNameGet The Name Of The Currently Open Job File.

10.2JobFileandCustomInstructions

Function NameFunction Description
NRC_SetJobFileCustomInstructionCBBinda Function To A Custom Instruction.
NRC_SetJobFileCustomInstructionPreTreatmentCBBinda Function To The Pre-processing function of a custom instruction.
NRC_SetJobFileCustomInstructionPostTreatmentCBBinda Function To The Post-processing function of a custom instruction.
NRC_ParseJobfileToAppendRunInstructionParse All Instructions In A Job File Into A Queue That CAN Be Used As Append Mode Instructions.
NRC_SetCustomFileTransferSet Custom Configuration Files That CAN Be Imported/exported.

Chapter11:CallbackFunctionsandCycleControl

Overview

This Chapter Introduces Various Callback Function Settings, cycle control, real-time monitoring, and other functions.

11.1CallbackFunctionSettings

Function NameFunction Description
NRC_SetMsgHappenCallbackSet Callback Function For Message Occurrence.
NRC_SetSocketCustomProtocalCBThis Function Customizes The Socket Communication Protocol.
NRC_SetJobFileCustomInstructionCBBinda Function To A Custom Instruction.
NRC_SetJobFileCustomInstructionPreTreatmentCBBinda Function To The Pre-processing function of a custom instruction.
NRC_SetJobFileCustomInstructionPostTreatmentCBBinda Function To The Post-processing function of a custom instruction.
NRC_SetTcpMessageCallbackSet Callback Function For Receiving Messages Via External TCP Communication.
NRC_SetFaultResetCBSeterrorclearbuttoncallbackfunction;doesnotaffectthecontroller'sownerrorclearingfunction.
NRC_robotRunCycle_CallbackSet A Custom Parameter Less Function That Will Be Called Once Every Ether Cat Communication Cycle(default1ms).

The Following Are Detailed Descriptions Of Each Interface

NRC_Delayms

Function PrototypeintNRC_Delayms(intms);
DescriptionSystem Delay For A Certain Time.
ParametersInputParameters:
msisthedelaytimeinmilliseconds
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_LogInfo

Function PrototypevoidNRC_LogInfo(constchar*format,...);
DescriptionPrint Log To The Nrc System.
ParametersInputParameters:
formatisthecontenttoprint
Return ValueNone
------
RemarksUsage Is Identical To Print F().

NRC_GetNexMotionLibVersion

Function Prototypestd::stringNRC_GetNexMotionLibVersion();
DescriptionGet Ne X Motion Library Version Information.
ParametersNone
Return ValueReturns Ne X Motion Library Version Information.
RemarksNone

NRC_GetSyncVersion

Function Prototypestd::stringNRC_GetSyncVersion();
DescriptionGet Sync Version Number.
ParametersNone
Return ValueReturns Sync Version Number.
RemarksNone

NRC_StartController

Function PrototypeintNRC_StartController(intnetPort=4);
DescriptionSystem Startup Function.
ParametersInputParameters:
Portnumberofthenetworkportconnectingtotheservo, defaultis4;setbasedonthespecificIPCmodel.
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksSystemstartuptakestime,pleaseuseNRC_GetControlInitComplete()tocheckifsysteminitializationiscomplete.Donotcallotherfunctionsbeforeinitializationiscomplete.

NRC_GetControlInitComplete

Function PrototypeintNRC_GetControlInitComplete();
DescriptionCheck If System Initialization Is Complete.
ParametersNone
Return ValueReturnswhethersysteminitializationiscomplete
0:Notcomplete
1:Complete
RemarksNone

NRC_SetServoReadyStatus

Function PrototypeintNRC_SetServoReadyStatus(intstatus);
DescriptionSwitch Servo Ready Status.
ParametersInputParameters:
InputParameters:status0-Servodisabled1-Servo Enabled
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksBefore Switching Servo Status, pleasecheckiftheservohasanyerrors.Ifthereareerrors, the servo status cannot be switched normally.

NRC_GetServoStatus

Function PrototypeintNRC_GetServoStatus();
DescriptionGet Servo Status.
ParametersNone
Return ValueReturnsservostatus
0-Servodisabled
1-Servo Enabled(ready)
2-Servoalarm
3-Servo Enabled
RemarksNone

NRC_SetOperationMode

Function PrototypeintNRC_SetOperationMode(NRC_OperationModemode);
DescriptionSet Operation Mode.
ParametersInputParameters:
mode0-Teachmode1-Remotemode2-Auto Mode
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetTeachRunSpeedPer

Function PrototypeintNRC_SetTeachRunSpeedPer(intspeedPer);
DescriptionSet Teach Speed Percentage.
ParametersInputParameters:
speedPer:
parameterrange:0<speedPer<=100
Jogparameters:-1, -2, -3(InjointCoordinatesystem:-1means0.1degree,-2means0.01degree,-3means0.001degree;inothermodes:-1means1mm/s,-2means0.1mm/s,-3means0.01mm/s)
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetTeachRunSpeedPer

Function PrototypeintNRC_GetTeachRunSpeedPer();
DescriptionGet Teach Speed Percentage.
ParametersNone
Return ValueReturnsteachspeedpercentage
Returnvaluerange:-2<NRC_GetTeachRunSpeedPer()<=100
RemarksNRC_GetTeachRunSpeedPer()!=0

NRC_SetAutoRunSpeedPer

Function PrototypeintNRC_SetAutoRunSpeedPer(intspeedPer);
DescriptionSet Auto Speed Percentage.
ParametersInputParameters:
speedPer:
parameterrange:0<speedPer<=100
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetAutoRunSpeedPer_robot

Function PrototypeintNRC_SetAutoRunSpeedPer_robot(introbotNum,intspeedPer);
DescriptionSet Auto Speed Percentage(multi-robotversion).
ParametersInputParameters:
speedPerparameterrange:0<speedPer<=100
robotNumRobotnumberselection[1, 4]
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetAutoRunSpeedPer

Function PrototypeintNRC_GetAutoRunSpeedPer();
DescriptionGet Auto Speed Percentage.
ParametersNone
Return ValueReturnsautospeedpercentage
Returnvaluerange:0<NRC_GetAutoRunSpeedPer()<=100
RemarksNone

NRC_GetAutoRunSpeedPer_robot

Function PrototypeintNRC_GetAutoRunSpeedPer_robot(introbotNum);
DescriptionGet Auto Speed Percentage(multi-robotversion).
ParametersInputParameters:
robotNumRobotnumberselection[1, 4]
Return ValueReturnsautospeedpercentage
Returnvaluerange:0<NRC_GetAutoRunSpeedPer()<=100
RemarksNone

NRC_SetCurrentCoord

Function PrototypeintNRC_SetCurrentCoord(NRC_COORDcoord);
DescriptionSwitch Current Coordinate System.
ParametersInputParameters:
coord0-Jointcoordinate1-Cartesiancoordinate2-Toolcoordinate3-User Coordinate
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetCurrentCoord

Function PrototypeNRC_COORDNRC_GetCurrentCoord();
DescriptionGet Current Coordinate System.
ParametersNone
Return ValueReturnscurrentCoordinatesystem:0-Joint1-Cartesian2-Tool3-User
RemarksNone

NRC_ServoEnable

Function PrototypeintNRC_ServoEnable();
DescriptionPress The Deadman Switch To Enable The Servo.
ParametersNone
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksPressthedeadmanswitchtopowerontherobot.
Afterpoweringonusingthisinterface,callingNRC_ServoEnable()topoweroffwillautomaticallystoptherunningrobotfirst,thenpoweroff.
Onlyavailableinteachmode,andrecommendedforuseinteachmode.
Beforecallingthisfunction,pleaseswitchservoreadystatustoservoready,youcancallNRC_SetServoReadyStatus(intstatus)toswitchservostatus
Aftersuccessfullycallingthisfunction,theservowillbepoweredonandenabled,pleaseensuresafety

NRC_ServoDisable

Function PrototypeintNRC_ServoDisable();
DescriptionRelease The Deadman Switch To Disable The Servo.
ParametersNone
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksCanpowerofftherobotthatwaspoweredonviaNRC_ServoEnable()interface
Aftersuccessfullycallingthisfunction,theservowillbepoweredoffandindisabledstate
Onlyavailableinteachmode,andrecommendedtousethisinterfaceinteachmode

NRC_GetPowerOffSaveSignal

Function PrototypeboolNRC_GetPowerOffSaveSignal();
DescriptionGet Robot Power Status.
ParametersNone
Return ValueReturnsrobotpowerstatus:0-Notpowered1-Powered
RemarksNone

NRC_JogMove

Function PrototypeintNRC_JogMove(intaxis,doublevel);
DescriptionStart Jogging An Axis.
ParametersInputParameters:
axisAxistojog,valuerange1-6
InputParameters:
velAxismotiondirectionandspeed,valuerange[-1,-0.01)U(0.01,1]
Positive/negativesignindicatesdirection
Coefficientisspeedratio,actualspeed=teachspeedvelmotorspeed
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksAftercallingNRC_JogMoveforjogging,youmustcallNRC_JogMoveStoptostopthejoggingaxis,otherwisewhenjoggingotheraxes,thepreviouslyjoggedaxiswillalsomove

NRC_JogMoveStop

Function PrototypeintNRC_JogMoveStop(intaxis);
DescriptionStop Jogging A Joint.
ParametersInputParameters:
axisAxistostopjogging, valuerange1-6
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksAftercallingNRC_JogMoveforjogging,youmustcallNRC_JogMoveStoptostopthejoggingaxis,otherwisewhenjoggingotheraxes,thepreviouslyjoggedaxiswillalsomove

NRC_JogMoveStopAll

Function PrototypeintNRC_JogMoveStopAll();
DescriptionStop Jogging All Joints.
ParametersNone
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksAfter Calling This Function, robot jogging will stop and the robot will deceleration

NRC_GetOtherToolPos

Function PrototypeintNRC_GetOtherToolPos(intToolNum,NRC_Position&position);
DescriptionGet Position Represented In Other Tool Coordinate Systems At Current Position.
ParametersInputParameters:
ToolNumToolnumber
OutputParameters:
positionReturnscoordinatesundertheselectedtool
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetCurrentPos

Function PrototypeintNRC_GetCurrentPos(NRC_COORDcoord,NRC_Position&position);
DescriptionGet Current Position.
ParametersInputParameters:
coord0-jointcoordinate1-Cartesiancoordinate2-toolcoordinate3-usercoordinate
OutputParameters:
positionReturnscoordinatepositionundertheselectedCoordinatesystem
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_Rbt_GetCurrentPos

Function PrototypeintNRC_Rbt_GetCurrentPos(introbotNum,NRC_COORDcoord,NRC_Position&position);
DescriptionGet Current Position(multi-robotversion).
ParametersInputParameters:
robotNumPass robot number(1-4)
coord0-jointcoordinate1-Cartesiancoordinate2-toolcoordinate3-usercoordinate
OutputParameters:
positionReturnscoordinatepositionundertheselectedCoordinatesystem
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_PositionACStoMCS

Function PrototypeintNRC_PositionACStoMCS(NRC_Position&posACS,NRC_Position&posMCS);
DescriptionConvert Robot Joint Coordinate Values To Cartesian Coordinate Values.
ParametersInputParameters:
posACSJointcoordinatevaluestoconvert
OutputParameters:
posMCSConversionresultreturnedviathisparameter
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_PositionMCStoACS

Function PrototypeintNRC_PositionMCStoACS(NRC_Position&posMCS,NRC_Position&posACS);
DescriptionConvert Robot Cartesian Coordinate Values To Joint Coordinate Values.
ParametersInputParameters:
posMCSCartesiancoordinatevaluestoconvert
OutputParameters:
posACSConversionresultreturnedviathisparameter
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetProgramRunStatus

Function PrototypeintNRC_GetProgramRunStatus();
DescriptionGet Current Program Run Status.
ParametersNone
Return ValueReturnscurrentprogramrunstatus
0Programstopped
1Programpaused
2Programrunning
RemarksNone

NRC_GetRobotRunStatus

Function PrototypeintNRC_GetRobotRunStatus();
DescriptionGet Current Robot Motion Status.
ParametersNone
Return ValueReturnscurrentrobotmotionstatus
0Robotstopped
1Robotmoving
RemarksNone

NRC_PowerOn

Function PrototypeintNRC_PowerOn();
DescriptionServo Power On(enable).
ParametersNone
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksBeforecallingthisfunction,pleaseswitchservoreadystatustoservoready,youcancallNRC_SetServoReadyStatus(intstatus)toswitchservostatus
Aftersuccessfullycallingthisfunction,theservowillbepoweredonandenabled,pleaseensuresafety

NRC_PowerOff

Function PrototypeintNRC_PowerOff();
DescriptionServo Power Off(disable).
ParametersNone
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksAfter Successfully Calling This Function, theservowillbepoweredoffandindisabledstate
Donotcallthisinterfacewhiletherobotismoving, as it may cause the robot to stop suddenly and cause severe shaking

NRC_RobotMoveJoint

Function PrototypeintNRC_RobotMoveJoint(intvel,constNRC_Position&target,intacc,intdec);
DescriptionRobot Point-to-point motion.
ParametersInputParameters:
vel:Robotrunningspeedasapercentageofmaximumspeed.Valuerange:0<vel<=100
target:Robotmotiontargetposition.SeeNRC_Positionfordetails.
acc:Robotrunningaccelerationasapercentageofeachjoint'smaximumacceleration.Valuerange:0<acc<=100
dec:Robotrunningdecelerationasapercentageofeachjoint'smaximumdeceleration.Valuerange:0<dec<=100
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksBeforecallingthisfunction,pleaseenabletheservo,youcancallNRC_ServoEnable()topowerontheservo
Aftersuccessfullycallingthisfunction,therobotwillstartmoving.Pleaseensuresafety.

NRC_StartResetPoint

Function PrototypeintNRC_StartResetPoint();
DescriptionRobot Returns To There Set Point Position.
ParametersNone
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksIfcallingthisfunctioninteachmode,pleaseenabletheservofirst,youcancallNRC_ServoEnable()topowerontheservo
Aftersuccessfullycallingthisfunction,therobotwillstartmoving.Pleaseensuresafety.

NRC_DigOut

Function PrototypevoidNRC_DigOut(intport,intvalue);
DescriptionOpen Or Close The Digital Output Status Of The Specified IO.
ParametersInputParameters:
portDigitalIOporttooutput, maximumrange1<=port<=16, actualrangedependsonthenumberofIOportsontheconnectedIOmodule
valueOutputstatus0-Lowlevel1-High Level
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_DigOutByBoard

Function PrototypevoidNRC_DigOutByBoard(intboard_id,intport_id,intvalue);
DescriptionBased On IO Board Number, Open Or Close The Digital Output Status Of The Specified IO.
ParametersInputParameters:
port_id:digitalIOporttooutput,maximumrange:1<=port<=16,actualrangedependsonthenumberofIOportsontheconnectedIOmodule
valuestatustooutput:0-outputlowlevel,1-outputhighlevel
board_idIOboardnumbertooutput,maximumrange:1<=board_id<=4,actualrangedependsonthenumberofconnectedIOboards
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_ReadDigOut

Function PrototypeintNRC_ReadDigOut(intport);
DescriptionRead The Status Of A Digital IO Output Port.
ParametersInputParameters:
portDigitalIOporttoread, maximumrange1<=port<=16, actual range depends on the number of IO ports on the connected IO module
Return ValueReturnscurrentportstatus
0Currentlylowlevel
1Currentlyhighlevel
-1Portdoesnotexist
RemarksNone

NRC_ReadDigOutByBoard

Function PrototypeintNRC_ReadDigOutByBoard(intboard_id,intport_id);
DescriptionBased On IO Board Number, Read The Status Of A Digital IO Output Port.
ParametersInputParameters:
board_idIOboardnumbertoread,maximumrange:1<=board_id<=4,actualrangedependsonthenumberofconnectedIOboards
port_idIOboardnumbertoreadcorrespondingdigitalIOport,maximumrange:1<=port<=16,actualrangedependsonthenumberofIOportsonthecorrespondingIOboard
Return ValueReturnscurrentportstatus
0Currentlylowlevel
1Currentlyhighlevel
-1Portdoesnotexist
RemarksNone

NRC_ReadDigIn

Function PrototypeintNRC_ReadDigIn(intport);
DescriptionRead The Status Of A Digital IO Input Port.
ParametersInputParameters:
portDigitalIOporttoread, maximumrange1<=port<=16, actual range depends on the number of IO ports on the connected IO module
Return ValueReturnscurrentportstatus
0Currentlylowlevel
1Currentlyhighlevel
-1Portdoesnotexist
RemarksNone

NRC_ReadDigInByBoard

Function PrototypeintNRC_ReadDigInByBoard(intboard_id,intport_id);
DescriptionBased On IO Board Number, Read The Status Of A Digital IO Input Port.
ParametersInputParameters:
board_idIOboardnumbertoread,maximumrange:1<=board_id<=4,actualrangedependsonthenumberofconnectedIOboards
port_idIOboardnumbertoreadcorrespondingdigitalIOport,maximumrange:1<=port<=16,actualrangedependsonthenumberofIOportsonthecorrespondingIOboard
Return ValueReturnscurrentportstatus
0Currentlylowlevel
1Currentlyhighlevel
-1Portdoesnotexist
RemarksNone

NRC_AnaOut

Function PrototypevoidNRC_AnaOut(intport,doublevalue);
DescriptionSet The Output Value Of An Analog IO Port.
ParametersInputParameters:
portanalogIOporttooutput, maximumrange:1<=port<=16, actualrangedependsonthenumberofIOportsontheconnectedIOmodule
valueThevaluetooutputontheselectedanalogIOport
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_ReadAnaOut

Function PrototypeintNRC_ReadAnaOut(intport,double&value);
DescriptionRead The Status Of An Analog IO Output Port.
ParametersInputParameters:
portanalogIOporttoread, maximumrange:1<=port<=16, actualrangedependsonthenumberofIOportsontheconnectedIOmodule
valuereturnsthecurrentvalueofthisport
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_ReadAnaIn

Function PrototypeintNRC_ReadAnaIn(intport,double&value);
DescriptionRead The Status Of An Analog IO Input Port.
ParametersInputParameters:
portanalogIOporttoread, maximumrange:1<=port<=16, actualrangedependsonthenumberofIOportsontheconnectedIOmodule
valuereturnsthecurrentvalueofthisport
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetCANBaudRate

Function PrototypevoidNRC_SetCANBaudRate(unsignedintport,unsignedintbaud);
DescriptionSet CAN Communication Baud Rate.
ParametersInputParameters:
portsetCANPortnumbertouse
baudsetbaudrate
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SendCANData

Function PrototypevoidNRC_SendCANData(unsignedintport,unsignedintsendCanID,constunsignedcharbuff[8],unsignedintsendLen=8);
DescriptionSend A Frame Of Data Via CAN Communication.
ParametersInputParameters:
portsetCANPortnumbertouse
sendIDsetframeIDreturnedviathisvariable
sendlensetsendingdatalength
buffThedatatosend
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_ReadBoolVar

Function PrototypeboolNRC_ReadBoolVar(intnum);
DescriptionRead Boo L Variable Value.
ParametersInputParameters:
numBOOLvariablenumber, valuerange:0<num<=999
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_ReadIntVar

Function PrototypeintNRC_ReadIntVar(intnum);
DescriptionRead In T Variable Value.
ParametersInputParameters:
numINTvariablenumber, valuerange:0<num<=999
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_ReadDoubleVar

Function PrototypedoubleNRC_ReadDoubleVar(intnum);
DescriptionRead Double Variable Value.
ParametersInputParameters:
numDOUBLEvariablenumber, valuerange:0<num<=999
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetBoolVar

Function PrototypeintNRC_SetBoolVar(intnum,boolvalue);
DescriptionSet Boo L Variable Value.
ParametersInputParameters:
numBOOLvariablenumber, valuerange:0<num<=999
valuetargetvaluetoset
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetIntVar

Function PrototypeintNRC_SetIntVar(intnum,intvalue);
DescriptionSet In T Variable Value.
ParametersInputParameters:
numINTvariablenumber, valuerange:0<num<=999
valuetargetvaluetoset
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetDoubleVar

Function PrototypeintNRC_SetIntVar(intnum,doublevalue);
DescriptionSet Double Variable Value.
ParametersInputParameters:
numDOUBLEvariablenumber, valuerange:0<num<=999
valuetargetvaluetoset
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetGlobalPositionVariable

Function PrototypeintNRC_SetGlobalPositionVariable(intnum,constNRC_Position&pos_set);
DescriptionSet Global Position Variable Coordinate Values.
ParametersInputParameters:
numTheglobalpositionvariablenumbertoset,0<num<=999
pos_setThecoordinatevaluesoftheglobalpositionvariabletoset
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetGlobalPositionVariableNote

Function PrototypeintNRC_SetGlobalPositionVariableNote(intnum,std::stringnote);
DescriptionSet Global Position Variable Comment.
ParametersInputParameters:
numTheglobalpositionvariablenumbertoset, 0<num<=999
noteThecommenttosetfortheglobalvariable
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetGlobalPositionVariable

Function PrototypeintNRC_GetGlobalPositionVariable(intnum,NRC_Position&pos_get);
DescriptionGet Global Position Variable Coordinate Values.
ParametersInputParameters:
numTheglobalpositionvariablenumbertoget,0<num<=999
pos_getThecoordinatevaluesoftheglobalpositionvariabletoget
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetGlobalPositionVariableNote

Function PrototypeintNRC_GetGlobalPositionVariableNote(intnum,std::string&note);
DescriptionGet Global Position Variable Comment.
ParametersInputParameters:
numTheglobalpositionvariablenumbertoget, 0<num<=999
noteGetthecommentoftheglobalvariable
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetRobotTypeConfig

Function PrototypeintNRC_SetRobotTypeConfig(conststd::string&type);
DescriptionSet Robot Type.
ParametersOutputParameters:
type:
-"R_GENERAL_6S"6-axis
-"R_SCARA"4-axisSCARA
-"R_FOURAXIS_PALLET"4-axispalletizing
-"R_FOURAXIS"4-axis
-"R_GENERAL_1S"1-axis
-"R_GENERAL_5S"5-axis
-"R_GENERAL_6S_1"6-axisvariant1
-"R_SCARA_TWOAXIS"2-axisSCARA
-"R_SCARA_THREEAXIS"3-axisSCARA
-"R_THREE_CARTESIAN_COORDINATE"3-axisCartesian
-"R_THREE_CARTESIAN_COORDINATE_1"3-axisspecialtype1
-"R_GENERAL_7S_RBT"7-axis
-"R_SCARA_1"4-axisSCARAvariant1
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_Rbt_SetRobotTypeConfig

Function PrototypeintNRC_Rbt_SetRobotTypeConfig(introbotNum,conststd::string&type);
DescriptionSet Robot Type(multi-robotversion).
ParametersOutputParameters:
indexTotalnumberoftimesthecurrentjobfileshouldrun, setto0forlooprunning, parameterrange:index>=0
Return ValueOutputParameters:
robotNumrobotnumber(1-4)
OutputParameters:
type:
-"R_GENERAL_6S"6-axis
-"R_SCARA"4-axisSCARA
-"R_FOURAXIS_PALLET"4-axispalletizing
-"R_FOURAXIS"4-axis
-"R_GENERAL_1S"1-axis
-"R_GENERAL_5S"5-axis
-"R_GENERAL_6S_1"6-axisvariant1
-"R_SCARA_TWOAXIS"2-axisSCARA
-"R_SCARA_THREEAXIS"3-axisSCARA
-"R_THREE_CARTESIAN_COORDINATE"3-axisCartesian
-"R_THREE_CARTESIAN_COORDINATE_1"3-axisspecialtype1
-"R_GENERAL_7S_RBT"7-axis
-"R_SCARA_1"4-axisSCARAvariant1
RemarksNone

NRC_GetRobotTypeConfig

Function PrototypeintNRC_GetRobotTypeConfig(std::string&type);
DescriptionGet Robot Type.
ParametersOutputParameters:
type:
-"R_GENERAL_6S"6-axis
-"R_SCARA"4-axisSCARA
-"R_FOURAXIS_PALLET"4-axispalletizing
-"R_FOURAXIS"4-axis
-"R_GENERAL_1S"1-axis
-"R_GENERAL_5S"5-axis
-"R_GENERAL_6S_1"6-axisvariant1
-"R_SCARA_TWOAXIS"2-axisSCARA
-"R_SCARA_THREEAXIS"3-axisSCARA
-"R_THREE_CARTESIAN_COORDINATE"3-axisCartesian
-"R_THREE_CARTESIAN_COORDINATE_1"3-axisspecialtype1
-"R_GENERAL_7S_RBT"7-axis
-"R_SCARA_1"4-axisSCARAvariant1
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_Rbt_GetRobotTypeConfig

Function PrototypeintNRC_GetRobotTypeConfig(std::string&type);
DescriptionGet Robot Type(multi-robotversion).
ParametersOutputParameters:
robotNumrobotnumber(1-4)
type:
-"R_GENERAL_6S"6-axis
-"R_SCARA"4-axisSCARA
-"R_FOURAXIS_PALLET"4-axispalletizing
-"R_FOURAXIS"4-axis
-"R_GENERAL_1S"1-axis
-"R_GENERAL_5S"5-axis
-"R_GENERAL_6S_1"6-axisvariant1
-"R_SCARA_TWOAXIS"2-axisSCARA
-"R_SCARA_THREEAXIS"3-axisSCARA
-"R_THREE_CARTESIAN_COORDINATE"3-axisCartesian
-"R_THREE_CARTESIAN_COORDINATE_1"3-axisspecialtype1
-"R_GENERAL_7S_RBT"7-axis
-"R_SCARA_1"4-axisSCARAvariant1
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetServoMapRelation

Function PrototypeintNRC_SetServoMapRelation(std::vector<int>servoMap,std::vector<int>syncServoMap);
DescriptionSet Servo Mapping Relationship.
ParametersInputParameters:
servoMapservomappingrelationship,Thecountistheconfiguredtotalnumberofrobotaxes,Eachvalueistheservonumberconnectedtoeachaxis
syncServoMapexternalaxisservomappingrelationship,Thecountis3,Eachvalueistheservonumberconnectedtoeachaxis,ifexternalaxisislessthan3,the corresponding position each value is 0
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksThemappingbetweenrobotaxesandservosis::
-Axis 1 connected to the 2nd servo
-Axis 2 connected to the 3rd servo
-Axis 3 connected to the 1st servo
-Axis 4 connected to the 4th servo
-Axis 5 connected to the 6th servo
-Axis 6 connected to the 5th servo
-TheservoMapvalueis{2,3,1,4,6,5}
Number of external axes and servo mapping relationship:
- No external axis, then syncServoMap each value is{0,0,0}
- One external axis, then syncServoMap each value is{7,0,0}
- Two external axes, then syncServoMap each value is{7,8,0}
Use this instead ofNRC_SetAllServoMapRelation!

NRC_SetAllServoMapRelation

Function PrototypeintNRC_SetAllServoMapRelation(std::vector<int>servoMap,intsyncGroupSum,intsyncType[],std::vector<std::vector<int>>syncServoMap);
DescriptionSet Servo Mapping Relationship(single robot only).
ParametersInputParameters:
servoMapservomappingrelationship,Thecountistheconfiguredtotalnumberofrobotaxes,Eachvalueistheservonumberconnectedtoeachaxis
syncGroupSummaximumnumberofexternalaxisgroups,maximumto3,supports up to two dual-axis positioners plus one ground rail
syncTypeexternalaxisgrouptype,0:None,1:Single-axispositioner,2:Dual-axispositioner,3:Groundrail
syncServoMapexternalaxisservomappingrelationship
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksThemappingbetweenrobotaxesandservosis::
-Axis 1 connected to the 2nd servo
-Axis 2 connected to the 3rd servo
-Axis 3 connected to the 1st servo
-Axis 4 connected to the 4th servo
-Axis 5 connected to the 6th servo
-Axis 6 connected to the 5th servo
-TheservoMapvalueis{2,3,1,4,6,5}
Number of external axes and servo mapping relationship
- No external axis: syncGroupSum each value is 0,
- One single-axis positioner: syncGroupSum is 1, syncType is{1,0,0},syncServoMapto{{7}}
- Two dual-axis positioners and one ground rail: syncGroupSum is 3, syncType is{2,2,3},syncServoMapto{{7,8},{9,10},{11}}

NRC_Rbt_SetAllServoMapRelation

Function PrototypeintNRC_Rbt_SetAllServoMapRelation(unsignedintrobotSum,std::vector<std::string>robotType,std::vector<std::vector<int>>servoMap,std::vector<NRC_SyncParam>syncMap);
DescriptionSet Servo Mapping Relationship(multi-robotversion).
ParametersInputParameters:
robotSumrobottotal,maximumto4
servoMapservomappingrelationship,Thecountistheconfiguredtotalnumberofrobotaxes,Eachvalueistheservonumberconnectedtoeachaxis
syncGroupSummaximumnumberofexternalaxisgroups,maximumto3,supports up to two dual-axis positioners plus one ground rail
syncTypeexternalaxisgrouptype,0:None,1:Single-axispositioner,2:Dual-axispositioner,3:Groundrail
syncServoMapexternalaxisservomappingrelationship
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksThemappingbetweenrobotaxesandservosis:(taking two 4-axis robots as an example):
-Robot 1 Axis 1 connected to the 2nd servo
-Robot 1 Axis 2 connected to the 3rd servo
-Robot 1 Axis 3 connected to the 1st servo
-Robot 1 Axis 4 connected to the 4th servo
-Robot 2 Axis 1 connected to the 1st servo
-Robot 2 Axis 2 connected to the 2nd servo
-Robot 2 Axis 3 connected to the 3rd servo
-Robot 2 Axis 4 connected to the 4th servo
TheservoMapvalueis{{2,3,1,4},{1,2,3,4}}
Number of external axes and servo mapping relationship(taking two 4-axis robots as an example):
No external axis: syncGroupSum each value is 0,
One single-axis positioner: syncMap each value is{NRC_SyncMapone,NRC_SyncMaptwo},
NRC_SyncMapone
{
syncGroupSum=1;
std::vector<std::vector<int>>syncServoMap={{5}};
std::vector<std::vector<int>>syncType={1,0,0};
}
NRC_SyncMaptwoisthesameasNRC_SyncMapone;
Two dual-axis positioners and one ground rail: syncMap each value is{NRC_SyncMapone}(using one robot as an example),
NRC_SyncMapone
{
syncGroupSum=3;
std::vector<std::vector<int>>syncServoMap={{5,6},{7,8},{9}}
std::vector<std::vector<int>>syncType={2,2,3};
}

NRC_GetConnectServoTypeList

Function Prototypestd::vector<std::string>NRC_GetConnectServoTypeList(intnameType=0);
DescriptionGet Connected Servo Type List.
ParametersInputParameters:
nameTypeServonametype, 0:Chinesename, 1:Englishname
Return ValueList Of Servo Names
------
RemarksNone

NRC_GetSlaveNumByID

Function Prototypestd::vector<int>NRC_GetSlaveNumByID(unsignedintvendorID,unsignedintproductCode);
DescriptionGet Slave Number List By Slave Vendor ID And Product Code.
ParametersInputParameters:
vendorIDTheslave'svendorID
productCodeTheslave'sproductCode
Return ValueList Of All Slave Numbers Of This Type
------
RemarksNone

NRC_GetPDOAddrMap

Function Prototypeunsignedchar*NRC_GetPDOAddrMap(unsignedintslaveNum,unsignedshortindex);
DescriptionGet The P Do Mapping Address Of A Slave.
ParametersInputParameters:
slaveNumSlavenumber
indexPDOindex
Return ValuePDOmappingaddress,ifSlavenumbererrororNonethisPDO,then returns nullptr.IfmultiplePDOsexistatthisindex,onlyonewillbereturned
------
RemarksThe Returned Mapping Address, must be cast to the appropriate pointer type based on the p do data type before use

NRC_GetPDOAddrMap

Function Prototypeunsignedchar*NRC_GetPDOAddrMap(unsignedintslaveNum,unsignedshortindex,unsignedshortsubindex);
DescriptionGet The P Do Mapping Address Of A Slave.
ParametersInputParameters:
slaveNumSlavenumber
indexPDOindex
subindexPDOsub-index
Return ValuePDOmappingaddress,ifSlavenumbererrororNonethisPDO,then returns nullptr
------
RemarksThe Returned Mapping Address, must be cast to the appropriate pointer type based on the p do data type before use

NRC_GetEthercatIOConfig

Function Prototypein t get ether cat IO config(int&sum,std::vector<std::string>&typeVec);
DescriptionGet Ether Cat IO Configuration.
ParametersInputParameters:
sumReturnsthenumberofEtherCATIOboards
typeVecReturnstheEtherCATIOtype
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_EnableCustomIOFunction

Function PrototypevoidNRC_EnableCustomIOFunction();
DescriptionEnable Custom IO Function.
ParametersNone
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksCalltoenablebeforecallingthecontrollerstartupfunctionNRC_StartController,otherwiseitwillnottakeeffect

NRC_SetCustomIODoutConfig

Function PrototypeintNRC_SetCustomIODoutConfig(unsignedintsum,int*addr);
DescriptionSet Custom IO D Out Configuration.
ParametersInputParameters:
sumNumberofcustomIOdout, parameterrange:sum>=0
addrCorrespondingaddressesforcustomIOdout, One In T Value Corresponds To One Port
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksSet The Number And Corresponding Addresses Of Custom IO D Out, 1representshighlevel, 0representslowlevel

NRC_SetCustomIODinConfig

Function PrototypeintNRC_SetCustomIODinConfig(unsignedintsum,int*addr);
DescriptionSet Custom I Odin Configuration.
ParametersInputParameters:
sumNumberofcustomIOdin, parameterrange:sum>=0
addrCorrespondingaddressesforcustomIOdin, One In T Value Corresponds To One Port
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksSet The Number And Corresponding Addresses Of Custom I Odin, 1representshighlevel, 0representslowlevel

NRC_SetCheckExioEnable

Function PrototypevoidNRC_SetCheckExioEnable(boolenable);
DescriptionSet Built-in tcp interface extended IO detection enable flag.
ParametersInputParameters:
enableDefaultistrue(detect extended IO), when set to false, extended IO detection is disabled
Return ValueNone
------
RemarksSettheenableflagbeforecallingthecontrollerstartupfunctionNRC_StartController,otherwiseitwillnottakeeffect

NRC_SetRobotDHConfig

Function PrototypeintNRC_SetRobotDHConfig(NRC_RobotDHConfigconfig);
DescriptionSet Robot Dh Parameters.
ParametersInputParameters:
configrobotDHparameter
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksSet This Parameter When The Servo Is Stopped Or In Ready Status

NRC_GetRobotDHConfig

Function PrototypeintNRC_GetRobotDHConfig(NRC_RobotDHConfig&config);
DescriptionGet Robot Dh Parameters.
ParametersOutputParameters:
configrobotDHparameter
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetRobotJointConfig

Function PrototypeintNRC_SetRobotJointConfig(intaxisNum,NRC_RobotJointConfigconfig);
DescriptionSet Robot Joint Parameters.
ParametersInputParameters:
axisNumaxisnumbertoset, parameterrange:1<=axisNum<=totalnumberofrobotaxes
configrobotDHparameter
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksSet This Parameter When The Servo Is Stopped Or In Ready Status

NRC_SetRobotDecareConfig

Function PrototypeintNRC_SetRobotDecareConfig(NRC_RobotDecareConfigconfig);
DescriptionSet Robot Cartesian Parameters.
ParametersInputParameters:
configrobotCartesianparameters,seeNRC_RobotDecareConfigstructurefordetails
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksSet This Parameter When The Servo Is Stopped Or In Ready Status

NRC_GetRobotDecareConfig

Function PrototypeintNRC_GetRobotDecareConfig(NRC_RobotDecareConfig&config);
DescriptionGet Robot Cartesian Parameters.
ParametersOutputParameters:
configrobotCartesianparameters,seeNRC_RobotDecareConfigstructurefordetails
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetJogJointSpeedConfig

Function PrototypeintNRC_SetJogJointSpeedConfig(intaxisNum,doublemaxSpeed,doubleacc);
DescriptionJog Joint Speed Setting.
ParametersInputParameters:
axisNumaxisnumbertoset,parameterrange:1<=axisNum<=totalnumberofrobotaxes
maxSpeedjog,the maximum speed this axis can reach,unit:degree/second
accjog,accelerationofthisaxis,unit:degree/second²
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksSet This Parameter When The Servo Is Stopped Or In Ready Status

NRC_GetJogJointSpeedConfig

Function PrototypeintNRC_GetJogJointSpeedConfig(intaxisNum,double&maxSpeed,double&acc);
DescriptionGet Jog Joint Speed.
ParametersInputParameters:
axisNumaxisnumbertoset,parameterrange:1<=axisNum<=totalnumberofrobotaxes
OutputParameters:
maxSpeedjog,the maximum speed this axis can reach,unit:degree/second
accjog,accelerationofthisaxis,unit:degree/second²
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetJogRectangularSpeedConfig

Function PrototypeintNRC_SetJogRectangularSpeedConfig(doublemaxSpeed,doubleacc);
DescriptionJog Cartesian Speed Setting.
ParametersInputParameters:
maxSpeedjog,Cartesiancoordinatethe maximum speed that can be reached,unit:mm/second
accjog,accelerationinCartesiancoordinate,unit:mm/second²
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksSet This Parameter When The Servo Is Stopped Or In Ready Status

NRC_GetJogRectangularSpeedConfig

Function PrototypeintNRC_GetJogRectangularSpeedConfig(double&maxSpeed,double&acc);
DescriptionGet Jog Cartesian Speed.
ParametersOutputParameters:
maxSpeedjog,Cartesiancoordinatethe maximum speed that can be reached,unit:mm/second
accjog,accelerationinCartesiancoordinate,unit:mm/second²
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetJogSensitivitySpeedConfig

Function PrototypeintNRC_SetJogSensitivitySpeedConfig(doublesensitivity);
DescriptionSet Jog Sensitivity.
ParametersInputParameters:
sensitivityThesmallerthevalue, theslowerthejogresponse;thelargerthevalue, the larger the jog error, which may cause robot shaking, unit:degree, defaultinitialvalue0.001, parameterrange:0.0001<=sensitivity<1
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksSet This Parameter When The Servo Is Stopped Or In Ready Status

NRC_SetInterpolationMethod

Function PrototypeintNRC_SetInterpolationMethod(intmethod);
DescriptionSet Robot Interpolation Method.
ParametersInputParameters:
methodrobotmotioninterpolationmethod:
-0S-curve interpolation, robot acceleration/deceleration is smoother, but acceleration/deceleration is slower compared to trapezoidal interpolation, generallyusedforlargerobots
-1trapezoidalinterpolation, robot acceleration/deceleration is faster, but may cause robot shaking, overload, etc., generally used for small robots
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksSet This Parameter When The Servo Is Stopped Or In Ready Status

NRC_SetAbsolutePosResolution

Function PrototypeintNRC_SetAbsolutePosResolution(doubleresolution);
DescriptionSet Robot Absolute Position Resolution.
ParametersInputParameters:
resolutionrobotpositionresolution, when the difference between two positions is less than this value, robot will consider these two positions as the same position, unit:degree, parameterrange:0.0001<=resolution<=0.1
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksSet This Parameter When The Servo Is Stopped Or In Ready Status

NRC_SetDynamicTrackingErrorMaxAllow

Function PrototypeintNRC_SetDynamicTrackingErrorMaxAllow(inttrackingError[]);
DescriptionSet Maximum Allowed Dynamic Tracking Error.
ParametersInputParameters:
trackingErrorMaximumallowabledynamictrackingerror,whentrackingerrorexceedsthisvalue,therobotwillstop,Thenumberofarrayelementsshouldbeat leastrobotnumberofaxes,unit:1/10000degree,parameterrange:100<=trackingError<=5000000
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksSet This Parameter When The Servo Is Stopped Or In Ready Status

NRC_SetStaticTrackingErrorMaxAllow

Function PrototypeintNRC_SetStaticTrackingErrorMaxAllow(inttrackingError[]);
DescriptionSet Maximum Allowed Static Tracking Error.
ParametersInputParameters:
trackingErrorMaximumallowablestatictrackingerror,whentrackingerrorexceedsthisvalue,therobotwillstop,Thenumberofarrayelementsshouldbeat leastrobotnumberofaxes,unit:1/10000degree,parameterrange:100<=trackingError<=5000000
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksSet This Parameter When The Servo Is Stopped Or In Ready Status

NRC_SetRobotRangeLimit

Function PrototypeintNRC_SetRobotRangeLimit(NRC_RobotRangeLimitrange,boolenable,introbotRangeNum,intworkType,boolisInInterfer,intport,intvalue);
DescriptionSet Robot Range Limits.
ParametersInputParameters:
rangeseeNRC_RobotRangeLimit
enableEnablerobotrange.Valuerange:0-Disable,1-Enable
robotRangeNumRobotrangenumber,parameterrange:0<robotRangeNum<100
workTyperobotrangetake effect mode, parameter range: 0 output status, 1 trigger stop
isInInterfertake effect range, parameter range: true takes effect within the range, false takes effect outside the range
portoutput IO port number, only valid when workType is 0
valueoutput IO high/low level, parameter range: 0 low level, 1 high level
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksSet This Parameter When The Servo Is Stopped Or In Ready Status

NRC_GetRobotRangeLimit

Function PrototypeintNRC_GetRobotRangeLimit(introbotRangeNum,NRC_RobotRangeLimit&range,bool&enable,int&workType,bool&isInInterfer,int&port,int&value);
DescriptionGet Robot Range Limits.
ParametersInputParameters:
robotRangeNumRobotrangenumber,parameterrange:0<robotRangeNum<100
OutputParameters:
rangeseeNRC_RobotRangeLimit
enableEnablerobotrange.Valuerange:0-Disable,1-Enable
workTyperobotrangetake effect mode, parameter range: 0 output status, 1 trigger stop
isInInterfertake effect range, parameter range: true takes effect within the range, false takes effect outside the range
portoutput IO port number, only valid when workType is 0
valueoutput IO high/low level, parameter range: 0 low level, 1 high level
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetTeachMaxStepSpeed

Function PrototypeintNRC_SetTeachMaxStepSpeed(intmaxJointSpeed,intmaxDecareSpeed);
DescriptionSet Maximum Single-step speed in teach mode.
ParametersInputParameters:
maxJointSpeedteachmodesingle-step run maximum joint running speed, unit:percentage, parameterrange:0<maxJointSpeed<=100
maxDecareSpeedteachmodesingle-step run maximum linear running speed, unit:mm/s, parameterrange:2<=maxJointSpeed<=9999
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksSet This Parameter When The Servo Is Stopped Or In Ready Status

NRC_GetTeachMaxStepSpeed

Function PrototypeintNRC_GetTeachMaxStepSpeed(int&maxJointSpeed,int&maxDecareSpeed);
DescriptionGet Maximum Single-step speed in teach mode.
ParametersOutputParameters:
maxJointSpeedteachmodesingle-step run maximum joint running speed, unit:percentage, parameterrange:0<maxJointSpeed<=100
maxDecareSpeedteachmodesingle-step run maximum linear running speed, unit:mm/s, parameterrange:2<=maxJointSpeed<=9999
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetCurrentPosToZeroPos

Function PrototypeintNRC_SetCurrentPosToZeroPos(intaxisNum,boolmod);
DescriptionSet Current Position To Zero Point Or Clear Multi-turn value.
ParametersInputParameters:
axisNumoperationaxis, whenaxisNumis0, means all axes, parameterrange:0<=axisNum<=totalnumberofrobotaxes
modsetzeropointorclearmulti-turn value, 0forsetzeropoint, 1forclearmulti-turn value
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksSetthisparameterwhentheservoisstoppedorinreadystatus
executingThisfunctiontakesabouttwotothreesecondseconds
Formosttypesofservo, executing this function, will servo enable power on, please ensure safety

NRC_Rbt_SetCurrentPosToZeroPos

Function PrototypeintNRC_Rbt_SetCurrentPosToZeroPos(introbotNum,intaxisNum,boolmod);
DescriptionSet Current Position To Zero Point Or Clear Multi-turn value(multi-robotversion).
ParametersInputParameters:
robotNumRobotnumbertosetzeropointorclearmulti-turnvalue
axisNumoperationaxis, whenaxisNumis0, means all axes, parameterrange:0<=axisNum<=totalnumberofrobotaxes
modsetzeropointorclearmulti-turn value, 0forsetzeropoint, 1forclearmulti-turn value
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksSetthisparameterwhentheservoisstoppedorinreadystatus
executingThisfunctiontakesabouttwotothreesecondseconds
Formosttypesofservo, executing this function, will servo enable power on, please ensure safety

NRC_Rbt_SetSingleCircleValue

Function PrototypeintNRC_Rbt_SetSingleCircleValue(introbotNum,conststd::vector<int>&value);
DescriptionSet Zero Point Single-turn value(multi-robotversion).
ParametersInputParameters:
robotNumRobotnumbertosetzeropointorclearmulti-turnvalue
valueSingle-turn value array for each axis zero point position, 0<value.size()<=7
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksThis Operation May Cause Loss Of Robot Precision, cannot run normally, previously established points cannot run, etc., please operate with caution

NRC_Rbt_GetSingleCircleValue

Function PrototypeintNRC_Rbt_GetSingleCircleValue(introbotNum,std::vector<int>&value);
DescriptionGet Zero Point Single-turn value(multi-robotversion).
ParametersInputParameters:
robotNumRobotnumbertosetzeropointorclearmulti-turnvalue
OutputParameters:
valueRetrievedvaluesarestoredinthisarray
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetUserCoordParm

Function PrototypeintNRC_SetUserCoordParm(intuserNum,constNRC_Position&deviation);
DescriptionSet User Coordinate Parameters.
ParametersInputParameters:
userNumusercoordinatesystemnumbertoset,parameterrange:0<userNum<1000
deviationusercoordinatesystemorigin relative to the robot Cartesian coordinate system origin offset value
-deviation.coordthisparameteris not used
-deviation.pos[0]-deviation.pos[2]Offsetofx,y,zaxispositionsrespectivelyvalue,unit: mm
-deviation.pos[3]-deviation.pos[5]Offsetofx,y,zaxisdirectionsrespectivelyvalue,unit:radian
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksSettheoffsetvalueoftheusercoordinatesystemoriginrelativetotherobotCartesiancoordinatesystemorigintodeterminetheusercoordinatesystem
Inactualuse,itisdifficulttomeasurethedirectionaloffsetvalue,so this function is rarely used; generally, useNRC_CalibrationUserCoord(intuserNum,NRC_Position&origin,NRC_Position&X_Axis,NRC_Position&XOY_Plane)functiontocalibrateusercoordinate,automaticallycalculatestheoffsetvalue

NRC_GetUserCoordParm

Function PrototypeintNRC_GetUserCoordParm(intuserNum,NRC_Position&deviation);
DescriptionGet User Coordinate Parameters.
ParametersInputParameters:
userNumUsercoordinatesystemnumber,parameterrange:0<userNum<1000
OutputParameters:
deviationusercoordinatesystemorigin relative to the robot Cartesian coordinate system origin offset value
-deviation.coordthisparameteris not used
-deviation.pos[0]-deviation.pos[2]Offsetofx,y,zaxispositionsrespectivelyvalue,unit: mm
-deviation.pos[3]-deviation.pos[5]Offsetofx,y,zaxisdirectionsrespectivelyvalue,unit:radian
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_CalibrationUserCoord

Function PrototypeintNRC_CalibrationUserCoord(intuserNum,constNRC_Position&origin,constNRC_Position&X_Axis,constNRC_Position&XOY_Plane);
DescriptionCalibrate User Coordinate, calibrates the user coordinate system, automatically calculates the offset value of the user coordinate system origin relative to the robot cartesian coordinate system origin, there by determining the user coordinate system.
ParametersInputParameters:
userNumusercoordinatesystemnumbertocalibrate,parameterrange:0<userNum<10
originusercoordinatesystemorigin in the robot Cartesian coordinate system
X_Axisusercoordinatesystemany point in the positive X-axis direction in the robot Cartesian coordinate system
XOY_Planeusercoordinatesystemany point in the XOY plane in the robot Cartesian coordinate system
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SwitchUserCoord

Function PrototypeintNRC_SwitchUserCoord(inttagetUser);
DescriptionSwitch Current User Coordinate.
ParametersInputParameters:
tagetUserThetargettoswitchtoUsercoordinatesystemnumber, parameterrange:0<tagetUser<10
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetCurrentUserCoord

Function PrototypeintNRC_GetCurrentUserCoord();
DescriptionGet Current User Coordinate Number.
ParametersNone
Return ValueUser Coordinate Number
RemarksNone

NRC_SetToolCoordParm

Function PrototypeintNRC_SetToolCoordParm(inttoolNum,constNRC_Position&deviation,conststd::vector<double>&payload=std::vector<double>(5,0.0),boolload=false);
DescriptionSet Tool Parameters.
ParametersInputParameters:
toolNumtobesettoolnumber,parameterrange:0<toolNum<1000
deviationOffsetofthetooltippositionrelativetotherobotendpositionvalue
-deviation.coordthisparameteris not used
-deviation.pos[0]-deviation.pos[2]Offsetofx,y,zaxispositionsrespectivelyvalue,unit: mm
-deviation.pos[3]-deviation.pos[5]Offsetofx,y,zaxisdirectionsrespectivelyvalue,for4-axisSCARArobotthisparameteris not used,unit:radian
payload The total number of runs for the current job file; set to 0 for continuous looping,parameterrange:index>=0
-payload[0]Payloadmass,unit:kg
-payload[1] Load inertia, unit: 0.001 kg/m\u00b2
-payload[2]~payload[4] represent center of mass X, Y, Z, unit: meters,range[-999999,999999]
load whether to modify payload mass and other parameters, default is false (do not modify), true then performs modification
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksIn actual use, it is generally based on the tool design drawing; directly fill in this parameter

NRC_GetToolCoordParm

Function PrototypeintNRC_GetToolCoordParm(inttoolNum,NRC_Position&deviation,std::vector<double>&payload);
DescriptionGet Tool Parameters.
ParametersInputParameters:
toolNumtoberetrievedtoolnumber, parameterrange:0<toolNum<1000
OutputParameters:
deviationToolparameterstoget, Offsetofthetooltippositionrelativetotherobotendpositionvalue
payloadToolpayloadmassandotherparameterstoget
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_CalibrationToolCoord_7Pos

Function PrototypeintNRC_CalibrationToolCoord_7Pos(inttoolNum,NRC_Position&pos1,NRC_Position&pos2,NRC_Position&pos3,NRC_Position&pos4,NRC_Position&pos5,NRC_Position&pos6,NRC_Position&pos7,intcalibrationPointNum=7);
DescriptionCalibrate Tool--7-point calibration method, calibrates the tool, automatically calculates the offset value of the tool end position relative to the robot end position, there by determining the tool coordinate system.
ParametersInputParameters:
toolNumtoberetrievedtoolnumber,parameterrange:0<toolNum<1000
pos1willtoolend-effectoraligned to a fixed tip,andmaintain the tool in a vertical position
pos2willtoolend-effectoraligned to a fixed tip,select a position that is not the same as pos1, pos3, or pos4
pos3willtoolend-effectoraligned to a fixed tip,select a position that is not the same as pos1, pos2, or pos4
pos4willtoolend-effectoraligned to a fixed tip,select a position that is not the same as pos1, pos2, or pos3
pos5maintain the tool in a vertical position,can be the same position as pos1
pos6relativetopos5 is a position in the positive X-axis direction relative to pos5
pos7is a position in the positive Y-axis direction relative to pos6
calibrationPointNum6:6: six-point calibration, 7: seven-point calibration
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksThe7-pointcalibrationmethodisonlyvalidfor6-axis serial robots!

NRC_SwitchToolCoord

Function PrototypeintNRC_SwitchToolCoord(inttagetTool);
DescriptionSwitch Current Tool.
ParametersInputParameters:
tagetUserThetargettoswitchtotoolnumber, 0indicatesnotool, parameterrange:0<=tagetTool<10
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetCurrentToolCoord

Function PrototypeintNRC_GetCurrentToolCoord();
DescriptionGet Current Tool Number.
ParametersNone
Return ValueCurrent Tool Number, toolThedefaultinitialvalueis0, i.e., no tool
RemarksNone

NRC_CalibrationToolCoord_2Pos_SetPos

Function PrototypeintNRC_CalibrationToolCoord_2Pos_SetPos(intposNum,constNRC_Position&pos);
Description2-point calibration-set point data.
ParametersInputParameters:
posNumThecalibrationpointnumber, parameterrange:1<=posNum<=2
poscalibrationpositionofthepoint, must be position in joint coordinate system
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksExample:
NRC_CalibrationToolCoord_2Pos_SetPos(1,pos1);
NRC_CalibrationToolCoord_2Pos_SetPos(2,pos2);
if(NRC_CalibrationToolCoord_2Pos_Cacl()==0)
{
//Writecalibrationresulttotool1
NRC_CalibrationToolCoord_2Pos_Save(1);
}

NRC_CalibrationToolCoord_2Pos_Cacl

Function PrototypeintNRC_CalibrationToolCoord_2Pos_Cacl();
Description2-point calibration-calculate calibration result.
ParametersNone
Return ValueWhetherthecalibrationresultcalculationsucceeded0Calculationsucceeded-1Calculationfailed
RemarksNone

NRC_CalibrationToolCoord_2Pos_Save

Function PrototypeintNRC_CalibrationToolCoord_2Pos_Save(inttagetTool);
DescriptionWritethe2-point calibration result to the specified tool.
ParametersInputParameters:
tagetToolThetoolnumbertowriteto, parameterrange:1<tagetTool<10
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_ecatSetCommand

Function PrototypeintNRC_ecatSetCommand(unsignedintaxisNum,unsignedintindex,unsignedintsubindex,unsignedchar*value,unsignedintsize);
DescriptionSet The Value Of A Servo Command Word.
ParametersInputParameters:
axisNumrobotaxisnumber
indexCommandwordcode
subindexCommandwordsub-code
valueThevaluetoset
sizeThebytesizeofthevaluecorrespondingtothecommandword
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksExample:
unsignedshortvalue=3000;
NRC_ecatSetCommand(1,0x6072,0,(signedshort*)&value,sizeof(value));

NRC_ecatGetCommand

Function PrototypeintNRC_ecatGetCommand(unsignedintaxisNum,unsignedintindex,unsignedintsubindex,unsignedchar*value,unsignedintsize);
DescriptionRead The Value Of A Servo Command Word.
ParametersInputParameters:
axisNumrobotaxisnumber
indexCommandwordcode
subindexCommandwordsub-code
sizeThebytesizeofthevaluecorrespondingtothecommandword
OutputParameters:
valueResultstoredviathispointer
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksExample:
unsignedshortvalue=0;
NRC_ecatGetCommand(1,0x6041,0,(unsignedchar*)&value,sizeof(value));
printf("value=%d\n",value);
unsignedintvalue=0;
NRC_ecatGetCommand(3,0x202C,0,(unsignedchar*)&value,sizeof(value));
printf("value=%d\n",value);

NRC_ModifyControllerIP

Function PrototypeintNRC_ModifyControllerIP(conststd::string&name,conststd::string&ip,conststd::string&gateway,conststd::string&dns);
DescriptionModify Controller IP Address.
ParametersInputParameters:
nameNetworkinterfacename
ipThetargetIPtomodifyto, mustconformtoIPrules
gatewayControllergateway
dnsControllerDNS
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksAfter Modification, you must remember the modified IP, otherwise you cannot reconnect to the controller and will need to return it for factory service!

NRC_RestoreFactorySettings

Function PrototypeintNRC_RestoreFactorySettings(boolclearConfigFile,boolclearExtendedFile);
DescriptionRestore Factory Settings.
ParametersInputParameters:
clearConfigFileallsystemconfigurationfiles
clearExtendedFileallextendedfiles
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksAfterrestoringfactorysettings,alldatainthecontrollerwillbecleared.Pleaseproceedwithcaution.
after calling this function, the controller will restart immediately

NRC_RebootController

Function PrototypeintNRC_RebootController();
DescriptionReboot Controller.
ParametersNone
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
Remarksafter calling this function, the controller will restart immediately

NRC_GetCurrentMotorVel

Function PrototypeintNRC_GetCurrentMotorVel(doublevel[]);
DescriptionGet Motor Speed.
ParametersOutputParameters:
velmotor speed will be returned via array,Thenumberofarrayelementsshouldbeat leastrobotnumberofaxes
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_Rbt_GetCurrentMotorVel

Function PrototypeintNRC_Rbt_GetCurrentMotorVel(introbotNum,doublevel[]);
DescriptionGet Motor Speed(multi-robotversion).
ParametersInputParameters:
robotNumPass robot number(1-4)
OutputParameters
velmotor speed will be returned via array,Thenumberofarrayelementsshouldbeat leastrobotnumberofaxes
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetCurrentTrackingError

Function PrototypeintNRC_GetCurrentTrackingError(doubletrackingError[]);
DescriptionGet Current Tracking Error.
ParametersOutputParameters
trackingErrorcurrenttrackingerrorwill be returned via array,Thenumberofarrayelementsshouldbeat leastrobotnumberofaxes
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetMaxTrackingError

Function PrototypeintNRC_GetMaxTrackingError(doublemaxTrackingError[]);
DescriptionGet Maximum Tracking Error.
ParametersOutputParameters
maxTrackingErrormaximumtrackingerrorwill be returned via array,Thenumberofarrayelementsshouldbeat leastrobotnumberofaxes
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetRobotAxisSum

Function PrototypeintNRC_GetRobotAxisSum();
DescriptionGet Robot Axis Count.
ParametersNone
Return ValueRobot Axis Count
RemarksNone

NRC_GetSyncAxisSum

Function PrototypeintNRC_GetSyncAxisSum();
DescriptionGet External Axis Count.
ParametersNone
Return ValueExternal Axis Count
RemarksNone

NRC_GetCurrentTime

Function PrototypeNRC_TIMENRC_GetCurrentTime();
DescriptionGet Current Time.
ParametersNone
Return ValueNRC_TIMEstruct
RemarksNone

NRC_SetMsgHappenCallback

Function PrototypeintNRC_SetMsgHappenCallback(void(*fun)(void));
DescriptionSet Callback Function For Message Occurrence.
ParametersInputParameters:
funFunctionpointerofthecallbackfunction
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksWhen A Message Occurs, this callback function will be called

NRC_FirstMessagePop

Function PrototypeNRC_MessageNRC_FirstMessagePop();
DescriptionPop The Earliest Message From The Queue.
ParametersNone
Return Valuereturns the earliest message in the queue and removes this message from the queue
RemarksNone

NRC_LastMessagePop

Function PrototypeNRC_MessageNRC_LastMessagePop();
DescriptionPop The Latest Message From The Queue.
ParametersNone
Return Valuereturns the latest message in the queue and removes this message from the queue
RemarksNone

NRC_GetMessage

Function PrototypeintNRC_GetMessage(intnum,NRC_Message&msg);
DescriptionGet The Num-th message in the queue.
ParametersInputParameters:
nummessagenumberinthequeuetoretrieve,Theearliestmessageisnumbered1.Valuerange:0<num<=NRC_GetMessageSize()
OutputParameters:
msgthe message to retrieve is returned via this parameter
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksGetthenum-thmessageinthequeue,does not remove this message

NRC_GetMessageSize

Function PrototypeintNRC_GetMessageSize();
DescriptionGet Total Message Count In The Queue.
ParametersNone
Return ValueTotal Number Of Messages In The Queue
RemarksNone

NRC_ClearMessage

Function PrototypevoidNRC_ClearMessage();
DescriptionGet Current User Coordinate Number.
ParametersNone
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_ClearServoError

Function PrototypeintNRC_ClearServoError();
DescriptionClear Servo Errors.
ParametersNone
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNot All Servo Errors CAN Be Cleared Directly, Some Errors Require The Error Condition To Be Resolved Before They CAN Be Cleared!

NRC_ClearAllError

Function PrototypeintNRC_ClearAllError();
DescriptionClear All Errors, clear the message queue, and clear servo errors.
ParametersNone
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNot All Servo Errors CAN Be Cleared Directly, Some Errors Require The Error Condition To Be Resolved Before They CAN Be Cleared!

NRC_GetAngularVel

Function PrototypeintNRC_GetAngularVel(double*angular);
DescriptionGet Joint Angular Velocity, unit rad/s.
ParametersOutputParameters:
angularangularvelocityarray, maximumlengthto12
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetLinerVel

Function PrototypeintNRC_GetLinerVel(double&linevel);
DescriptionGet Joint Linear Velocity, unit mm/s.
ParametersOutputParameters:
linevelend-effect or linear velocity
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetAxisVelSync

Function PrototypeintNRC_GetAxisVelSync(double*syncangular);
DescriptionGet External Axis Motion Speed.
ParametersOutputParameters:
syncangularmotionvelocityarray, maximumlengthto12
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksIf External Axis Is Linear, unit is mm/s, if joint axis, unitis°/s

NRC_GetTorq

Function PrototypeintNRC_GetTorq(double*torq);
DescriptionGet Torque Of Each Joint, unit is per mille.
ParametersOutputParameters:
torqreturnedasanarrayofeachjoint'storquevalues
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_Rbt_GetTorq

Function PrototypeintNRC_Rbt_GetTorq(introbotNum,double*torq);
Descriptiongets each joint torque in per mille units multi-robot version.
ParametersInputParameters:
robotNumrobotnumber
OutputParameters:
torqreturnedasanarrayofeachjoint'storquevalues
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetSyncTorq

Function PrototypeintNRC_GetSyncTorq(double*torq);
DescriptionGet Torque Of Each External Axis Joint, unit is per mille.
ParametersOutputParameters:
torqreturnedasanarrayofeachexternalaxisjoint'storquevalues
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_Rbt_GetSyncTorq

Function PrototypeintNRC_Rbt_GetSyncTorq(introbotNum,double*torq);
Descriptiongets each external axis joint torque in per mille units multi-robot version.
ParametersInputParameters:
robotNumrobotnumber
OutputParameters:
torqreturnedasanarrayofeachexternalaxisjoint'storquevalues
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetRatedTorque

Function PrototypeintNRC_GetRatedTorque(double*ratedTorq);
DescriptionGet Rated Torque Of Each Joint.
ParametersInputParameters:
syncangularmotionvelocityarray, maximumlengthto12
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_Rbt_GetRatedTorque

Function PrototypeintNRC_Rbt_GetRatedTorque(introbotNum,double*ratedTorq);
DescriptionGet Rated Torque Of Each Joint(multi-robotversion).
ParametersInputParameters:
ratedTorqreturnedasanarrayofeachjoint'sratedtorquevalues
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetSyncJointNum

Function PrototypeintNRC_SetSyncJointNum(intsyncGroupNum,std::vector<int>syncGroupType);
DescriptionSet Robot External Axis Count.
ParametersInputParameters:
syncGroupNumtobesetnumberofexternalaxisgroups, parameterrange:0<=syncGroupNum<=3
syncGroupTypeExternalaxisgrouptypetosets, 1:Single-axis position er, 2:Dual-axis position er, 3:
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksSetthisparameterwhentheservoisstoppedorinreadystatus.
Restartisrequiredforchangestotakeeffect!!!

NRC_Rbt_GetSyncJointType

Function PrototypeintNRC_Rbt_GetSyncJointType(introbot,std::vector<int>&sync_group_type);
DescriptionGet Robot External Axis Group Type.
ParametersInputParameters:
robotrobotnumber,0<robot<=4
OutputParameters:
sync_group_typethe data retrieved is stored in the sync_group_type container in the order of external axis connections
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksExternal Axis Group Types, 1:Single-axis position er, 2:Dual-axis position er, 3:Groundrail

NRC_GetSyncRackConversionRatio

Function PrototypeintNRC_GetSyncRackConversionRatio(double&xDirection,double&yDirection,double&zDirection);
DescriptionGet External Axis Rack Conversion Ratio.
ParametersOutputParameters:
xDirectionXdirection
yDirectionYdirection
zDirectionZdirection
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetSyncRackConversionRatio

Function PrototypeIntNRC_SetSyncRackConversionRatio(doublexDirection,doubleyDirection,doublezDirection);
DescriptionSet External Axis Rack Conversion Ratio.
ParametersInputParameters:
xDirectionXdirection
yDirectionYdirection
zDirectionZdirection
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetSyncCooperation

Function PrototypeintNRC_SetSyncCooperation(boolcoopertion);
DescriptionSet Whether External Axis Rack Is Cooperative.
ParametersInputParameters:
coopertion:Whethercooperative
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetSyncCooperation

Function PrototypeintNRC_GetSyncCooperation(intsyncGroupNum);
DescriptionGet Whether External Axis Rack Is Cooperative.
ParametersInputParameters:
syncGroupNum:axisgroup, parameterrange:1<=syncGroupNum<=3
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_CalSyncCalibrationResult

Function PrototypeintNRC_CalSyncCalibrationResult(intsyncGroupNum);
DescriptionCalculate External Axis Calibration Result.
ParametersInputParameters:
syncGroupNumaxisgroup, parameterrange:1<=syncGroupNum<=3
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetSyncGroupNum

Function PrototypeintNRC_GetSyncGroupNum();
DescriptionGet Current External Axis Group Number.
ParametersNone
Return ValueExternal Axis Group Number
RemarksNone

NRC_SetSyncGroupNum

Function PrototypeintNRC_SetSyncGroupNum(intsyncGroupNum);
DescriptionSet Robot External Axis Group Number.
ParametersInputParameters:
syncGroupNumtobesetaxisgroup, parameterrange:1<=syncGroupNum<=3
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetSyncGroupCarbinarion

Function PrototypeintNRC_GetSyncGroupCarbinarion(intsyncGroupNum);
DescriptionQuery Whether A Group Of External Axes Is Calibrated.
ParametersInputParameters:
syncGroupNumqueryaxis group,parameterrange:1<=syncGroupNum<=3
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetSyncGroupCarbinarion

Function PrototypeintNRC_SetSyncGroupCarbinarion(intsyncGroupNum,intpointNum);
DescriptionCalibrate External Axis Points(groupnumber,pointnumber).
ParametersInputParameters:
syncGroupNumtobesetaxisgroup, parameterrange:1<=syncGroupNum<=3
pointNumpointnumbertoset, 0<=pointNum<=4
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetSyncJointPara

Function PrototypeintNRC_SetSyncJointPara(intsyncGroupNum,intsyncAxisNum,NRC_RobotJointConfigconfig);
DescriptionSet Robot External Axis Parameters.
ParametersInputParameters:
syncGroupNumtobesetaxisgroup,parameterrange:1<=syncGroupNum<=3
syncAxisNumthe axis to set within the axis group,parameterrange:1<=syncAxisNum<=2
configseeNRC_RobotJointConfig
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksSet This Parameter When The Servo Is Stopped Or In Ready Status

NRC_GetSyncJointPara

Function PrototypeintNRC_GetSyncJointPara(intsyncGroupNum,intsyncAxisNum,NRC_RobotJointConfig&config);
DescriptionGet Robot External Axis Parameters.
ParametersInputParameters:
syncGroupNumtobesetaxisgroup,parameterrange:1<=syncGroupNum<=3
syncAxisNumthe axis to set within the axis group,parameterrange:1<=syncAxisNum<=2
OutputParameters:
configseeNRC_RobotJointConfig
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetSyncJogJointSpeedConfig

Function PrototypeintNRC_SetSyncJogJointSpeedConfig(intgroupNum,intaxisNum,doublemaxSpeed,doubleacc);
DescriptionSet Robot External Axis Jog Joint Speed.
ParametersInputParameters:
groupNumaxisgroupnumbertoset,parameterrange:1<=groupNum<=externalaxisgrouptotal
axisNumaxis number to set within the axis group,parameterrange:1<=axisNum<=total axes in the axis group
maxSpeedjog,the maximum speed this axis can reach,unit:degree/second
accjog,accelerationofthisaxis,unit:degree/second²
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksSet This Parameter When The Servo Is Stopped Or In Ready Status

NRC_GetSyncJogJointSpeedConfig

Function PrototypeintNRC_GetSyncJogJointSpeedConfig(intgroupNum,intaxisNum,double&maxSpeed,double&acc);
DescriptionGet Robot External Axis Jog Joint Speed.
ParametersInputParameters:
groupNumaxisgroupnumbertoset,parameterrange:1<=groupNum<=externalaxisgrouptotal
axisNumaxis number to set within the axis group,parameterrange:1<=axisNum<=total axes in the axis group
OutputParameters:
maxSpeedjog,the maximum speed this axis can reach,unit:degree/second
accjog,accelerationofthisaxis,unit:degree/second²
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetCurrentSyncPosToZeroPos

Function PrototypeintNRC_SetCurrentSyncPosToZeroPos(intaxisNum,boolmod);
DescriptionSet External Axis Current Position To Zero Point Or Clear Multi-turn value.
ParametersInputParameters:
axisNumoperationaxis,WhenaxisNumis0,itrepresentsallexternalaxes,parameterrange:0<=axisNum<=total number of external axes
modsetzeropointorclearmulti-turnvalue,0forsetzeropoint,1forclearmulti-turnvalue
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksSetthisparameterwhentheservoisstoppedorinreadystatus.
executingThisfunctiontakesabouttwotothreesecondseconds.
Formosttypesofservo, executing this function, will servo enable power on, please ensure safety.

NRC_RobotMoveJointSync

Function PrototypeintNRC_RobotMoveJointSync(intvel,NRC_Positiontarget,constNRC_SyncPosition&targetSync,intacc,intdec);
DescriptionRobot External Axis Point-to-point motion, robot external axis moves from current position to sync target position in point-to-point mode at vel speed.
ParametersInputParameters:
velrobotexternalaxisrunningspeed,torobotexternalaxismaximumspeedpercentage,parameterrange:0<vel<=100
targetrobotbodymotiontargetposition,seeNRC_Position
targetSyncrobotexternal axis motion target position,seeNRC_SyncPosition
accrobotexternalaxisrunacceleration,torobotexternalaxiseachjointmaximumaccelerationpercentage,parameterrange:0<vel<=100
decrobotexternal axis run deceleration,torobotexternalaxiseachjointmaximum deceleration percentage,parameterrange:0<vel<=100
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksBeforecallingthisfunction,poweronenable,you may callNRC_ServoEnable()function to power on the servo.Aftersuccessfullycallingthisfunction,,robotthe external axis will start moving,pleaseensuresafety.

NRC_RobotMoveLineSync

Function PrototypeintNRC_RobotMoveLineSync(intvel,NRC_Positiontarget,constNRC_SyncPosition&targetSync,intacc,intdec);
DescriptionRobot External Axis Linear Motion, robot body moves from current position to target position in linear mode at vel speed, robot external axis moves from current position to sync target position in point-to-point mode at vel speed.
ParametersInputParameters:
velRobotrunningspeedasapercentageofmaximumspeed,parameterrange:0<vel<=100
accRobotrunningaccelerationasapercentageofeachjoint'smaximumacceleration,parameterrange:0<vel<=100
decRobotrunningdecelerationasapercentageofeachjoint'smaximumdeceleration,parameterrange:0<vel<=100
targetRobotmotiontargetposition,seeNRC_Position
targetSyncexternal axis motion target position,seeNRC_SyncPosition
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksBeforecallingthisfunction,poweronenable,you may callNRC_ServoEnable()function to power on the servo.Aftersuccessfullycallingthisfunction,,robotthe external axis will start moving,pleaseensuresafety.

NRC_GetCurrentSyncPos

Function PrototypeintNRC_GetCurrentSyncPos(NRC_SyncPosition&position);
DescriptionGetexternalaxiscurrentposition.Thisfunctioncangettheexternalaxisposition;positiondataisreturnedviaparameterreference.
ParametersOutputParameters:
NRC_SyncPositionexternalaxiscurrentposition
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_Rbt_GetCurrentSyncPos

Function PrototypeintNRC_Rbt_GetCurrentSyncPos(introbotNum,NRC_SyncPosition&position);
DescriptionGet External Axis Current Position(multi-robotversion).ThisfunctioncangettheexternalaxispositioninthecoordCoordinatesystem;positiondataisreturnedviaparameterreference.
ParametersInputParameters:
robotNumrobotnumber(1-4)
OutputParameters:
NRC_SyncPositionexternalaxiscurrentposition
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_PosReachable

Function PrototypeintNRC_PosReachable(NRC_Positiontarget,NRC_SyncPositionsyncTarget,bool&result);
DescriptionThis Function Checks If The Robot Body Target And External Axis Sync Target Exceed Limits, result returned via result parameter, true means reachable, false means unreachable.
ParametersInputParameters:
targetseeNRC_Position
syncTargetseeNRC_SyncPosition
OutputParameters:
resulttrue means reachable,Each value is false means unreachable
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetIdentityParam

Function PrototypeintNRC_SetIdentityParam(intsize,intvel,double&zMax,double&zMin);
DescriptionThis Function Sets The Two Parameters Required For Dynamics Identification And Return The Maximum And Minimum Values Of The Robot End-effect or on the z-axis within the current trajectory range.
ParametersInputParameters:
size,Controlstherangeoftheidentificationtrajectory
vel,Controlsthespeedoftheidentificationtrajectory
OutputParameters:
zMaxend-effectormaximum Z value during running
zMinend-effectorminimum Z value during running
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksDuring the dynamics identification process, the robot will move through a large range of motion. Therefore, ensure the robot motion range is clear and free of obstacles. Before executing the dynamics identification function, please read the following precautions carefully:
**1. Currently, the dynamics identification function only supports 6-axis robot identification of the robot body under no-load status.
**2. The dynamics parameters obtained by this identification method are unrelated to manually entered dynamics parameters.
**3. Before executing the identification program, ensure the robot motion range is clear and free of obstacles.
**4. The range of the identification trajectory is controlled by the size parameter (100 = maximum range). The speed of the identification trajectory is controlled by the vel parameter (100 = maximum speed). This identification trajectory runs for several seconds to 10 seconds.
**5. Rules for setting identification trajectory parameters: First, set a small vel value (recommended 20) and a small size value (recommended 20), then execute the safety check program (NRC_RunSafeCheckProgram).
*On the basis of safety, gradually increase the size value until reaching the maximum safe run range (this size value may not reach 100, depending on the robot run environment).
*After obtaining the maximum size value allowed by the environment, set the vel value to 100 and execute the identification program (NRC_RunIdentifyProgram).
**6. When executing identification, the vel value must be 100, while the size value has no fixed value (theoretically, the closer size is to 100, the higher the identification precision).

NRC_RunSafeCheckProgram

Function PrototypeintNRC_RunSafeCheckProgram();
DescriptionRunrangesafetycheckprogram.Thisfunctionrunsthedynamicsidentificationtrajectoryoncetoconfirmthatthesurroundingenvironmentissafe, ensuring the robot will not hit people or objects during identification.
ParametersNone
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_RunIdentifyProgram

Function PrototypeintNRC_RunIdentifyProgram();
DescriptionExecutedynamicsidentificationprogram.Thisfunctionperformsdynamicsidentificationbyrunningalongapredeterminedtrajectorytentimes.Aftereachrun, it calculates and returns the error between theoretical and actual torque values.
ParametersNone
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetIdentifyError

Function PrototypeintNRC_GetIdentifyError(double*error);
DescriptionGettenidentificationtorqueerrorvalues.Thisfunctiongetstheerrorvaluesbetweentheoreticalandactualtorquefromtenidentificationcalculations.
ParametersOutputParameters:
errorReturnstheerrorvaluesbetweentheoreticalandactualtorque,array length is 60,Every 6 data points represent the error value of one run trajectory, for a total of ten trajectory error values
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_StopIdentityProgram

Function PrototypeintNRC_StopIdentityProgram();
DescriptionStop Dynamics Identification Program.
ParametersNone
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetCollisionParam

Function PrototypeintNRC_SetCollisionParam(double*param);
DescriptionThisfunctionSettheabsolutevalueofthedifferencebetweentheoreticalandactualtorqueforeachjointwhenacollisionisdetermined.Thelargerthevalue, the lower the collision detection sensitivity.
ParametersInputParameters:
paramisa6-element array, from the first element to the last, representingthethresholdsofjoints1through6
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetCollisionSwitch

Function PrototypeintNRC_SetCollisionSwitch(boolparam);
DescriptionThis Function Enable Or Disable Collision Detection.
ParametersInputParameters:
paramtrueenablescollisiondetection, false disables collision detection
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetCollisionSwitch

Function PrototypeintNRC_GetCollisionSwitch(double*syncangular);
DescriptionThis Function Check If Collision Detection Is Enabled.
ParametersOutputParameters:
paramtruemeanscollisiondetectionisenabled, false means collision detection is disabled
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_CalcConfiguration

Function PrototypeintNRC_CalcConfiguration(double*acsPos,int&conf);
DescriptionThisfunctionCalculatestheconfigurationofeachjointatacsPos,validonlyforR_GENERAL_6Srobottype,forotherrobottypesconfvalueis0.
ParametersInputParameters:
acsPos6-elementarrayforpassingineachjointpositionoftherobot
OutputParameters:
confOutputsthecalculatedrobotconfigurationvalue,0 means the robot type is not R_GENERAL_6S, 1-8 correspond to the 8 configuration values of the robot
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetSocketCustomProtocalCB

Function PrototypeintNRC_SetSocketCustomProtocalCB(intcommandNum,void(*fun)(std::string));
DescriptionThis Function Customizes The Socket Communication Protocol.
ParametersInputParameters:
commandNumCommunicationnumber,range0x9200-0x920e
(*fun)(string)function handle, i.e., the function to be called for the commandNum instruction
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SendSocketCustomProtocal

Function PrototypeintNRC_SendSocketCustomProtocal(intcommandNum,std::stringstr);
DescriptionSend Socket Communication.
ParametersInputParameters:
commandNumCommunicationnumber, range0x9200-0x920e
strThecontenttosend
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetTeachBoxConnectStatus

Function PrototypeboolNRC_GetTeachBoxConnectStatus();
DescriptionGet Whether The Teach Pendant Is Connected.
ParametersNone
Return ValueWhether The Teach Pendant Is Connected
RemarksNone

NRC_SetJobFileCustomInstructionCB

Function PrototypeintNRC_SetJobFileCustomInstructionCB(bool(*fun)(int,conststd::string&,conststd::string&));
DescriptionThis Function Binda Function To A Custom Instruction.
ParametersInputParameters:
(*fun)(int,std::string,std::string)function pointer, i.e., custom instruction to be called function
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksThe parameters in the callback function pointer are respectively: the custom instruction number, the custom instruction string parameter, and the name of the calling point for the custom instruction (empty string if not called)

NRC_SetJobFileCustomInstructionPreTreatmentCB

Function PrototypeintNRC_SetJobFileCustomInstructionPreTreatmentCB(void(*fun)(int,conststd::string&,conststd::string&));
DescriptionThis Function Binda Function To The Pre-processing function of a custom instruction.
ParametersInputParameters:
(*fun)(int,std::string,std::string)function pointer, i.e., custom instruction the pre-processing function to be called.
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksThe parameters in the callback function pointer are respectively: the custom instruction number, the custom instruction string parameter, and the name of the calling point for the custom instruction (empty string if not called)

NRC_SetJobFileCustomInstructionPostTreatmentCB

Function PrototypeintNRC_SetJobFileCustomInstructionPostTreatmentCB(void(*fun)(int,conststd::string&,conststd::string&));
DescriptionThis Function Binda Function To The Post-processing function of a custom instruction.
ParametersInputParameters:
(*fun)(int,std::string,std::string)function pointer, i.e., custom instruction the post-processing function to be called.
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksThe parameters in the callback function pointer are respectively: the custom instruction number, the custom instruction string parameter, and the name of the calling point for the custom instruction (empty string if not called)

NRC_ParseJobfileToAppendRunInstruction

Function PrototypeintNRC_ParseJobfileToAppendRunInstruction(conststd::string&fileName,std::vector<NRC_InstrDataBase*>&instrVec);
DescriptionThis Function Parse All Instructions In A Job File Into A Queue That CAN Be Used As Append Mode Instructions.
ParametersInputParameters:
fileNameThenameofthejobfiletoparse
OutputParameters:
instrVecTheappendmodeinstructionqueueobtainedafterparsing
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_TriggerErrorReport

Function PrototypeintNRC_TriggerErrorReport(intkind,conststd::string&text);
DescriptionUser Actively Triggers An Error Report.
ParametersInputParameters:
kindMessagelevel:0:Generalmessage, 1:Warningmessage, 2:Errormessage, 3:Importantmessage
textErrorcontent
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetOpenJobFileName

Function PrototypeintNRC_GetOpenJobFileName(std::string&name);
DescriptionThis Function Gets The Name Of The Currently Opened Job File.
ParametersOutputParameters:
nameReturnsthenameofthecurrentlyopenedjobfile
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SendCursorJumpCmdToTeachbox

Function PrototypeintNRC_SendCursorJumpCmdToTeachbox(conststd::string&name,intline);
DescriptionCallthisinterfacetosendacursorjumpcommandtotheteachpendant.Aftertheteachpendantresponds, the cursor will jump to the specified line of the specified job file.
ParametersInputParameters:
linejump tospecifiedjobfileatthespecifiedline
OutputParameters:
nameReturnsthenameofthecurrentlyopenedjobfile
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SingleSyncAxisMoveJConstVel_For_CustomInstructionCB

Function PrototypeintNRC_SingleSyncAxisMoveJConstVel_For_CustomInstructionCB(intsyncAxis,doublevel);
DescriptionCallthisinterface;inrunmode, theexternalaxissyncAxiswillmoveataconstantvel.Ifmultiplecallsaremadesimultaneously, only the first call is effective.
ParametersInputParameters:
syncAxisTheexternalaxisnumbertomove,startingfrom1.E.g.,tomoveexternalaxis1,pass1forsyncAxis.
velMotionspeed,unitdegrees per second
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_StopSingleSyncAxisMoveJConstVel_For_CustomInstructionCB

Function PrototypeintNRC_StopSingleSyncAxisMoveJConstVel_For_CustomInstructionCB();
DescriptionCallthisinterfacetostoptheexternalaxisconstantvelocitymotion.Thisinterfacemustbecalledwhenexternalaxisconstantvelocitymotionisactive;otherwiseitreturns-1.
ParametersNone
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetSingleSyncAxisMoveJConstVelMoving

Function PrototypeintNRC_GetSingleSyncAxisMoveJConstVelMoving(bool&moving);
DescriptionCall This Interface To Get The Single External Axis Constant Velocity Motion Flag.
ParametersOutputParameters:
movingtrueindicatesNRC_SingleSyncAxisMoveJConstVel_For_CustomInstructionCBisactive,falseindicatesNRC_SingleSyncAxisMoveJConstVel_For_CustomInstructionCBisnotactive
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_ResetSyncAxisMultipleTurns

Function PrototypeintNRC_ResetSyncAxisMultipleTurns(intsyncAxis);
DescriptionCall This Interface To Reset The External Axis Current Position To Within-360°~360°.Thishasthesameeffectasthe"ResetExternalAxisMulti-turn"commandintheteachpendantinterface.Thisinterfacecanonlyresetasingleexternalaxis.
ParametersInputParameters:
TheexternalAxisnumbertoreset, startingfrom1, e.g., toresetexternalaxis1, pass1forsyncAxis
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetFaultResetCB

Function PrototypeintNRC_SetFaultResetCB(void(*fun)());
DescriptionThisfunctionSeterrorclearbuttoncallbackfunction;doesnotaffectthecontroller'sownerrorclearingfunction.
ParametersInputParameters:
void(*fun)()Register A Function To Be Called When The Fault Reset Button Is Pressed On The Teach Pendant
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetRunModeAutoManBegFlag

Function PrototypeintNRC_SetRunModeAutoManBegFlag(boolflag);
DescriptionSet Auto Power-on when switching to run mode.
ParametersInputParameters:
flag0-Switchingtoautomodewillnotautomaticallypoweron1-Switching To Auto Mode Will Automatically Power On
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetServoModerOfOperation

Function PrototypeintNRC_SetServoModerOfOperation(unsignedcharmoderValue);
DescriptionSet Servo Operation Mode.
ParametersInputParameters:
moderValueservoautomode:3:SpeedmodePV, 8:CyclicpositionmodeCSP, 9:Cyclicsynchronousspeedmode(CSV), 10:Cyclicsynchronoustorquemode(CST)(CST)
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_Rbt_SetServoModerOfOperation

Function PrototypeintNRC_Rbt_SetServoModerOfOperation(introtbotNum,unsignedcharmoderValue);
DescriptionSet Servo Operation Mode(multi-robotversion).
ParametersInputParameters:
rotbotNumrobotnumber(1-4)
moderValueservoautomode:3:SpeedmodePV, 8:CyclicpositionmodeCSP, 9:Cyclicsynchronousspeedmode(CSV), 10:Cyclicsynchronoustorquemode(CST)(CST)
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_PV_SetTargetVelocity

Function PrototypeintNRC_PV_SetTargetVelocity(introbotNum,unsignedintaxisNum,doublevel);
DescriptionCall This Interface To Set Run Speed In Pv Mode.
ParametersInputParameters:
robotNumrobotnumber(1-4)
axisNumAxisnumber,1tostartingaxisnumber
velSetvelocityvalue Unit:r/min
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksOnly Useful In Pv Mode

NRC_PV_SetTargetAccAndDec

Function PrototypeintNRC_PV_SetTargetAccAndDec(introbotNum,unsignedintaxisNum,doubleacc,doubledec);
DescriptionCall This Interface To Set Run Acceleration And Deceleration In Pv Mode.
ParametersInputParameters:
robotNumrobotnumber(1-4)
axisNumAxisnumber,1tostartingaxisnumber
accaccelerationvalue Unit:r/min
decdecelerationvalue Unit:r/min
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksOnly Useful In Pv Mode

NRC_GetIOConfig

Function PrototypeintNRC_GetIOConfig(intioNum,intioType);
DescriptionCall This Interface To Returns The Number Of IO Ports For A Specific IO Board.
ParametersInputParameters:
ioNumIOboardnumber, To Query The Connected IO Board, pass the corresponding IO board number, range[1-4]
ioTypeIOporttypeDIN=0, DOUT=1, AIN=2, AOUT=3
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksExample:Currently3IOboardsareconnected,ToquerythenumberofDINportsonthisIOboard:​
​NRC_GetIOConfig(3,0);//rangecannotexceed3

NRC_GetIOBoardSum

Function PrototypeintNRC_GetIOBoardSum();
DescriptionCall This Interface To Returns The IO Board Count.
ParametersInputParameters:
syncangularmotionvelocityarray, maximumlengthto12
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetTargetPosition

Function PrototypeintNRC_SetTargetPosition(double*targetPosition);
DescriptionCall This Interface To Set Robot Target Position.
ParametersInputParameters:
targetPositionInputarrayofjointanglepositions
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetTargetTorque

Function PrototypeintNRC_SetTargetTorque(signedshort*targetTorq);
DescriptionSet Robot Target Torque.
ParametersInputParameters:
targetTorqInputarrayoftargettorqueforeachjoint
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetMaxTorque

Function PrototypeintNRC_SetMaxTorque(intaxis,signedshorttorque);
DescriptionSet Robot Axis Maximum Torque.
ParametersInputParameters:
axisAxisnumber
torqueAxismaximumtorqueReference:3000
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetMaxTorque

Function PrototypeintNRC_GetMaxTorque(intaxis,signedshort&torque);
DescriptionGet Robot Axis Maximum Torque.
ParametersInputParameters:
axisAxisnumber
OutputParameters:
torqueAxismaximumtorquestoragevariable
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_Rbt_SetMaxTorque

Function PrototypeintNRC_Rbt_SetMaxTorque(introbotNum,intaxis,signedshorttorque);
DescriptionGet Robot Axis Maximum Torque(multi-robotversion).
ParametersInputParameters:
robotNumPass robot number(1-4)
axisAxisnumber
OutputParameters:
torqueAxismaximumtorquestoragevariable
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetActualTorque

Function PrototypeintNRC_GetActualTorque(introbotNum,intaxis,signedshort&torque);
DescriptionGet Robot Axis Actual Torque.
ParametersInputParameters:
robotNumPass robot number(1-4)
axisAxisnumber
OutputParameters:
torqueaxisactualtorquestoragevariable
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetActualCurrent

Function PrototypeintNRC_GetActualCurrent(introbotNum,intaxis,signedshort&current);
DescriptionGet Actual Current.
ParametersInputParameters:
robotNumPass robot number(1-4)
axisAxisnumber
OutputParameters:
Currentstoragevariable
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetMaxCurrent

Function PrototypeintNRC_GetMaxCurrent(introbotNum,intaxis,signedshort&current);
DescriptionGet Maximum Current.
ParametersInputParameters:
robotNumPass robot number(1-4)
axisAxisnumber
OutputParameters:
currentMaximumcurrentstoragevariable
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetOverTolerance

Function PrototypeintNRC_SetOverTolerance(intaxis,unsignedinttolerance);
DescriptionSet Robot Axis Over-tolerance.
ParametersInputParameters:
axisAxisnumber
toleranceRobotaxismaximumover-tolerance
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_Rbt_SetOverTolerance

Function PrototypeintNRC_Rbt_SetOverTolerance(introbotNum,intaxis,unsignedinttolerance);
DescriptionSet Robot Axis Over-tolerance(multi-robotversion).
ParametersInputParameters:
robotNumPass robot number(1-4)
axisAxisnumber
toleranceRobotaxismaximumover-tolerance
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetTolerance

Function PrototypeintNRC_GetTolerance(intaxis,unsignedint&tolerance);
DescriptionGet Robot Axis Over-tolerance.
ParametersInputParameters:
axisAxisnumber
OutputParameters:
toleranceAxisover-tolerance storage variable
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_Rbt_GetTolerance

Function PrototypeintNRC_Rbt_GetTolerance(introbotNum,intaxis,unsignedint&tolerance);
DescriptionGet Robot Axis Over-tolerance(multi-robotversion).
ParametersInputParameters:
robotNumPass robot number(1-4)
axisAxisnumber
OutputParameters:
toleranceAxisover-tolerancestoragevariable
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_ShieldFollowError

Function PrototypeintNRC_ShieldFollowError(intaxis,boolshield);
DescriptionDisable Robot Axis Following Error.
ParametersInputParameters:
axisAxisnumber
shielddisable
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_robotRunCycle_Callback

Function PrototypeintNRC_robotRunCycle_Callback(void(*fun)());
DescriptionSet A Custom Parameter Less Function, Call This Interface To To Be Called Back Once Peret Her Cat Communication Cycle(default1ms).
ParametersInputParameters:
void(*fun)()Register A Function With No Return Value And No Parameters, This Function Is Called Once Peret Her Cat Communication Cycle.
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksThe Callback Function Must Not Contain Anytime-consuming operations

NRC_GetServoMode

Function PrototypeintNRC_GetServoMode(int*servoMode);
DescriptionGets Servo Operation Mode.
ParametersOutputParameters:
servoModereturnedasanarrayofeachservoautomode:
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
Remarksservo mode:returnedasanarrayofeachservoautomode:
*0-Modeunchanged;
*1-Profilepositionmode(PP);
*2-Speedmode(VL);
*3-Profilespeedmode(PV);
*4-Profiletorquemode(PT)(PT);
*5-Reserved;
*6-Homingmode(HM)(HM);
*7-Interpolated position mode(IP),not yet supported;
*8-Cyclicsynchronouspositionmode(CSP);
*9-Cyclicsynchronousspeedmode(CSV);
*10-Cyclicsynchronoustorquemode(CST)(CST).

NRC_SetTargetVelocity

Function PrototypeintNRC_SetTargetVelocity(int*axisVel);
DescriptionSet Target Velocity Value.
ParametersInputParameters:
axisVelPassadoublearraytosetthevelocityvalue(Note:Thearraysizemustmatchthecurrentnumberofrobotaxes.)
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetJogMoveCalculateNum

Function PrototypeintNRC_SetJogMoveCalculateNum(intnum);
DescriptionSet Jog Interpolation Point Count.
ParametersInputParameters:
numNumberofpoints
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetPlanningPosition

Function PrototypeintNRC_GetPlanningPosition(intaxisSum,double*axisPosition);
DescriptionGet The First Point In The Planning Queue.
ParametersInputParameters:
axisSumtotalnumberofrobotaxes
OutputParameters:
axisPositionReturnstheresultofgettingthepoints,array dimension is axisSum
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetRobotSum

Function PrototypeintNRC_GetRobotSum(int&robotSum);
DescriptionGet Robot Count.
ParametersOutputParameters:
robotSumPassanintvariabletoreceivethecurrentrobotcountbyreference;
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_ShieldedTeachingPendant

Function PrototypeintNRC_ShieldedTeachingPendant(boolstatus);
DescriptionCall This Interface To Disables Teach Pendant Connection Detection(mustbecalledbeforethesystemstartupfunction.).
ParametersInputParameters:
statusThestatustopasstrue:Disablecommunicationwiththeteachpendant false:Enablecommunicationwiththeteachpendant
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetControlCycle

Function PrototypeintNRC_GetControlCycle();
DescriptionGet The Communication Cycle Between Controller And Servo.
ParametersNone
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_EncoderZeroOffsetvalueSync

Function PrototypeintNRC_EncoderZeroOffsetvalueSync(intupdateAxis,doubleoffset);
DescriptionSet External Axis Zero Offset.
ParametersInputParameters:
updateAxisTheexternalAxisnumberrequiringoffset, range[1, 5]
offsetOffsetvalue
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetEncoderPosition

Function PrototypeintNRC_GetEncoderPosition(intslaveNum);
DescriptionGet Encoder Position.
ParametersInputParameters:
slaveNumAxisnumber
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetCustomFileTransfer

Function PrototypevoidNRC_SetCustomFileTransfer(constNRC_FileParam&fileParamVector);
DescriptionSet Custom Configuration Files That CAN Be Imported/exported.
ParametersInputParameters:
fileParamVectorConfigurationfileparameters
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksfileParamVectorExample:"global.json", "config/global.json", "1.0.0"

NRC_SetRobotMode

Function PrototypeintNRC_SetRobotMode(intmode);
DescriptionSet Robot To Multi-robot mode.
ParametersInputParameters:
mode0-Standalonemode1-Multi-robot mode
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_TcpCalculate

Function PrototypeintNRC_TcpCalculate(introbotNum,NRC_Positionpos,constNRC_Position&deviation,NRC_COORDcoord,NRC_Position&resultPos);
DescriptionCalculate The Position After A Fixed-distance offset in a specific coordinate system.
ParametersInputParameters:
robotNumRobotnumber1-4
posThepointtooffset
coordCoordinatesystem
OutputParameters:
deviationoffset distance
resultPoscalculation result stored as points
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetStatusWord

Function PrototypeintNRC_GetStatusWord(introbotNum,intaxis,signedshort&value);
DescriptionRead Servo Status Word.
ParametersInputParameters:
robotNumPass robot number(1-4)
axisAxisnumber
OutputParameters:
valueStatusvaluestoragevariable
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetCommunicationParam

Function PrototypeintNRC_SetCommunicationParam(conststd::string&ip,intport,introbot,intcraft,inttype,intnumberSystem,conststd::string&frameHeader,conststd::string&separator,conststd::string&terminator);
DescriptionCall This Interface To Set External TCP Communication Parameters.
ParametersInputParameters:
ipIPaddress,ThetargetIPforthespecifiedexternalcommunication
portPortnumber,the target port for the specified external communication
robotRobotnumber1-4
craftProcessnumber1-9
type0 Server, 1 Client
numberSystem0decimal1hexadecimal
frameHeaderFrame header, used to identify the start of communication data
separatorSeparator, used to separate different parts of communication data
terminatorTerminator, used to identify the end of communication data
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetCommunicationStatus

Function PrototypeintNRC_SetCommunicationStatus(boolstatus,intcraft,introbot);
DescriptionSet TCP Communication On/off.
ParametersInputParameters:
statustruetoenablefalsetodisable
craftProcessnumber1-9
robotRobotnumber1-4
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_SetTcpMessageCallback

Function PrototypeintNRC_SetTcpMessageCallback(void(*callback)(conststd::string&message));
DescriptionSet Callback Function For Receiving Messages Via External TCP Communication.
ParametersInputParameters:
callbackCallbackfunctionpointer
Thereceivedmessagedata
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_CommSendMessage

Function PrototypeintNRC_CommSendMessage(conststd::string&message,intcraft,introbot);
DescriptionCall This Interface To Send A Message To The Controller.
ParametersInputParameters:
messageThedatatosend
craftProcessnumber1-9
robotRobotnumber1-4
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetModbusSlaveConnectStatus

Function PrototypeintNRC_GetModbusSlaveConnectStatus(bool&status);
DescriptionGet Mod Bus Slave Connection Status.
ParametersOutputParameters:
statusTheretrievedconnectionstatus
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone

NRC_GetModbusMasterConnectStatus

Function PrototypeintNRC_GetModbusMasterConnectStatus(intcraft,bool&status);
DescriptionGet Mod Bus Master Connection Status.
ParametersInputParameters:
craftProcessnumber
OutputParameters:
statusTheretrievedconnectionstatus
Return Value0:Functioncallsucceeded
-101:Invalidinputparameter
-102:Targetobjectdoesnotexist, typicallyreturnedwhensysteminitializationisincomplete
-103:Targetobjectiscurrentlyinaninoperablestate
RemarksNone