基于实现功耗较低目的的窄带数据传输终端设计11000字论文_第1页
基于实现功耗较低目的的窄带数据传输终端设计11000字论文_第2页
基于实现功耗较低目的的窄带数据传输终端设计11000字论文_第3页
基于实现功耗较低目的的窄带数据传输终端设计11000字论文_第4页
基于实现功耗较低目的的窄带数据传输终端设计11000字论文_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于实现功耗较低目的的窄带数据传输终端设计度,本数据终端采用了MSM01A天通模块,利用天通卫星通信技文章基于天通卫星、STM32单片机设计出一款数据传输终端,为远海与岸目录 11.2国内外研究状况 1 11.2.2嵌入式网络协议的研究现状 2 21.3本文研究的主要内容 32.终端硬件设计2.1天通终端通信的硬件选型 42.2天通模块的通信接口 62.3STM32单片机的选型 62.4数据传输方式 73.Lwip协议栈的分析3.1Lwip协议特点 93.2Lwip进程模式 93.2.1传统的TCP/IP协议栈进程模式 9 4.2FreeRTOS在STM32上的移植 5.Lwip在FreeRTOS平台下的移植实现5.1移植接口分析 5.2操作系统模拟层的实现 5.2.4文件sys_arch.c的修 5.3硬件驱动层的实现 21 6.2测试过程遇到的问题以及解决方案 6.2.1数据终端收不到平台下发的AT指令 6.2.2PPP拨号失败 7.2展望 中国大陆是一个位于西北太平洋沿岸并且拥有长达18000多千米的大陆海岸线,占地200多万平方千米的海洋渔场和130多万平方千米大陆架面积的地方。而中华民族长期生存繁衍的重要基础则是这些管辖海域。并且我国还可以很便利地进入世界各个大洋,还可以对公海与国际海底区域里的海洋资源进行开发到目前为止,我国的海洋数据传输一般情况下利用的是传统的有线网络传输技术,建设费用比重较大。在途中需要检测有线通信链路的维护情况,当故障发生时故障点一般很难被找到。在用户设定通信网络后,在系统的需求下,通常会增加新的设备,在使用有线传输就可能需要重新布置线路。因此,发展无线网络传输势在必行,不但能更好地节约人力物力,经济效益也能得到显著地提升。海洋的无线通信传输有诸多优点,综合成本低,性能更稳定,从而摆脱线缆的束缚;组网灵活,可扩展性好;维护费用低等。当前运用于海洋的无线通信技术有无线微波通信、基于陆地蜂窝网络的岸基移动通信和卫星通信等。其中,卫星通信是未来无线通信的大趋势,在海洋信息化建设中扮演了十分重要的角色。天通一号卫星作为我国自主研发的通信卫星,具备可靠性、可信赖性以及高性价比,从而很好地解决海洋数据无线传输问题。1.2.1无线数据传输技术的研究现状无线数据传输是现在乃至未来国际社会主流的通信方式,无线数据传输技术将会促进国际社会的数字化、信息化发展。无线数据传输技术大概可以分为两种:第一种是专网无线传输:专网无线传输的具体例子有Wi-Fi、MDS数传电台、2G、3G、4G分别是第二代、第三代、第四代移动信息系统,速度越来越快,目前普及的5G通信技术,它的图像传输的速度快、传输图像的质量以及传输的图像看起来更加清晰明了。通过对智能通信设备的应用,5G通信技术让用户的上网速度可高达10G/s,让用户能够更加快速的上网。在这众多的技术中,传输速度是受开发者重视的主要参数,天通卫星的传输速度也十分优异,作为我国目前在轨运行的通信卫星,传输速率比美国铱星还要快。且2021年刚发射的天通一号03星,将与天通一号01星、02星组网运行,覆盖范围更广,足够为大部分海域用户提供通信服务。因此采用天通通信模块制作无线数据传输终端,并将其应用在海事上,是十分合理的选择。1.2.2嵌入式网络协议的研究现状嵌入式设备的入网,依赖于嵌入式网络协议,目前主流的嵌入式网络协议有uIP、uc/IP、Lwip等。它们各有优点和缺点,应用于不同的应用场合。uIP是一个极小型嵌入式网络协议栈,通常应用于小型的嵌入式设备。在具备TCP/IP协议栈基本功能的基础上,优化了通讯流程。但应用上也具有一定的uc/IP是一个基于uC/OS操作系统的嵌入式网络协议。优点在于支持多种协议,例如PPP协议、嵌入式以太网协议。缺点在于应用层面针对uC/OS操作系统的局限性。Lwip是一款不管有无操作系统的支持都可以运行的LightWeight(轻型)IP协议。Lwip在保持TCP协议主要功能的基础上减少对RAM的占用是它实现的重点,它在运行时只需要十几KB的RAM和40K左右的ROM。虽然Lwip是专门为嵌入式系统开发的精简版、轻量级的网络协议,但是功能还是比较全面的。除此之外,它可以支持传统TCP/IP协议的基本功能外 (IP/ICMP/UDP/TCP),另外还可以支持包括其他一些机制。例如缓冲与内存管理子系统、操作系统模拟层、网络接口、Intemet校验和计算及API接口等机作为数据传输终端的网络协议。针对实时性的要求不同,嵌入式操作系统可分为硬实时操作系统和软实时操作系统。对时间的要求较低的是软实时操作系统,一般应用于智能设备;对时间的要求较高的是硬实时操作系统,主流的硬实时操作系统有Linux、ucLinux、FreeRTOS等。Linux是一个开源的嵌入式操作系统。内置标准的网络协议。用户可针对各自的需求,对内核进行功能上的剪裁、移植。但由于开发的实现是基于命令行或者脚本,造成了开发的门槛高、开发困难。更值得开发者重视的是,Linux内核的抢占式实时特性以及不支持事件优先级,因此Linux不算是严格意义上的实时ucLinux算是精简版的Linux,它具备Linux的大部分功能,是市面上应用较广的操作系统。但和Linux相同,并不算是真正意义上的实时操作系统。FreeRTOS是一种开源、轻量级的实时操作系统,被广泛应用于中小型嵌入式设备,在性能优异的基础上,开发也灵活,具有代码公开、可进行移植、也可裁减、调度策略灵活等特点,能够更方便地移植到各个单片机上实施运行。目前,FreeRTOS在国内的应用领域并不大,但随着时代的发展,相信它的优势也将越来越被开发者重视,因此本终端设计选用FreeRTOS作为实时操作系本论文设计的基于天通一号的窄带数据传输终端,是通过解析天通模块的通信协议给出的设计方法。在硬件设计方面,包括天通模块与STM32开发板。在程序方面,编辑相关的数据传输协议。本论文用六个章节来阐述,每个章节的内容简介如下:第一章,绪论。此章节简明的介绍了海洋资源开发的意义、海洋数据信息化的重要性、天通卫星在海事数据传输的重要地位,并简要概括了本文的研究内容和设计思路。第二章,终端硬件设计。首先,根据海事数据传输的具体需求和场合限制,分析我国天通卫星通信系统的相关技术,对现有的天通通信模块进行选型;其次,简要介绍天通模块的通信接口;最后根据天通模块的特性,对现有的单片机开发板进行选型,简要介绍单片机的基本特性以及数据传输方式。第三章,Lwip协议栈的分析。首先是介绍Lwip协议的特点,其次是介绍Lwip的进程模式。第四章,实现了实时操作系统FreeRTOS的移植。FreeRTOS操作系统内核结构为主要的研究目标。并完成FreeRTOS在STM32开发板上的移植。第五章,Lwip在FreeRTOS平台下的移植实现。第六章,实验测试。主要对数据传输终端进行功能性测试,以及测试过程遇到的问题和解决方案。基带单元为:基带处理芯片:MCP内存芯片:MSCO1A;射频单元为:射频收发芯片:MSR01A;功放芯片为;射频开关为;26M压控振荡器;电源处理与接口单元为:PMU芯片内部集成电源管理单元和CODEC单元;应用接口为:52脚金手指接口;射频接口为:S/BD天线连接器。MSC01A是一款基带芯片并以卫星通信为基础的芯片。MSC01A使用的是高性能低功耗的CMOS技术,采用40nmLP(Low-Power)制造工艺以及364脚功耗仅有0.19mV/MHz,与ARM7TDMI相比改进了30%,并且使用了单周期的乘法和硬件除法和不可分的位操作,实现了对RAM、I/O和寄存器的最优选择的令的密度并实现32位指令性能(与ARM7TDMI的ARM模式比减少了30%—45%的代码量)。然后,Cortex-M3还拥有可以预见的运转时间,终端控制器被镶嵌在内核之中,中断之间的间隔最少可以低至6个CPU周期,然而从低功耗模式唤醒仅需6个CPU周期。到最后,Cortex-M3拥有改进的调节功能,例如串行单步调试和JTAG调试等。Cortex-M3芯片的结构如图2-3所示:STM32单片机与天通模块采用串口通信,传输方式为DMA(Dir然而,CPU通常需要处理大量的事务,如果可以尽可能地减轻CPU的负担,对如图2-4所示:Lwip是一款不管有无操作系统的支持都可以运行的LightWeight(轻型)IP协议。Lwip在保持TCP协议主要功能的基础上减少对RAM的占用是它实现的重点,它在运行时只需要十几KB的RAM和40K左右的ROM,这就是Lwip协这样就可以让Lwip更适合地运用于资源有限的小型平台比如嵌入式系统。为了(1)可以支持多网络接口下的IP转发;(2)支持应用ICMP协议;(3)包含实验性扩展的UDP(用户数据报协议);(4)包含阻塞控制,RTT估算和迅速恢复和迅速转发的TCP(传输控制协(5)提供专门的内部回调接□(RawAPI)来用于增强应用程序的性能;(6)可以选择的Berkeley接□API(多线程情况下);(7)在最新的版本中支持ppp(这特别适合我们的实际应用,避免重新去写(8)新版本中增多了的IPfragment的支持.(9)支持DHCP协议和动态分配IP地址。议的基本功能外(IP/ICMP/UDP/TAPI接口等机制,如此这样,就在很大程度上方便了嵌入式系统的开发。3.2Lwip进程模式3.2.1传统的TCP/IP协议栈进程模式众人周知,传统的TCP/IP协议栈拥有下面两种不同的进程模式。第一种:Lwip使用的进程模式就是将所有层的协议以函数调试用的形式,全部都停实现完成的,并直接调用协议中自带的API函数来完成实现和协议栈通信。的数据都是通过其下层协议来承受记录并进行封装的。Lwip的结构分层如图3-3所示:第一层,为MCU的业务层,这一层是Lwip来提供服务的对就是自己的代码使用Lwip的地方。基本上从这个地方开始就通过netconn或是Lwip_api开始使用Lwip的功能。从典型的TCP客户端应用来看,首先需要通过工欲善其事,必先利其器,在开始学习以及移第三,准备实验所需的平台,这次我们将在STM32F407平台上移植和测试下载的FreeRTOS代码是一个自解压的文件,解压后包括的内容比较丰FreeRTOS-Plus。FreeRTO在FreeRTOS目录之下是FreeRTOS的内核部分,打开FreeRTOS文件夹它在于FreeRTOS/Source目录。在此目录下还包含三个可以选择的文件:本次移植将在IAR平台上进行,首先要创建一个IAR项目。在IAR下创建一个名为pfreertos的项目,并添加Application、Drivers和Middlewares几个组。并在Application下添加EWARM与User组;在Drivers下添加CMSIS与STM32F4xx_HAL_Driver组;在Middlewares下增加FreeRTOS组,具体情况如其次,把相关的FreeRTOS源码拷贝到该项目的目录下面。\FreeRTOSv10.0.1\FreeRTOS\Source目录下的源文件和include文件夹复制粘贴到新建项目的文件夹中。如图4-3所示:图4-3下的三个文件也复制粘贴到新建项目的文件夹。如图4-4所示:文件复制到新建项目的文件夹。如图4-5所示:录下的FreeRTOSConfig.h文件复制粘贴到新建项目的文件夹中。如图4-6所然后,同时把这下文件添加到我们前面建立的pfreertos项目中,其他的例如ST驱动及用户应用也添加到项目中。并将相关的引用目录添加到项目属性中。如图4-7所示:在FreeRTOSConfig.h配置文件中,有如下3个宏定义:#definevPortSVCHandlerSVC_Handler#definexPortPendSVHandlerPendSV_Handler#definexPortSysTickHandlerSysTick_Handler需要在stm32f4xx_it.c文件里,把对应的三个空的函数定义并注释掉。到目前为止,其实编译就已经不会有错误的地方,移植工作也已经完成了。不可否认,在有些其他的基础库也需要使用SysTick时,我们也可以在中断中调用xPortSysTickHandler)函数来实现我们的需求。在基于操作系统平台下的Lwip移植的完成就需要解决两大部分接口的实现。其中一个是Lwip在操作系统模拟层接口部分的实现;另一个则是硬件驱动层的实现。全部的移植框架结构如下图5-1所示。5.2操作系统模拟层的实现在arch文件夹中有操作系统模拟层的代码,而修改这个目录的文件是对其类型、数据结构和字节对齐的相关宏,与之相关的代码如图5-2所示:与此同时由于C语言定义的结构体是4字相对齐的,然而Lwip是在对以免各数据字段在结构体中的偏移量发生不能够预知的改变,代码如图5-3所在此基础上把处理器的大小端模式定义为小端存储模式,也是协议栈内核所必须的。所谓的小端存储模式就是指数据的高字节保存在内存的高地址中,其中在数据的低字节保存在内存的低地址中,这种储存模式把地址的高低和数据位权有效地合并起来了,并且权值高的部分为高地址部分,而权值低的部分为低地址部分,与我们的逻辑方法相同。具体代码如图5-4所示:5.2.3文件sys_arch.h的修改Lwip中使用信号量来实现任务之间的相互排斥与同步使用,应用邮箱来实现任务间数据的传送,仍需要实现多线程,因此就要把操作系统相关的信号量、邮箱和多线程的数据结构和宏预先进行与其相关的定义。由于操作系统中提供了信号量和消息队列的通信方式,而且也没有提供邮箱,所以这里依据消息队列来创设邮箱,用任务来替代线程,再封装成相应形式供Lwip调试使用,与其相关的代码如图5-5所示:首先,邮箱的实现。邮箱是用于来对消息进行传递的,因此就需要保存储备信息,并且大部分的情况下都是用结构体来保存储备的,然后以链表的形式把可能相同信息的多条的结构链接起来。大多数操作系统模拟层都是支持邮箱机制的,在使用时可以直接调试使用,但是这次移植使用的操作系统为FreeRTOS,它本身其实并不支持邮箱机制,所以拟邮箱功能从而支持消息的投放传递,传递到邮箱中内容的指针。实现程序如图5-6所示:再次,是多线程创建函数。在Lwip网络协议中,多线程的运行方式是通过操作系统模拟层中的多线程创建函数来实现的,而FreeRTOS操作系统的创建新任务的函数xTaskCreat来实现具体程序如图5-7所最后,是临界保护函数。在资源互斥的时候,协议栈在对资源访问操作的过程中,会产生新的数据覆盖原来的数据,因此需要体是调用操作系统FreeRTOS中的开关中断,代码如图5-8所示:硬件系统使用的网卡芯片取决了底层驱动程序能否被完成上述步骤之后移植工作完成,开始实验测试第一,由STM32单片机向天通模块发送AT指令,打印结果如图6-1所ATCMDS图6-1发送AT指令第二,AT指令发送成功,反馈也为正常后。由STM32控制天通模块进行PPP拨号入网,打印结果如图6-2所示:pppphasechanged[1]:phase=0pPPconnect[1]:holdoffpppossendconfig[sentLCPConfReqid=0x1<asyncmapOx0><magicOxb01a3720ppposwrite[1]:len=ppp_start[1]:finishsent[LCPConfReqid=0x1<asyncmap0x0><mappposwrite[1]:len=tcpipthread:PACKETrcvdLLCPConfAckid=0x1<asyncmap0x0><magicOxb01a3720><pcomp>ppposwrite[1]:len=netifsetmtu[1]:mtu=1500ppp_send_config[1]pppos_recv_config[1]:in_accm=0pppphasechanged[1]:sent[PAPAuthReq第三,若PPP拨号入网成功后,将会获取到天通卫星分配的IP地址,打印结果如图6-3所示:IPCPConfAckidsifvjcomp[1]:VJcompresshis_ipaddrnetmask=55pppphasechanged[1]:phase=10pppos_netif_output[1]:proto=0x21,len=44图6-3获取到IP地址第四,通过天通模块发送温度、湿度数据(温度、湿度数据为模拟量)。若发送成功,打印发送的温度、湿度数据,打印结果如图6-4所示:PpP_input1:ipinpbufIen=46PpP_input1:ipinpbufIen=46pppos_netif_output[1]:proto=0x21,len=40pppos_netif_output[1]:proto=0x21,sendtotianton:temperature:35humidtcpip_thread:PACKET200076_output[1]:proto=0x_output[i]:proto=0x21,len=71nput[1]:ipinpbuflen=46nput[1]:ipinpbuflen=71temperature:35humidity:43%pppos_netif_output[1]:proto=0x21,len=71sendtotianton:temperature:34.6tcpipthread:PACKET20007624图6-4发送温度、湿度数据第五,利用现有的公共IP平台搭建TCP服务器,由之前天通卫星分配的IPIP地址向公共IP发送温度、湿度数据,并打印数据结果,如图6-5所示:创建tcp服务器成功4连接成功连接已经关闭:4[pcq@iZwz9chr22v1g7oqj3e01kZ由于MSM01A天通模块具有休眠功能,以此降低功耗。当判断进入休眠状态后,处理器会置高B2A_SLEEP信号,并使能A2B_WAKEUP中断。处于休刻处于唤醒状态,也就是置低B2A_SLEEP信号。PPP拨号过程中,若没发生中断,直至获取到天通卫星分配的IP地址,证明PPP拨号入网成功,反之,若发生中断,未获取到IP地址,证明PPP拨号失7.总结与展望本论文以STM32开发板作为窄带数据传输终端的主控芯片,利用终端上的天通模块MSM01A通过天通一号卫星将数据传输到岸基网络,最终进入公网实第一、完成了基于天通一号的窄带数据传输终端的绍了目前天通一号卫星的相关技术与参数,并选择采用天通MSM01A模块来对接卫星网络的方案。实现船舶与岸端的数据传输。第二、分析了基于天通一号的窄带数据传输终端的主要功能模块。介绍了STM32开发板、MSM01A天通通信模块。第三、通过对FreeRTOS实时操作系统的学习,我对FreeRTOS的内核和工作原理有了更深层次的了解,并且完成了FreeRTOS实时操作系统跨硬件平台的移植。在这样的基础上,结合分析了嵌入式网络协议Lwip的协议栈,同时也实现了对FreeRTOS平台下的移植完成。第四、完成了实验设计和验证的测试,其中测试包含了FreeRTOS操作系统移植测试、移植前的硬件平台测试与Lwip协议的移植测试三种测试。7.2展望本论文设计的是一套基于天通一号的窄带数据传输终端。相比传统的海洋数据传输终端,除了实现基本的海洋环境数据传输,还结合我国移动通信卫星——天通一号实现了远程的数据实时显示。但由于卫星信号属于高频短波远距离信号,受环境等影响较大,在不同的环境下测试到的数据可能有所不同,从而难以保证数据传输的准确性和及时性。目前,我国正在发展的“鸿云”天基互联网系统,可实现宽带网络通信。未来,“天通”卫星的窄带通信可与“鸿云”的宽带通信结合应用,将在海洋数据传输方面有质的发展。由于技术和时间限制,本设计尚有许多不足之处,有待改善,可以改善的内容包括以下几个方面:第一、本设计用于远程海洋的环境中,设备的测试是在实验室进行,实验数据暂时缺乏

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论