news 2026/10/1 23:47:00

Allegro坐标系操控:Move、Spin与Rotate的本质区别

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Allegro坐标系操控:Move、Spin与Rotate的本质区别

1. 项目概述:Allegro中器件移动与旋转的本质不是“拖拽”,而是坐标系操控

在PCB设计流程里,很多人把Allegro里挪一个电阻、转一个连接器当成“鼠标拖两下”的简单操作——这恰恰是后期布线反复返工、DRC报错频发、甚至贴片机抛料的根源。我带过三届硬件工程师培训,90%的新手第一次做高密度板时栽在同一个坑里:用鼠标左键直接拖器件,结果焊盘偏移0.1mm,丝印覆盖焊盘,或者旋转后管脚编号错位,网表比对失败。这不是操作不熟,而是根本没理解Allegro底层的坐标系统逻辑。它不像画图软件那样“视觉即真实”,而是一套严格基于世界坐标系(World Coordinate System)和局部坐标系(Local Coordinate System)的几何引擎。你看到的“移动”,本质是器件原点在全局坐标系中的平移;你执行的“旋转”,实际是器件自身坐标系绕其原点进行欧拉角变换,再将所有焊盘、丝印、3D模型坐标重新映射回世界坐标系。所以标题里说的“多器件整体旋转”,绝不是框选后按Ctrl+R——那是把多个独立坐标系强行套用同一组旋转参数,一旦器件原始朝向不同,结果就是歪斜、重叠、焊盘错位。真正可靠的方案,必须先统一参考基准,再批量施加刚体变换。这也是为什么“allegro转pads文件的方法”常失败:Pads用的是简化的二维坐标处理,而Allegro保留了完整的旋转矩阵和层叠关系,直接导出坐标文件若忽略旋转中心定义,贴片坐标就会整体偏移。接下来我会从设计意图出发,拆解每一步命令背后的数学原理、实操陷阱和工程取舍,不讲快捷键列表,只告诉你什么时候该用Move、什么时候必须用Spin、为什么“绕移动坐标系旋转”和“绕固定坐标系旋转”在Allegro里是两种完全不同的命令路径。

2. 核心机制解析:Move、Spin与Rotate命令的底层差异与适用场景

2.1 Move命令:平移操作的三种模式及其坐标基准选择

Allegro里的Move命令(快捷键M)表面看只是拖动器件,但它的行为完全取决于当前激活的坐标系模式和参考点设置。新手常误以为“选中器件→按M→拖鼠标”就完事,实际上系统在后台做了三件事:读取器件当前原点坐标、计算鼠标位移向量、将新坐标写入数据库。问题在于,这个“原点”是谁定义的?Allegro默认以器件封装(Package)的设计原点(Design Origin)为基准,但这个原点往往不在器件几何中心——比如一个SOT-23封装,原点可能设在引脚1焊盘左下角,而非整个器件中心。这就导致:你自以为在“居中移动”,实际是让整个器件沿X轴偏移了0.5mm。我在某电源模块项目中就遇到过,客户要求所有电容中心对齐网格线,我用Move命令拖到格点上,结果AOI检测发现所有电容焊盘偏移0.127mm,追查发现封装原点偏移了10mil。解决方法不是靠眼睛估,而是强制切换坐标系。按Ctrl+Shift+O调出Coordinate System对话框,选择“Package Origin”或“Geometric Center”——后者会实时计算器件外轮廓中心作为移动基准。更关键的是,Move命令支持三种位移模式:Absolute(绝对坐标)、Delta(增量偏移)、Grid Snap(网格吸附)。其中Delta模式最常用,比如输入DX=100mil, DY=0,表示沿X轴正向精确移动100mil,不受鼠标精度影响。而Grid Snap看似方便,但在10mil网格下移动0.5mm器件,实际会吸附到最近的10mil倍数点,累积误差可达±5mil。我的经验是:量产板务必用Delta模式输入数值,调试板可用Grid Snap但需开启“Show Grid”确认吸附位置。

2.2 Spin命令:绕局部坐标系原点的刚体旋转,及其与Rotate的本质区别

Spin命令(快捷键R)常被误称为“旋转”,但它的真实含义是绕器件自身局部坐标系原点进行Z轴旋转。这里的关键是“局部坐标系原点”——它由封装创建时定义,且不可在PCB编辑器中修改。例如一个SOIC-8封装,若设计师将原点设在引脚1焊盘中心,则Spin 90°后,所有焊盘坐标按该点旋转,引脚顺序保持顺时针排列;若原点设在封装几何中心,旋转后引脚1会移到原引脚2位置。这就是为什么“allegro如何导入网表”后器件方向混乱:网表本身不携带旋转信息,Allegro按默认原点放置,后续Spin操作才叠加角度。而Rotate命令(菜单Route → Manual → Rotate)则完全不同——它允许你指定任意旋转中心点,比如选中器件后按Rotate,系统会弹出十字光标让你点击一个点,然后输入角度,此时所有焊盘、丝印、3D模型都绕该点旋转。我在做RF模块布局时,需要将天线匹配网络整体绕馈点旋转,就必须用Rotate而非Spin,否则匹配电容会偏离馈点轨迹。另外,Spin命令支持步进角度设置(Setup → Design Parameter Editor → Display → Spin Angle),默认是90°,但高频板常需45°或22.5°微调,必须提前修改此参数,否则按R键只能跳90°。有个致命陷阱:当器件已被Group(成组)时,Spin命令会对整个Group执行旋转,但旋转中心是Group内第一个器件的原点,若Group包含不同封装,结果就是部分器件飞出板外。因此,多器件旋转前必须确认Group结构,或改用Edit → Placement → Rotate命令进行可控操作。

2.3 多器件整体旋转的工程实现路径:从“框选旋转”到“坐标系对齐”

标题强调“多器件的整体旋转”,这在实际工程中通常对应两类需求:一是机械装配要求(如某传感器模块需整体偏转15°以匹配外壳开孔),二是电气优化需求(如高速差分对需绕参考平面旋转以减少耦合)。但Allegro没有“一键整体旋转”按钮,因为盲目旋转会破坏网络拓扑。正确路径分三步:第一步,建立统一参考坐标系。用Setup → Application Mode → Mechanical → Create Coordinate System,在模块中心点创建新坐标系,命名为“MODULE_ROTATION”。第二步,将所有目标器件绑定至该坐标系。选中器件→右键→Properties→在“Coordinate System”字段填入“MODULE_ROTATION”,此时器件位置坐标变为相对于新坐标系的值。第三步,对坐标系本身执行旋转。用Setup → Application Mode → Mechanical → Edit Coordinate System,选中“MODULE_ROTATION”,输入Z轴旋转角度。此时所有绑定器件自动跟随旋转,且焊盘相对位置零误差。这种方法比框选后Spin可靠十倍,因为它是坐标系层级的操作,而非单个器件的几何变换。我在某车载雷达板项目中用此法旋转整个MMIC模块,23个器件零偏移,贴片良率提升至99.98%。反例是某同事直接框选旋转,结果两个0402电容重叠,DFM检查未发现,量产时贴片机吸嘴碰撞导致整条产线停机2小时。

3. 实操全流程详解:从单器件精确定位到多器件协同旋转

3.1 单器件移动与旋转的标准化操作链

我们以一个典型场景为例:将一颗BGA芯片精确放置到板边连接器正上方,且旋转37°以匹配柔性电缆走向。第一步,获取绝对坐标基准。用Display → Show Ratsnest → All打开飞线,观察BGA与连接器的相对位置;用Info → Measure Distance测量两者中心距离,记为ΔX=125.4mil, ΔY=89.2mil。第二步,设置移动模式。按Ctrl+Shift+O打开坐标系面板,选择“Geometric Center”作为移动基准,关闭“Grid Snap”避免吸附干扰。第三步,执行精确定位。选中BGA→按M→输入DX=125.4, DY=89.2→回车。此时BGA中心与连接器中心对齐。第四步,校验旋转中心。按Ctrl+Shift+O确认当前坐标系为“Package Origin”,若非此选项,需在封装库中修正原点位置。第五步,执行旋转。选中BGA→按R→输入Angle=37→回车。关键验证点:旋转后用Info → Display Element查看焊盘坐标,确认所有焊盘X/Y值均按cos37°、sin37°矩阵变换,无异常偏移。第六步,保存状态。用File → Export → Placement将当前位置导出为*.txt,内容包含器件名、X/Y坐标、Rotation角度,供后续版本比对。这套流程耗时约90秒,但比目测拖拽节省3次返工时间。特别提醒:Allegro 17.4版本后新增“Snap to Pin”功能(Setup → User Preferences → Design → pin),开启后移动时鼠标会吸附到焊盘中心,但仅适用于QFP等引脚清晰的封装,BGA因焊盘不可见易吸附错误,务必关闭。

3.2 多器件整体旋转的五步安全协议

针对标题核心需求,我制定了一套经12个量产项目验证的“五步安全协议”,杜绝旋转导致的DRC错误和贴片失败:

  1. 预检阶段:用Tools → Database Check → Run DRC确保当前无未解决错误;用Display → Show Ratsnest → Selected Nets检查目标器件所在网络是否完整,避免旋转后飞线断裂。

  2. 隔离操作区:用Edit → Z-Copy → Copy to Layer将目标器件复制到Mechanical层(如Layer 51),作为旋转参考底图;用Display → Color/Visibility关闭除Mechanical和Top层外的所有层,减少视觉干扰。

  3. 坐标系锚定:用Setup → Application Mode → Mechanical → Create Coordinate System,在模块几何中心点击创建新坐标系,命名规则为“ROT_[模块名]_[角度]”,如“ROT_WIFI_MODULE_22.5”。

  4. 器件绑定与验证:框选所有目标器件→右键→Properties→批量修改“Coordinate System”字段为新建坐标系名;随后用Info → Display Element随机抽查3个器件,确认其坐标显示为相对值(如X=-12.3, Y=5.6),而非绝对值。

  5. 执行与复位:用Setup → Application Mode → Mechanical → Edit Coordinate System选中坐标系→输入Z Rotation=22.5→Apply;完成后立即用File → Export → Placement导出新坐标,并用Tools → Compare Placement比对旋转前后文件,确认所有器件Rotation值已更新。

这套协议在某5G基站板项目中成功旋转包含47个器件的射频前端模块,耗时4分钟,零DRC报错。关键心得:第2步的Z-Copy底图能防止旋转后器件“消失”(因坐标系变更导致显示异常),第4步的随机抽查可发现个别器件未绑定成功的隐患——曾有项目因一个0201电阻未绑定,旋转后飞出板外,DFM检查遗漏,导致首件测试失败。

3.3 坐标系旋转的数学原理与参数验证

Allegro的坐标系旋转并非简单角度叠加,而是基于齐次坐标变换矩阵。当坐标系ROT_WIFI_MODULE_22.5绕Z轴旋转θ角时,任一点(x,y,z)在新坐标系中的坐标(x',y',z')由以下矩阵计算:

[x'] [cosθ -sinθ 0 0] [x] [y'] = [sinθ cosθ 0 0] [y] [z'] [ 0 0 1 0] [z] [1 ] [ 0 0 0 1] [1]

其中θ=22.5°,cos22.5°≈0.9239,sin22.5°≈0.3827。这意味着一个原坐标为(100,0,0)的焊盘,旋转后坐标变为(92.39,38.27,0)。验证方法:选中器件→Info → Display Element→记录某焊盘坐标;执行旋转后再次记录,用计算器验证是否符合矩阵运算结果。若偏差>0.001mil,说明存在坐标系嵌套错误(如父坐标系已被旋转)。此时需用Setup → Application Mode → Mechanical → List Coordinate Systems查看所有坐标系层级,用Edit → Delete删除冗余坐标系。Allegro X版本新增“Coordinate System Stack”视图(View → Panels → Coordinate System),可直观看到坐标系继承关系,避免多层嵌套导致的复合旋转误差。

4. 高阶技巧与避坑指南:从热词关联到工程落地

4.1 关联热词“allegro转pads文件的方法”的旋转兼容性解决方案

网络热词中高频出现的“allegro转pads文件的方法”,其核心痛点正是旋转信息丢失。Pads导出的ASCII坐标文件(*.asc)仅包含X/Y坐标和Rotation角度,但不记录旋转中心。当Allegro器件用Rotate命令绕非原点旋转时,Pads会默认以器件中心为旋转中心,导致贴片坐标偏移。解决方案分三步:第一,统一旋转基准。在Allegro中,所有需导出的器件必须用Spin命令(绕原点旋转)或提前将坐标系原点设为几何中心;第二,导出前校验。用File → Export → Placement导出时,勾选“Include Rotation”并确认Rotation值为整数(Pads不支持小数角度);第三,Pads端补偿。在Pads中导入后,用Tools → Renumber → By Location重新排序,再用Utilities → Padstack → Modify调整焊盘中心,补偿因旋转中心差异导致的0.5~1mil偏移。我在某医疗设备项目中,用此法将Allegro 17.2设计的12层板转至Pads Logic,贴片坐标误差从±3mil降至±0.3mil,通过IPC-A-610E Class 3标准。

4.2 “绕移动坐标系和固定坐标系旋转”的Allegro实现对照表

网络热词“绕移动坐标系和固定坐标系旋转”在Allegro中有明确对应:

旋转类型Allegro实现方式适用场景风险提示
绕固定坐标系(World CS)使用Rotate命令,点击板面任意点作为中心调整器件与板边相对位置,如将LED对齐外壳刻度线中心点若选在铜皮上,旋转后可能造成短路,需提前用Display → Show Shape确认
绕移动坐标系(Local CS)使用Spin命令,或绑定器件至动态坐标系后旋转坐标系模块化设计,如旋转整个电源树以适配散热器安装孔动态坐标系若未锁定(Lock选项未勾选),后续移动器件会改变坐标系位置,导致旋转失效
绕自定义坐标系(User CS)创建Mechanical层坐标系并绑定器件高精度机械装配,如摄像头模组需绕镜头光轴旋转坐标系名称长度不能超过32字符,否则导出时截断导致绑定失败

特别注意:Allegro 16.6版本开始,固定坐标系旋转支持“Snap to Grid”功能(Setup → User Preferences → Design → grid),开启后Rotate中心点自动吸附到最近网格点,避免手工点击误差。但此功能在17.4版本中默认关闭,需手动启用。

4.3 实操中90%工程师踩过的5个隐形陷阱

提示:这些陷阱不会触发DRC报错,但会导致量产级故障

  1. 旋转后丝印层未同步更新:Allegro中丝印(SilkScreen)默认随器件旋转,但若丝印文字使用“Static Text”而非“Dynamic Text”,旋转后文字方向不变,导致标识错误。解决方案:选中丝印→Properties→将Text Type改为“Dynamic”,或手动用Edit → Text → Rotate调整。

  2. 3D模型旋转中心错位:导入的STEP模型原点常与封装原点不一致。执行Spin后,3D视图中器件“漂浮”或“穿透”板层。验证方法:View → 3D View → Toggle 3D Model,观察模型是否绕预期点旋转;修复方法:在封装编辑器中用Manufacture → Mechanical Symbol → Edit Symbol调整模型原点。

  3. Group内器件旋转角度叠加:创建Group后,对Group执行Spin,内部器件角度=原始角度+Spin角度。若某电容已旋转45°,Group再Spin90°,最终角度为135°,超出贴片机支持范围(通常±90°)。预防措施:Group前用Info → Display Element确认所有器件Rotation=0。

  4. 坐标系名称含空格导致导出失败:创建坐标系时若命名为“WiFi Module Rotation”,导出Placement文件时Allegro会截断为“WiFi”,绑定失效。强制规范:坐标系名仅用字母、数字、下划线,如“WIFI_MODULE_ROT”。

  5. Allegro X Free Viewer 16.6无法显示旋转效果:免费查看器不支持动态坐标系渲染,绑定至用户坐标系的器件显示为原始角度。解决方案:导出时用File → Export → ODB++,该格式保留完整坐标系信息,第三方工具可正确解析。

4.4 快捷键效率优化:从“allegro pcb快捷键设置”到肌肉记忆

网络热词“allegro pcb快捷键设置”直指效率瓶颈。我将高频操作整合为三组快捷键组合,经200小时实测,布局速度提升40%:

  • 移动类:M(Move)→ 按Tab切换Delta/Absolute模式 → 输入数值回车;配合Ctrl+Shift+O快速切换坐标系基准。
  • 旋转类:R(Spin)→ 按Tab切换角度步进(90°/45°/22.5°)→ 输入角度回车;配合Ctrl+Shift+C调出Coordinate System面板。
  • 验证类:Ctrl+Shift+I(Info)→ 按Tab循环Display Element/Measure Distance/Show Ratsnest;配合Alt+1~9快速切换层可见性。

关键技巧:在User Preferences中关闭“Auto Save”(Setup → User Preferences → Design → auto_save),避免每次移动都触发保存,卡顿操作流;将“Spin Angle”设为22.5°(Setup → Design Parameter Editor → Display),覆盖90%高频旋转需求。

5. 常见问题速查与现场排错实录

5.1 典型问题与根因分析表

现象可能根因排查步骤解决方案
器件旋转后焊盘位置偏移0.1mm封装原点定义错误1. 打开封装库→Display → Show All
2. 查看Origin标记位置
3. 对比Datasheet推荐原点
在封装编辑器中用Edit → Origin → Set重新定义原点
多器件旋转后部分器件消失坐标系未正确绑定1. 选中器件→Info → Display Element
2. 查看Coordinate System字段是否为空
3. 检查坐标系是否被删除
重新执行Properties绑定,或用Edit → Find → By Attribute搜索未绑定器件
Spin命令输入角度无效Spin Angle参数被覆盖1. Setup → Design Parameter Editor → Display
2. 检查Spin Angle值
3. 确认未被Skill脚本修改
手动重置Spin Angle,或禁用冲突Skill脚本
导出坐标文件Rotation值为0器件未执行旋转操作1. Info → Display Element确认Rotation字段
2. 检查是否仅移动未旋转
3. 查看History Log确认操作记录
重新执行Spin/Rotate,确保Rotation值写入数据库
旋转后DRC报“Clearance to Shape”错误旋转导致铜皮与器件间距不足1. Display → Show Shape显示所有铜皮
2. 用Info → Measure Distance测量最近距离
3. 检查旋转后器件外轮廓是否侵入铜皮
调整器件位置或修改Shape边界,禁用“Check During Move”临时规避

5.2 现场排错实录:某AI加速卡旋转引发的EMC故障

上周处理一个紧急案例:某AI加速卡完成整体旋转后,EMC测试辐射超标12dB。排查过程如下:
第一步,用View → Cross Section确认旋转未导致器件与地平面距离变化;
第二步,用Tools → Report → Signal Integrity检查关键信号线长,发现PCIe差分对因旋转增加3.2mm,引发阻抗突变;
第三步,深入分析旋转日志,发现工程师用框选+Spin旋转,但未将连接器绑定至坐标系,导致连接器旋转中心为自身原点,而BGA旋转中心为几何中心,两者相对位置偏移0.8mm;
第四步,用File → Import → Placement回滚至旋转前坐标,重新执行坐标系绑定旋转;
第五步,修复后EMC辐射降低15dB,通过Class B标准。
教训:旋转不仅是图形操作,更是电气性能的再设计,必须同步验证SI/PI/EMC影响。

5.3 版本差异注意事项:从Allegro 16.6到Allegro X

  • Allegro 16.6:坐标系功能较基础,Create Coordinate System后需手动绑定器件,无可视化层级管理。
  • Allegro 17.2:新增Coordinate System Stack面板,支持拖拽调整坐标系层级,但绑定操作仍需Properties手动输入。
  • Allegro X(17.4+):引入“Coordinate System Manager”(View → Panels → Coordinate System),可图形化拖拽绑定器件,支持批量操作和依赖关系检查,但需License支持,Free Viewer不可用。

关键提醒:Allegro 17.2版本打开BRD文件时若无“Allegro PCB Designer Product Choice”弹窗,通常是License未正确配置,与旋转功能无关,但会影响Coordinate System Manager加载。

6. 工程延伸:从旋转操作到设计体系升级

6.1 旋转操作背后的设计哲学转变

把Move和Spin当作普通命令使用,是PCB设计的初级阶段;将其纳入坐标系管理体系,才是面向制造的设计(DFM)成熟标志。我服务的某汽车电子客户,要求所有ECU模块必须提供“旋转容差报告”,即列出每个模块在±5°旋转范围内,焊盘偏移量、丝印可读性、散热器接触面积的变化曲线。这倒逼我们建立封装库标准:所有新封装必须定义Geometric Center为原点,Rotation角度限制在0/90/180/270°四档,非标角度需单独审批。这种转变让设计周期缩短30%,因为不再需要为每个旋转需求单独建模。

6.2 自动化扩展:用Allegro Skill脚本实现批量旋转

对于需频繁旋转的场景(如LED阵列角度调试),可编写Skill脚本自动化。以下为精简版示例:

(defun rotate_module (module_name angle) (let ((coord_sys (strcat "ROT_" module_name "_" (format nil "%d" angle)))) (axlShell (strcat "create coordinate system " coord_sys)) (axlShell (strcat "edit coordinate system " coord_sys " zrotation " (format nil "%f" angle))) (foreach comp (axlSelectByProperty "refdes" module_name) (axlSetProp comp "coordinateSystem" coord_sys) ) ) )

调用(rotate_module "LED_ARRAY" 15.0)即可完成全部操作。注意:Skill脚本需在Allegro启动时加载(Setup → User Preferences → Design → skill_path),且17.4版本后需启用“Allow Script Execution”安全选项。

6.3 我的个人体会:旋转不是终点,而是坐标系思维的起点

干了十多年PCB设计,越来越觉得Allegro的旋转命令像一面镜子——照出工程师对设计系统的理解深度。那些总在问“怎么让器件转得更顺”的人,往往还没意识到:真正的瓶颈不在操作流畅度,而在坐标系意识的缺失。我现在的习惯是,打开任何新项目第一件事不是摆器件,而是用Setup → Application Mode → Mechanical创建三个基础坐标系:“BOARD_ORIGIN”(板级基准)、“MODULE_CENTER”(模块中心)、“PIN_ONE_REF”(引脚1参考),然后所有操作都在这三层坐标系中展开。这样做的好处是,当客户突然要求“把整个电源模块逆时针转12.5°”,我只需修改MODULE_CENTER的Z Rotation值,3秒完成,而不是花20分钟手动调整27个器件。旋转本身很简单,难的是建立让旋转变得简单的系统。这大概就是所谓“授人以鱼不如授人以渔”的真实写照。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/1 23:46:59

YOLO实战指南:从版本选型到部署避坑全解析

1. 项目概述:这不是一份“教程”,而是一张YOLO实战地图你搜过“YOLO目标检测”吗?搜完是不是被一堆名词砸晕了:YOLOv5、YOLOv8、YOLOv10(虽然还没正式发布)、Efficient Head、CLIP融合、雾天改进、移动小目…

作者头像 李华
网站建设 2026/10/1 23:46:45

Madeira兼容层实战:x86-64翻译与Wine乱码治理

1. 从“Madeira”这个名字说起:一个跨平台兼容层的真实需求第一次看到“Madeira”这个项目名,很多人会以为是某个度假岛屿或者葡萄酒品牌。但结合关键词里的 Wine、FEX-Emu、DXMT、x86-64 来看,这其实是一个典型的跨平台二进制兼容与指令翻译…

作者头像 李华
网站建设 2026/10/1 23:46:32

嵌入式开发环境容器化:用Docker管理多项目编译工具链

引言:嵌入式开发环境为什么总在折腾 搞嵌入式开发的人,尤其是从单片机转向嵌入式Linux的朋友,大概率经历过这样一个阶段:在Windows上写代码、编译、烧录,一开始日子挺舒服。但一旦项目引入了Linux内核裁剪、交叉编译工…

作者头像 李华
网站建设 2026/10/1 23:46:20

Qoder项目与讨论功能:智能体开发协作新范式

1. 这不是又一个“在线文档”——Qoder的“项目”与“讨论”到底在解决什么真问题?最近在阿里智能体平台Qoder的控制台里点开新上线的两个Tab:“项目”和“讨论”,第一反应不是“哦,又加了两个按钮”,而是——这俩功能…

作者头像 李华
网站建设 2026/10/1 23:46:19

强化学习稀疏奖励破解:HER算法原理与工程实践全解析

“hindsight”这个英文单词,字面意思是“后见之明”,也就是我们常说的“事后诸葛亮”。但在强化学习(RL)领域,它却是一个改变了我很多项目走向的经典算法——Hindsight Experience Replay,通常简称为HER。我…

作者头像 李华