Releases: underautomation/Fanuc.NET
Releases · underautomation/Fanuc.NET
v3.3.0.0
- Add
GetEncodingmethod toStringUtilsfor retrieving encoding by controller language
namespace UnderAutomation.Fanuc.Common;
public static class StringUtils {
public static Encoding GetEncoding(Languages language);
}-
Fix Telnet program Breakpoint commands for Japanese and Chinese controllers
-
Set FTP encoding according to robot controller language
v3.1.1.0
- Added support for Japanese and Chinese languages. You can now set the language in the Connect Parameters.
var robot = new FanucRobot();
var parameters = new ConnectParameters("192.168.0.1");
parameters.Language = Languages.English; // or Languages.Japanese, or Languages.Chinese
robot.Connect(parameters);- The SDK now supports Shift-JIS and GB2312 encodings for Japanese and Chinese string data.
- Throws a
ConnectExceptionwhen the connection fails instead of a generic exception. It now includes more details about the failure and the protocol that caused it.
v3.0.0.0
Major new feature
Added forward and inverse kinematics support for CRX cobots and other Fanuc robots with a traditional spherical wrist.
using UnderAutomation.Fanuc.Kinematics;
JointsPosition position = new JointsPosition(10, 20, 120, 0, 0, 25);
// ---- Get DH parameters ----
// Example: CRX-10iA/L
DhParameters dh = new DhParameters(-540, 150, -160, 0, 710, 0);
// From a known arm model
dh = DhParameters.FromArmKinematicModel(ArmKinematicModels.CRX10iA);
// From OPW parameters: M10iA/7L
dh = DhParameters.FromOpwParameters(0.15, -0.20, 0.60, 0.86, 0.10);
// From an online robot (SYSMOTN file)
dh = DhParameters.FromSymotnFile(_robot.Ftp.KnownVariableFiles.GetSymotnFile())[0];
// ---- Forward kinematics ----
CartesianPosition pose = KinematicsUtils.ForwardKinematics(position, dh);
// ---- Inverse kinematics with multiple solutions ----
JointsPosition[] positions = KinematicsUtils.InverseKinematics(pose, dh);Minor fixes
- SNPX: Fixed writing of position registers and position variables where the configuration was always written with the default value.
- SNPX: Fixed reading of position register configuration so that it uses the correct Turn4 to Turn6 values.
- Removed properties
T4,T5,T6fromUnderAutomation.Fanuc.Common.ExtendedCartesianPosition. This information is now available in theConfigurationproperty. - Renamed and fixed properties
Turn1,Turn2,Turn3toTurn4,Turn5,Turn6inUnderAutomation.Fanuc.Common.Configurationso they match the correct axes. - Allowed connection to ROBOGUIDE by setting both the robot folder path and the path to the
services.txtfile.
v2.3.0.0
- FTP Error List : add occuring time and parse error code
v2.2.0.0
- SNPX / TELNET : Allow writing empty string variables
v2.1.0.0
- SNPX : implement direct writing of variables without assignment
_robot.Snpx.SetVariable("SYSTEM_VARIABLE_NAME", NewValue);v2.0.0.0
- Experimental support for RMI (Remote Motion Interface)
v1.20.0.1
- Telnet : add capability to send a custom KCL command
robot.Telnet.SendCustomCommand("My KCL Command");- SNPX : Add active alarm and alarm history access
RobotAlarm firstActiveAlarm = robot.Snpx.ActiveAlarm.Read(1);
RobotAlarm secondAlarmInHistory = robot.Snpx.AlarmHistory.Read(1);v1.20.0.0
- Telnet : add capability to send a custom KCL command
robot.Telnet.SendCustomCommand("My KCL Command");- SNPX : Add active alarm and alarm history access
RobotAlarm firstActiveAlarm = robot.Snpx.ActiveAlarm.Read(1);
RobotAlarm secondAlarmInHistory = robot.Snpx.AlarmHistory.Read(1);v1.19.0.0
- SNPX : Enable batch reading of registers and variables
NumericRegistersBatchAssignment assignment = _robot.Snpx.NumericRegisters.CreateBatchAssignment(1, 40);
float[] values = assignment.Read();