拜读维拉科技关于机器人相关信息的综合整理,涵盖企业排名、产品类型及资本市场动态:一、中国十大机器人公司(综合类)‌优必选UBTECH)‌聚焦人工智能与人形机器人研发,产品覆盖教育、娱乐及服务领域,技术处于行业前沿‌。NVIDIA Omniverse Extension开发秘籍机器人‌中科院旗下企业,工业机器人全品类覆盖,是国产智能工厂解决方案的核心供应商‌。埃斯顿自动化‌国产工业机器人龙头,实现控制器、伺服系统、本体一体化自研,加速替代外资品牌‌。遨博机器人(AUBO)协作机器人领域领先者,主打轻量化设计,适用于3C装配、教育等柔性场景‌。埃夫特智能‌国产工业机器人上市第一股,与意大利COMAU深度合作,产品稳定性突出‌。二、细分领域机器人产品‌智能陪伴机器人‌Gowild公子小白‌:情感社交机器人,主打家庭陪伴功能‌。CANBOT爱乐优‌:专注0-12岁儿童心智发育型亲子机器人‌。仿真人机器人目前市场以服务型机器人为主,如家庭保姆机器人(售价10万-16万区间)‌,但高仿真人形机器人仍处研发阶段。水下机器人‌工业级产品多用于深海探测、管道巡检,消费级产品尚未普及。NVIDIA Omniverse Extension开发秘籍资本市场动态‌机器人概念股龙头‌双林股份‌:特斯拉Optimus关节模组核心供应商,订单排至2026年‌。中大力德‌:国产减速器龙头,谐波减速器市占率30%‌。金力永磁‌:稀土永磁材料供应商,受益于机器人电机需求增长‌。行业趋势‌2025年人形机器人赛道融资活跃,但面临商业化落地争议,头部企业加速并购整合‌。四、其他相关机器人视频资源‌:可通过专业科技平台或企业官网(如优必选、新松)获取技术演示与应用案例。价格区间‌:服务型机器人(如保姆机器人)普遍在10万-16万元,男性机器人13万售价属高端定制产品‌。

NVIDIA Omniverse是一个模块化平台,使用高级 A 和微服务来构建由OpenUSDNVIDIA RTX提供支持的 3D 应用。OpenUSD 功能强大的 3D 框架与 NVIDIA RTX 用于视觉渲染和的实时光线追踪相结合,使能够为各行各业构建可扩展的解决方案。

NVIDIA Omniverse 的开发支持和两种语言。Python 开发效率高,因此 Omniverse 的主要开发以 Python 为主。而 C++ 开发则可以通过著名的开源框架 Pybind11 封装好后提供 Python 。

NVIDIA Omniverse Extension开发秘籍  第1张
(图片来源网络,侵删)

1开发环境准备

1.1 Visual Studio code

NVIDIA Omniverse Extension开发秘籍  第2张
(图片来源网络,侵删)

推荐使用 Visual Studio Code 开发,有条件的可以使用 Cuor 等  开发工具,或者结合 GPT、Deepseek 等辅助开发。

Visual Studio code 下载:

https://code.visualstudio.com/

(复制链接至浏览器打开,下同)

1.2 Omniverse Kit mplate

有 2 种部署方式:可以选择自己搭建,或者通过网盘下载打包文件,具体步骤参照:

《0 基础上手!NVIDIA Omniverse Kit 107 部署指南》

《福利丨NVIDIA Omniverse Kit 107.2 打包放送!》

2创建 Omniverse Extension

2.1 在Kit App template(重命名为 Kit107.3)目录下,以 Windows 为例,在命令行模式下运行:




2.2 选择 Extension:


2.3 然后再选择 Python UI Extension:


2.4 输入 Extension 的名字“nv.hello_world”,显示窗口的名字“Hello world”:


2.5相同目录下运行repo launch打开 NVIDIA Omniverse USD Composer,点击 Developer -- Extension(如下图所示),打开刚才创建的Hello world:


2.6 点击上图的 VS Code 按钮, VS code 就会把整个用户创建的 Extension 目录打开。找到创建的nvhello_world目录下面的Extension.py。


每个Extension.py对应每个插件的入口文件,其中会默认创建on_startup和on_shutdown这 2 个函数:



3Extension Debug 开发调试

调试是确保程序运行正常的必要环境,Omniverse 支持VS Code Live debug 调试打印 Log debug 调试两种方式,下面将展开介绍这两种 debug 调试方式。

3.1 VSCode Live Debug 调试

VS Code 调试可以根据断点设置实时查看各种变量。

3.1.1 点击菜单 Run -- Start Debugging:


3.1.2 点击 Omniverse 窗口中插件窗口的“d”按钮,此时可以看到断点被触发:


3.2 打印 Log debug 调试

在很多情况下并不适合断点调试,比如和时序相关的很多 Bug 或者触发条件很复杂的情况,这时候需要打印 Log 来进行调试。

许多开发者用 Python 默认的 print 函数来进行打印调试,这里推荐用 Omniverse 封装好的函数。

在 Omniverse Kit 开发中,可以用carb.log_info,carb.log_warn,carb.log_error。这 3 个在“console”窗口进行分类且会对应不同的颜色。

3.2.1 首先在代码中import carb .然后在代码中分别在三个不同的函数中填入carb.log_info,carb.log_warn和carb.log_error。

* 注意此处每个 log 都填入了 [NV_Hello_World] 这样做的目的是在“Console”窗口查看对应的 Extension 时,过滤掉其他 Extension 不相关的信息。在开发过程中制定好某些规范,可让开发调试更有效率。


3.2.2 在“Console”窗口中,点击不同的颜色可以区别显示不同类别的 Log,过滤窗口过滤掉非本 Extension 的调试信息。


4用 Pybind11 结合 C++开发 Omniverse Extension

pybind11 是现阶段流行的一个 C++ 结合 Python 的开发框架,本质是一个轻量级的头文件库,用来把 C++ 接口封装以后暴露给 Python 使用。

这样在 Omniverse Extension 开发中,既可以满足 Python 快速开发 UI 的便捷需求,又可以利用 C++ 高效对接许多底层硬件工业设备,比如  采集卡。

*这里不建议用 Omniverse 自带的 C++ Extension 去开发:因为 C++ 版本的在编写 Omniverse UI 方面便捷性不足,在 Omniverse Extension 级别的开发还是以 Python 为主。


4.1 开发环境安装

要开发 Pybind11 程序,需要 Pybind11 文件库和 .11 运行环境。也可以直接用 Omniverse 自带的 Python 运行环境,目前是 3.11 版本,在 Omniverse 安装目录下面的..\_buildwindows-x86_64 eleasekitpython

下载 Pybind11 开发库:

首先我们在 Github 上下载:

https://github.com/pybind/pybind11

git clonehttps://github.com/pybind/pybind11.git到本地目录。

下载 Python 运行环境并安装:

https://www.python.org/downloads/release/python-3110/

下载 Visual Studio 开发环境:

https://visualstudio.microsoft.com/zh-hans/free-developer-offers/

4.2 设置环境变量(以 Windows 为例)

在 Windows 系统环境变量中(Windows 开始菜单 -- 搜索“环境变量”)设置开发路径,分别设置py311_include,py311_lib和pybind_include这 3 个环境变量用于后续开发。


4.3 开发环境配置

用 Visual Studio 封装 Pybind( 或者跨平台 CMakelist 等请参考 Pybind11 官方文档),安装 Visual Studio 并选择 C++ 开发组件,然后创建一个 C++ 空项目,起名为“Example”。

4.3.1 修改生成程序为 DLL 动态链接库形式。


4.3.2 配置头文件,把之前设置的头文件环境变量填写在如下图所示的地方。


4.3.3 动态链接库设置。


4.3.4 填入python311.lib和python3.lib。


4.3.5 输出设置

DLL 工程默认生成是.dll,但实际 Omniverse 工程中需要的是.pyd扩展名,所以在 Post-Build Event 中执行下面命令,拷贝并且重新设置扩展名:




4.4 代码开发

在 Visual Studio 工程中创建一个source.cpp填入以下代码:



编译代码成功以后看到生成一个Example.pyd。

* 注意 Example 要和 PYBIND11_MODULE 中的大小写完全一样)。


4.5 在 Omniverse 调用 pyd

拷贝刚才生成的 pyd 文件到 Omniverse 的 Python 链接库文件夹下面。可以自行编写脚本,或者在之前的 post-build 中执行命令:



打开 Omniverse 菜单栏 Developer--Script Editor,输入以下代码点击 Run,可以看到封装的 C++ 函数在 Python 端被正确调用执行。




下期将带来实战项目——利用 Omniverse Extension 开发 FreeD 定位系统。敬请持续关注丽台,获取更多干货内容!

文案&技术支持:

宋毅明 NVIDIA 专业可视化部门

*与NVIDIA产品相关的图片或视频(完整或部分)的版权均归NVIDIA Corporation所有。