LMI Gocator GoSDK C#开发学习笔记(二)

本文介绍Gocator传感器的配置与状态管理,包括版本号、操作模式、传感器状态等结构定义,以及IP地址管理和各类传感器配置详情。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

命名空间Lmi3d.Zen

KVersion结构

定义:public struct KVersion

描述:表示版本号。

公共成员字段Major

定义:public int Major { get; }

描述:返回版本号的主要部分。

公共成员字段Minor

定义:public int Minor { get; }

描述:返回版本号的次要部分。

公共成员字段Release

定义:public int Release { get; }

描述:返回版本号的发布部分。

公共成员字段Build

定义:public int Build { get; }

描述:返回版本号的生成部分。

运算符重载

定义:

public static bool operator !=(KVersion a, KVersion b);

public static bool operator ==(KVersion a, KVersion b);

隐式类型转换

定义:

public static implicit operator uint(KVersion v);

public static implicit operator KVersion(uint v);

构造方法

定义:public KVersion(int major, int minor, int release, int build);

描述:从其组成部分创建版本值。major版本号的主要部分。minor版本号的次要部分。release版本号的发布部分。build版本号的生成部分。返回版本值

公共成员方法Format

定义:public string Format();

描述:将版本格式化为字符串,收到的格式化字符串(例如“1.2.3.4”)。

公共成员方法Parse

定义:public static KVersion Parse(string @string);

描述:从格式化字符串解析版本。@string被格式化的字符串(例如“1.2.3.4”),返回已解析的版本。

            KApiLib.Construct();
            GoSdkLib.Construct();
            GoSystem goSystem = new GoSystem();
            Console.WriteLine(goSystem.SensorCount);
            KVersion version = goSystem.SdkVersion();
            Console.WriteLine(version.Format());
            Console.ReadLine();

运行结果:

1

6.1.20.8

命名空间Lmi3d.Zen.Io

描述:输入输出支持

KIpAddress结构

定义:public struct KIpAddress

描述:表示IP地址。

运算符重载

定义:

public static bool operator !=(KIpAddress a, KIpAddress b);

public static bool operator ==(KIpAddress a, KIpAddress b);

公共成员字段AnyV4

定义:public static KIpAddress AnyV4 { get; }

描述:获取表示自动分配的IPv4地址

公共成员字段BroadcastV4

定义:public static KIpAddress BroadcastV4 { get; }

描述:获取适合广播数据报的IPv4地址。

公共成员字段IsLoopback

定义:public bool IsLoopback { get; }

描述:报告给定地址是否为环回地址。如果地址是环回地址返回kTRUE,否则返回kFALSE

公共成员字段LoopbackV4

定义:public static KIpAddress LoopbackV4 { get; }

描述:获取IpV4环回地址。

公共成员方法Equals

定义:public bool Equals(KIpAddress other);

描述:比较两个地址是否相等,如果地址相等返回kTRUE,否则返回kFALSE

公共成员方法FromHost32u

定义:public static KIpAddress FromHost32u(uint address);

描述:将32位整数转换为IPv4地址。

公共成员方法FromNet32u

定义:public static KIpAddress FromNet32u(uint address);

描述:将32位整数转换为IPv4地址。

公共成员方法GetAny

定义:public static KIpAddress GetAny(KIpVersion version);

描述:获取表示自动分配的地址。

公共成员方法GetLoopback

定义:public static KIpAddress GetLoopback(KIpVersion version);

描述:获取环回地址。version IP版本

公共成员方法Parse

定义:public static KIpAddress Parse(string text);

描述:解析文本格式的IP地址。支持四元组(IPv4)格式(例如“192.168.1.10”)。

公共成员方法ToHost32u

定义:public uint ToHost32u();

描述:将IPv4地址转换为32位整数。

公共成员方法ToNet32u

定义:public uint ToNet32u();

描述:将IPv4地址转换为32位整数。

公共成员方法ToString

定义:public override sealed string ToString();

描述:返回一个IP地址字符串

命名空间Lmi3d.GoSdk

GoDiscoveryOpMode结构

定义:public struct GoDiscoveryOpMode

描述:表示响应发现协议的主控制器的操作模式。

公共成员字段ACCELERATOR(常量)

定义:public const int ACCELERATOR = 3;

描述:传感器被加速

公共成员字段NOT_AVAILABLE(常量)

定义:public const int NOT_AVAILABLE = 0;

描述:无法通过传感器提供

公共成员字段STANDALONE(常量)

定义:public const int STANDALONE = 1;

描述:传感器正在独立运行。

公共成员字段VIRTUAL(常量)

定义:public const int VIRTUAL = 2;

描述:传感器是一个虚拟传感器

运算符重载

定义:

public static bool operator !=(GoDiscoveryOpMode a, GoDiscoveryOpMode b);
public static bool operator !=(GoDiscoveryOpMode a, int b);
public static bool operator ==(GoDiscoveryOpMode a, GoDiscoveryOpMode b);
public static bool operator ==(GoDiscoveryOpMode a, int b);

隐式类型转换

定义:

public static implicit operator byte(GoDiscoveryOpMode v);
public static implicit operator GoDiscoveryOpMode(int v);

GoPortInfo结构

定义:public struct GoPortInfo

描述:源设备使用的端口

公共成员字段ControlPort

定义:public ushort ControlPort;

描述:控制通道端口

公共成员字段DataPort

定义:public ushort DataPort;

描述:数据通道端口

公共成员字段HealthPort

定义:public ushort HealthPort;

描述:状态通道端口

公共成员字段UpgradePort

定义:public ushort UpgradePort;

描述:升级通道端口

公共成员字段WebPort

定义:public ushort WebPort;

描述:网络通道端口

运算符重载

定义:

public static bool operator !=(GoPortInfo a, GoPortInfo b);
public static bool operator ==(GoPortInfo a, GoPortInfo b);

GoSensorAccelState结构

定义:public struct GoSensorAccelState

描述:列出传感器可能处于的所有传感器加速状态。

公共成员字段STATE_ACCELERATED(常量)

定义:public const int STATE_ACCELERATED = 2;

描述:传感器由主机加速。

公共成员字段STATE_ACCELERATED_BY_OTHER(常量)

定义:public const int STATE_ACCELERATED_BY_OTHER = 3;

描述:传感器由其他主机加速。

公共成员字段STATE_AVAILABLE(常量)

定义:public const int STATE_AVAILABLE = 1;

描述:传感器可以加速

公共成员字段STATE_FW_MISMATCH(常量)

定义:public const int STATE_FW_MISMATCH = 4;

描述:传感器固件与加速器程序版本不匹配。

公共成员字段STATE_UNKNOWN(常量)

定义:public const int STATE_UNKNOWN = 0;

描述:无法确定状态

运算符重载

定义:

public static bool operator !=(GoSensorAccelState a, GoSensorAccelState b);
public static bool operator !=(GoSensorAccelState a, int b);
public static bool operator ==(GoSensorAccelState a, GoSensorAccelState b);
public static bool operator ==(GoSensorAccelState a, int b);

隐式类型转换

定义:

public static implicit operator int(GoSensorAccelState v);
public static implicit operator GoSensorAccelState(int v);

GoAlignmentRef结构

定义:public struct GoAlignmentRef

描述:表示校准参照。

公共成员字段Dynamic(常量)

定义:public const int Dynamic = 1;

描述:使用的校准方式将特定于当前作业。

公共成员字段Fixed(常量)

定义: public const int Fixed = 0;

描述:所使用的校准将特定于传感器。

运算符重载

定义:

public static bool operator !=(GoAlignmentRef a, GoAlignmentRef b);
public static bool operator !=(GoAlignmentRef a, int b);
public static bool operator ==(GoAlignmentRef a, GoAlignmentRef b);
public static bool operator ==(GoAlignmentRef a, int b);

隐式类型转换

定义:

public static implicit operator int(GoAlignmentRef v);
public static implicit operator GoAlignmentRef(int v);

GoAlignmentState结构

定义:public struct GoAlignmentState

描述:表示校准状态。

公共成员字段Aligned(常量)

定义:public const int Aligned = 1;

描述:传感器被校准。

公共成员字段NotAligned(常量)

定义: public const int NotAligned = 0;

描述:传感器没有被校准

运算符重载

定义:

public static bool operator !=(GoAlignmentState a, GoAlignmentState b);
public static bool operator !=(GoAlignmentState a, int b);
public static bool operator ==(GoAlignmentState a, GoAlignmentState b);
public static bool operator ==(GoAlignmentState a, int b);

隐式类型转换

定义:

public static implicit operator int(GoAlignmentState v);
public static implicit operator GoAlignmentState(int v);

GoFamily结构

定义:public struct GoFamily

描述:表示支持的Gocator硬件系列。

公共成员字段_1000(常量)

定义:public const int _1000 = 0;

描述:1x00系列传感器

公共成员字段_2000(常量)

定义:public const int _2000 = 1;

描述:2x00系列传感器

公共成员字段_3000(常量)

定义:public const int _3000 = 2;

描述:3x00系列传感器

公共成员字段Unknown(常量)

定义:public const int Unknown = -1;

描述:未知传感器系列

运算符重载

定义:

public static bool operator !=(GoFamily a, GoFamily b);
public static bool operator !=(GoFamily a, int b);
public static bool operator ==(GoFamily a, GoFamily b);
public static bool operator ==(GoFamily a, int b);

隐式类型转换

定义:

public static implicit operator int(GoFamily v);
public static implicit operator GoFamily(int v);

GoInputSource结构

定义:public struct GoInputSource

描述:表示一个数据输入源。

公共成员字段Live(常量)

定义:public const int Live = 0;

描述:当前数据输入源来自实时传感器数据。

公共成员字段Recording(常量)

定义:public const int Recording = 1;

描述:当前数据输入源来自数据回放。

运算符重载

定义:

public static bool operator !=(GoInputSource a, GoInputSource b);
public static bool operator !=(GoInputSource a, int b);
public static bool operator ==(GoInputSource a, GoInputSource b);
public static bool operator ==(GoInputSource a, int b);

隐式类型转换

定义:

public static implicit operator int(GoInputSource v);
public static implicit operator GoInputSource(int v);

GoReplay类

定义:public class GoReplay : KObject

描述:表示回放配置

公共成员字段RecordingFilter

定义:public GoRecordingFilter RecordingFilter { get; }

描述:获取回放的录制筛选器。固件4.5.3.57中引入

GoRole结构

定义:public struct GoRole

描述:表示用户角色

公共成员字段Buddy(常量)

定义:public const int Buddy = 1;

描述:传感器作为副传感器运行

公共成员字段Main(常量)

定义:public const int Main = 0;

描述:传感器作为主传感器运行

运算符重载

定义:

public static bool operator !=(GoRole a, GoRole b);
public static bool operator !=(GoRole a, int b);
public static bool operator ==(GoRole a, GoRole b);
public static bool operator ==(GoRole a, int b);

隐式类型转换

定义:

public static implicit operator int(GoRole v);
public static implicit operator GoRole(int v);

GoMode结构

定义:public struct GoMode

描述:表示扫描模式

公共成员字段Profile(常量)

定义:public const int Profile = 2;

描述:轮廓扫描模式

公共成员字段Range(常量)

定义:public const int Range = 1;

描述:范围扫描模式

公共成员字段Surface(常量)

定义:public const int Surface = 3;

描述:点云扫描模式

公共成员字段Unknown(常量)

定义:public const int Unknown = -1;

描述:未知扫描模式

公共成员字段Video(常量)

定义:public const int Video = 0;

描述:视频扫描模式

运算符重载

定义:

public static bool operator !=(GoMode a, GoMode b);
public static bool operator !=(GoMode a, int b);
public static bool operator ==(GoMode a, GoMode b);
public static bool operator ==(GoMode a, int b);

隐式类型转换

定义:

public static implicit operator int(GoMode v);
public static implicit operator GoMode(int v);

GoState结构

定义:public struct GoState

描述:表示传感器对象的当前状态

公共成员字段Busy(常量)

定义:public const int Busy = 9;

描述:传感器已连接,但当前由另一个传感器控制(无法直接配置)。

公共成员字段Cancelled(常量)

定义:public const int Cancelled = 7;

描述:传感器已连接,但通过GoSensor类Cancel方法中止通信(断开或刷新传感器)。

公共成员字段Connected(常量)

定义:public const int Connected = 3;

描述:传感器已连接,但状态未知。这是一种通常不返回的内部状态。看到这种状态通常表示用户代码中存在竞争条件。关于线程安全,请参见GoSystem的说明。

公共成员字段Incompatible(常量)

定义:public const int Incompatible = 4;

描述:传感器已连接,但协议与客户端不兼容(需要升级)。

公共成员字段Incomplete(常量)

定义:public const int Incomplete = 8;

描述:传感器已连接,但所需的副传感器不存在(等待或删除关联)。

公共成员字段Inconsistent(常量)

定义:public const int Inconsistent = 5;

描述:传感器已连接,但远程状态已更改(刷新传感器)。

公共成员字段Offline(常量)

定义:public const int Offline = 1;

描述:传感器已断开且不再通过discovery检测到(刷新系统以消除传感器)。

公共成员字段Online(常量)

定义:public const int Online = 0;

描述:传感器已断开,但通过discovery检测到。

公共成员字段Ready(常量)

定义:public const int Ready = 10;

描述:传感器已连接并准备接受配置命令。

公共成员字段Resetting(常量)

定义:public const int Resetting = 2;

描述:传感器已断开且当前正在重置(等待完成)。

公共成员字段Running(常量)

定义:public const int Running = 11;

描述:传感器已连接且正在运行

公共成员字段Unresponsive(常量)

定义:public const int Unresponsive = 6;

描述:传感器已连接,但不再通过运行状况或发现检测到(断开)。

公共成员字段Upgrading(常量)

定义:public const int Upgrading = 12;

描述:传感器目前正在升级

运算符重载

定义:

public static bool operator !=(GoState a, GoState b);
public static bool operator !=(GoState a, int b);
public static bool operator ==(GoState a, GoState b);
public static bool operator ==(GoState a, int b);

隐式类型转换

定义:

public static implicit operator int(GoState v);
public static implicit operator GoState(int v);

GoStates结构

定义:public struct GoStates

描述:传感器状态、登录、校准信息、记录状态、回放源、正常运行时间、回放信息和自动启动设置状态。

公共成员字段AlignmentReference

定义:public GoAlignmentRef AlignmentReference;

描述:传感器的校准参考

公共成员字段AlignmentState

定义:public GoAlignmentState AlignmentState;

描述:传感器的校准状态

公共成员字段AutoStartEnabled

定义:public bool AutoStartEnabled;

描述:自动启动使能状态

公共成员字段BrandingType

定义:public int BrandingType;

描述:传感器的品牌类型;(用于品牌定制方案)。

公共成员字段CableLength

定义:public uint CableLength;

描述:从传感器到Master的电缆长度(以毫米为单位)。

公共成员字段IsAccelerator

定义:public bool IsAccelerator;

描述:传感器的加速状态

公共成员字段LoginType

定义:public GoUser LoginType;

描述:已登录的用户

公共成员字段PlaybackCount

定义:public uint PlaybackCount;

描述:回放数量

公共成员字段PlaybackPos

定义:public uint PlaybackPos;

描述:回放位置索引

公共成员字段PlaybackSource

定义:public int PlaybackSource;

描述:传感器当前回放源

公共成员字段QuickEditEnabled

定义:public bool QuickEditEnabled;

描述:当前的编辑状态

公共成员字段RecordingEnabled

定义:public bool RecordingEnabled;

描述:传感器当前的记录状态

公共成员字段security

定义:public uint security;

描述:传感器上的安全级别设置:无/基本;基本级别不允许匿名用户访问系统。

公共成员字段SensorState

定义:public GoDeviceState SensorState;

描述:传感器状态

公共成员字段UptimeMicrosec

定义:public uint UptimeMicrosec;

描述:传感器正常运行时间(以微秒为单位)。

公共成员字段UptimeSec

定义:public uint UptimeSec;

描述:传感器正常运行时间(以秒为单位)。

公共成员字段Voltage

定义:public ushort Voltage;

描述:电源电压,24或48V

运算符重载

定义:

public static bool operator !=(GoStates a, GoStates b);
public static bool operator ==(GoStates a, GoStates b);

GoUser结构

定义:public struct GoUser

描述:表示一个用户ID

公共成员字段Admin(常量)

定义:public const int Admin = 1;

描述:管理员用户

公共成员字段None(常量)

定义:public const int None = 0;

描述:没有用户

公共成员字段Tech(常量)

定义:public const int Tech = 2;

描述:技术员用户

运算符重载

定义:

public static bool operator !=(GoUser a, GoUser b);
public static bool operator !=(GoUser a, int b);
public static bool operator ==(GoUser a, GoUser b);
public static bool operator ==(GoUser a, int b);

隐式类型转换

定义:

public static implicit operator int(GoUser v);
public static implicit operator GoUser(int v);

命名空间Lmi3d.GoSdk.Outputs

描述:与输出相关的配置

GoOutput类

定义:public class GoOutput : KObject

描述:表示输出配置

公共成员字段AnalogCount

定义:public uint AnalogCount { get; }

描述:获取模拟输出配置对象的计数。固件5.2.18.3中引入

公共成员字段DigitalCount

定义:public uint DigitalCount { get; }

描述:获取数字输出配置对象的计数。固件5.2.18.3中引入

公共成员字段EthernetCount

定义:public uint EthernetCount { get; }

描述:获取以太网输出配置对象的计数。

公共成员字段SerialCount

定义:public uint SerialCount { get; }

描述:获取串口输出配置对象的计数。固件5.2.18.3中引入

公共成员方法GetAnalogAt

定义:public GoAnalog GetAnalogAt(long index);

描述:获取指定索引处的模拟输出配置对象。固件5.2.18.3中引入,index模拟输出索引

公共成员方法GetDigitalAt

定义:public GoDigital GetDigitalAt(long index);

描述:获取指定索引处的数字输出配置对象。固件5.2.18.3中引入,index数字输出索引

公共成员方法GetEthernetAt

定义:public GoEthernet GetEthernetAt(long index);

描述:获取指定索引处的以太网输出配置对象,index以太网输出索引

公共成员方法GetSerialAt

定义:public GoSerial GetSerialAt(long index);

描述:获取指定索引处的串口输出配置对象。固件5.2.18.3中引入,index串口输出索引

### 回答1: LMI Gocator 是一款由LMI Technologies 开发的高性能3D视觉传感器,用于进行精确的测量和检测。它可以在工业自动化和机器视觉领域应用广泛。 Gocator 提供了一套强大的软件开发工具包(SDK),称为Gosdk C,用于开发基于Gocator 的自定义应用程序。这个SDK 提供了一系列的函数库和示例代码,能够让开发者轻松地创建自己的应用程序。 使用Gosdk C,开发者可以访问Gocator 的各种功能,包括数据获取、图像处理、测量分析以及结果可视化。通过使用这些功能,开发者可以根据自己的需求设计出适合自己的3D测量和检测应用。 Gosdk C 具有相对较高的灵活性和可扩展性。它支持多种编程语言,比如C++,C#,Python等,使得开发者可以根据自己的喜好和熟悉程度来选择适合自己的编程环境。 总之,LMI Gocator Gosdk C 是一个功能强大的软件开发工具包,为开发者提供了创建自定义3D视觉应用程序的能力。通过使用它,开发者可以充分利用Gocator 的高性能和精确度,实现各种测量和检测任务。 ### 回答2: LMI Gocator是一款高级三维测量传感器,采用了独特的TOF(飞行时间)技术。该传感器可以实时获取目标物体的三维数据,并能够进行精确的测量和分析。 Gocator开放软件开发工具包(GoSDK)是LMI推出的一套用于开发基于Gocator传感器的应用程序的开发工具。GoSDK具有丰富的功能和易于使用的界面,可以帮助开发人员快速构建各种测量、检测和排序应用。 使用GoSDK,您可以通过编写自己的代码来控制和操作Gocator传感器。它提供了丰富的API和示例代码,可以方便地集成到不同的开发环境中,如C ++、C#和Python等。开发人员可以根据具体应用的需要自定义算法和功能,并实时访问传感器的数据和参数。 除了基本的三维测量功能外,GoSDK还提供了一些高级功能,如形状匹配、轮廓测量和机器视觉等。这些功能可以帮助用户进行更复杂的检测和定位任务,并实现自动化和精确性要求更高的应用。 总之,LMI GocatorGoSDK是一款强大的三维测量和图像处理解决方案的组合。通过使用Gocator传感器和GoSDK开发工具,用户可以轻松地实现各种应用需求,提高生产效率和产品质量。 ### 回答3: LMI Gocator是一款由LMI公司开发的三维视觉传感器产品系列。它使用结构光原理,通过投射激光光线来获取物体的三维信息。Gocator产品系列包括多种型号,可满足不同应用场景下的需求。 Gocator的核心功能是通过GOSDKGocator Software Development Kit)来实现的。GOSDK是一个软件开发工具包,提供了一系列API和工具,用于与Gocator系统进行通信和控制。通过GOSDK,用户可以编写自定义的应用程序,实现与Gocator传感器的无缝集成。 GOSDK可以帮助开发人员轻松地创建三维视觉应用程序。它提供了丰富的功能和工具,包括数据获取、图像处理、数据分析和可视化等。开发人员可以利用这些功能,对获取的三维数据进行处理和分析,并将结果展示给用户。 GOSDK还支持多种编程语言,如C++、C#和Python,使开发人员可以选择自己熟悉和喜欢的编程语言来进行开发。它还提供了详细的文档和示例代码,方便开发人员学习和使用。 总之,LMI GocatorGOSDK是一体的产品和工具组合,能够帮助开发人员轻松地实现三维视觉应用程序的开发和集成。它在工业自动化、机器人导航、物体检测等领域有着广泛的应用前景。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值