用于房车的中央控制管理单元CCU
本帖最后由 jobszheng5 于 2024-2-4 10:53 编辑一、项目名称
用于房车的中央控制管理单元CCU
二、项目概述
后疫情时代,人们“出去看看祖国大好河山”的旅游意愿强烈。驾驶房车出游的新体验也越来越受欢迎。房车在提供了“随遇而安”的便捷后,大家对房车内多种设备的智能化管理的需求也冲上首位。
本项目所开发的《用于房车的中央控制管理单元CCU》将把房车目前常用的几种家用电器统一化,集中化,可视化管理。将电器设备的运行状态数字化,后期配合AI,大数据可对电器的工作效率,健康状态等进行预测,预警与研判等,并给出实用建议。
本项目计划实现方案如下:使用ST公司新推出的高性Cortex-M7微处理器STM32H723为主控芯片,对包括车载逆变器,太阳能控制器,车载冰箱等用电设备的运行状态通过CAN总线或RS485总线数据收集。对温湿度传感器的实时数据获取,并对收集的数据做处理后,保存到TF卡。
与此同时,将实时数据通过LCD屏显示。当有警告,错误出现时,主控板通过LED灯闪烁方式进行提示。
2.1 系统框图
三、项目硬件方案
3.1 主控芯片STM32H723
本次项目的主控芯片选用ST公司新推出的高性Cortex-M7微处理器STM32H723为主控芯片,采购于DigiKey.cn。
STM32H723是新工艺下的Cortex-M7内核的芯片产品,主频高达550MHz,强大的处理能力让数据收集,数据过滤可以在“端”端解决,不需要上传到“边”端或“云”端。
支持FMC外设,STM32H723芯片直接高速扩展SDRAM芯片,用于图形化缓存,数据存储缓存,而本地的高速缓存保留给通讯外设使用。
支持SDMMC外设,STM32H723可以高速操作SD卡,发挥市面上高速卡的特性。
支持CAN FD外设,STM32H723有两路CAN FD外设,原生支持FDCAN,兼容CAN 2.0A/B模式。
其它,还有丰富的模拟资源,也便于我们在未来的项目中对其进行扩展。
3.2 LCD显示屏
采用主控芯片为MCU8080接口的TFT LCD显示屏,显示尺寸为2.4英寸,采购于DigiKey.cn。
LCD屏本次使用了自带ili9342驱动芯片的LCD显示屏,其支持MCU8080接口协议。我们利用STM32H723芯片的FMC外设来与其高速通讯。其为8-bit接口,我们也在图片颜色域使用16位色,即RGB565模式。
3.3 CAN接口PHY芯片
本次使用NXP公司的CAN接口PHY芯片TJA1057芯片,采购于DigiKey.cn。在我的项目中,TJA1057芯片稳定,可靠。
四、项目软件方案
本次使用Keil软件为编译软件,使用ST公司的图形化代码生成辅助工具STM32CubeMX为驱动配置与代码示例生成。
软件系统考虑系统的复杂性,通讯协议的实现等需求,在本次项目中,我们采用免费授权的FreeRTOS嵌入式实时操作系统作为软件的基础框架,配以第三方图形化控件库,接合CAN总线与Modbus-RTU协议,获取外部数据,并在LCD屏显示。
4.1 FreeRTOS嵌入式实时操作系统
本次项目应用考虑到系统的复杂性,采用RTOS的方案来替代传统的bare-metal方案。FreeRTOS在任务的划分上面,我们做如下策略:
[*]1.Init_task()
[*]2.Gui_poll_task()
[*]3.Keyscan_poll_task()
[*]4.Can_a_poll_task()
[*]5.Can_b_poll_task()
[*]6.Modbus_poll_task()
[*]7.Uart_receive_task()
[*]8.Log_daemon_task()
[*]9.Sd_daemon_task()
[*]10.Data_proc_task()
4.2 图形化方案
使用stellaris的图形库。Stellaris图形库是一个简单,轻量级的图形库。在本次项目中,图形界面较少,并且长时间以主界面显示为主,因此,选用此图形库。
4.3 Modbus-RTU协议
与太阳能控制通讯使用Modbus-RTU主站协议,通过RS485总线与控制器通讯。主要使用以下操作码:
[*]1.0x03,读取ID为0x01的太阳能控制器的充电电压、充电电流、充电功率,放电电压,放电电流,放电功率,总发电量,总放电量等数据。读取ID为0x21的逆变器的放电电压,放电电流,放电功率,总放电量等数据。
[*]2.0x05,操作开关量。控制太阳能控制器的负载开关
[*]3.0x10,写入太阳能控制器的充电与放电策略
4.4 CAN协议
本次使用CAN 2.0明文方式,原生邮箱通讯方式。降低一下系统的复杂度。
五、作品实现
5.1 图片展示
5.2 软件代码
页:
[1]