案例

项目展示与开发记录。

案例/UE项目

六轴平台与虚拟拍摄

Motion platform and virtual filming

围绕六轴平台的软件运动解算、信号处理、海洋场景参数联动和编辑器虚拟拍摄录制。

  • 仿真控制
  • 运动平台
  • 虚拟拍摄
联系合作

封面

返回
本页目录

项目介绍

这个项目围绕六轴平台的软件运动处理与 UE 编辑器虚拟拍摄展开。UE 场景中的位置和旋转需要转换为平台机构能够使用的数据,海洋场景中的参数变化和 Actor 动作则需要组织到录制序列中,供后续查看与调整。

我的工作覆盖机构正逆运动学、单位转换、运动信号处理、海洋参数联动、Take Recorder 录制组织和 LiveLink 数据发送。设备控制、实机标定与硬件安全保护由具体设备系统负责。

我负责的功能

功能模块个人负责的内容
机构定义按上下平台铰点组织六根杆件的连接关系与尺寸基础
运动学解算根据平台姿态计算杆长,根据杆长估计平台姿态
信号处理零位、滤波、限幅、限速、高低通与倾斜协调
海洋参数暴露可插值的海浪与时间参数,组织变化通知与时间推进
编辑器录制配置 TakePreset、Actor 来源与 Take Recorder,整理原场景和新录制的时间关系
数据发送通过 LiveLink 组织并发送 Transform 数据

平台运动解算

逆运动学根据目标位置和旋转变换上平台铰点,再计算它们与对应下平台铰点之间的距离,得到六根杆长。正运动学使用 Newton 迭代和解析雅可比,从给定杆长估计平台姿态。

机构定义与解算分开,使铰点、尺寸和姿态各有明确的表达。厘米与米、角度与弧度的换算集中在解算边界,避免把场景单位直接带入机构计算。

运动数据处理

接入 EMA、中值和 Butterworth 等滤波方式,结合零位、幅度限制和相邻帧变化速度限制整理输出。高低通与倾斜协调用于处理运动信号中的不同变化分量。

这些处理分别作用于基准、抖动、幅度和变化速度,不把其中某一项当作其他约束的替代。

海洋场景与虚拍录制

基于 Oceanology 的场景表现与力计算,暴露时间、波长、波高、波速和波向等可插值属性。参数变化后广播通知,录制期间累计 TimeCode,使环境参数能够参与编辑器中的时间组织。

录制使用编辑器专用的 TakePreset、Actor 来源和 Take Recorder。完成录制后,把原场景 Sequence 作为 SubSequence 加入新录制结果,并按起录时间设置偏移,再保存结果。

解决的难点

场景姿态与机构杆长属于不同表达

UE 给出的位置和旋转不能直接当作六根杆的运动值。单个方向的变化可能同时影响多根杆,求解还依赖完整的铰点布局与尺寸。

我将机构参数、几何逆解和数值正解分别组织。逆解负责从姿态得到长度,正解负责从长度估计姿态,便于分别检查连接关系、单位和求解结果。

平滑输出仍可能产生瞬间跳变

数据落在允许幅度内,不代表相邻两帧之间的变化足够平缓;加强平滑也可能增加快速动作的跟随滞后。

处理时,我保留滤波、限幅与限速各自的职责,让输出既能整理局部波动,也能单独约束范围与变化量。不同输入信号可按特点选择滤波方式,而不是依赖一组参数处理所有动作。

原场景与新录制需要保持时间关系

只保存新录下来的 Actor,不能完整表达原有场景序列与这次录制之间的关系。我在起录时记录原场景 Sequence 和开始时间,录制结束后加入原序列的 SubSequence,再计算对应偏移。

原有场景内容与新录制结果因此可以组织到同一份编辑器序列中,方便后续查看与调整。

软件发送与设备执行需要明确分工

LiveLink 发送端组织 Transform,接收端负责解释这些数据并与具体设备连接。项目中我实现的是解算、信号处理与发送侧,不将“数据已发出”视为设备已经执行完成,也不把协议输出等同于硬件安全保护。

实现结果与适用范围

软件部分形成了从场景姿态、机构解算、信号处理到 LiveLink 发送的处理路径,并提供海洋参数与编辑器录制序列的配套组织。

录制流程依赖编辑器数据,不是打包程序中的通用录像功能。海洋适配覆盖已有海浪和时间参数,未完成风场、完整实机同步或录制延迟补偿;滤波和姿态约束也不能替代机构工作空间检查与实机标定。

相关记录