智能硬件是继智能手机之后的一个科技概念,通过软硬件结合的方式,对传统设备进行改造,进而让其拥有智能化的功能。
智能硬件开发包括智能家居、智能手机、智能电视开发等等。
物联网是新一代信息技术的重要组成部分,也是“信息化”时代的重要发展阶段。
顾名思义,物联网就是物物相连的互联网。
这有两层意思:其一,物联网的核心和基础仍然是互联网,是在互联网基础上的延伸和扩展的网络;
其二,其用户端延伸和扩展到了任何物品与物品之间,进行信息交换和通信,也就是物物相息。
物联网通过智能感知、识别技术与普适计算等通信感知技术,广泛应用于网络的融合中,也因此被称为继计算机互联网之后世界信息产业发展的第三次浪潮。
智能硬件开发自然是离不开物联网的。
Android 从 43(API Level 18) 开始支持低功耗蓝牙,但是只支持作为中心设备(Central)模式,这就意味着 Android 设备只能主动扫描和链接其他外围设备(Peripheral)。从 Android 50(API Level 21) 开始两种模式都支持。低功耗蓝牙开发算是较偏技术,实际开发中坑是比较多的,网上有很多文章介绍使用和经验总结,但是有些问题答案不好找,甚至有些误导人,比如 :获取已经连接的蓝牙,有的是通过反射,一大堆判断,然而并不是对所有手机有用,关于Ble传输速率问题的解决,都是默认Android每次只能发送20个字节,然而也并不是,,,下面进入正文。
这里用的是 Android50 新增的扫描API,
这里说一下,如果做蓝牙设备管理页面,可能区分是否是已连接的设备,网上又通过反射或其他挺麻烦的 *** 作,也不见得获取到,官方Api 就有提供
与外围设备交互经常每次发的数据大于 mtu的,需要做分包处理,接收数据也要判断数据的完整性最后才返回原数据做处理,所以一般交互最少包含包长度,和包校验码和原数据。当然也可以加包头,指令还有其他完整性校验。下面分享几个公用方法:
我自己封装的一个BleUtil ,因为涉及跟公司业务关联性太强(主要是传输包的协议不同)就先不开源出来了,如果这边文章对大家有帮助反馈不错,我会考虑上传个demo到github供大家使用,
在这先给大家推荐一个不错 Demo ,里面除了没有分包,协议,和传输速率。基本的功能都有,而且调试数据到打印到界面上了。最主要是它可以用两个个手机一个当中心设备一个当外围设备调试。
首先传输速率优化有两个方向,1 外围设备传输到Android 。2 Android传输到外围设备。
我在开发中首先先使用上面那位仁兄的demo调试,两个Android 设备调试不延时,上一个成功马上下一个,最多一秒发11个20字节的包。
后来和我们的蓝牙设备调试时发现发送特别快,但是数据不完整,他蓝牙模块接收成功了,但是透传数据到芯片处理时发现不完整,我们的硬件小伙伴说因为 波特率 限制(差不多每10字节透传要耗时1ms)和蓝牙模块的buff (打印时是最多100byte,100打印的)限制,就算蓝牙模块每包都告诉你接收成功,也是没透传完就又接收了。后来通过调试每次发20K数据,最后是 Android 发是 20字节/130ms 稳定。给Android 发是 20字节/ 8ms 。 (天杀的20字节,网上都是说20字节最多了)
后来看了国外一家物联网公司总结的 Ble 吞吐量的文章(上面有连接),知道Android 每个延时是可以连续接收6个包的。就改为 120字节/ 16ms (为啥是16ms,不是每次间隔要6个包吗,怎么像间隔两次,这时因为波特率影响,多了5个包100字节,差不多 我们的单片机透传到蓝牙模块要多耗时不到10ms )
而Android 发数据可以申请 我们设备的mtu 来得到最多每次能发多少字节。延时还是130ms,即:241字节/ 130ms 提高12倍,这个速度还可以。
根据蓝牙BLE协议, 物理层physical layer的传输速率是1Mbps,相当于每秒125K字节。事实上,其只是基准传输速率,协议规定BLE不能连续不断地传输数据包,否则就不能称为低功耗蓝牙了。连续传输自然会带来高功耗。所以,蓝牙的最高传输速率并不由物理层的工作频率决定的。
在实际的 *** 作过程中,如果主机连线不断地发送数据包,要么丢包严重要么连接出现异常而断开。
在BLE里面,传输速度受其连接参数所影响。连接参数定义如下:
1)连接间隔。蓝牙基带是跳频工作的,主机和从机会商定多长时间进行跳频连接,连接上才能进行数据传输。这个连接和广播状态和连接状态的连接不是一样的意思。主机在从机广播时进行连接是应用层的主动软件行为。而跳频过程中的连接是蓝牙基带协议的规定,完全由硬件控制,对应用层透明。明显,如果这个连接间隔时间越短,那么传输的速度就增大。连接上传完数据后,蓝牙基带即进入休眠状态,保证低功耗。其是125毫秒一个单位。
2)连接延迟。其是为了低功耗考虑,允许从机在跳频过程中不理会主机的跳频指令,继续睡眠一段时间。而主机不能因为从机睡眠而认为其断开连接了。其是125毫秒一个单位。明显,这个数值越小,传输速度也高。
蓝牙BLE协议规定连接参数最小是5,即725毫秒;而Android手机规定连接参数最小是8,即10毫秒。iOS规定是16,即20毫秒。
连接参数完全由主机决定,但从机可以发出更新参数申请,主机可以接受也可以拒绝。android手机一部接受,而ios比较严格,拒绝的概率比较高。
参考:
在iOS和Android上最大化BLE吞吐量
最大化BLE吞吐量第2部分:使用更大的ATT MTU
随着经济和 社会 的发展,城市公共照明已经成为城市现代化水平的重要标志之一,城市照明设施规模日益增大,用电量节节攀升, 社会 各方对城市公共照明的要求和希望越来越高。而目前国内城市照明的监控和管理方式相对简单、粗放,服务质量和节能水平有待提高,难以满足现代化城市照明的需要,主要表现在以下几个方面:
监控管理方式相对粗放。传统“三遥”系统只能实现回路级别的采集和控制,对单灯运行情况无法实时、准确监控,不能实现智能化监控和精细化管理;部分城市仍停留在“时控”时代,缺少基本的信息化管理手段。
运行维护效率低、成本高。现有的照明设施故障发现机制主要采用人工巡查模式,工作量巨大,需要投入大量的人力物力,并且还可能留有盲区,运维效率低、成本高,难以实现主动服务、保障服务质量。
照明能耗偏大。缺少灵活有效的节能控制手段,过度照明和照明不足的矛盾难以调和,无法实现按需照明,从而在保障照明质量的前提下有效降低照明能耗设施安全难以保障。缺少实时监管措施,设施被盗时有发生,给照明管理部门造成直接的经济损失,严重影响城市照明的正常运行,同时带来安全隐患。
1 设计与实现
本系统由3大部分组成:NB-IoT通信模块、云端控制系统、手机端APP。
图1
11 NB-IoT通信模块
基于高通MDM9206平台高性能、低功耗的CAT-M1/CAT-NB1/GSM三模无线通信模块,支持全球各主流定位系统GNSS,不仅支持当前运营商的主流物联网频段,对未来可能会部署的频段也最大可能性的支持 ,其尺寸仅 为 225mm265mm27mm,能最大限度地满足终端设备对小尺寸模块产品的需求,
通过该模块实现路灯信息传输、调光、降功率、按需开关灯等管理方式,减少过度照明节约电能,真正实现节能、环保、安全、舒适的照明,减少对大气的污染,建设资源节约型、环境友好型 社会 。
12 云端控制中心
是根据路灯管控开发的一款远程 *** 作与监控管理平台,方便了管理人员的管理与维护。通过灯联网集中监控管理平台可以远程控制每一个回路的开、关状态,也可以实时监测每个设备的当前信息,并根据采集到的参数的情况,实时判断线路情况,给用户直观的解析。系统同时还具备短消息报警和声音报警的功能。
13 手机端APP
一种基于智能手机APP应用的城市路灯控制方法,包括将智能手机APP应用与路灯管理系统相关联,形成APP调节城市路灯的架构,构建智能手机 APP 节点,每个 APP 节点代表一个APP 注册用户;当用户登录 APP 应用时,APP 应用将包含用户地理位置、行进方式的 APP 应用信息传送到路灯管理系统;路灯管理系统根据APP应用信息,查询用户所属路段的路灯实时状态,并对路灯进行调节控制。采用NB-IoT物联网概念,通过手机 APP 应用按照用户实际需求开启路灯、调节路灯亮度,合理分配路灯照明资源,降低了路灯能耗、节约了路灯使用成本。
2 测试与分析
硬件调试:分为电源电路、通信链路、LED驱动电路调试。
21 电源电路
图2 电源电路
图 2 中,EUP3420 是一款恒定频率,采用电流模脉宽调制(PWM)架构的降压型变换器。芯片集成了主开关和同步整流开关,可以获得更高的效率。本系统采取5V适配器输入,转化给NB-IoT无线通讯模块VBAT网络33V供电。
C1000:适配器的输入端,用万用表或者示波器测试该点电压是否为5V。
L1000:开关电源 buck 电感输出端,用万用表或者示波器测试该点电压是否为33V,通过调整R1000和R1007阻值调整VBAT输出的大小。
22 通信链路
NB-IoT模块上电后sim卡状态测试。
图3 NB-IoT模块Sim卡状态查询
23 LED驱动电路
图4 LED驱动电路
上图中,三极管驱动电路由Q11、R128、D30、J26(焊接LED模组)组成,NB-IoT通信模块通过GPIO口控制三极管的基集,使三极管Q11工作在开关状态,实现对LED的开断。
3 软件测试
安卓手机端可以控制指定路灯的亮与灭以及全开全灭。
图5 手机控制端界面
PC端实现对各个端口的控制。
图6 云端控制端界面
4 控制系统特性
41 管道NB-IoT设计
一是广覆盖:NB-IoT 覆盖能力强,在同样的频段下,NB-IoT 比现有的网络增益 20dB,覆盖面积扩大 100 倍。它不仅可以满足广覆盖需求,对于厂区、地下车库、井盖这类对深度覆盖有要求的应用同样适用。因此不只是道路照明,在室内、工业照明领域的应用前景也十分广阔。
二是强链接:在同一基站的情况下,NB-IoT可以比现有无线技术提供50-100倍的接入数。一个扇区能够支持10万个连接,支持低延时敏感度、超低的设备成本、低设备功耗和优化的网络架构。这将意味着,基于 NB-IoT 通信技术的照明控制系统,将能够管控更多的终端设备,满足未来智慧城市中大量设备联网需求。
三是低功耗:低功耗特性是智慧照明应用一项重要指标,NB-IoT聚焦小数据量、小速率应用,因此NB-IoT设备功耗可以做到非常小,终端模块的待机时间可长达10年,特别适用于智能家居的应用。
四是低成本:低速率、低功耗、低带宽同样给 NB-IoT 芯片以及模块带来低成本优势。单个接连模块预期价格不超过 5美元,最终低至 1 美元,这对降低智慧照明应用的成本起到关键性作用。
42 云端智能管理
采用单灯控制技术,构建路灯物联网,精准控制每一盏路灯,在保证照明需求的前提下,根据季节、路段、天气、特殊场合等条件设定路灯运行方案,真正实现“按需照明”,深化节能减排。因本项目范围内 LED 路灯电源不具备调光接口,单灯节能方式采用开关灯控制方式。
通过单灯“在线巡测”,及时发现路灯故障并在地图上进行精准定位,转变“人工巡检、热线报修”的传统运维方式,实现定向运维、主动服务,减轻劳动强度,提高路灯运维效率,降低运维成本。
43 客户端APP
智慧公共照明管理平台具有全面和优化的路灯智能控制功能,为路灯管理人员提供更高效的管理和维护手段,主要体现为:实时监控:可以对任意一盏、一路或任意自定义组的路灯进行开关灯、调光。同时支持多终端,支持基于 Android *** 作系统的移动终端远程控制,可采用平板电脑、手机等终端下发开关灯、调光等控制命令等。
5 应用前景分析
对于 NB-IoT 产业的发展,中国移动、中国联通、中国电信三大运营商皆就NB-IOT发布了各自的发展计划。工信部也发文要求加快 NB-IoT 在国内落地,到今年年底建成基站规模 40万个,到 2020 年建成基站规模 150 万个。中国 NB-IoT 产业加速布局,将是全球 NB-IoT 产业领跑者。目前在上海、广州、江
门、鹰潭、长沙落地了NB-IoT智慧路灯项目,实现了到处开花、处处结果。
6 结束语
城市智慧照明是智慧能源的开端,以 NB-IoT 新一代通信技术为支撑,实现整个城市一张网,对城市道路每盏灯实现全面的感知、智能的控制、广泛的交互和深度的融合,在满足市民正常照明需求的前提下,通过智能调光、降功率、按需开关灯等管理方式,减少过度照明,电能节约率可达30% 60%,真正实现节能减排,减少对大气的污染,建设资源节约型、环境友好型 社会 。同时通过对城市照明设施实现精细化管理,通过对城市道路每个灯具的运行状态进行准确分析和故障报警,并根据故障等级启动相应的处置流程,将被动巡检改为定点维护,反应更加敏捷处置效率更高,将使城市的灯光管理水平与现代化的大都市相适应,提高亮灯率,减少各种故障,合理照明,美化照明,安全照明,营造出现代城市科学和艺术完美结合的照明效果,树立和提升城市的品牌形象。
感知层:底层数据采集职能,包括芯片、连接芯片和应用设备的模组、传感器、各类识别技术等1、芯片:低功耗、高可靠性的半导体芯片应用广泛,MCU/SoC逐渐渗透物联网领域。MCU芯片复杂度较低,适用于智能设备的短距离信息运输,主要应用于智能家居、消费电子、医疗保健和工业电子等领域;SoC芯片系统复杂度较高,集成功能更丰富,支持运行多任务复杂系统,可应用于功能较复杂的嵌入式电子设备,应用于无人机、自动驾驶和工业互联网等领域
2、无线模组:为物联网提供网联能力的基础硬件,将芯片、存储器和功放器件等集成在一块线路板上,并提供标准接口,在物联网产业中处于承上启下的中间环节,向上连接芯片行业,向下连接各类终端设备,终端设备借助无线模组实现通信或定位的功能。
3、传感器:作为物体的“五官”,传感器承担采集数据、感知世界的重任,不断向智能化、高精度、微型化的方向发展,市场空间广阔。传感器与MEMS结合是当下技术的新趋势,MEMS传感器集成通信、CPU、电池等组件及多种传感器,具有体积小、功耗低、成本低、集成度高、智能化特点,广泛应用于消费电子、医疗和车联网等领域。
涉及企业:
芯片
翱捷科技:具备全球稀缺的全制式蜂窝基带芯片研发能力的平台型芯片设计企业。2015年成立以来一直专注于无线通信芯片的研发和技术创新。公司各类芯片产品可应用于手机、智能穿戴设备为代表的消费电子市场和以智慧安防、智能家居、自动驾驶为代表的智能物联市场。
先科电子:领先的高质量模拟和混合信号半导体产品供应商。成立于1960年,主要为客户提供电源管理、保护、高级通信。人机界面、测试与测量以及无线和感应产品方的专有解决方案。
广芯微电子:成立于2017年,一家为客户提供创新解决方案的集成电路设计企业,公司开发包括面向工业物联网(IIoT)并支持边缘计算的专用处理器芯片、面向LPWA的IoT连接专用芯片、IoT基带处理器芯片、以及应用于传感器信号调理的专用芯片。
华为海思:全球领先的Fabless半导体与器件设计公司,前身为华为集成电路设计中心,2004年注册成立实体公司,提供海思芯片的对外销售及服务。
联发科:全球第四大无晶圆半导体公司,联发科技的核心业务包括移动通信、智能家居与车用电子,着重研发适用于跨平台的芯片组核心技术,联发科的芯片经过优化,能在极低散热量且极度节能的模式下运行,以延长电池续航力,时时刻刻达到高效能、高电源效率与连网能力的完美平衡。
紫光展锐:我国集成电路设计产业的龙头企业。公司于2013年成立,致力于移动通信和物联网领域核心芯片的研发及设计,产品包括移动通信中央处理器、基带芯片、AI芯片、射频前端芯片、射频芯片等各类通信、计算及控制芯片,其物联网解决方案支持众多智能电子产品,包括智能手机、平板电脑、Wi-Fi调制解调器、家用设备、可穿戴设备、互联汽车产品等。
移芯通信:为中国自主研发的超低功耗NB-IoT和Cat-M物联网芯片供应商。公司于2017 年成立,2020年12月完成B轮融资。主要业务为蜂窝物联网芯片的研发和销售,致力于设计全球极致性价比的蜂窝物联网基带芯片。
高通:是全球领先的无线科技创新者,也是5G研发、商用与实现规模化的推动力量。成立于1985年,1991年在纳斯达克上市。Qualcomm主要研发无线芯片平台和其它产品解决方案,凭借行业领先的技术解决方案以及在标准组织中的积极贡献,Qualcomm成为赋能无线生态系统不可或缺的一部分。
诺领科技成立于2018年9月,是探索满足IoT需求的全集成、低功耗无线SoC解决方案的先行者。诺领科技作为一家广域无线物联网芯片设计公司,拥有射频模拟、基带通信系统、GNSS、SoC系统和软件方面的顶尖人才,致力于发布最佳SoC解决方案。公司目前推出的产品包括物联网系统级芯片NB-IoT和Cat-M SoCs,服务于广泛的市场,其中包括智慧城市、可穿戴设备、资产追踪等等。
芯翼信息是5G物联网端侧SoC创新领导者。成立于2017年3月,公司专注于物联网通讯芯片(NB-IoT)的研发和销售。其产品XY1100是全球首颗single die集成CMOS PA的量产NB-IoT SoC,具有超低功耗、超小体积模块设计和开发灵活等优势,可应用于智慧气表、智慧水表、烟感、电动车、物流跟踪、智慧穿戴等应用场景。
智联安科技是一家专业从事芯片设计的国家高新技术企业。成立于2013年9月,公司总部位于中国北京,在硅谷、武汉、合肥等多地设有子公司和技术研发中心。公司致力于无线通信芯片的技术研发,目前已于2019年8月成功完成NB-IoT终端通信芯片MK8010量产流片,并在多个行业中实现落地应用。
中兴微电子为中国领先的通信IC设计公司。成立于2003年,中兴微电子专注于通信网络、智能家庭和行业应用等通信芯片开发,自主研发并成功商用的芯片达到100多种,覆盖通信网络“承载、接入、终端”领域,服务全球160多个国家和地区,连续多年被评为“中国十大集成电路设计企业”。
Nordic Semiconductor北欧半导体是专注研究物联网无线技术无晶圆厂半导体公司。公司专注于低功耗无线技术产品,包括短距离蓝牙,2020年从Imagination Technologies收购的Wi-Fi技术和LTE-M / NB-IoT蜂窝物联网解决方案。
Marvell美满是高性能数据基础架构产品的全球半导体解决方案提供商。成立于1995年,Marvell专注模拟,混合信号,计算,数字信号处理,网络,安全性和存储领域,提供产品和解决方案来满足汽车,运营商,数据中心和企业数据基础架构市场日益增长的计算,网络,安全性和存储需求。公司当前的产品主要包括两大类:网络和存储。
Broadcom博通是全球领先的有线和无线通信半导体公司。拥有50年来的创新,协作和卓越工程经验,公司设计提供高性能并提供关键任务功能的产品和软件,包括半导体解决方案和基础设施软件解决方案,半导体解决方案主要包括明星级的有线基础设施业务(以太网交换芯片/数据包处理器/ASCI等)和无线芯片业务(Wi-Fi 芯片/蓝牙/GPS 芯片等)。基础设施软件部门主要包括主机、企业软件解决方案和光纤通道存储区域网络业务。
NXP恩智浦半导体公司是嵌入式应用安全连接解决方案的全球领导者。公司于2006年在荷兰成立,前身为荷兰飞利浦公司于1953年成立的半导体事业部,致力于为客户提供广泛的半导体产品组合,包括微控制器,应用处理器,通信处理器,连接芯片组,模拟和接口设备,RF功率放大器,安全控制器和传感器等
乐鑫科技是一家专业的物联网整体解决方案供应商。公司在2008年4月成立于上海,是一家主要从事智能物联网Wi-Fi MCU通信芯片与模组研发设计与销售的公司。公司采用Fabless的经营模式,将晶圆制造、封装和测试环节委托于专业代工厂商。近年来,公司牢牢把握智能物联网行业的机遇,主要产品Wi-Fi MCU通信芯片目前主要运用于智能家居、智能照明、智能支付终端、智能可穿戴设备、传感设备及工业控制等物联网领域
晶晨股份是全球布局、国内领先的集成电路设计商。成立于2003年,公司专注于为多媒体智能终端SoC芯片的研发、设计与销售,芯片产品主要应用于智能机顶盒、智能电视和AI音视频系统终端等科技前沿领域。公司属于典型的Fabless模式IC设计公司,将晶圆制造、芯片封装和芯片测试环节分别委托给专业的晶圆制造企业和封装测试企业代工完成,自身则长期专注于多媒体智能终端SoC芯片的研发、设计与销售,已成为智能机顶盒芯片的领导者、智能电视芯片的引领者和AI音视频系统终端芯片的开拓者。
蜂窝模组企业
移远通信:全球领先的物联网模组龙头。公司成立于2010年,从事物联网领域无线通信模组及其解决方案的设计、生产、研发与销售服务,可提供包括无线通信模组、物联网应用解决方案及云平台管理在内的一站式服务。
广和通:作为首家上市的无线通讯模组企业,近十年为公司业务的快速发展期。成立于1999年,并于2017年在深圳证券交易所创业板上市,成为中国无线通讯模组产业中第一家上市企业。公司主要从事无线通信模块及其应用行业的通信解决方案的设计、研发与销售服务。
美格智能:全球领先的无线通信模组及解决方案提供商。成立于2007年,美格智能专注于为全球客户提供以MeiGLink品牌为核心的标准M2M/智能安卓无线通信模组、物联网解决方案、技术开发服务及云平台系统化解决方案。
日海智能:通信行业连接设备龙头,成立于2003年,2017年相继收购了龙尚科技与芯讯通,入股美国艾拉,在国内率先实现了“云+端”的物联网战略布局,卡位物联网发展关键环节;在2018年重新确立了AIoT人工智能物联网发展战略,
高新兴:全球领先的智慧城市物联网产品与服务提供商。成立于1997年,公司长期致力于研发基于物联网架构的感知、连接、平台层相关产品和技术,从下游物联网行业应用出发,以通用无线通信技术和超高频RFID技术为基础,融合大数据和人工智能等技术,实现物联网“终端+应用”纵向一体化战略布局,构筑物联网大数据应用产业集群,并成为物联网大数据应用多个细分行业领先者,服务于全球逾千家客户。目前公司正处于战略和资源进一步聚焦阶段,重点聚焦车联网和执法规范化两大垂直应用领域。
有方科技:物联网接入通信产品和服务提供商。成立于2006年,公司致力于为物联网行业提供稳定可靠的接入通信产品和服务。公司的主营业务为物联网无线通信模块、物联网无线通信终端和物联网无线通信解决方案的研发、生产(外协加工方式实现)及销售。
合宙通信:一家专业提供物联网无线通信解决方案技术产品和服务的高科技企业。成立于2014年,公司致力于提供基于通信模块的智能硬件、软件平台、云平台等综合解决方案
鼎桥通信:行业无线解决方案的领导者。成立于2005年,公司专注于无线通信技术与产品的创新,布局三大业务板块:行业无线、物联网&5G、行业定制终端。
锐明技术:全球商用车载监控龙头。成立于2002年,公司聚焦商用车视频监控和车联网18年,细分行业龙头公司,产品覆盖商用车全系车型。公司外销“商用车通用监控产品”,内销“商用车行业信息化产品”,全球累计超过120万辆商用车安装有公司的产品
传感器
奥比中光:一家全球领先的AI 3D 感知技术方案提供商。公司成立于2013年,在2020年12月进行上市辅导备案。公司拥有从芯片、算法,到系统、框架、上层应用支持的全栈技术能力,主要产品包括3D视觉传感器、消费级应用设备和工业级应用设备技术产品,其AI 3D 感知技术广泛应用于移动终端、智慧零售、智能服务、智能制造、智能安防、数字家庭等领域。
歌尔股份:一家电子元器件制造商,成立于2001年,属于消费电子行业,主营业务可分为精密零组件业务、智能声学整机业务和智能硬件业务。
汉威科技:气体传感器龙头企业,成立于1998年,并于2009年10月作为创业板首批上市公司在深交所创业板上市。公司致力于气体传感器和仪表的制造、并提供物联网解决方案
联创电子:成立于1998年,公司主营业务为研发、生产和销售触控显示类产品和光学元件产品。公司现已形成光学镜头和触控显示两大业务板块,主要产品包括高清广角镜头、平面保护镜片、手机触摸屏、中大尺寸触摸屏、显示模组、触控显示一体化模组等
瑞声科技:全球领先的智能设备解决方案提供商,在声学、光学、电磁传动、精密结构件、射频天线等领域提供专有技术解决方案。公司成立于1993年,公司是电磁器件、射频天线、精密结构件等多个细分领域的行业冠军,也是5G天线产品的重要供应商
睿创微纳公司是一家专业从事专用集成电路、红外热像芯片及MEMS传感器设计与制造,成立于2009年。公司具有完全自主的知识产权,为全球客户提供性能卓越的红外成像MEMS芯片、红外探测器、ASIC 处理器芯片、红外热成像与测温机芯、红外热像仪、激光产品光电系统。
远望谷:我国物联网产业的代表企业,成立于1999年,公司主营业务集中在物联网感知层和应用层,为多个行业提供基于RFID技术的系统解决方案、产品和服务。
金溢科技:一家智慧交通与物联网核心设备及解决方案提供商。公司创立于2004年,公司产品主要包括高速公路ETC产品、停车场ETC产品、多车道自由流ETC产品和基于射频技术的路径识别产品。
杭州士兰微电子:一家专业从事集成电路芯片设计以及半导体微电子相关产品生产的企业。公司成立于1997年,并于2003年3月在上交所主板上市。公司主要产品是集成电路以及相关的应用系统和方案,主要产品包括集成电路、半导体分立器件、LED(发光二极管)产品等三大类。
水晶光电:专业从事光学光电子行业的设计、研发与制造,专注于为行业领先客户提供全方位光学光电子相关产品及服务的公司。公司创建于2002年8月
敏芯股份:成立于2007年,是一家专业从事微电子机械系统传感器研发设计和销售的的高新技术企业,也是国内唯一掌握多品类MEMS芯片设计和制造工艺能力的半导体芯片上市公司,主营产品包括MEMS麦克风、MEMS压力传感器和MEMS惯性传感器
必创科技:成立于2005年,无线传感器网络系统解决方案及MEMS传感器芯片提供商
固锝电子:成立于1990年,2006年在深交所主板上市,是国内半导体分立器件二极管行业完善、齐全的设计、制造、封装、销售的厂商。
感知交互企业
出门问问:以语音交互和软硬结合为核心的AI公司。公司成立于2012年,作为入选“新基建产业独角兽TOP100”的人工智能企业,出门问问拥有完整的“端到端”语音交互相关技术栈,包括声音信号处理、热词唤醒、语音识别、自然语言识别、自然语言理解、语音合成等尖端技术。
汉王科技:国内人工智能产业的先行者,成立于1998年,在人工智能领域深耕二十多年,是一家模式识别领域的软件开发商与供应商,主营业务包括“人脸及生物特征识别”、“大数据与服务”、“智能终端”、“笔触控与轨迹”等
科大讯飞:亚太地区知名的智能语音和人工智能上市企业,公司成立于1999年,公司主营业务包括语音及语言、自然语言理解、机器学习推理及自主学习等人工智能核心技术研究、人工智能产品研发和行业应用落地。科大讯飞作为中国人工智能产业的先行者,在人工智能领域深耕二十年,公司致力让机器“能听会说,能理解会思考”,用人工智能建设美好世界,在发展过程中形成了显著的竞争优势。
声智科技:融合声学和人工智能技术的平台服务商,也是全球人工智能 *** 作系统领域的开拓者。公司成立于2016年4月,拥有声学与振动、语音与语义、图像与视频等远场声光融合算法,以及开源开放的壹元人工智能交互系统(SoundAI Azero),具有声光融合感知、人机智能交互、内容服务聚合、数据智能分析、IoT控制和即时通讯等能力。
云知声:致力于AI产业的高新技术企业,成立于2012年6月,总部位于北京。公司以AI语音技术起家,经过多年经验和技术的积累,逐渐构筑起一个涵盖机器学习平台、AI芯片、语音语言、图像及知识图谱等技术的技术城池,成为了具有世界顶尖智能语音技术的独角兽
生物识别企业
商汤科技:全球领先的人工智能平台公司,也是中国科技部指定的首个“智能视觉”国家新一代人工智能开放创新平台。公司自主研发并建立了全球顶级的深度学习平台和超算中心,推出了一系列领先的人工智能技术,包括:人脸识别、图像识别、文本识别、医疗影像识别、视频分析、无人驾驶和遥感等。商汤科技已成为亚洲领先的AI算法提供商。
神州泰岳:致力于将人工智能/大数据技术、物联网通讯技术、ICT技术进行融合,大力提升行业/企业组织信息化、智能化的质量与效率的高新技术企业。公司成立于2001年
端侧BIoT
比特大陆:是一家全球领先的科技公司,成立于2013年。公司立足中国,以全球视野整合前沿研发资源,专注于高速、低功耗定制芯片设计研发,其产品包括算力芯片、算力服务器、算力云,主要应用于区块链和人工智能领域。物联网平台基于IaaS、PaaS、SaaS三种云计算服务模型,逐步完善了其功能体系,即ICP(基础设施云服务平台)、CMP(连接管理)、DMP(设备管理平台)、AEP(应用使能平台)、BAP(业务分析平台)等。
下面按照4大领域的玩家的分类方法逐一介绍PaaS物联网平台,其中包含通信领域、互联网领域、软件系统服务领域、垂直领域。
其中,通信领域包括以移动、联通、电信、华为、新华三为代表的电信运营商和电信设备商;互联网领域包括阿里、腾讯、百度、小米等;
软件系统服务领域包括IBM、微软、PTC等;
垂直领域主要分为两个部分,包括以三一重工、GE、西门子等为代表的工业类企业,以基本立子、普奥云、机智云、涂鸦智能、寄云等为代表的创业企业。
万物互联的物联网时代的已经来临,ble蓝牙开发在其中扮演着举重若轻的角色。最近刚好闲一点,抽时间梳理下这块的知识点。
涉及ble蓝牙通讯的客户端(开启、扫描、连接、发送和接收数据、分包解包)和服务端(初始化广播数据、开始广播、配置Services、Server回调 *** 作)整个环节以及一些常见的问题即踩过的一些坑。
比如
1、在Android不同版本或不同手机的适配问题,扫描不到蓝牙设备
2、如何避免ble蓝牙连接出现133错误?
3、单次写的数据大小有20字节限制,如何发送长数据
蓝牙有传统(经典)蓝牙和低功耗蓝牙BLE(Bluetooth Low Energy)之分,两者的开发的API不一样,本文主讲Ble蓝牙开发,传统蓝牙不展开,有需要的可以自行了解。
相对传统蓝牙,BLE低功耗蓝牙,主要特点是快速搜索,快速连接,超低功耗保持连接和数据传输。
客户端
服务端
Android43(API Level 18)开始引入BLE的核心功能并提供了相应的 API。应用程序通过这些 API 扫描蓝牙设备、查询 services、读写设备的 characteristics(属性特征)等 *** 作。
BLE蓝牙协议是GATT协议, BLE相关类不多, 全都位于androidbluetooth包和androidbluetoothle包的几个类:
androidbluetooth
BluetoothGattService 包含多个Characteristic(属性特征值), 含有唯一的UUID作为标识
BluetoothGattCharacteristic 包含单个值和多个Descriptor, 含有唯一的UUID作为标识
BluetoothGattDescriptor 对Characteristic进行描述, 含有唯一的UUID作为标识
BluetoothGatt 客户端相关
BluetoothGattCallback 客户端连接回调
BluetoothGattServer 服务端相关
BluetoothGattServerCallback 服务端连接回调
androidbluetoothle
AdvertiseCallback 服务端的广播回调
AdvertiseData 服务端的广播数据
AdvertiseSettings 服务端的广播设置
BluetoothLeAdvertiser 服务端的广播
BluetoothLeScanner 客户端扫描相关(Android50新增)
ScanCallback 客户端扫描回调
ScanFilter 客户端扫描过滤
ScanRecord 客户端扫描结果的广播数据
ScanResult 客户端扫描结果
ScanSettings 客户端扫描设置
BLE设备分为两种设备: 客户端(也叫主机/中心设备/Central), 服务端(也叫从机/外围设备/peripheral)
客户端的核心类是 BluetoothGatt
服务端的核心类是 BluetoothGattServer 和 BluetoothLeAdvertiser
BLE数据的核心类是 BluetoothGattCharacteristic 和 BluetoothGattDescriptor
下面详细讲解下客户端和服务端的开发步骤流程
安卓手机涉及蓝牙权限问题,蓝牙开发需要在AndroidManifestxml文件中添加权限声明:
在搜索设备之前需要询问打开手机蓝牙:
注意: BLE设备地址是动态变化(每隔一段时间都会变化),而经典蓝牙设备是出厂就固定不变了!
通过扫描BLE设备,根据设备名称区分出目标设备targetDevice,下一步实现与目标设备的连接,在连接设备之前要停止搜索蓝牙;停止搜索一般需要一定的时间来完成,最好调用停止搜索函数之后加以100ms的延时,保证系统能够完全停止搜索蓝牙设备。停止搜索之后启动连接过程;
BLE蓝牙的连接方法相对简单只需调用connectGatt方法;
参数说明
与设备建立连接之后与设备通信,整个通信过程都是在BluetoothGattCallback的异步回调函数中完成;
BluetoothGattCallback中主要回调函数如下:
上述几个回调函数是BLE开发中不可缺少的;
当调用targetdDeviceconnectGatt(context, false, gattCallback)后系统会主动发起与BLE蓝牙设备的连接,若成功连接到设备将回调onConnectionStateChange方法,其处理过程如下:
判断newState == BluetoothGattSTATE_CONNECTED表明此时已经成功连接到设备;
mBluetoothGattdiscoverServices();
扫描BLE设备服务是安卓系统中关于BLE蓝牙开发的重要一步,一般在设备连接成功后调用,扫描到设备服务后回调onServicesDiscovered()函数,函数原型如下:
BLE蓝牙开发主要有负责通信的BluetoothGattService完成的。当且称为通信服务。通信服务通过硬件工程师提供的UUID获取。获取方式如下:
具体 *** 作方式如下:
开启监听,即建立与设备的通信的首发数据通道,BLE开发中只有当客户端成功开启监听后才能与服务端收发数据。开启监听的方式如下:
BLE单次写的数据量大小是有限制的, 通常是20字节 ,可以尝试通过requestMTU增大,但不保证能成功。分包写是一种解决方案,需要定义分包协议,假设每个包大小20字节,分两种包,数据包和非数据包。对于数据包,头两个字节表示包的序号,剩下的都填充数据。对于非数据包,主要是发送一些控制信息。
监听成功后通过向 writeCharacteristic写入数据实现与服务端的通信。写入方式如下:
其中:value一般为Hex格式指令,其内容由设备通信的蓝牙通信协议规定;
若写入指令成功则回调BluetoothGattCallback中的onCharacteristicWrite()方法,说明将数据已经发送给下位机;
若发送的数据符合通信协议,则服务端会向客户端回复相应的数据。发送的数据通过回调onCharacteristicChanged()方法获取,其处理方式如下:
通过向服务端发送指令获取服务端的回复数据,即可完成与设备的通信过程;
当与设备完成通信之后之后一定要断开与设备的连接。调用以下方法断开与设备的连接:
源码上传在CSDN上了,有需要的可以借鉴。
=====> Android蓝牙Ble通讯Demo示例源码–扫描,连接,发送和接收数据,分包解包
BLE单次写的数据量大小是有限制的,通常是20字节,可以尝试通过requestMTU增大,但不保证能成功。分包写是一种解决方案,需要定义分包协议,假设每个包大小20字节,分两种包,数据包和非数据包。对于数据包,头两个字节表示包的序号,剩下的都填充数据。对于非数据包,主要是发送一些控制信息。
总体流程如下:
1、定义通讯协议,如下(这里只是个举例,可以根据项目需求扩展)
2、封装通用发送数据接口(拆包)
该接口根据会发送数据内容按最大字节数拆分(一般20字节)放入队列,拆分完后,依次从队列里取出发送
3、封装通用接收数据接口(组包)
该接口根据从接收的数据按协议里的定义解析数据长度判读是否完整包,不是的话把每条消息累加起来
4、解析完整的数据包,进行业务逻辑处理
5、协议还可以引入加密解密,需要注意的选算法参数的时候,加密后的长度最好跟原数据长度一致,这样不会影响拆包组包
一般都是Android版本适配以及不同ROM机型(小米/红米、华为/荣耀等)(EMUI、MIUI、ColorOS等)的权限问题
蓝牙开发中有很多问题,要静下心分析问题,肯定可以解决的,一起加油;
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)