当前位置:文档之家› 基于SOCKETt和PLC的远程控制系统

基于SOCKETt和PLC的远程控制系统

基于SOCKETt和PLC的远程控制系统
基于SOCKETt和PLC的远程控制系统

1引言

随着Internet的普及和远程控制策略的完善,基于Internet的远程控制成为可能。基于公众网络(Internet)的远程控制通过廉价的TCP/IP和Ethernet连接克服了工业网络的弊端,大大降低了网络的建设与维护成本,提高了已有设备的利用效率和联合生产能力,并广泛地延伸人类的工作空间。目前国际上已经成功地应用于远程机器人控制,满足在空间、海洋和医学显微环境中的特殊需求[3]。

Ferrel于1965就提出了在网络控制中时变的网络时延问题。华盛顿大学的T.J.Tarn教授与K.Brady是基于Internet机器人远程控制第一人。Wakita等人提出“智能化监视”远程机器人控制系统,指出低带宽、需求的重要性。Bejczy等人提出远程控制中“虚拟机器人”的概念。Kuk-Hyun Han等人进行机器人系统在KAIST 与UC Davis之间的Internet远程控制实验,使用由Java语言编制的GUI监视机器人的状态。Ren C. Luo等人实现了简单迷宫中多障碍存在条件下机器人自动路径寻优,该实现是远程控制与智能控制两种先进控制手段的典型结合。Rovetta等人使用优化的通讯媒介混合进行远程外科手术。德国空间研究项目——ROTEX系统是公认的网络远程控制成功范例。它采用多个超前Kalman滤波器作预测,1993年装备于哥伦比亚航天飞机上。目前在国内还没有对基于Internet的网络远程控制的系统性研究[4]。

原来的基于公用电话网的远程控制系统[6],虽然实现了双向传输,但是传送/接受速率太低。基于无线寻呼网络为基础的远程控制系统虽然传输速率较高,但只能单项传输,不能进行反馈。公用电话网和无线寻呼网,还由于网络覆盖情况等限制,不能应用到家庭。本文设计的基于socket和plc的远程控制系统,克服了以上两个网络的缺陷。本文在Winsock 的基础上采用 TCP/IP 传输控制协议来完成数据的远程通信。由于TCP/IP协议组是为跨越局域网和广域网环境的大规模互联网设计的,因此,利用因特网为传输媒介,满足了远程控制系统应用到家庭上时,对网络覆盖范围的需求。另外,由于控制信息在因特网上传输时具有较快的速率,因此可以实现实时监控和实时控制。本系统在因特网上还可以实现信息反馈,使系统更加稳定、健全,实现一个完整的远程控制系统。用PLC作为本系统的可编程控制器,是因为PLC可以通过通信联网与服务器相连,实现分散控制,集中管理。PLC内有成百上千个可供使用的编程元件,有很强的功能,可以实现非常复杂的控制功能,具有很高的性能价格比[2]。

本设计的结构图,如下图所示:

客户端1

客户端2 客户端3 服务器

PLC

风扇

热水器

空调

反馈信

图1-1控制系统结构图

2 远程控制系统硬件部分及通信相关协议

2.1 PLC简介

PLC主要由CPU模块、输入模块、输出模块和编程器组成。

a. 中央处理单元(CPU)

中央处理单元(CPU)是PLC的控制中枢。它按照PLC系统程序赋予的功能接收并存储从编程器键入的用户程序和数据;检查电源、存储器、I/O以及警戒定时器的状态,并能诊断用户程序中的语法错误。当PLC投入运行时,首先它以扫描的方式接收现场各输入装置的状态和数据,并分别存入I/O映象区,然后从用户程序存储器中逐条读取用户程序,经过命令解释后按指令的规定执行逻辑或算数运算的结果送入I/O映象区或数据寄存器内。等所有的用户程序执行完毕之后,最后将I/O映象区的各输出状态或输出寄存器内的数据传送到相应的输出装置,如此循环运行,直到停止运行。

为了进一步提高PLC的可靠性,近年来对大型PLC还采用双CPU构成冗余系统,或采用三CPU的表决式系统。这样,即使某个CPU出现故障,整个系统仍能正常运行。

b.输入(Input)模块和输出模块(Output)

输入(Input)模块和输出模块(Output)简称为I/O模块,是联系外部现场设备和CPU模块的桥梁。输入模块用来接收和采集输入信号,开关量输入模块用来从按钮、选择开关、数字拨码开关、限位开关、接近开关、压力继电器等来的开关量输入信号。模拟量输入模块用来接收电位器,测速发动机和各种变送器提供的连续变化的模拟量电流电压信号。开关量输出模块用来控制接触器、电磁阀、指示灯数字显示装置和报警装置等输出设备,模拟量输出模块用来控制调节阀,变频器等执行装置[5]。

c.编程器

编程器用来生成用户程序,用它来进行编辑、检查、修改和监视用户程序的执行情况。

使用编程软件可以在计算机的屏幕上直接生成和编辑梯形图和指令表程序,并可以实现不同编程语言之间的互换。程序被编译后下载到PLC,也可以将PLC中的程序上传到计算机。

2.2 RS-232C协议

RS-232-C是美国电子工业协会EIA(Electronic Industry Association)制定的一种串行物理接口标准。RS是英文“推荐标准”的缩写,232为标识号,C表示修改次数。RS-232-C总线标准设有25条信号线,包括一个主通道和一个辅助通道。

在多数情况下主要使用主通道,对于一般双工通信,仅需几条信号线就可实现,如一条发送线、一条接收线及一条地线。

RS-232-C标准规定的数据传输速率为每秒50、75、100、150、300、600、1200、2400、4800、9600、19200波特。

RS-232-C标准规定,驱动器允许有2500pF的电容负载,通信距离将受此电容限制,例如,采用150pF/m的通信电缆时,最大通信距离为15m;若每米电缆的电容量减小,通信距离可以增加。传输距离短的另一原因是RS-232属单端信号传送,存在共地噪声和不能抑制共模干扰等问题,因此一般用于20m以内的通信。一般个人计算机上会有两组 RS-232 接口,分别称为 COM1 和 COM2。

2.3 TCP/IP协议

TCP/IP(传输控制协议/网际协议)是互联网中的基本通信语言或协议。在私网中,它也被用作通信协议。当用户直接网络连接时,用户的计算机应提供一个TCP/IP 程序的副本,此时接收所发送的信息的计算机也应有一个TCP/IP程序的副本。

TCP/IP是一个两层的程序。高层为传输控制协议,它负责聚集信息或把文件拆分成更小的包。这些包通过网络传送到接收端的TCP层,接收端的TCP层把包还原为原始文件。低层是网际协议,它处理每个包的地址部分,使这些包正确地到达目的地。网络上的网关计算机根据信息的地址来进行路由选择。即使来自同一文件的分包路由也有可能不同,但最后会在目的地汇合。 TCP/IP使用客户端/服务器模式进行通信。TCP/IP通信是点对点的,意思是通信是网络中的一台主机与另一台主机之间的。TCP/IP与上层应用程序之间可以说是“没有国籍的”,因为每个客户请求都被看做是与上一个请求无关的。正是它们之间的“无国籍的”释放了网络路径,才是每个人都可以连续不断的使用网络。许多用户熟悉使用TCP/IP协议的高层应用协议。包括万维网的超文本传输协议(HTTP),文件传输协议(FTP),远程网络访问协议(Telnet)和简单邮件传输协议(SMTP)。这些协议通常和TCP/IP协议打包在一起。使用模拟电话调制解调器连接网络的个人电脑通常是使用串行线路接口协议(SLIP)和点对点协议(P2P)。这些协议压缩IP包后通过拨号电话线发送到对方的调制解调器中。与TCP/IP协议相关的协议还包括用户数据报协议(UDP),它代替TCP/IP协议来达到特殊的目的。其他协议是网络主机用来交换路由信息的,包括Internet控制信息协议(ICMP),内部网关协议(IGP),外部网关协议(EGP),边界网关协议(BGP)。

2.4客户端/服务器端(C/S)通信

Client(客户端) Server (服务器端) PLC

图2-1 控制信息流程图

如图2-1 客户端和服务器端之间通过Internet进行通信,采用了业界标准的协议组(TCP/IP)。因为(TCP/IP)协议组是为跨越局域网和广域网环境的大规模互联网络设计的,因此,在互联网中进行远程控制,需采用(TCP/IP)协议组[7]。

所有的网络在传输协议上都是分层的,层的集合通常称为栈。应用程序跟最高层通话,最底层则跟网络通话。图2-2显示了客户端和服务器端TCP/IP协议栈的结构[9],每一层在逻辑上与另一端相对应的层进行连接和通信;物理数据是从协议栈的上部传送到底部,通过网络传输到另一端协议栈的底部,然后再从栈的低端往上传送到对应的层。图中右边是服务程序,左边是客户程序,可以把基于HTTP协议的WWW服务器程序认为是服务程序,把自己计算机上的浏览器程序认为是客户程序。

电视冰箱空调

图2-2 TCP/IP 协议栈的结构

2.5 服务器和PLC 之间通信

PLC 与服务器的comm 端口进行通信,采用了RS-232C 串行通信方式,PLC 需安装FX 2N —232—BD 通信用功能扩展板,硬件接线如图2-3所示。RXD ,TXD 和SG 分别是接收端、发送端和信号公共线。

TCP IP TCP

IP

HTTP 客户

HTTP 客户 以太网驱动程序 以太网驱动程序

应用层 传输层 网络层 链路层

232-BD 计算机(comm)

计算机和PLC 之间的数据流有三种形式:计算机从PLC 中读数据;计算机向PLC 写数据和PLC 向计算机写数据。

a.计算机读PLC 的数据

计算机从PLC 中读取数据的过程分为三步:

(1) 计算机向PLC 发送读数据命令。

(2) PLC 接收到命令以后,执行相应的操作,将计算机要读取的数据发送给

它。

(3) 计算机在接收到相应的数据后,向PLC 发送确认响应,表示数据已经收

到。

b.计算机向PLC 写数据

计算机向PLC 写数据的过程分为两步:

(1) 计算机首先向PLC 发送写数据命令。

(2) PLC 接收到写数据命令以后,执行相应的操作,执行完成后向计算机发

送确认信号,表示写数据操作已完成。

c.PLC 发送请求式(on-demand )数据给计算机

PLC 直接向上位机发送数据,计算机收到后进行相应的处理,不会向PLC 发送确认信息[8]。

RXD TXD SG RXD TXD SG

图2-3 串口通信结构

3 远程控制系统软件部分

3.1 服务器端与客户端通信编程

3.1.1 采用VC++下的MFC框架编程

MFC框架定义了应用程序的轮廓,并提供了用户接口的标准实现方法。所以我们要做的就是通过预定义的接口把具体应用程序特有的东西填入这个轮廓。Microsoft Visual C++提供了相应的工具来完成这个工作:AppWizard可以用来生成初步的框架文件;资源编辑器用于帮助直观地设计用户接口;ClassWizard用来帮助添加代码到框架文件;最后进行编译[1]。

MFC提供了两个用于WinSock编程的类:CAsyncSocket和CSocket,它们避免了程序被挂起的可能,使得应用程序更高效。例如:通过套接字发送一个字符串到另一台主机,我们可以调用socket的Send()函数,此函数尝试发送数据,但如果套接字没有准备好并在等待则Send()就返回;当套接字准备好时,一个消息发往套接字窗口,并由该窗口捕获消息并发送数据,这样就实现了异步Winsocket通信。此外,MFC还把复杂的Winsock API封装到类里,这使得编写应用程序更加容易。

3.1.2 客户端开发整体流程

Sockets的大部分工作是基于连接的:两个应用程序在每一端使用一个套接字形成一个连接,此后应用程序沿着此连接发送及接收数据。WinSock支持两种类型的套接字:流式套接字(SOCK_STREAM)和数据包套接字(SOCK_DGRAM)。流式套接字提供了一个面向连接的,可靠的,数据无错的,无重复发送的及按发送顺序接收数据的服务。流式套接字使用传输控制协议(TCP)。当用户想发送大批量数据时或想让发送的数据按顺序无重复的到达目的地时,使用流式套接字是最方便的。

客户端程序的编写过程如下:

(1)创建一个基于对话框的项目Client。

(2)去掉Ok和Cancel两个按钮,增加IDC_BUTTON_CONNECT(连接)、IDC_BUTTON_EXIT(关闭)、IDC_BUTTON_SEND(空调开)等按钮,增加Edit控件IDC_EDIT_IPADDR(用来输入IP地址)和IDC_EDIT_PORT(用来输入端口号)。

(3)CAsyncSocket类用DoCallBack()函数处理MFC消息,当一个网络事件发生时,DoCallBack()函数按网络事件类型:FD_READ、FD_WRITE、FD_ACCEPT、FD_CONNECT分别调用OnReceive()、OnSend()、OnAccept()、OnConnect()函数。由于MFC把这些事件处理函数定义为虚函数,所以要生成一个新的C++类以重载这些函数,具体做法如下:以Public方式继承CAsyncSocket类,生成新类MySocket;为MySocket添加虚函数OnReceive()、OnConnect()、OnSend()。

3.1.3 创建CAsyncSocket对象,生成套接字

在使用一个套接字以前必须创建它,这个工作分为两步:首先构造一个CAsyncSocket对象,接着调用CAsycSocket类的成员函数Creat()来创建底层的套接字。

CAsyncSocket::Creat()函数的声明如下:

BOOL Creat(

UINT nSocketPort=0,

Int nSocketType=SOCKET_STREAM,

long lEvent=FD_READ|FD_WRITE|FD_OOB|FD_ACCEPT|FD_CONNECT|FD_CLOSE LPCTSTR lpszSocketAddress=NULL

);

其中,第一个参数nSocketPort指定一个分配给套接字的端口号,默认值为0。在很多情况下,特别是在服务器应用程序中,用户要明确地分配一个公认的的端口号给套接字,这个端口一旦确定就不应该随意改动,因为客户端应用程序可以使用这个端口和服务器应用程序相连接。

本程序中创建套接字的过程如下:

首先创建CAsyncSocket对象m_clientSocket;

再由m_clientSocket调用CAsyncSocket的成员函数Creat();

m_clientSocket.Creat(0,SOCK_STREAM,FD_CONNECT);

3.1.4 套接字与服务器连接

使用流式套接字就存在一个在客户端和服务器端建立连接的过程,只有在客户端和服务器端之间建立了连接,套接字才能进行数据传输工作。

客户端应用程序的流式套接字可以使用Connect()成员函数来和服务器端进行连接。Connect()成员函数,实际上是向服务器发出一个连接请求,这个连接请求如果被服务器接受,则两端的链接顺利实现;如果连接请求得不到响应,那么连接无法建立。对于异步事件,CAsyncSocket对象使用通知回调(notification callback)。在这种情况下,如果Connect()成员函数不能得到立即响应,它将返回FALSE。无论Connect()成员函数调用成功与否,在结束调用之后,OnConnect ()事件处理函数都将被调用。

本程序中套接字与服务器连接的过程如下:

m_clientSocket.Connect(m_szServerAdr,m_szPort);

其中m_szServerAdr表示主机名,m_szPort指定连接的端口号。

3.1.5 服务器接受客户端的连接

对于服务器端应用程序,为了能够获得客户端的请求,必须创建一个专门的服务器套接字来监听是否有连接请求。在服务器端,用户创建了套接字对象后,可以调用Listen()成员函数来监听连接请求[14]。

本程序中服务器接受客户端连接的过程如下:

m_srvrSocket.Listen( 2 );

其中参数2指定了WinSock在请求被接受以前或WinSock开始试图向请求连接的客户机返回WSAENCONNECTREFUSED之前,等待队列中最大的连接请求数为2。

为了接受客户端的请求,服务器端应用程序可以调用Accept()成员函数[11]。

Accept (*pSocket)

对象pSocket是一个CAsyncSocket对象,它是用来和客户端套接字建立连接的服务器套接字,在使用这个对象之前,用户不需要调用Creat()成员函数来构建底层的套接字,在Accept()成员函数的调用过程中,函数本身会处理。Accept()成员函数一般在OnAccept()事件处理函数中被调用。

3.1.6 发送并接收流式数据

一旦在服务器和客户端之间建立了连接,数据就可以通过套接字被传递了。从流式套接字发送数据,使用CAsyncSocket类的Send()成员函数;接受数据则使用Receive()成员函数[12]。

本程序中发送流式数据过程如下:

Send(m_szBuffer,m_nLength,0);

其中m_szBuffer是一个缓冲区的指针,参数nBufLen制定了该缓冲区的长度。在Send()成员函数,该缓冲区存放了要发送的数据。

本程序中接收流式数据过程如下:

Receive(m_szBuffer,4096*sizeof(char),0)

其中m_szBuffer是一个缓冲区的指针,参数4096*sizeof(char)制定了该缓冲的长度。在Reiceive()函数,缓冲区用来存储将要接收的数据。

3.1.7 关闭套接字

结束了数据传输工作之后,在关闭应用程序之前,应该调用CAsyncSocket类的成员函数Close()来释放与套接字有关的系统资源。Close()成员函数也可以在CAsynSocket对象被删除时由该类的析构函数来调用[13]。

本程序中客户端关闭套接字过程如下:

m_clientSocket.Close();

客户端运行后如下图所示:

图3-1 远程控制客户端界面

服务器端运行后如下图所示:

图3-2 远程控制服务器端界面

3.2 服务器端与PLC通信编程

MSComm(Microsoft Communications Control)控件是Microsoft公司提供方

的用于简化Windows环境下串行编程的ActiveX控件,它为应用程序提供了通过串行接口收发数据的简便方法。

MSComm控件的常用属性:

SetCommPort:设置并返回通信端口号。

SetSettings:设置并返回波特率、奇偶校验、数据位、停止位参数。其中字符n、o、e分别代表无校验,奇校验和偶校验。

SetPortOpen:设置并返回通信端口的状态。设置为True时,打开端口;设置为False时,关闭端口。

SetInputModel:设置从从缓冲区读取数据的格式,设为0时为字符串格式(Text);设为1时为二进制格式(Binary)

SetRThreshold:在MSComm控件设置CommEvent属性为comEvReceive并产生OnComm事件之前,接收缓冲区接收的最小字节数。若设为0,不会产生OnComm事件。一般设为1,接收缓冲区收到每一个字符都会使MSComm控件产生OnComm事件。

SetInputLen:设置和返回Input每次读出的字节数,设为0时读出接收缓冲区中的全部内容[10]。

在本程序中串口编程如下:

if(m_ctrlComm.GetPortOpen())

m_ctrlComm.SetPortOpen(FALSE);

m_ctrlComm.SetCommPort(1); //选择com1

if( !m_ctrlComm.GetPortOpen())

m_ctrlComm.SetPortOpen(TRUE);//打开串口

else

AfxMessageBox("cannot open serial port");

m_ctrlComm.SetSettings("9600,n,8,1"); //波特率9600,无校验,8个数据位,1个停止位

m_ctrlComm.SetInputModel(1); //1:表示以二进制方式检取数据

m_ctrlComm.SetRThreshold(1);

//参数1表示每当串口接收缓冲区中有多于或等于1个字符时将引发一个接收数据的OnComm事件

m_ctrlComm.SetInputLen(0); //设置当前接收区数据长度为0

m_ctrlComm.GetInput();//先预读缓冲区以清除残留数据

4实验

4.1 实验目的

验证控制信息能否正确无误地从客户端传到服务器端,再由服务器端传到PLC。

4.2 实验整体流程

运行远程控制程序,首先打开服务器端,设置监听端口,以便监听来自客户端的链接请求。在客户端,输入服务器IP地址和端口号,来和服务器端进行通信。服务器端和客户端成功建立通信连接后,客户端发出一个控制信息,验证服务器端是否能正确接收,服务器端再通过串口来和PLC进行通信,验证PLC端能否正确就收服务器传过来的信息。

4.2.1 服务器端通信设置

图4-1 服务器端设置

如上图所示,在监听端口文本框里输入端口号:8888,然后单击按钮“监听”按钮,来监听客户端的连接请求,与客户端建立连接做准备。选中数据采集框,以便把建立连接后从客户端传来的控制信息,传送给PLC。

4.2.2 客户端通信设置

图4-2 客户端设置

如上图所示,首先在IP地址文本栏里输入服务器端IP地址,在端口号文本栏里输入服务器正在监听的端口号。然后再单击连接按钮。此时服务器端将和客户端建立连接,如果连接成功则会出现下图所示的连接成功提示框。

图4-3 连接成功提示框

4.2.3 串口调试软件的应用

本程序中用串口调试软件来模拟PLC接收到的控制信息,当服务器端发出控制信息时,就把控制信息传给串口调试软件。如下图4-4所示。

图4-4 串口调试助手

4.2.4 验证信息传输

当客户端和服务器端正确建立连接以后,单击图4-2所示的打开空调按钮时,客户端就会发出控制信息H5HDHA,服务器端正确接收信息,如图4-1文本框接收到的信息所示。服务器端再采集由客户端发过来的信息传给PLC,PLC接收到了正确的

信息H5HDHA如图4-4所示。说明此系统通信成功。

5结论

随着Internet的普及和远程控制策略的完善,基于Internet的远程控制成为可能。基于公众网络(Internet)的远程控制通过廉价的TCP/IP和Ethernet连接克服了工业网络的弊端,大大降低了网络的建设与维护成本,提高了已有设备的利用效率和联合生产能力,并广泛地延伸人类的工作空间。

本文在Winsock 的基础上采用 TCP/IP 传输控制协议来完成数据的远程通信。由于TCP/IP协议组是为跨越局域网和广域网环境的大规模互联网设计的,因此,利用因特网为传输媒介,满足了远程控制系统应用到家庭上时,对网络覆盖范围的需求。

基于Internet的远程控制系统是现代控制尤其是远程机器人,远程医疗,智能家庭等控制领域的一个很有发展前景的新颖的体系结构。远程控制的安全性,有效性,廉价性,远程实时性和可见性都可以达到。基于Internet远程控制在不久的将来会有更广阔的市场前景

一种远程控制系统的设计与实现

一种远程控制系统的设计与实现 刘旭东 (长安大学信息工程学院陕西西安710064) 摘要:目前,随着计算机网络的广泛应用,无纸办公和远程办公是人们经常谈及的话题,为了实现计算机网络的这 种应用,方便人们工作,本文提出了一种远程控制系统。为了实现这个系统,首先从系统所要实现的功能着手,设计出该 系统的体系结构,并详细说明体系结构中各模块的主要功能;接着从通信效率和网络环境方面考虑,设计出适合于该系统 的通信协议;最后以流程图的方式详细说明系统软件的实现过程。 关键词:远程控制;软件;系统结构;通信协议 中图分类号: TP393.09 文献标识码: B 文章编号: 1004 373X (2005) 02 053 03 1 引言 随着计算机网络的飞速发展,人们可以很方便地从Internet上获取和自己工作生活密切相关的信息,世界也真正变成一个地球村,我们可以和世界上其他任何一个人通过计算机网络进行沟通,信息资源达到了高度的共享。从这一点得到启发,希望能够设计一个远程控制系统,通过他可以在家里控制办公室里的计算机。如果你是软件开发商,你的员工可以通过他在办公室里远程为客户配置系统、对产品进行维护,如果客户向你报告软件产品出现问题你可以远程对产品进行调试,最终解决问题。这样员工就不会因长期的劳苦奔波而抱怨,用户也不会因为你不能及时解决产品的问题而和你讨价还价,当然也为公司节约了人力和财力。下面详述该远程控制系统是如何实现的。 2 远程控制系统的体系结构设计 该远程控制系统由服务器端和客户端2个部分组成,客户端可以通过鼠标和键盘控制服务器端的计算机,同时还可以相互传输文件。其体系结构如图1所示,主要由安全性校验、屏幕控制、鼠标控制、键盘控制、命令控制、文件传输、端口设置等6个模块组成。下面具体说明各个模块的功能。 (1)安全性校验模块 从系统安全性方面考虑,目的是让客户端和服务器端建立可信联接,客户端要想完全控制服务器端的计算机,必须先通过服务器的验证取得服务器的信任。这样可以避免一些不怀好意的人通过客户端窃取服务器端计算机中有用的资料。

远程监控系统设计方案

远程监控系统设计方案一、概述 家庭监控的网络化、智能化、高清化已经是安防行业自我追求的另一高度。由于家庭监控的智能化依赖于网络技术与高清技术的发展,网络低速曾经阻碍了家庭安防的发展。但4G 网络的到来,为监控行业打开了新的局面,也为家庭安防实现一个阶段性发展,必然也将推动家庭网络监控的全面覆盖。 各地虐童案例、非法入侵、入室盗窃等事故的频频发生,自身安全和家庭财产成为民众关心的社会话题。这些恶性事件提高了民众对安全的防范意识。在众多智能家居系统中,家庭监控已经成为其中的一员了。看孩子、看父母、防保姆、防小偷…… 家庭监控俨然成为了家庭安全保障的得力智能助手。网络技术的普及也让众多不懂监控技术的大众能够安装和使用监控设备。技术人员不必亲自到场解决各种问题,只需要在网络进行指导就行。通过安装一套远程视频监控系统,就可以解除您的后顾之忧。在上班或出差时,您可以随时通过电脑或手机查看家中即时的实时影像,及时与家人面对面地沟通,了解家庭情况。 家庭安防监控系统主要是通过远程安防监控器,实现对家庭智能化系统中各种与信息相关的通讯设备、家用电器和家庭保安装置等进行集中的或异地的控制和家庭事务管理,实现对家庭中重要设备进行远程信息查询、安防报警、远程监控等功能。 二、系统设计目标 在进行家庭监控系统设计时,根据用户的实际需求,从架构合理、安全可靠、产品主流、低成本、安装简便为出发点,注重用户体验并为用户提供先进、安全、高效的系统解决方案。 三、系统设计原则与依据 1、设计原则 本系统是以孩子、老人的安全和财产安全为主,本着美观大方的理念,在孩子的卧室、老人的卧室、主要活动场所(客厅、阳台)、门口等安装监控摄像机,摄像机的图像通过视频线缆传送到监控主机上,设置好路由器将视频图像通过ADSL传送出去。在此方案设计中,以下原则贯穿于设计工作中的全部过程: (1)可靠性原则 (2)实时准确的原则 (3)先进性与实用性相结合的原则 (4)灵活扩展原则 (5)便于维护原则 (6)安全性原则 四、总体设计 1、需求分析 大部分家庭的监控面积在70㎡至200㎡之间,在视频监控方面投入不会太多,因此家庭网络视频监控系统还是以经济性为主,实现现场监视、记录、查询、报警等功能即可。要求价格实惠、功能适中,性能稳定可靠、无需专人管理、安装方便、使用简单、图像清晰,而且占用带宽低。

远程控制系统的设计与实现

收稿日期:2003-04-28 作者简介:吴志攀(1975-),男,广东五华人,惠州学院电子系教师,中南大学信息科学与工程学院在读研究生. 第24卷第3期 2004年6月惠州学院学报(自然科学版)Journal of Huizhou University (Nat.Sci.)Vol 1241No 13J un 12004 远程控制系统的设计与实现 吴志攀,赵跃龙,杜华英(中南大学信息科学与工程学院,湖南 长沙  410083) 摘 要 本文用VB 对远程控制系统进行了设计与实现,并对其中每个部分的功能进行了较为详细的说明 关键词 远程控制;Winsock ;VB. 中图分类号:TP393.5 文献标识码:A 文章编号:1671-5934(2004)03-0038-06 1 引言 远程控制系统用处很大,实用性很强,应用范围很广。可以应用在教学方面:教师机控制着学生机,实现远程广播、远程控制、文件共享传送等功能;也可以应用在网吧的计算机管理,对计算机进行监控,用于上机收费等。 2 简易远程控制系统实现思想 2.1本系统所具有的基本功能: ①实现主机远程控制客户机重新注销、重新启动、强行关机。 ②实现主机远程撤消客户机的桌面背景等,锁定客户机的键盘、鼠标。 ③实现主机与客户机的互发短信、文字聊天。 ④实现主机与客户机的文件传输。 ⑤实现主机信息广播到各个客户机,远程监视客户机,远程控制客户机。 2.2本系统的实现思想 本系统使用Winsock 进行网络通信。客户/服务器模式兴起于90年代,到了90年代的中期开始成为流行的使用模式,它的出现从总体上讲有以下两个原因: 第一个原因,在客户/服务器模式出现以前,占主导地位的是60年代的集中式大型机模式和80年代的PC/文件服务器模式。它们有很多的缺点:大型机模式实现了高度的集中控制,但是操作不便;而PC/文件服务器模式虽然提供了较好的用户界面,但是却大大提高了体系的整体开销和维护成本。而客户/服务器模式在继承了PC 模式的友好用户界面的基础

远程控制系统 毕业设计

湖南人文科技学院计算机系 课程设计说明书 课程名称:软件工程导论 课程代码: 题目:远程控制系统 年级/专业/班:08计科1班 学生姓名:程巍熊军刘权张玉瑛禹卫平学号:08408116 08408117 08408118 08408119 08408120 指导老师:颜富强 开题时间:2010年6月5日 完成时间:2010年6月29日 2010年6月30日

课程设计任务书及成绩评定 课程名称:软件工程导论 完成者:程巍熊军刘权张玉瑛禹卫平 1、设计的目的与要求 1)加强学生的实践能力; 2)理解小型系统开发的基本步骤; 3)本系统的功能包括:客户管理模块、客户销售模块、服务反馈模块,并具有基本的添加、修改、删除和查询功能。 2、设计进度及完成情况 日期内容 6.5-6.10项目开发计划书 6.11-6.14系统可行性说明书 6.15-6.18系统需求说明书 6.19-6.23系统详细设计 6.24-6.27系统测试和Bug跟踪列表 6.28-6.29总结、整理、递交文稿 3、成绩评定 设计成绩:(教师填写) 指导老师:(签字) 二0一0 年月

目录 目录............................................................................................................................................................ I 第一章项目开发计划书. (1) 1.1引言 (1) 1.1.1编写目的 (1) 1.1.2背景 (1) 1.1.3定义 (1) 1.2项目概述 (1) 1.2.1工作内容 (1) 1.2.2主要参加人员 (2) 1.2.3产品 (2) 1.2.4服务 (2) 1.2.5验收标准 (2) 1.2.6本计划的批准者和批准日期 (2) 1.3实施计划 (3) 1.3.1工作任务的分门与人员分工 (3) 1.3.2进度 (3) 1.4支持条件 (3) 1.4.1计算机系统支持 (3) 第二章可行性分析 (4) 2.1可行性研究前提 (4) 2.2经济上可行性 (4) 2.3技术可行性 (4) 2.4法律上可行性 (4) 2.5开发工具概述 (4) 2.5.1 VC概述 (4) 2.5.2 ACCESS 2000 数据库简介 (5) 第三章需求分析 (6) 3.1市场需求分析 (6) 3.3数据字典 (8)

相关主题
文本预览
相关文档 最新文档