基于openEuler Embedded的星闪开源应用案例开发

by AbrillantLee in Circuits > Microcontrollers

690 Views, 6 Favorites, 0 Comments

基于openEuler Embedded的星闪开源应用案例开发

logo2.png
logo4.jpg

基于openEuler Embedded的星闪开源应用案例开发


本开源项目是一款「基于NearLink_DK_WS63星闪开发板制作的遥控手柄」,无缝互联并操作「集成星闪WS73的智能小车」(小车可兼容Open Euler与Ros2系统)

星光熠熠,科技浪潮涌动!"Euler星闪耀·万物智联" —— 星闪+OpenEuler Embedded,一场关于智能交互的盛宴,让未来触手可及!


项目介绍


这是一个完整的星闪手柄开源项目,包含星闪手柄主控源码、星闪手柄结构设计、 星闪手柄电子硬件设计等多个部分,完成了以下内容:

  1. 使用 Autodesk Fusion 360 完成的星闪手柄模型设计

  2. 使用 嘉立创EDA完成的星闪手柄PCB设计

  3. 基于 Hispark Studio完成润和ws63星闪开发板(主控)嵌入式软件设计

  4. 基于 Ubuntu-vm22.04 完成ws73星闪模组代码编译

整个星闪手柄从一个ieda到真正实现、从前期部分投入到最后全身心投入经历了约三个月的时间,这个经历也让我更明白技术无止境,只有不停地学习、分享、复盘才能进步更快。所以我更希望把对制作星闪手柄过程中的困难和思考分享给大家。

所以呢,整个开源项目最重要的不是星闪手柄本身(当然落地是非常困难的),而是,这是一套非常详细的开发教程,甚至可以说是手把手产品开发教程。从一个需求开始,到提取重点、外设选型、原理图设计、PCBlayout、代码编写、调试、烧录、结构设计、安装。如果本项目能对正在观看的你引起对星闪的兴趣和帮助,将是对我极大的鼓励和慰藉。

Supplies

Snipaste_2024-10-15_00-06-53.png

1. 摇杆帽:用于摇杆操控

2. 亚克力板:用于遥控器整体面板(eulercarboard.dxf轮廓文件)

3. 焊锡膏:用于贴片原件焊料

4. 704硅橡胶用于PCB电池盒固定

5. 18650:用于遥控板供电

6. PCB:用于遥控板整体电路

7. PCB电子元器件套件:PCB电路BOM表(BOM_Board1_EulerCar.xlsx)所有电子元器件

电路设计

EDA1.png
EDA3.png
IP5306_design.png
IP5306_pin.png

1. 电源管理电路

本硬件电路主要分为电源管理电路,震动马达驱动电路和控制模块电路构成

电源管理电路以IP5306(产品资料🔗)为核心。IP5306是一款集成升压转换器、锂电池充电管理、电池电量指示的多功能电源管理 SOC,为移动电源提供完整的电源解决方案。

  1. 可同步开关充放电,支持4LED电量显示
  2. 自动检测充电器插拔,自适应充电电流调节
  3. 按键功能:
  4. 短按(持续时间长于 50ms,但小于 2s)会打开电量显示灯和升压输出。
  5. 连续两次短按键( 1s 内),会关闭电量显示和升压输出

2. 震动马达驱动电路

震动马达驱动电路以微型震动马达为核心,在这个电路中,场效应管能够通过控制门极电压来开启或关闭电流,从而控制电机的工作状态。肖特基二极管防止电机在停止时产生的反向电流对电路造成损坏,起到保护作用。

3. 控制模块电路

控制模块电路以WS63E为核心,用于各个引脚与传感器或执行器之间的通信。

PCB设计

EDA2.png

2. PCBlayout

以上是PCB设计

为了方便硬件焊接测试与软件调试,我们将各个摇杆等主要功能按键导出为markdown文件🔗以供快速参考

主体模型

fusion1.png
fusion2.png
fusion3.png
fusion4.png

3. 主体建模

  1. 遥控器底板模型🔗总体按照PCB轮廓构建,使用Autodesk Fusion进行建模。
  2. 整体参考游戏手柄与遥控手柄设计
  3. 底板前端突起为外置天线座,可以搭载外设SLE天线
  4. 预留四个M3空位,用于与PCB和顶板的连接固定
  5. 顶层亚克力板轮廓🔗由底板模型轮廓构建,使用Fusion进行导出
  6. 顶板设计需要考虑按键与摇杆等传感器加上键帽配件等的总体高度
  7. 预留四个M3空位,用于与PCB和顶板的连接固定
  8. 六角铜柱需要的最小高度为:PCB插排高度+WS63E最大高度 = 16mm

焊接说明

checkout1.jpg
Snipaste_2024-10-15_00-06-53.png

焊接说明

  1. 准备好PCB、元器件、电烙铁或热风枪、锡膏或锡丝、镊子。
  2. 打开BOM表或EDA,从贴片元器件开始,找到要焊接的元器件型号。
  3. 按照元器件位置进行分区,使用热风枪时对邻近贴片元器件一起焊接。
  4. 每个模块焊接完成后,可以对照PCB工程图,用万用表逐个检查是否存在焊错、短路、虚焊、脱焊等情况。
  5. 按上述的步骤,完成所有元器件的焊接即可。也可使用洗板水确保焊后的美观。

测试说明

checkout2.jpg
checkout3.jpg
焊接完成后,要先目测、用万用表检测下,有没有焊接错的地方。尤其确保没有短路。第一次上电时也要第一时间观察下有没有异常,有异常迅速拔掉电源。

可能遇到的问题:

1. IP5306相关问题

  1. 输出电压很低,只有2-3V,没有了升压。
  2. 原因:是芯片底部GND与PCB之间脱焊所致。
  3. 解决方案:IP5306底部的焊盘为GND,在焊接时建议为底盘加锡进行焊接。
  4. 开机半分钟自动休眠
  5. 原因:是电流过低,可以检查是否有元器件虚焊脱焊现象。当一段时间内芯片负载电流持续小于45mA左右时,芯片会自动进入休眠状态。但在实际应用中,此芯片个体差异很大,有部分芯片负载电流需要达到70mA以上才不会自动休眠。
  6. 解决方案:检查元器件是否脱焊、虚焊,重新焊接。
  7. 不断关机重启
  8. 原因:
  9. 可能是芯片检测到过流或者短路引起的。
  10. 可能是散热不足触发过温保护导致的。
  11. 解决方案:
  12. 检查是否短路,进行重新焊接。
  13. 检查是否由过温导致,检查工作温度是否符合要求,增加散热片等散热措施。
  14. 芯片烧毁
  15. 原因:电池持续放电或温度过高等原因导致芯片烧毁。
  16. 解决方案:检查电池质量与焊接质量,进行重新焊接,更换芯片。

2. 其他问题

  1. 传感器失灵
  2. 原因:传感器元器件与PCB脱焊或虚焊。
  3. 解决方案:检查元器件是否脱焊、虚焊,重新焊接。


硬件总装

logo3.jpg
Intro1.jpg
Intro2.jpg

硬件总装

注意三个组件从底部往上装配。

  1. 从底版底部拧入螺丝,在底版上部放入垫片与螺帽。在确保与PCB孔位对齐的情况下固定好底板与螺丝。
  2. 在底板上部侧放入PCB,注意对准螺孔,在上侧放入垫片与六角铜柱拧紧。
  3. 在螺柱顶部放入亚克力板,对齐后加上垫片拧入螺丝。
  4. 您的第一个星闪遥控器大功告成。

特别鸣谢

作者

Github: AbrillantLeepete

特别鸣谢 「梅科尔工作室」

大一入学时我是一个对计算机一无所知的小白;一切的转机发生在加入梅科尔工作室这个大家庭后,受到了李老师和学长们的用心培养。

在这里 我怀着崇敬之心真诚地感谢梅科尔工作室! 感谢感谢杨阳学长的信任、感谢杨瑞学弟与我共同奋斗。

工作室也时刻激励着我,做一件事,就得用心做好,无论是学习、项目、还是为人。