当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]Linux和GPRS的数据通讯系统应用介绍

0 引 言

  随着我国电网的不断扩大,输电线路越来越多、越来越复杂,给线路运检人员日常维护和检修造成了一定的困难。输电线路运检人员一般工作在野外,需要用导航系统来识别路径,当遇到危险情况下寻求救援时也需要将自己的位置信息传输给监控中心。而目前普遍使用的手持定位系统和车载定位系统只能实现市区和主干道上的导航,不能满足输电线路运检导航的需要。输电线路运检导航系统的设计有效地解决了目前导航系统的弊端。

  本文重点是解决输电线路运检导航系统的数据传输问题,采用GPRS技术结合Linux操作系统实现。关于应用嵌入式技术和无线移动网络技术的融合,实现远程的数据传输已经出现了不同的研究方案,并充分展现了其广阔的应用领域和前景。

  1 系统总体设计

  整个系统由手持终端和远端服务器构成,系统整体结构如图1所示。手持终端设备通过GPRS无线网络实现与监控中心服务器之间的通信,使得当监控中心接入Internet网络时能够接收来自手持终端的数据,并在监控中心大屏幕上显示。

  


 

  手持终端采用ARM-Linux系统。系统的核心部件ARM(AdvancedRISC Machines)处理器是专门针对嵌入式设备设计的,是目前构造嵌入式系统硬件平台的首选,采用RISC(精简指令集计算机)架构的ARM微处理器具有体积小、低功耗、低成本、高性能的特点。而Linux操作系统可公开获得的源代码已经在性能、功能、驱动开发和可移植性等方面经历了无数的改进、增强及扩充,其操作系统代码可裁减,所以采用嵌入式Linux操作系统可以大大提高系统的可靠性,充分发挥处理器的多任务潜力,提高开发效率和缩短开发周期。

  

 

  2 系统硬件实现

  手持终端硬件结构主要分为以下几个部分:ARM处理器及其扩展接口、触摸屏、电源、GPS模块、GPRS模块等。手持终端硬件平台以S3C2410控制器为核心,其他模块通过它的内部接口,辅助以设计的外部电路来完成相应的功能。

  S3C2410自带3通道UART,这里使用的串口2与GPRS模块相连,如图2所示。由图中可以看出GPB6~8代替了串口2的CTS,DCD和DTR握手信号,因此要在串口驱动中将原来对于串口2“DCD,DTR,CTS”信号操作的地方,改成相应对“GPB6~8”的操作;此外,因为要给MC35i模块“IGT”引脚至少100 ms的低脉冲用于启动MC35i模块,而这个脉冲是通过由软件的方法对-GPB9脚写0和1来产生,因此要在驱动中串口初始化的部分添加这个脉冲产生的代码,用于启动GPRS模块。

  系统使用的嵌入式Linux内核版本是2.6.14,其中串口驱动的部分位于ARM板内核的kernel/driv-ers/serial和/kernel/drivers/char/目录下。其中串口初始化部分位于/kernel/drivers/serial/serials3c2410.c文件中。对其进行如下修改:

  

 

  对于握手信号的处理位于/home/guoguo/kernel/drivers/char/serial.c文件中。主要需要修改的函数有:check_modem_status(),get_modem_info(),block_til_ready(),line_info(),autoconfig()等函数。[!--empirenews.page--]
上述的函数中都有涉及到读握手信号的状态进行判断操作,而读握手信号值主要是通过读modem状态寄存器的值来实现,在内核中modem状态寄存器被定义为UART_MSR,UART_MSR共8 b,从高到低每个bit依次代表的是DCD,RI,DSR,CTS,DDCD,TERI,DDSR,DCTS的值(高低电平),因此要将这些函数中对UART MSR的状态值status进行判断处理前,相应的位赋上正确的值,这个值从相应的GPIO脚来获取。

  3 系统通信程序实现

  在Linux下要完成与挂接在Internet上的通信服务器通信,首先需要经过GPRS模块初始化和GPRS网络连接,然后才能使用TCP/IP协议进行数据传输。

  GPRS模块初始化程序功能:实现MC35i模块初始化并完成MC35i与S3C2410的逻辑连接。在该程序内部使STB选通信号变为高电平,并持续规定时间,然后恢复成低电平,完成对MC35i的初始化工作,紧接着通过有关控制信号实现S3(22410与MC35i的逻辑连接。初始化程序可直接在Linux命令行下执行命令In-smodigto即可完成。

  GPRS网络连接程序功能:使Mc35i以某种通信协议连接到GPRS网络上。网络连接使用第三方提供的内置PPP通信协议的软件,其命令如下:

  /connect

  当连接成功后,由于GPRS网络通过中国移动网关连接到了Internet网,因此就可以利用TCP/IP协议与Internet上的任何IP地址进行通信了。

  由于Linux操作系统已内置TCP/IP协议栈,因此可以直接使用套接字编程实现TCP/IP的数据传输。套接字的基本模式是C/S(客户/服务器),内置GPRS模块的设备工作在客户模式,而远程Internet网上的通信服务器工作在服务器模式。客户端程序基本流程是:创建套接字,绑定套接字到已知端口上,然后请求连接,最后调用数据收发函数进行数据的发送。在客户端通信程序执行前,服务器端的程序必须完成初始化并开始侦听。

  客户端程序如下:

  

 

  

[!--empirenews.page--]
4 监控中心软件设计

  监控中心程序负责整个工作区域画面的显示,特殊区域划分的绘制和管理以及对所有运检人员的跟踪。根据电力部门对各工作区域的特殊区域划分,将其用不同的颜色显示,方便监控人员的监视及管理。

  监控中心软件利用MapXMobile控件实现GIS的基本功能,以Microsoft公司的可视化开发环境VC为开发平台,进行二次开发。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

为了满足日益增长的数据处理需求,铁威马NAS推出了全新的性能巅峰2024年旗舰之作F4-424 Pro,并搭载了最新的操作系统--TOS 6。这款高效办公神器的问世,无疑将为企业和专业人士带来前所未有的便捷与效率。

关键字: 存储 Linux 服务器

交换机,作为现代信息技术基础设施的关键组件,在计算机网络架构中占据着核心地位。它是数据通信和信息交换的重要枢纽,负责在局域网(Local Area Network, LAN)内部实现设备间高速、智能的数据传输与连接管理。...

关键字: 交换机 数据通讯

双系统将是下述内容的主要介绍对象,通过这篇文章,小编希望大家可以对双系统的相关情况以及信息有所认识和了解,详细内容如下。

关键字: 双系统 Windows Linux

安装Linux操作系统并不复杂,下面是一个大致的步骤指南,以帮助您完成安装。1. 下载Linux发行版:首先,您需要从Linux发行版官方网站下载最新的ISO镜像文件。

关键字: Linux 操作系统 ISO镜像

计算机是由一堆硬件组成的,为了有限的控制这些硬件资源,于是就有了操作系统的产生,操作系统是软件子系统的一部分,是硬件基础上的第一层软件。

关键字: Linux 操作系统 计算机

Linux操作系统是一套免费使用和自由传播的类Unix操作系统,通常被称为GNU/Linux。它是由林纳斯·托瓦兹在1991年首次发布的,并基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Lin...

关键字: Linux 操作系统

所谓进程间通信就是在不同进程之间传播或交换信息,它是一组编程接口,让程序员能够协调不同的进程,使之能在一个操作系统里同时运行,并相互传递、交换信息;还可以让一个程序能够在同一时间里处理许多用户的需求。

关键字: Linux 进程通信 编程接口

串口通信作为一种最传统的通信方式,在工业自动化、通讯、控制等领域得到广泛使用。

关键字: Linux 串口通信 通讯

GPRS通信模块是采用高性能工业级无线模块及嵌入式处理器,以实时操作系统作为软件支撑平台,内嵌自主知识产权的TCP/IP协议,为用户提供高速,稳定可靠,永远在线的透明数据传输通道。

关键字: GPRS 通信模块 处理器

2023年11月16日: MikroElektronika(MIKROE) ,作为一家通过提供基于成熟标准的创新式硬软件产品来大幅缩短开发时间的嵌入式解决方案公司,今天宣布推出一款基于单线设备的软硬件开源解决方案Cli...

关键字: 嵌入式 Linux 操作系统
关闭
关闭