01_关于CAR_HMI2的一些想法
Posted DreamLife.
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了01_关于CAR_HMI2的一些想法相关的知识,希望对你有一定的参考价值。
欢迎来到我的博客,希望这篇文章对你有所帮助,如果觉得不错,请点赞搜藏哈。
关于CAR_HMI2的一些想法
哈哈这篇文章将是我《CAR_HMI2》的第一篇文章。将简单和大家交代一下关于这个新坑的一下想法。
关于这个版本的汽车仪表系统,最近也一直在想到底怎么做,是否要找人重新设计制作一套新的UI出来;在想重新开这个坑的意义在哪里。思来想去,最终还是决定沿用以前的UI资源,换的是新的想法及实现方式。
1 历史版本
上一个版本的汽车仪表,其实是一个程序,抬头显示系统、虚拟仪表系统和多媒体系统都是通过控制台来控制,整个项目就是一个程序。博客地址在这里:https://blog.csdn.net/z609932088/category_9146909.html?spm=1001.2014.3001.5482整个结构如下图所示。大家可以忽略图中的“XMind使用模式”哈哈,目前用量不是很大,以后一定支持。当初的设想就是整个汽车上其实是有一个主机带动所有的屏幕,后面发现汽车上实际的工作方式并不是这样,每个模块其实都是一个独立的单元,大家通过数据总线来通讯。
2 新版构想
关于新的《CAR_HMI2》我的想法就是把每一个系统都当做一个独立的个体,大家遵循一套通信协议来保证数据的互通。在汽车总会有很多总线,其中对典型的就是CAN总线,在公司的项目中,也简单的使用到了CAN总线,在CAN总线的协议标准制定的时候,也有幸参与到其中。那么在我写这个项目的是,是没有硬件的支持的,结合公司项目的实现方式,我将采用UDP广播来实现模拟CAN总线,在通信协议方面,将努力参考CAN总线数据格式。新的构想如下图所示将项目分为4部分即HUD抬头显示系统、MeterDisplay仪表显示系统、MultifunctionDisplay多媒体系统和DataServer数据服务器,其中DataServer数据服务器主要是用来模拟和生产各种假数据来驱动整个系统运行的。
对于每个模块的实现,也有了新的想法,既然是探索,那就把步子迈的大一点,失败了又能正阳了,反正也没有人认识我不是么,但是不论失败,还是完成,对自己来说,都是一种积累,一种尝试。所以新的构想如下图所示。
按照每个某块中都有一部分是自己熟悉部分,也有自己没有接触的部分,HUD部分将采用Qwidget和Python;MeterDisplay部分将使用Quick和C++;MultifunctionDisplay同样,采用Quick和C++,而数据服务器就采用自己最熟悉的QWidget和C++来实现。
3 写在最后的话
其实这次重新操刀,能否超越上一个版本,仍是一个未知数,虽然上一个版本也是一个半成品。后面有很多事情是不确定,不确定自己是否有足够的内心和毅力把他们写完,不确定自己会不会换工作,是否有业余的时间来让我折腾,同时也感觉自己30岁了,需要对家庭有些负责,也不能凭着自己性质,也需要考虑生活,考虑给他们一个更好的生活环境。
总之,2020我们是实鼠不易,希望2021我们可以牛转乾坤。加油!打工人。
以上是关于01_关于CAR_HMI2的一些想法的主要内容,如果未能解决你的问题,请参考以下文章