热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

智能电动车无线外设规范

1、电动自行车无线外设规范的意义电动自行车是一个常见的交通工具,多年发展下来,形成了多个较为标准的零部件,通过组装这些零部件࿰

1、电动自行车无线外设规范的意义

电动自行车是一个常见的交通工具,多年发展下来,形成了多个较为标准的零部件,通过组装这些零部件,即可拼装成,常见的电动车零部件包括:
机械类:车架,轮胎,刹车系统
电气类:电池,电机,电机控制器,灯光
辅助类:仪表,报警器

可以看到各部件各司其职,没有中央处理单元对整车进行控制,也没有整车总线来协调各外设部件。


到了智能电动车时代,需要增加一个中央处理单元获取整车各个部件的信息,也能同时对整车的部件进行一定的控制与设置。这就需要在电动车上增加总线。
总线在汽车领域很常见,比如CAN总线,但CAN总线模块是比较贵的,对于电动车这类价格只有汽车几十分之一的产品,使用CAN总线很难普及。
同时电动车体型等原因,走线也是一个考量点。
另外,对于广大的后装市场,总线走有线方式,安装会非常费力。


基于此,我们提出了用无线技术来打造一条适合电动车的总线方案,可以方便的扩展出各类外设。

 

2、无线方案的选取

无线技术众多,WI-FI,蓝牙,Zigbee,lora,4G等等,从本地总线的需求出发,4G等广域网技术不考虑,局域网方案,我们从如下角度来考虑使用的无线方案

技术

成本

功耗

带宽

网络可扩展性

可交互性

WI-FI

BLE蓝牙

Zigbee

lora

433

从表项中可以看出蓝牙方案与zigbee方案是比较好的选择,考虑电动车的外设部件不会很多,网络可扩展性要求不高,zigbee网络支持的65536的优势不明显,而手机没有zigbee模块,与外设单独的可交互性较差。

选取BLE蓝牙技术作为我们的技术方案。

 

3、无线外设总线网络架构

标准的BLE蓝牙是一个点对点的技术,基于点对点技术形成网络的话,对中央节点连接能力的要求会比较高,且中央节点必须可靠,否则整个网络瘫痪。
对此,我们设计了一套无连接的总线网络架构,网络根据寻址类型的不同可以形成星型网络与网状网络2种类型。

此架构的协议分为4层,即应用层,传输层,网络层,物理层

 

3.1、物理层

物理层使用BLE蓝牙的广播与扫描能力,BLE广播可以携带一定的数据,用BLE广播交互低频数据是没有问题的。

 

3.2、网络层

网络层保证消息的可达性,涉及寻址与路由,同时也决定了网络的结构。

 

3.2.1、网络地址

我们定义了3类地址。
 

单播地址
单播地址范围0x01-0x7F,共计127个,在外设设备入网时分配,单播地址用于无线外设与智能中控的交互,智能中控默认的单播地址是0x00。
寻址时,中控接收所有非0地址的网络封包,设备仅接收平台分配地址的网络封包。

 

组播地址
组播地址范围0x80-0xFE,共计127个,组播地址无需分配,由品类ID决定。
组播地址采用订阅发布模式,设备产生了满足某个品类ID的某个操作码后,就在网络中发布此操作码消息,消息地址为此品类的组播地址,对此类品类ID的操作码感兴趣的其他设备可订阅此消息并解析。比如,网络中的钥匙可以在钥匙按钮变化时发布消息,消息的组播地址为钥匙的品类ID,消息的操作码按键操作码。对此此类消息感兴趣(订阅了此组播地址)的外设,比如车厢锁就可以接收并解析消息,看看消息内容是否是锁定/解锁车厢锁,然后执行相应动作。

 

广播地址
广播地址范围0xFF,广播地址所有设备都需要接收,功能预留。

 

3.2.2、网络结构

根据地址类型的不同,整个网络可以组成星型和网格2种类型。

 

星型网络
当使用单播地址时,整个网络呈现星型结构,中心设备为智能中控,智能中控与智能外设之间通过单播地址寻址交互。

 

网格网络
当使用组播地址时,整个网络呈现网格结构,智能中控不工作时,整个网络仍可工作,设备间通过组播地址订阅发布模式寻址交互。

 

3.3.3、网络路由

为降低网络的复杂度,网络消息不提供多跳路由能力,外设设备无需转发消息。

 

3.3、传输层

传输层用于保证数据的可靠性与完整性,考虑本地网络并不复杂,且应用层无大数据传输,我们设计的传输层不分包,也无应答。由物理层的重传机制来保证可靠性。
为保证网络的安全性,应用数据在传输层传输时需要加密,加密密钥在设备入网时分配。
加密算法采用AES-CCM,防止被破解被篡改。

 

3.4、应用层

应用层和应用有关,输出型外设可根据应用类型发布消息,输入型外设可根据应用订阅消息。
以智能胎压监测器,智能头盔,智能仪表为例。
智能胎压监测器定时输出胎压消息,智能仪表订阅此消息,并显示在仪表上。
当智能胎压监测器发现胎压异常,则发出胎压异常消息,智能仪表和智能头盔都订阅此消息,智能仪表显示胎压异常的告警,同时智能头盔语音提醒用户胎压异常。

 

4、智能外设的入网

外设要进入入网流程才能加入网络,设备入网通过手机APP或者小程序进行。
智能外设入网的流程如下图所示:

为便于操作,我们使用了扫码入网的方式,通过一个简单的扫码动作,就完成了上线一系列复杂的交互。

 

5、未来展望

在电动车智能化的趋势下,未来电动车的传感器与执行器会越来越多,在提升用户驾驶感受与安全的同时,也给了用户更多舒适性的配置。通过无线总线扩展的方式,对于前装还是后装市场,都更为方便的满足用户的需求。
我们也在寻求更多的智能化能力,为电动车的智能化添砖加瓦。

 

开发者支持

如需更多技术支持,可加入钉钉开发者群,或者关注微信公众号。

更多技术与解决方案介绍,请访问HaaS官方网站https://haas.iot.aliyun.com。


推荐阅读
  • Android中高级面试必知必会,积累总结
    本文介绍了Android中高级面试的必知必会内容,并总结了相关经验。文章指出,如今的Android市场对开发人员的要求更高,需要更专业的人才。同时,文章还给出了针对Android岗位的职责和要求,并提供了简历突出的建议。 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • 阿里Treebased Deep Match(TDM) 学习笔记及技术发展回顾
    本文介绍了阿里Treebased Deep Match(TDM)的学习笔记,同时回顾了工业界技术发展的几代演进。从基于统计的启发式规则方法到基于内积模型的向量检索方法,再到引入复杂深度学习模型的下一代匹配技术。文章详细解释了基于统计的启发式规则方法和基于内积模型的向量检索方法的原理和应用,并介绍了TDM的背景和优势。最后,文章提到了向量距离和基于向量聚类的索引结构对于加速匹配效率的作用。本文对于理解TDM的学习过程和了解匹配技术的发展具有重要意义。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 【Windows】实现微信双开或多开的方法及步骤详解
    本文介绍了在Windows系统下实现微信双开或多开的方法,通过安装微信电脑版、复制微信程序启动路径、修改文本文件为bat文件等步骤,实现同时登录两个或多个微信的效果。相比于使用虚拟机的方法,本方法更简单易行,适用于任何电脑,并且不会消耗过多系统资源。详细步骤和原理解释请参考本文内容。 ... [详细]
  • t-io 2.0.0发布-法网天眼第一版的回顾和更新说明
    本文回顾了t-io 1.x版本的工程结构和性能数据,并介绍了t-io在码云上的成绩和用户反馈。同时,还提到了@openSeLi同学发布的t-io 30W长连接并发压力测试报告。最后,详细介绍了t-io 2.0.0版本的更新内容,包括更简洁的使用方式和内置的httpsession功能。 ... [详细]
  • 本文介绍了PhysioNet网站提供的生理信号处理工具箱WFDB Toolbox for Matlab的安装和使用方法。通过下载并添加到Matlab路径中或直接在Matlab中输入相关内容,即可完成安装。该工具箱提供了一系列函数,可以方便地处理生理信号数据。详细的安装和使用方法可以参考本文内容。 ... [详细]
  • 本文介绍了南邮ctf-web的writeup,包括签到题和md5 collision。在CTF比赛和渗透测试中,可以通过查看源代码、代码注释、页面隐藏元素、超链接和HTTP响应头部来寻找flag或提示信息。利用PHP弱类型,可以发现md5('QNKCDZO')='0e830400451993494058024219903391'和md5('240610708')='0e462097431906509019562988736854'。 ... [详细]
  • flowable工作流 流程变量_信也科技工作流平台的技术实践
    1背景随着公司业务发展及内部业务流程诉求的增长,目前信息化系统不能够很好满足期望,主要体现如下:目前OA流程引擎无法满足企业特定业务流程需求,且移动端体 ... [详细]
  • 本文比较了eBPF和WebAssembly作为云原生VM的特点和应用领域。eBPF作为运行在Linux内核中的轻量级代码执行沙箱,适用于网络或安全相关的任务;而WebAssembly作为图灵完备的语言,在商业应用中具有优势。同时,介绍了WebAssembly在Linux内核中运行的尝试以及基于LLVM的云原生WebAssembly编译器WasmEdge Runtime的案例,展示了WebAssembly作为原生应用程序的潜力。 ... [详细]
  • 无线认证设置故障排除方法及注意事项
    本文介绍了解决无线认证设置故障的方法和注意事项,包括检查无线路由器工作状态、关闭手机休眠状态下的网络设置、重启路由器、更改认证类型、恢复出厂设置和手机网络设置等。通过这些方法,可以解决无线认证设置可能出现的问题,确保无线网络正常连接和上网。同时,还提供了一些注意事项,以便用户在进行无线认证设置时能够正确操作。 ... [详细]
  • 本文介绍了Android 7的学习笔记总结,包括最新的移动架构视频、大厂安卓面试真题和项目实战源码讲义。同时还分享了开源的完整内容,并提醒读者在使用FileProvider适配时要注意不同模块的AndroidManfiest.xml中配置的xml文件名必须不同,否则会出现问题。 ... [详细]
author-avatar
holy190
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有