LYon 发表于 2017-10-9 09:52:10

基于LattePanda开发板的一体化电子仪器平台——制作过程

本帖最后由 粒子 于 2021-12-16 10:45 编辑

我做的是一个什么样项目?
我做的是一台集成了数字可调恒压恒流电源、电子负载、可调控温电烙铁、逻辑分析仪、示波器等功能的一体化电子仪器平台,可用于创客领域电子产品研发调试、检测及维修。
前面板

整体效果

透光环效果

相关帖子链接跳转:
基于LattePanda开发板的一体化电子仪器平台——试用体验
基于LattePanda开发板的一体化电子仪器平台——制作过程
基于LattePanda开发板的一体化电子仪器平台——功能参数
基于LattePanda开发板的一体化电子仪器平台——操作示例
基于LattePanda开发板的一体化电子仪器平台——终篇?
   下面一些文字是我的项目制作过程中记流水帐般的随手而写,可能有些啰嗦冗长、杂乱无章,还请不要见笑。
https://mc.dfrobot.com.cn/data/attachment/album/201709/24/180019jfzcbexjdkkjdbb7.jpg
【蘑菇云创客空间的电子仪器】
    照片中这些都是创客电子制作中的常用电子仪器设备,价格不菲而且也占用了太多的桌面空间。
    我想通过LattePanda上的Windows平台和Arduino环境将这些设备功能整合到一起集中控制,操作更直观简单方便,还增强了设备功能,实现资源更加有效的重复利用,减小桌面空间占用。计划使用LattePanda开发板上的Arduino部分负责做HMI人机界面控制及各功能模块间的串口协议处理和数据转发,基于Windows平台的计算机部分作数字信号和模拟信号测量处理工作。虽然最终产品在性能和精度上无法超越这些图中的这些专业设备,但已经足够满足创客电子制作的基本需要了,而且在一些功能和便利性上有传统仪器无法具备的独到之处。
    一体化并不单单简单的把各个功能模块装到同一个外壳里就行了,还要能实现各功能模块的统一控制界面、增加全部模块输出数据的记录和分析功能,才真的能称得上是一个一体化的工作平台。实现多种功能一体化首先遇到的就是通讯问题,各功能模块的工作电压、通讯协议、通讯速率、数据类型均不相同,甚至有的模块连通讯协议也没有公开。如何进行接口电平转换、协议转换、统一界面数据显示是实现一体化平台最关键的工作。程序中需处理的各模块设置及输出状态模式繁多,逻辑控制关系错综复杂。在调试过程中程序代码反复编译上传多达数百次,修改次数更是无法统计。
    其实整个项目制作过程就和一台品牌电脑的生产过程类似,虽然几乎所有的核心部件都不是自主研发的,但你要考虑到从立项到生产出最终成品的过程中方方面面的事,部件的选择和设计理念的不同使各个品牌电脑有着自己很个性化的东西,和组装出一台兼容机的过程有着很大的不同,虽然最终不同电脑能实现的功能基本相同但使用的体验是差别很大的。
    目前市场上买不到集数控恒压恒流电源、烙铁控制器、充放电控制器等功能于一体的电源模块。所以我采用了可以数控恒压恒流电源模块和带上位机记录功能的电子负载,自己开发了统一的串口通讯控制程序,增加了液晶屏集中式显示数据,可用旋转编码器快速进行各项功能设置和参数调整。
   本来想用数控电源模块直接输出来控制T12电烙铁,后来仔细一想这个方案不可行,T12的加热和测温是分时进行的,加热电压是24V的而T12的热电偶电动势只有几毫伏,而且电源模块输出端都有大电容滤波,这也造成输出关闭时输出端的电压不可能很快降下来,也就无法直接在加热间隙测量T12热电偶的电压来得到实际加热温度。充电控制也是一样,所以只能把电烙铁控制和充放电控制单独使用相应的控制模块。我最终选择了不到10元的616白菜白光烙铁控制板,用LattePanda连接它进行T12热电偶数据采集和温度控制信号输出,把这个用电位器操作的控制板升级成了更智能化的数显智控功能。
    因为逻辑分析及示波器等虚拟仪器所属部分系统复杂性和专业性,信号及数据分析类部分只能在Windows下工作直接使用专业虚拟仪器软件不进行二次开发,对电源功率输出类及传感数据采集部分我重新开发一个统一的HMI人机界面,并对相关模块通讯协议进行多向转换,可以在串口屏加旋转编码按键方式的HMI界面下或Windows界面下进行管理控制,以实现更加直观方便、快捷友好的设备控制及数据分析,同时实现了如动态灯光指示、手机远程控制等更多功能拓展的可能性。https://mc.dfrobot.com.cn/data/attachment/album/201709/20/231631iszhaxv0ovl1yybh.jpg
【HMI设计界面图片】
    在外壳选择上比较让人头疼,找不到合适外形和尺寸成品机,我决定自己用亚克力板激光切割拼装一个外壳,这样在设计上的自由度更大。正好前段时候在蘑菇云整理加工车间时有一个不知道以前是谁做东西没有完工的亚克力拼装箱体半成品,本来是他们清理加工车间时准备当废品扔掉呢,我觉得这么好的材料扔了怪可惜,指不定哪天做个什么东西能用得上,被我给要了下来。现在我拿这个箱子一量尺寸,在避开箱板上那些开孔的部分后还真恰好能够我的面板和箱体用。在这真的要感谢那位不知名默默奉献的哥们,没有你的舍弃,我的产品估计得先裸奔亮相了。【原箱体照片】
    刚开始学autocad,软件功能操作都是要现学现用,走了不少弯路。
https://mc.dfrobot.com.cn/data/attachment/album/201709/20/234825l0eo1655h0oa08eo.jpg
这是最终的面板设计图,修改过无数次了。

https://mc.dfrobot.com.cn/data/attachment/album/201709/20/185529tzze7fr87q5ey5z7.jpg
因为最终激光切割出来的板材是有微小加工间隙的,我先用废料木板切割样板,一次次实体实验调整面板布局、孔径尺寸等,以达到更好的安装定位效果。

https://mc.dfrobot.com.cn/data/attachment/album/201709/20/232417s7hwpp697o6zx2zz.jpg
    模块布局、尺寸、加工精度、安装固定的整体工艺比我预想的要复杂,各模块及接口的安装位置避让,都要反复多次的逐一仔细调整。我虽然不是处女座,但追求极致的我(屌丝的情怀)觉得要么不做,如果要做就应该去做的更好一些,这个性格也让我进展缓慢。
    我制作过程中使用了一些非常规的加工和安装方式,比如:用直角护边条粘贴固定箱体板;用中等功率激光开面板上的镶嵌固定槽;先粘贴一层透明胶带然后再用热熔胶固定LCD屏幕,方便以后需要更换时无损拆除;用钻头铣出面板上的斜向透光孔;用剪刀手工剪出本应该3D打印的半透明塑料透光环;螺丝不够长就用热熔方式做出螺丝沉头凹槽。当然有些加工方式是因为工具和材料的限制不得已而为之。
https://mc.dfrobot.com.cn/data/attachment/album/201709/20/185530yz5gu4z35gy5wyg3.jpg
【面板背面】
https://mc.dfrobot.com.cn/data/attachment/album/201710/09/100909w38fw4yw34yypj4j.jpg
【半透槽】

https://mc.dfrobot.com.cn/data/attachment/album/201710/09/100914m24khat7dlxj4a4l.jpg
【固定LCD屏幕】

https://mc.dfrobot.com.cn/data/attachment/album/201710/09/100920knc9hpzs90u2m0vb.jpg
【剪刀剪出的透光条】

https://mc.dfrobot.com.cn/data/attachment/album/201709/20/185530w01w0y9y9zwd1d0d.jpg
【斜向透光孔】

https://mc.dfrobot.com.cn/data/attachment/album/201710/09/100904e1pjp81zg4p1f4gj.jpg
【螺丝固定块】

    在只使用数控电源部分的时候,没必要也同时一直开着Windows,可以让它待机。把电源部分输出的电压、电流等数据显示在一个小屏幕上,设置控制通过旋转编码器和按钮来完成,这样的话有些操作反而会比用触屏界面更快捷。
    小屏幕常见有1602、12864等单色字符型LCD,0.96”、1.3“等小尺寸的单色OLED屏,还有各种尺寸的彩色TFT或OLED屏。这些屏幕的接口类型有很多种,相对使用起来比较麻烦(比如对中文及图形的显示),对MCU的资源占用都比较多。
    现在已经有一些液晶屏集成了MCU作控制显示,通过简单串口指令就可以方便的改变屏幕上显示的文本、图象等对象的内容和属性,高级点的还可以直接使用各种交互式组态控件比如指针式仪表盘、虚拟键盘等,这些功能如果是我们自己来开发工作量简单不可想象。这种屏一般简称作串口屏,它的出现给我们做GUI带来了极大的方便,有的厂家宣称不用写一行代码就象做PPT一样简单就可以快速完成用户界面的开发,而且有的串口屏卖的价格甚至已经比普通LCD还要低。

https://mc.dfrobot.com.cn/data/attachment/album/201709/20/185532p2xhhb0jt4pazh14.jpghttps://mc.dfrobot.com.cn/data/attachment/album/201709/20/185533w8bmd1g1d7dud8qf.jpg
【面板文字上色】


    我本来准备想用HTML5或LabView做一个Windows下的上位机,因为项目的时间已经拖的太久了,我来不及再去现学这两种编程方式了,只能暂时先用EB测试系统软件来做电源部分的上位机数据记录功能吧,而且这个也是一个非常好的电源测试软件,很多专业论坛都使用这个软件来进行充放电测试。
【EB测试系统软件】
    最后我也为这个设备加了些特殊音效,和输出接口环型状态灯,可直观的指示各接口输出状态。

    本项目所有的功能设计、外观设计、结构设计、部件选型、元件购买、UI设计、协议分析、协议重构、程序编写、图纸绘制、结构加工,部件组装、综合调试、数据校准,全部要我一个人独立完成,实际制作过程的工作量还是远远超出我的预估,比如单是需要焊接的部件间连接电线就超过了100根!想想还真确实是算是一个不小的工程。其中最耗时间的是结构设计、部件选型和UI设计,仅结构布局我就修改了不少于30次。部件的选型是个非常让人头疼的事,很难购买到各方面都满足需求的模块和插接件,为了这总共多达几十种的部件,我花了上百个小时泡在网上逐一了解研究后再作对比选购。UI设计就更不用说了,我本身没艺术细胞没学习过美工设计,但咱又是个追求极致的人,比如单是在串口屏一个页面上的需要控制显示变化的对象就超过50个,需要仔细设计调整每个对象的实现功能、变量名称、显示位数、字体、大小、颜色、位置,还要考虑到它们在运行时及设置操作时的变化情况、与下位机的配合等,为此真的花费了不少的时间精力。



成品效果


连接表笔和测试线


前面板


电源输出部分

https://mc.dfrobot.com.cn/data/attachment/forum/201801/12/224850mwynjlrxm9xy1x5w.jpg
透光环效果


顶部收纳盒


收纳全部附件


本项目所用材料清单:
黑色亚克力面板、箱体
24V8A电源
LattePanda开发板、7寸电容屏液晶屏
2.2寸液晶串口屏
USBee DX pro套件(逻辑分析仪、转接板、双探头)
60V8A数控电源模块
EBC-A电子负载模块 50W 30V充放5A 供电12-16V
24V转5V降压电源模块
24V转12V降压电源模块
WS2812灯带
旋转编码开关、旋钮
带滚珠开关T12烙铁手柄、T12烙铁头
5芯航空插头、插座、烙铁线
充放电鳄鱼夹线、USB鳄鱼夹线
7芯航空插头、插座
DVI插头、插座、杜邦线、测试夹、测试钩
红、黄金属按钮开关
红、黑接线柱
16mm金属按钮开关 自锁 带电源符号灯
蜂鸣器
USB延长线
USB插座
DC5525电源插座
耳机插座、耳机线
粗、细导线 杜邦线
铜柱、内六角螺丝PVC护边条、魔术贴






super-power 发表于 2017-10-15 20:42:28

超级厉害帖!!!你这是配合嘉年华发出来的么?

东创快车 发表于 2021-10-29 09:27:37

这台设备集成了这么多功能,一般电子研发工程师所用的都集成了

三春牛-创客 发表于 2023-8-23 21:43:02

厉害厉害

三春牛-创客 发表于 2023-8-23 21:44:18

赞赞赞赞赞

花生编程 发表于 2023-8-24 14:22:52

厉害厉害

花生编程 发表于 2023-8-24 14:23:58

不错不错
页: [1]
查看完整版本: 基于LattePanda开发板的一体化电子仪器平台——制作过程