单片机驱动modem上网传输方法和相关智能电梯远程监控系统的制作方法
【专利摘要】本发明的实施例公开了一种利用单片机驱动MODEM上网传输的方法,其中单片机与调制解调器MODEM连接,在单片机中实现点到点传输协议PPP,由单片机驱动调制解调器通过公共电话网拨号方式连接到互联网服务提供商ISP。本发明的实施例还公开了一种智能电梯远程监控系统,包括现场端数据采集、初步处理、数据远程传输部分;远程监控系统的关键技术端数据传输部分;远程监控系统的关键技术端数据处理、存储和诊断部分,所述远程监控系统的关键技术端数据传输部分利用上述利用单片机驱动MODEM上网传输的方法与远端监控中心的数据处理和存储部分进行远程上网连接;所述数据处理和存储部分采用面向对象技术和数据库技术对现场采集到的数据进行存储、分析和处理。
【专利说明】
单片机驱动MODEM上网传输方法和相关智能电梯远程监控系统
技术领域
[0001]本发明涉及远程传输和监控领域,更具体而言,本发明涉及单片机驱动MODEM上网传输方法和智能电梯远程监控系统。
【背景技术】
[0002]在工业、国防、科研等许多应用领域,监控系统正发挥着越来越大的作用。从广义上说,传统的监控系统包括以单片机为核心的信息采集与控制模块、以PC机为核心的自动测试模块和目前发展势头迅猛的专家系统。传统监控系统的任务是对生产过程或某些物理量进行监测与控制,因此,监控系统包括监测和控制两大部份,监控系统的实现和开发也就是对这两部分的软件和硬件的设计。简单地说,监测就是由计算机拾取前向通道的各种被测数据和信息,主要包括传感器采集信号,信号调节和放大以及模数(A/D)转换等过程。控制就是计算机对所拾取的信号进行相应的计算、处理之后再将已处理过的信号通过后向通道输出给被控设备,主要包括数模转换(D/A),功率放大,设备驱动等过程。
[0003]传统电梯远程监控系统的分析监控系统,早在电器时代之初就已经广泛的应用于各种设备现场,它是提高产品质量,降低成本,减少环境污染的前提和基础。
[0004]电梯远程监控系统相对起步较晚,其控制系统已经比较成熟,但是其监测系统则相对落后,现有的电梯监测系统基本上是在电梯运行现场进行数据的采集、处理等过程。电梯运行状况的检测是定时地由有关部门进行统一的检查,远程监控系统的关键技术不能对已售产品进行实时的监控,这不仅造成了人力、物力和财力上的浪费,同时也使远程监控系统的关键技术的产品数据的收集来源仅限于远程监控系统的关键技术内部和产品试验所得,使远程监控系统的关键技术不能及时、准确的掌握其产品的售后情况,不利于纠正产品的不足之处和进行后期产品的开发,同时也给电梯用户造成了不便。
[0005]传统电梯监控系统的问题主要表现在以下几个方面:
[0006](I)监测部分智能水平低。在传统的电梯监控系统中,其监测部分相对来讲结构简单,功能单一,只是由计算机从前向通道拾取信号,主机的信息处理能力较低。
[0007](2)故障自诊断、处理能力较薄弱。传统的电梯监控系统监测部分功能不够完善,缺乏一个对所有同类产品的运行状态信息进行综合分析、处理和故障诊断的模块,使得监测部分与控制部分衔接不太紧密,造成整个环路不能闭合,影响了监控系统的功能完整性。
[0008](3)远距离监控的限制。过去,由于网络技术没有广泛的使用,造成了传统监控系统只能进行现场监控而不能进行远程监控的弊端。当今社会,网络技术日新月异,对于电梯远程监控系统产品分散的特点,在技术上来讲,已经具备了对电梯监测系统进行改进的条件,所以,不论对于电梯远程监控系统还是其它领域的远程监控系统的关键技术,充分利用先进的网络技术对自身技术水平进行改革已经势在必行。
[0009]随着市场经济的进一步深化,各高新科技技术的竞争也日趋激烈,这对远程监控系统的关键技术的生产效率、生产质量、产品更新、售后服务质量等方面都提出了更高的要求和更大的挑战。鉴于远程监控技术在工业领域的发展,今后的远程监控系统将更注重于网络技术的应用,并且其智能化的程度也将会是一个技术热门。有专家预测,今后监控系统的发展将会集中在网络技术的应用和智能化程度的提高两个主要方面。
[0010]鉴于此,本发明提出了对电梯进行远程监控的思想,让远程监控系统的关键技术能迅速、准确、及时地对已售电梯进行监测与控制。
【发明内容】
[0011]本发明提供了一种利用单片机驱动MODEM上网传输的方法,其中单片机与调制解调器MODEM连接,在单片机中实现点到点传输协议PPP,由单片机驱动调制解调器通过公共电话网拨号方式连接到互联网服务提供商ISP。
[0012]优选地,所述单片机的串行口和I/O总线通过电压转换芯片转换成RS232接口标准信号后,与调制解调器相连。
[0013]优选地,所述单片机与调制解调器相连时只需要以下四个信号连接线:串口发送、串口接收、载波检测和终端准备。
[0014]优选地,所述单片机通过串行口控制调制解调器拨打ISP的电话号码,号码拨通后,调制解调器转为在线模式,单片机经由串行口通过调制解调器将数据传输至远端的ISP主机。
[0015]优选地,所述单片机通过串行口控制调解解调器包括:向调制解调器发出初始化命令、发出拨号命令、端口与ISP的连接、发送数据、检测调制解调器的在线状态。
[0016]优选地,在拨号成功连接后,ISP首先返回一个papreq数据帧,微控制器发送一个空Icp req帧以强迫ISP进行协议协商阶段;随后ISP发送Icp设置帧,微控制器拒绝所有的设置并请求验证模式,ISP选择chap或pap方式验证,这里只接受pap方式,然后进行pap验证用户名和密码过程,如果成功,ISP会返回IPcp报文设置IP地址,此时,完成了与ISP的协商过程,可以通过向ISP发送IP报文的方式连接互联网传送数据,选用IP承载udp协议发送数据。
[0017]本发明还提供了一种智能电梯远程监控系统,包括现场端数据采集、初步处理、数据远程传输部分;远程监控系统的关键技术端数据传输部分;远程监控系统的关键技术端数据处理、存储和诊断部分,所述远程监控系统的关键技术端数据传输部分利用上述利用单片机驱动MODEM上网传输的方法与远端监控中心的数据处理和存储部分进行远程上网连接;所述数据处理和存储部分采用面向对象技术和数据库技术对现场采集到的数据进行存储、分析和处理。
[0018]根据在下文中所描述的附图和实施例,本发明的这些和其它方面将是清楚明白的,并且将参考在下文中所描述的实施例而被阐明。
【附图说明】
[0019]图1为根据本发明实施例的微控制器与MODEM的连接图。
[0020]图2示出了根据本发明实施例的软件层次结构图。
[0021]图3(a)示出了根据本发明实施例的ppp协议的帧结构。
[0022]图3(b)示出了根据本发明实施例的ppp报文的基本解析过程。
[0023]图4示出了登录互联网服务提供商ISP协商过程的状态转换图。
【具体实施方式】
[0024]本发明的智能电梯远程监控系统是在远程监控系统的关键技术的基础上对电梯现有监控技术的改进,主要融入了远程监控方面的技术。
[0025]根据本发明实施例的智能电梯远程监控系统从总体上分为三大部分:一是现场端数据采集、初步处理;二是数据的远程传输(通过单片机和外围芯片、Modem在PSTN网络上进行数据的传输);三是远程监控系统的关键技术端Intranet进行数据的接收、处理、收集、诊断等。
[0026]在软件设计方面,尤其在单片机对现场所采集的数据进行初步处理上,上述智能电梯远程监控系统采用了较先进的查表法对常见故障进行诊断,以减少远程监控系统的关键技术端的数据接收处理的负荷。并且在现场端的单片机主机上留有大量的I/o 口以方便系统的扩展(如用户可以利用闲置的I/O 口与PC机进行通讯)。
[0027]在数据的远程传输方面,现有的国内外同类技术多采用Internet网进行数据的传输,但Internet网是一个具有多种协议和传输模式的超大型网络,随着该网的急剧膨胀,由于现有技术的限制,该网络在带宽、速度和准确性方面存在一定的缺陷,而且对于一个监控系统来讲,系统越简单,那么其可靠性就越高。鉴于此,本发明在数据传输方面采用PSTN(公共电话交换网)作为传输的网络平台,PSTN是Internet网的一个重要组成部分,也是创建最早的网络之一,其不论在技术上还是在服务上都已经相当成熟,并且它采用相对较单一的协议和数据压缩格式,这为系统的可靠性提供了一定的保障。
[0028]远程监控系统的关键技术端的Intranet在接收数据和进行最终处理方面主要在软件设计方面采用了现今流行的面向对象技术、查表技术、数据库技术等,软件技术的合理采用可以缩短系统的开发周期,提高系统代码的执行效率,有利于系统的升级和扩展,使得远程监控系统的关键技术技术人员在操作时能够一目了然,方便作业。在硬件上采用常用的Intel兼容芯片,在硬件接口上采用标准的RS-232C接口,以方便系统的整体规划和升级。硬、软件的标准化和技术先进化有利于远程监控系统的关键技术的整体技术水平的提高,同时对于产品的推广和系统的升级以及与同类产品的兼容性有相当的促进作用。
[0029]本发明的系统采用合理的软件技术、硬件技术和网络技术对现有的电梯监控系统进行全面改进,以提高数据在采集、传输、处理等方面的准确性、实时性和可靠性。该系统的应用,使远程监控系统的关键技术能够通过该系统对已售的分散在各地的电梯产品进行实时的、准确的监控,一方面方便了远程监控系统的关键技术和用户对电梯运行状况的维护,另一方面也提升了企业对产品资料和数据的收集和处理能力。
[0030]图1为根据本发明实施例的微控制器与MODEM的连接图。
[0031]微处理器一般处理能力较低、程序存储器和数据存储器资源有限,这就使微控制器上网变得非常困难。目前,一般采用微控制器直接驱动网卡芯片的方案。网卡芯片封装了底层的以太网(如ieee802.3),微控制器只需控制网卡芯片并实现传输层与网络层协议(例如tcp、IP)即可以上网。但其缺点是必须应用在已经拥有局域网的地方,且网卡芯片(例如rtl8019等)价格不菲。
[0032]本发明针对微控制器上网的问题,推出一种在微控制器中实现PPP,并通过调制解调器(modem)连接到互联网服务提供商ISP(internet service provider)实现上网的解决方案:微控制器控制modem拨号连接到I SP上,然后根据ppp协议(point to pointprotocol)进行通信协商、密码认证等握手过程,如果成功就可以通过ISP上网传送数据。
[0033]这种方案的优点在于:(I)可以应用于任何覆盖电话网的地区,适用于广大偏远地区;(2)硬件实现比较简单,程序比较短小;(3)只需外接电话线,安装简便。
[0034]本发明微控制器拨号上网方案中的硬件连接非常简单,只需使用微控制器的标准串行口和i/ ο总线与modem相连。为了使程序更为简化,在硬件设计中可以不使用modem的硬件握手信号。最终只需四根连接线来控制modem(如图1所示):串口发送(txd)、串口接收(rxd)、载波检测cd(carrier detect)和终端准备dtr(data aerminal ready)信号。cd信号可以检测modem是处于数据传送状态还是at命令传送状态。drt信号用来通知modem传送工作已经结束。微控制器的串行口和i/o 口不能直接与标准modem相连,需要使用电压转换芯片,如max232等,转换为rs232标准。为了方便软件编程,需要针对硬件编写一些底层驱动程序。首先是串行口的驱动函数:打开串口(opencomm)、关闭串口(closecomm)、读串口数据(readcomm)、写串口数据(writecomm)等。然后在这些串口函数的基础上编写modem的驱动函数。单片机通过串行口控制modem,进行拨号、设置等操作。控制方法采用at命令,例如:atdt命令用来拨号、atv命令控制modem返回值的格式等。控制modem拨打ISP的电话号码后,modem就转入在线模式(on-1 ine),此时微控制器向串行口发送的所有数据都会直接传送给ISP主机。同样ISP主机的回答也传回微控制的串行口。可以说此时的modem和电话线建立了一个从微控制器到ISP的透明数据连接。当数据传送完成需要断开连接时,微控制器通知modem结束会话,并从在线模式转回普通的命令模式。这可以通过置高modem的dtr线完成。同时,处于在线模式下,微控制器也要不断检测Cd线是否处于高电平,当线路由于异常断开时,Cd线会回复到平常的低电平。根据这些操作,编写modem驱动函数:(l)m0dem初始化函数(modeminit) ; (2)拨号函数(modemdial) ; (3)断开与 13卩连接(1110(161]111&呢卯);(4)检测modem是否处于在线状态(modemonline)等。这些底层的驱动函数将会使上层协议的编写很方便;更重要的是,它提供了一个硬件抽象层。当底层硬件改动时,只需要对底层的驱动参数改动,而上层函数的代码不变。
[0035]图2示出了根据本发明实施例的软件层次结构图。程序中的所有代码都由c语言编写,采用分层结构,从底到上分别为:串口驱动层、modem驱动层、ppp协议层、IP协议层、udp协议层与应用层。上层函数的实现需要应用到底层函数,而底层函数的任务就是为上层函数提供服务,最终完成应用层任务,传送数据。各层的主要函数如图2所示。
[0036]可以看出,为了尽量简化,在传输层使用了udp协议而非tcp协议。其实大多数情况下使用无线连接的Udp协议已经足够,而且会使程序大幅简化。
[0037]为了节省代码空间,软件未使用实时操作系统,例如yc/os等,而是利用多个有了状态机来控制程序的运行。其中最重要的就是modem状态机^odem可以处在两个状态:命令状态和在线状态。当处于命令状态时,串行口接收modem的返回值信息。而当微控制器进行拨号命令之后,modem转而处于在线状态,此时微控制器与ISP直接连接,它们之间的通信要符合PPP报文协议。因此,串行口接收的是PPP报文。在本程序中,串口使用中断接收模式,因此在串口接收中断处理函数中,首先要判断modem是处于命令状态还是在线状态。如果处于在线状态,则要按照PPP报文格式处理。找到一个完整的PPP报文后则通知主循环处理。中断处理程序的总体结构如下:void serialO( )interrupt 4 using 2{//串行口中断处理函数unsigned char c;ea = 0;if(ri){ri=0 ; c = sbuf ; //获得串口 数据 if (modems tate==com)promodemcommand(c) ;//处于命令状态elsepropppreceive(c) ;//处于在线状态,寻找完整的PPP报文}}
[0038]点到点协议PPP(pointto point protocol)是数据链路层协议中的一种,是目前应用最广的一种广域网协议。PPP协议假定两个对等实体间有一个双向全双工的连接,而且数据包按顺序投递,这正好符合串行口的通信方式。PPP协议不需要差错控制、排序和流量控制,易于实现,而且支持对多种高层协议(如IP、tcp、udp)的复用。所以使用ppp拨号上网是微控制器实现internet连接的最佳选择。大部分的ISP也正是通过ppp协议提供网络服务的。PPP协议的帧结构如图3(a)所示。串口中断程序以包起始和结束符来判断是否有完整的PPP包,并对PPP包的内容进行校验以确定数据包的完整性和正确性。然后在主循环中进入PPP报文解报模块,在呼号后初次与ISP通信阶段,系统首先要与ISP进行通信链路的协商,即协商点到点的各种链路参数配置。协商过程遵守lcp( link control protocol)、pap(password authenticat1n protocol)和iPCp(internet protocol control protocol)等协议。其中Icp协议用于建立、构造、测试链路连接;pap协议用于处理密码验证部分;iPCp协议用于设置网络协议环境,并分配IP地址。协商机制用有限状态机模型来实现。一旦协商完成,链路已经创建,IP地址已经分配就可以按照协商的标准进行IP报文的传输了。根据应用的不同,IP报文中可以携带Udp报文也可以是tcp或icmp报文。本系统正是采用udp报文传送数据信息的。数据传输完成后,下位机会向ISP发送Icp的断开连接报文以终止网络连接。值得注意的是,PPP报文、Icp、pap、IP报文与udp报文是互相嵌套的。即ppp报文中嵌入了 IP报文和I cp、pap等报文,而IP报文中嵌入了 udp报文。当ppp报文的协议符为0021时表示嵌入了 IP数据报,当c021时表示嵌入I cp数据报,而为c023表示嵌入pap数据报。
[0039]图3(b)示出了ppp报文的基本解析过程。系统的难点之一是微控制器登陆ISP并与ISP的协商过程,其中需要应用到I cp、pap与i PCp协议。I cp、pap与iPCp协议的帧结构大同小异,最常用的是请求(req)、同意(ack)和拒绝(nak)三种帧。微控制器与ISP协商时,任何一方都可以发送req帧请求某方面的配制,另一方如果觉得配置不能接受会回应nak帧,如果可以接受则回应ack帧。为了节省资源,这里只处理这三种数据帧,其它链路问题都由微控制器在程序控制下自己重新拨号解决。各种配置选项协商好以后,PPP才可以成功登陆。在拨号成功连接后,ISP首先返回一个papreq数据帧,微控制器发送一个空Icp req帧以强迫ISP进行协议协商阶段;随后ISP发送Icp设置帧,微控制器拒绝所有的设置并请求验证模式。ISP选择chap或pap方式验证,这里只接受pap方式。然后进行pap验证用户名和密码过程,如果成功,ISP会返回iPCp报文设置IP地址。此时,就完成了与ISP的协商过程,可以通过向ISP发送IP报文的方式连接互联网传送数据。
[0040]图4示出了登录ISP协商过程的状态转换图。协商完成后进入IP数据报通信阶段。此时,微控制器向ISP发送的所有包含IP报文的ppp报文都会被ISP传送给IP报文内的相应IP地址,而远端所有向微控制器IP地址发送的报文也都会经ISP传送到单片机,从而完成微控制器与远程主机通过互联网的数据传输。为了使程序尽量简化,选用IP承载udp协议发送数据。在程序中实现IP与udp报文的数据结构,向指定的主机IP地址发送udp报文较易实现。
[0041]但应注意,在应用层需要用户实现自己的协议。例如对于远程读表系统,要规定仪表的数据传输协议;根据协议把相应的仪表数据放入udp报文中,传给主机;同时,主机也可以按照协议向单片机发送udp报文。可以利用udp报文的端口号,把不同的报文发送到不同的端口中以方便单片机的解析。经过优化,本系统的软件代码可以精简到6k字节左右,共使用不到300字节的数据存储器。由于程序使用c语言编写,稍加改动就可以在各种系列的微控制器上实现。微控制器通过modem拨号上网技术,可以广泛应用于需要远程传送数据的系统中,特别适合远程抄表、远程监控等领域。
[0042]虽然关于各种实施例和相应的附图描述了公开的主题,但是在适用的情况下,将理解的是能够使用其他类似的实施例或者能够对描述的实施例进行修改和添加用于执行公开的主题的相同、类似、替选或替代的功能而不与其偏离。因此,公开的主题不应该受限于在本文中描述的任何单个实施例,而是应该以根据所附的权利要求的广度和范围被解释。
【主权项】
1.一种利用单片机驱动MODEM上网传输的方法,其特征在于:单片机与调制解调器MODEM连接,在单片机中实现点到点传输协议PPP,由单片机驱动调制解调器通过公共电话网拨号方式连接到互联网服务提供商ISP。2.根据权利要求1所述的智能电梯远程监控系统,其特征在于:单片机的串行口和I/O总线通过电压转换芯片转换成RS232接口标准信号后,与调制解调器相连。3.根据权利要求2所述的利用单片机驱动MODEM上网传输的方法,其特征在于:所述单片机与调制解调器相连时只需要以下四个信号连接线:串口发送、串口接收、载波检测和终?而准备。4.根据权利要求1所述的利用单片机驱动MODEM上网传输的方法,其特征在于:所述单片机通过串行口控制调制解调器拨打ISP的电话号码,号码拨通后,调制解调器转为在线模式,单片机经由串行口通过调制解调器将数据传输至远端的ISP主机。5.根据权利要求4所述的利用单片机驱动MODEM上网传输的方法,其特征在于:所述单片机通过串行口控制调解解调器包括:向调制解调器发出初始化命令、发出拨号命令、端口与ISP的连接、发送数据、检测调制解调器的在线状态。6.根据权利要求5所述的利用单片机驱动MODEM上网传输的方法,其特征在于:在拨号成功连接后,ISP首先返回一个papreq数据帧,微控制器发送一个空Icpreq帧以强迫ISP进行协议协商阶段;随后ISP发送Icp设置帧,微控制器拒绝所有的设置并请求验证模式,ISP选择chap或pap方式验证,这里只接受pap方式,然后进行pap验证用户名和密码过程,如果成功,ISP会返回IPcp报文设置IP地址,此时,完成了与ISP的协商过程,可以通过向ISP发送IP报文的方式连接互联网传送数据,选用IP承载udp协议发送数据。7.—种智能电梯远程监控系统,其特征在于:包括现场端数据采集、初步处理、数据远程传输部分;远程监控系统的关键技术端数据传输部分;远程监控系统的关键技术端数据处理、存储和诊断部分,所述远程监控系统的关键技术端数据传输部分利用根据权利要求1-6中任何一个所述的利用单片机驱动MODEM上网传输的方法与远端监控中心的数据处理和存储部分进行远程上网连接; 所述数据处理和存储部分采用面向对象技术和数据库技术对现场采集到的数据进行存储、分析和处理。
【文档编号】B66B5/00GK106006271SQ201610564833
【公开日】2016年10月12日
【申请日】2016年7月18日
【发明人】尚俊, 阮永成
【申请人】湖北天禾立方智能科技发展有限公司