[资料分享] 基于ARM的远距离便携式无线传输系统

[复制链接]
376|30
 楼主 | 2019-5-24 16:04 | 显示全部楼层 ||阅读模式
基于ARM的远距离便携式无线传输系统

引言

随着测试系统的不断发展,对数据传输系统有了更高的要求,传统的数据传输系统大多采用有线方式,数据的接收终端使用PC机。随着无线通信技术的发展,人们开始用无线来取代有线。但目前的无线领域还存在一些问题,如网络频段受到限制,通信极易受到外界干扰,通信中可能出现丢包或误码,天线高度不能太低等。

本设计实现了一种基于ARM的便携式无线传输系统,相比于笔记本,该系统体积小、重量轻,可便携,当通信受到限制时,可调整通信距离,从而使无线传输系统性能达到最佳。


1 硬件结构

ARM系统主要由ARM处理器、SRAM、SDRAM、Flash、LCD以及一些外围接口组成,主要的外围接口有USB接口、串口、GPIO口、SD卡接口、SPI接口、camera接口等。ARM系统的硬件结构如图1所示,它们是通过AHB系统总线和APB外围总线来进行通信。

20121114051336419032785_副本.jpg

测试系统里已经集成了无线模块,只要在ARM系统中加入无线模块便可实现ARM终端与测试系统的无线数据传输。为了数据接收终端具有便携、灵活、抗干扰强以及方便替换无线模块等优点,无线模块与ARM终端采用USB接口来对接。系统基本结构如图2所示。


2 USB及Linux USB驱动

2.1 USB的基本原理

USB是一种快速、双向的串行接口,它采用总线拓扑结构,其主控制器通过USB集线器可扩展主机的sub端口。USB具有4种传输方式:控制传输、中断传输、批量传输、等时传输。其数据的通信是双向的,数据从主机传向USB设备称下行通信,数据从USB设备传向主机称上行通信。控制权是在host方,不支持设备间的直接通信。

USB设备是由接口和端点构成的,端点是USB通信最基本的形式,它只能往一个方向传送数据。接口是用来绑定到设备上的,一个接口只处理一种USB逻辑连接。一个USB设备可以有多个接口,不同的接口可以代表不同的功能。USB驱动程序是绑定到接口上的。此外,一个USB设备通常又有多个配置的,而且可以在配置之间切换以改变设备的状态;但是一个时刻只能激活一个配置,一个配置通常具有一个或者更多的接口,如图3所示。

20121114051336450272786_副本.jpg


2.2 基于Linux的USB驱动

由于数据记录的USB接口采用FTDI公司开发的FT245 USB芯片,能单芯片实现并行FIFO缓存区的双向数据传输,且支持VCP(虚拟串口)功能。本文以实际应用出发,针对FT245芯片介绍Linux环境下的USB驱动程序。

在Linux的内核源码中有一个USB驱动的框架程序,文件名为usb-skeleton.c,目录在/drivers/usb下,大多数的USB驱动都是在这个框架的基础上修改的。这里针对FT245芯片修改这个USB驱动的框架程序。

USB驱动程序中有两个宏:

这两个宏的值是USB芯片制造商所提供的,VID是芯片制造商ID,PID是芯片的识别码,不同厂商不同型号的USB芯片的VID和PID是不同的,FT245芯片的VID=0x0403,PID=0x6001。、

file_operation是驱动程序中一个很重要的类,它定义了一组常见文件I/O函数,而这些函数的使用类似于普通文件的I/O操作。程序如下:

20121114051336544022788.jpg

这里定义的函数是USB驱动程序的入口点,要打开USB设备时,使用系统函数Open(),系统就会自动调用驱动中的ft245_open()函数。其他函数类似,如write()对应ft245_write(),rcad()对应ft245_rcad(),close()对应ft245_release()。


3 基于USB接口的无线模块

短距离无线传输技术广泛地应用于各个领域,并成为人们工作和生活中不可或缺的一部分,由于它与有线相比有很多优点:方便使用、低功耗、便于携带、无需线缆的束缚等。表1是几种传输技术的优缺点。根据具体应用环境选用特定的无线传输方式。

20121114051336590902789.jpg

由于低功率远距离无线通信技术具有传输距离远、速度快等优点,符合远距离快速传输的需要,所以采用低功率远距离无线模式。该无线模块采用标准低功率远距离射频芯片nRF24L01,通信接口使用FTDI公司研发的USB2.0芯片FT245,微控制器是采用精简指令集的PIC单片机。无线模块系统框图如图4所示。

20121114051336622152790.jpg


4 实验结果与分析

压力测试记录仪头部接高精度压力传感器,内部集成无线模块,天线使用微带天线。ARM开发板使用Linux作为操作系统,使用QT作为开发软件,制作数据读取及显示程序,完成数据的无线传输及显示任务。该系统可取代笔记本完成野外的无线数据传输任务。USB接口的无线模块与天线,在空旷环境下传输距离最远可达800m。在不同的温度、湿度、以及不同的空旷环境下经过多次实验,使用无线传输系统读取的数据与PC机下使用USB数据线读取的数据完全相同,所以实验表明该系统设计是正确、可行的。


5 结语

由于嵌入式设备在测试系统中有着种种优点,越来越受到人们的青睐。此外,随着短距离无线传输的发展,给便携式无线传输设备带来了新的生机。本文介绍的基于ARM的无线传输系统根据实际应用出发,克服了传统的数据传输系统笨重、费时、费力的缺点,且接收到的数据可进行波形显示、数据存储、数据处理等。此外,由于ARM系统强大的网络功能,可通过以太网把数据传输到任何有以太网的地方,具有一定的创新性。



使用特权

评论回复
| 2019-5-25 13:00 | 显示全部楼层
nRF24L01功耗低        

使用特权

评论回复
| 2019-5-25 13:01 | 显示全部楼层
做无线数据传输用的芯片除了NRF24L01还有什么?

使用特权

评论回复

评论

dirtwillfly 2019-5-26 23:15 回复TA
ti也有类似产品,比如cc1100等 
| 2019-5-25 13:01 | 显示全部楼层
选择 无线传输模块NRF905 和 NRF24L01。  

使用特权

评论回复
| 2019-5-25 13:01 | 显示全部楼层
nRF24L01无线模块 无线传输能穿透玻璃吗,能穿透墙吗?

使用特权

评论回复
| 2019-5-25 13:02 | 显示全部楼层
无线模块,误码率比较高,丢包不可避免

使用特权

评论回复
| 2019-5-25 13:02 | 显示全部楼层
nRF24L01无线传输模块是怎么实现数据传输的?

使用特权

评论回复
| 2019-5-25 13:02 | 显示全部楼层
一般的无线传输模块 像nrf2401,nrf24L01,nrf905

使用特权

评论回复
| 2019-5-25 13:03 | 显示全部楼层
NRF24L01无线模块可以用来传输视频数据吗?

使用特权

评论回复
| 2019-5-25 13:03 | 显示全部楼层
nRF24L01无线模块如何将信息传给单片机

使用特权

评论回复
| 2019-5-25 13:03 | 显示全部楼层
nrf24l01最远传输距离是多少  

使用特权

评论回复
| 2019-5-25 13:03 | 显示全部楼层
nrf24l01无线模块可以在不同类型单片机之间通信么?

使用特权

评论回复
| 2019-5-25 13:03 | 显示全部楼层
无线通信通信芯片,采用 FSK 调制

使用特权

评论回复
| 2019-5-25 13:03 | 显示全部楼层
NRF24L01模块一次传输大于32字节的数据该怎么实现

使用特权

评论回复
| 2019-5-25 13:04 | 显示全部楼层
NRF24L01无线模块的收发距离是多少?  

使用特权

评论回复
| 2019-5-25 13:04 | 显示全部楼层
单片机驱动Nrf24L01无线传输数据  

使用特权

评论回复
| 2019-5-25 13:04 | 显示全部楼层
用过nRF905,nRF24L01没用过。

使用特权

评论回复
| 2019-5-25 13:04 | 显示全部楼层
什么无线传输模块传输距离最远

使用特权

评论回复
| 2019-5-25 13:04 | 显示全部楼层
如何用nrf24l01无线模块实现图像传输

使用特权

评论回复
| 2019-5-25 13:04 | 显示全部楼层
nRF24L01无线模块的一个通道传送多少数据

使用特权

评论回复
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 投诉建议 创建版块 申请版主

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式

论坛热帖

在线客服 快速回复 返回顶部 返回列表