基于ESP32的手持can工具(汽车仪表)

基于ESP32的手持can工具

  • 一、 项目介绍
  • 二、 产品简介
    • 1. 产品定位
    • 2. 操作流程
    • 3. 界面设计:
    • 4. 界面
      • a) 仪表信息读取界面
      • b) 仪表信息写入界面
      • c) 仪表多状态控制界面
      • d) 本机设置界面(远程固件升级模块)
    • 5. 应用范围
    • 6. 优势
  • 三、 程序结构
  • 四、程序设计
  • 五、 扩展应用:通用老化架
      • 1. 组态
      • 2. 硬件
      • 3. 软件
  • 六、 总结:

一、 项目介绍

在工作中,如果想要知道仪表内部信息;想要修改仪表某个参数;想要控制仪表做固定的动作,这都需要一台工装、一台装好各种驱动和补丁的电脑、多份说明文档和一位专业的技术人员。技术人员查阅文档后,操作多个上位机才能实现控制仪表。其运行成本、操作成本高,占用较多的固定资源。并且,操作流程无法复制,产生的数据无法重用。

操作流程在办公室环境下还算能接受,但在出差途中很不方便,设备不便携,与服务器连接不稳定,文件查阅不方便。

在办公室环境下,如果在上位机中设置好固定步骤或状态,想要以此数据批量实施时,不得不使用定制老化架,现行的老化架成本高,功能单一,几乎无通用性,信息化程度低。

以上的现状表明现有设备难以适应的多种使用场景,需要有更合适的设备来填补空白。

根据应用范围、体积、成本和未来发展方向等,我选择了低功耗WIFI芯片ESP32作为核心开发手持CAN工具。

二、 产品简介

  1. 总体设计
    手持CAN工具主要由ESP32核心、触摸屏和CAN通信模块三部分组成。ESP32完成数据处理、无线连接及外设的驱动,触摸屏作为用户操作界面显示按键和信息,CAN通信模块接收和发送对仪表的通信数据。手持CAN工具在上电后,连接网络后自动更新固件,esp32根据固件数据将外设初始化成匹配成特定表型的设备。通过点击触摸屏,经ESP32解析后通过CAN转换器向仪表发送指令,可以切换仪表的多种表现状态,并读取或写入信息。

基于ESP32的手持can工具(汽车仪表)_第1张图片

1. 产品定位

介于工装和升级盒之间,填补功能上的空白,有良好的便携性同时有常用的控制和读写功能。

2. 操作流程

上电后,后台完成网络固件更新,待进度条完成后输入密码,即可进入操作桌面。
基于ESP32的手持can工具(汽车仪表)_第2张图片

3. 界面设计:

通过对场景操作需求分析,设计四个操作界面:
序号 操作需求 设计操作界面

  1. 仪表信息读取 仪表信息读取界面
  2. 仪表信息写入 仪表信息写入界面(包含权限获取)
  3. 仪表状态切换 仪表多状态控制界面
  4. 远程固件升级 本机设置界面(远程固件升级模块)

4. 界面

通过对场景操作需求分析,设计四个操作界面:
基于ESP32的手持can工具(汽车仪表)_第3张图片

a) 仪表信息读取界面

点击屏幕进入诊断can读取界面,单击预设的读取内容,由ESP32发送。几个毫秒后ESP32会收到返回值,经协议解析后和显示优化后,会在串口中显示。失败则无显示。
基于ESP32的手持can工具(汽车仪表)_第4张图片

b) 仪表信息写入界面

此功能涉及用户权限,可再设置独立密码保护。操作方式与a)仪表信息读取界面一致,修改成功会在屏幕中显示“XXXX——OK”,表示写入成功。失败则无显示。
基于ESP32的手持can工具(汽车仪表)_第5张图片

c) 仪表多状态控制界面

手持can工具自身发送can和TTL电平,可完成仪表“MCU-输出”阶段的检测。可设计多个状态,根据产品检测需求自由组合。
通过控制外围电路给仪表提供电平、频率、电阻等信号,可完成仪表“输入-MCU”阶段检测。此阶段同样可设计为多个状态,根据产品检测需求自由组合。

基于ESP32的手持can工具(汽车仪表)_第6张图片

d) 本机设置界面(远程固件升级模块)

上电后自动从服务器下载更新固件。
重启esp32,可以看到文件被192.168.0.107(ESP32)请求并下载了。
基于ESP32的手持can工具(汽车仪表)_第7张图片

下载完成后,esp32自动重启。运行本地程序,完成了本次升级。
在这里插入图片描述

5. 应用范围

  1. 产品内部信息查询。如版本号,序列号等。
  2. 产品定制化参数查询和修改。首先需要获取安全权限,再修改如ppk,里程等信息。
  3. 产品功能检测。发送can信号,可完成仪表“MCU-输出”阶段的检测。
  4. 通过外围扩展后可输出硬线信号,可完成仪表“输入-MCU”阶段的检测。
  5. 将发送的配置信息固话,周期运行,可实现产品老化。

6. 优势

  1. 核心5V系统,部署成本极低,维护便捷。
  2. 工具体积小巧,便于携带。
  3. 单片机核心,CAN发送定时精确
  4. 触摸屏操作,信息可视化
  5. 开机密码,权限管理
  6. 与生产、检测系统的数据统一
  7. 网络拓展性好,核心可应用于如网络下位机、网关、微型服务器等。

三、 程序结构

基于ESP32的手持can工具(汽车仪表)_第8张图片

四、程序设计

初始化阶段:上电后ESP32需要完成4项初始化。
1、 自身初始化,连接指定WIFI
2、 触摸屏初始化,替换如型号、按键功能等原始标签
3、 CAN通信模块初始化。
4、 在服务器中搜索更新文件,如果有就下载重启,如果没有就下一步
5、 初始化完成。

主循环阶段:
1、 接收CAN指令和屏幕指令。
2、 根据通信协议处理CAN指令和屏幕指令。
3、 发送CAN指令和屏幕指令。

基于ESP32的手持can工具(汽车仪表)_第9张图片

五、 扩展应用:通用老化架

1. 组态

手持CAN工具的核心ESP32是一款集成WiFi功能的微控制器,在网络控制器应用广泛。
在老化架应用中,ESP32既可以做控制器,又可以做为网关使用。

基于ESP32的手持can工具(汽车仪表)_第10张图片

2. 硬件

转接板分为两级:一级转接板提供通用信号,二级转接板匹配表型。
表型更换时,更换二级转接板。
屏显信息可以由esp32发送至网关,由数据库处理,因此屏幕可以选配。

3. 软件

状态指令由“仪表多状态控制界面”定时发送,老化时间可由控制核心计时。
产品信息由“仪表信息读取界面”获取,并附带老化信息,通过网络发送到网关。
产品型号更换时,由“远程升级模块”,上电后搜索指定文件,远程完成控制文件自动更新。

六、 总结:

基于ESP32的手持CAN工具可以实现仪表的状态控制和数据读写的设备小型化。
手持CAN工具克服了大型设备需要专人操作和保养的缺点,大幅提升便携性,触摸屏的实时操作显示降低使用成本。同时由于硬件成本极低和可以网络升级的特性,使得基于ESP32核心的手持CAN工具可以大量部署,集中式远程管理,提高生产效率和管理效率。

你可能感兴趣的:(ESP32)