描述
<div class="document">
<h3><strong>1、项目功能介绍</strong></h3>
<p> </p>
<p>本项目旨在设计并实现一个能够自主保持平衡的<strong>实体旋转倒立摆</strong>系统。我们利用 <strong>Jetson Nano</strong> 单板计算机作为主控核心,运行<strong>深度强化学习(DRL)算法</strong>。该算法通过不断与物理世界交互、试错和学习,自主地探索出最优的控制策略。该策略将驱动连接到 <strong>瑞萨 RA4L1-KB-V1.1 单片机</strong>上的 <strong>CAN 总线伺服电机</strong>,以高精度、高响应的方式精确调整摆臂的姿态,使其在旋转轴上保持竖直向上平衡。</p>
<p>本项目解决了传统固定参数控制算法在非线性系统中的鲁棒性问题。通过采用<strong>工业级 CAN 总线伺服电机</strong>,我们实现了精确的速度和位置控制,这为强化学习算法提供了更高质量的执行平台。同时,项目集成了嵌入式硬件、机器人控制与前沿人工智能算法,是一个完整的软硬件协同系统,具备强大的工程实践意义。</p>
<hr>
<p> </p>
<h3><strong>2、项目属性</strong></h3>
<p> </p>
<p>本项目为<strong>首次公开</strong>。 项目为完全<strong>原创</strong>,所有硬件设计、软件算法以及系统集成均由本人独立完成。 本项目<strong>未曾</strong>在其他比赛中获奖。 本项目为<strong>毕业设计</strong>项目,已在学校参加过答辩,取得了良好的成绩。</p>
<hr>
<p> </p>
<h3><strong>3、开源协议</strong></h3>
<p> </p>
<p>本项目核心功能(包括硬件电路设计与强化学习控制算法代码)将<strong>开源80%以上</strong>。 推荐使用 <strong>GPL3.0</strong> 开源协议,旨在鼓励社区对项目进行二次开发和改进,同时确保项目的开源精神得以延续。 本项目未引用其他开源项目的核心代码或电路。</p>
<hr>
<p> </p>
<h3><strong>4、硬件部分</strong></h3>
<p> </p>
<p>本项目硬件主要由三部分组成:<strong>主控单元、执行单元和传感单元</strong>。</p>
<ul>
<li>
<p><strong>主控单元</strong>:采用 <strong>NVIDIA Jetson Nano</strong> 单板计算机。其强大的 GPU 算力为深度强化学习模型的实时推理提供了保障。它负责整个系统的“大脑”功能,即运行训练好的 DRL 模型。</p>
</li>
<li>
<p><strong>执行与通信单元</strong>:以 <strong>瑞萨 RA4L1-KB-V1.1</strong> 单片机为核心,通过其 <strong>CAN 总线接口</strong>与伺服电机进行通信。RA4L1 的主要作用是从 Jetson Nano 接收高级控制指令(如目标速度或位置),并将其转换为 CAN 协议数据帧,精确发送给伺服电机。这种架构实现了<strong>分层控制</strong>:Jetson Nano 负责高级策略决策,RA4L1 负责低级实时通信和执行。</p>
</li>
<li>
<p><strong>执行单元</strong>:<strong>CAN 总线伺服电机</strong>。该电机集成了编码器和驱动器,具备高精度的位置、速度和扭矩控制能力,极大地简化了电机控制的复杂性,并提供了比传统直流电机更优异的性能。</p>
</li>
<li>
<p><strong>传感单元</strong>:采用 <strong>MPU6050</strong> 六轴姿态传感器,实时获取摆臂的姿态(角度和角速度)数据,并通过 I2C 协议传输至 RA4L1 单片机。</p>
</li>
</ul>
<p><strong>原理与机制</strong>:整个系统形成一个闭环。Jetson Nano 作为“大脑”,接收单片机传来的摆臂状态信息,然后利用预先训练好的 DRL 模型计算出最优的控制动作(例如,伺服电机的目标转速或扭矩)。计算出的动作指令通过 UART 或 SPI 等接口发送给 RA4L1 单片机。RA4L1 作为“小脑”,负责将指令转换为 CAN 协议数据帧,并发送给伺服电机,从而实现对摆臂的高精度、实时调节。</p>
<hr>
<p> </p>
<h3><strong>5、软件部分</strong></h3>
<p> </p>
<p>本项目软件部分分为**上位机(Jetson Nano)<strong>和</strong>下位机(RA4L1 单片机)**两部分。</p>
<ul>
<li>
<p><strong>上位机软件</strong>:基于 Python 语言,使用 <strong>PyTorch</strong> 或 <strong>TensorFlow</strong> 深度学习框架构建深度强化学习模型。核心算法采用 <strong>Proximal Policy Optimization (PPO)</strong>。软件流程为:</p>
<ol>
<li>
<p>初始化环境,创建与下位机通信的接口。</p>
</li>
<li>
<p>接收下位机传来的状态数据。</p>
</li>
<li>
<p>将状态数据输入到训练好的 DRL 模型中进行推理。</p>
</li>
<li>
<p>模型输出动作指令(如目标转速)。</p>
</li>
<li>
<p>将动作指令通过串口发送给下位机。</p>
</li>
<li>
<p>循环执行以上步骤,实现实时控制。</p>
</li>
</ol>
</li>
<li>
<p><strong>下位机软件</strong>:使用 C 语言,基于 <strong>RA4L1</strong> 提供的开发环境。主要功能模块包括:</p>
<ol>
<li>
<p><strong>传感器数据采集模块</strong>:通过 I2C 读取 MPU6050 的数据,并进行卡尔曼滤波等算法处理,以获取更精确的姿态信息。</p>
</li>
<li>
<p><strong>UART/SPI 通信模块</strong>:负责与上位机进行双向通信,发送姿态数据和接收控制指令。</p>
</li>
<li>
<p><strong>CAN 总线通信模块</strong>:将上位机发送的控制指令转换为 CAN 协议数据帧,并发送给伺服电机。同时,接收电机的反馈信息(如实际转速、位置)。</p>
</li>
<li>
<p><strong>电机控制模块</strong>:根据 CAN 总线协议,对电机进行位置、速度和力矩模式控制。</p>
</li>
</ol>
</li>
</ul>
<hr>
<p> </p>
<h3><strong>6、BOM清单</strong></h3>
<p> </p>
<ul>
<li>
<p><strong>主控</strong>:NVIDIA Jetson Nano Developer Kit</p>
</li>
<li>
<p><strong>MCU</strong>:瑞萨 RA4L1-KB-V1.1 开发板</p>
</li>
<li>
<p><strong>电机</strong>:CAN 总线伺服电机(例如:迈格威,雷赛等)</p>
</li>
<li>
<p><strong>传感器</strong>:MPU6050 六轴姿态传感器</p>
</li>
<li>
<p><strong>电源</strong>:12V 直流电源适配器</p>
</li>
<li>
<p><strong>线材</strong>:杜邦线、USB 转串口线、CAN 总线电缆等</p>
</li>
<li>
<p><strong>机械结构</strong>:定制亚克力或铝合金旋转倒立摆支架</p>
</li>
</ul>
<hr>
<p> </p>
<h3><strong>7、大赛LOGO验证</strong></h3>
<p> </p>
<p><strong>图片待上传</strong></p>
<p> </p>
<h3><strong>8、演示您的项目并录制成视频上传</strong></h3>
<p> </p>
<p><strong>视频待上传</strong></p>
</div>
评论(1)