远程控制系统范文
时间:2023-03-26 11:32:27
导语:如何才能写好一篇远程控制系统,这就需要搜集整理更多的资料和文献,欢迎阅读由公务员之家整理的十篇范文,供你借鉴。
篇1
1、引言
工业工程领域当中,远程控制成为了新宠,ARM处理器集体积小、能耗低、性价比高等特点成为了远程控制系统的核心部分。LED大屏幕公告板在火车站、高校校园、广场等公共场所屡见不鲜。ARM与LED的结合,能够实现远程控制和高效率信息传输。
2、基于ARM的远程控制系统
2.1硬件系统构建
2.1.1单机硬件设计
单机硬件系统由核心与扩展板两个部分。核心板分为六层板,分别包含了CPU、SDRAM、FLASH、声卡、以太网网卡、串口电路转换等。ARM精简系统包括地址线、数据线及各类控制线等,由金手指引出。6层核心板中,SDRAM与FLASH的容量根据实际应用而变动。扩展板是用来接入外置设备,例如隔离电源、LED显示屏、音频播放电路、USB、RJ45借口等。核心板与扩展板配合,通过简单的网络设置就可以通过连接到互联网。
2.1.2多机组设计
多机系统可以将多机看成一个整体,在多机内部形成完整的局域网网络,然后每台单机就能够通过网络端口连接到交换机上。在工业工程中,如果多机组数量多,可以提高安全性和可靠性的工业以太网来组建网络,从而满足大范围的局域网,通过加持集中继器来实现性能提升。
2.2软件系统构建
2.2.1嵌入式操作系统
Linux系统的开源性和稳定性,是嵌入式操作系统的最佳选择,并且Linux新版本中有完全针对ARM处理器而开发的ARM-Linux系统为操作系统。该操作系统能够满足不同客户和环境的需求,利用程序代码来完成各种不同的功能。
2.2.2交叉开发环境的建立
ARM-Linux嵌入系统属于首先资源系统,在构建好的嵌入系统中的硬件上写入软件程序耗费大量的资金和精力,而且往往的不到很好的效果。为此,通常在计算机上编写程序,然后转换成二进制格式,最后通过ARM-Linux系统下载到系统中来联合使用。
2.2.3GUI的选择
ARM-Linux系统作为一个数据采集和的控制中心,需要一个图形友好的界面,只需要经过简单的培训就能够达到灵活操作、使用的目的。通过人机交互的友好界面,操作者和管理者能够发挥自主能动性和创造性的进行管理。嵌入式的GUI选择基本原则是轻巧、高性能、高可靠性和可配置等。相比而言,嵌入式的GUI比传统的GUI的功能更加完善和可靠。
2.2.4网络编程
ARM-Linux开源系统,能够支持所有的网络协议,能够随意转换,并且网络连接能力强,稳定性高,在我国多元网络结构下,依然展现强大的适应能力。通常采用TCP/IP协议,基于socket编程模式,为ARM-Linux系统创造良好的网络环境,客户机/服务器模式,服务器处于伺服状态,为客户机提供资源和地质连接,ARM在远程控制设备时,ARM通过控制服务器对客户机发送命令,从而达到一对一、一对多的远程ARM控制。
3、应用实例――火车站LED屏幕远程控制系统
火车站人流量大,LED屏幕为乘客显示相关车次的信息和数据,但是传统的LED屏幕为单屏幕,不能够满足火车站大容量信息的现实,为此,进行LED屏幕的拼接,对每一个LED屏幕进行远程控制和管理是必要的,加上当前无触碰技术的发展,结合触摸系统的ARM远程控制系统开发是可行的。
3.1控制系统硬件设计
3.1.1S3C2440处理器主控板模块
通过嵌入式ARM-Linux系统进行实施操作,对多块LED屏幕进行动态管理和控制。上文中提到,为LED屏幕嵌入触屏控制模块,当下流行的S3C2440芯片支持触摸屏接口,通过外部电源供电,触摸屏控制器和触点晶体管来达到远程触摸屏操作,通过控制信号和模拟微型触摸板实现人性化管理。
3.1.2LED屏幕模块
使用了7寸液晶显屏其视频彩色制式:PAL/NTSC;高清晰度,宽视角,16:9与4:3可任意转换;最佳分辨率:800x480;对比度:200:1;7寸液晶显示屏主要用于主控制界面的显示和输入的更新文字的显示。通过多块液晶显示屏拼接而成的更大尺寸的LED屏幕,以满足个性化需求。
3.1.3四线电阻式触摸屏模块
四线电阻式触摸屏是电阻式触摸屏中应用最广、最普及的一种。其结构由下线路导电ITO层和上线路导电ITO层组成,中间由细微绝缘点隔开。当触摸屏表面无压力时,上下线路成开路状态;一旦有压力施加到触摸屏上,上下线路导通,控制器通过下线路导电ITO层在X坐标方向上施加驱动电压,通过上线路导电ITO层上的探针侦测X方向上的电压,由此推算出触点的X坐标,通过控制器改变施加电压的方向,同理可测出触点的Y坐标,从而明确触点的位置。
3.2控制系统软件设计
QT软件是诺基亚开发的一个跨平台的C++图形用户界面应用程序框架,它提供给应用程序开发者建立艺术级的图形用户界面所需的功能。QT是完全面向对象的,很容易扩展,并且允许真正地组件编程。自从1996年早些时候,QT进入商业领域,它已经成为全世界范围内数千种成功的应用程序的基础,QT也是流行的Linux桌面环境KDE的基础。
4、结束语
综上所述,ARM-Linux远程控制系统将会是未来几年远程控制的首选,不论是ARM的功能集成,还是Linux的开放兼容性,都为远程智能控制实现提供基础。同时触摸技术和无线网络技术也应该能假如到远程控制系统当中,特别是无线网络技术,对于水下远程控制和电缆无法触及的部位进行遥感和遥控是必要的。
参考文献
[1]陈泽婷.基于ARM的校园LED公告板远程控制系统设计[J].现代计算机(专业版),2012,(07):77-80.
篇2
关键词:水泵 PLC 远程控制系统 构建 研究
水泵工作状态的远程控制以及监测是水泵的重要组成部分之一。水泵工作过程的实时监控直接关系着水泵的安全运行、矿井安全和生产成本等重要的经济效益和社会效益。面对大量的现场检测和控制数据信息,要求操作人员实时对生产过程进行监控、迅速而准确地对设备运行的技术指标以及故障作出判断也变得越来越困难。因此,研究开发水泵远程控制系统作为操作人员的可靠助手是非常必要的。本人结合研究课题,就水泵远程控制系统的构建作一个初步的探索。
一、水泵远程控制系统概述
系统控制部分和控制核心选用高性能可编程序控器。检测部分分模拟量检测,主要由水仓水位传感变送器、流量传感变送器、压力变送器、负压变送器、温度传感变送器等组成,用于中央泵房主排水系统运行参数的检测;另外是开关量检测,将高压启动柜中的真空断路器状态、电动阀的工作状态与启闭位置等开关量信号接入PLC,检测系统运行状态。
PLC系统设计概述:矿井水泵自动控制系统由上位计算机、PLC系统以及连接上位机与下位机的通讯电缆组成。下位机系统由PLC、触摸屏、检测部分、执行部分等组成;主要完成设备的状态检测和数据采集、控制水泵启停,同时,下位机还要把采集到的数据上传给上位机。PLC控制柜上装有报警蜂鸣器。上位机采用国际领先的工控组态软件编制,可实时监视水泵系统的运行参数,并可远程控制水泵系统,主要实现以下功能:接收与储存PLC传来的数据、处理实时数据和历史数据、发出控制命令、显示动画、报警、设置操作权限、绘制趋势曲线、输出报表等。另外,把上位机接入矿用局域网,实现远程监控。
二、水泵的运行控制设计
根据水仓水位自动开启、停止水泵的运转,对运行中的各种状态参数进行实时监控,同时通过接口将数据上传至地面集控室。
PLC系统流程:单台水泵自动启停的实现。井下中央水泵自动化控制的实现是建立在单台水泵自动启停的基础之上。根据所监测的水位信号,可设定出低水位、运行水位和3个上限水位信号及危险水位。低水位时停泵;高水位时水泵运行;根据上限水位逐台投入备用水泵同时运行;危险水位时起动水泵全部运行。同时根据水位变化计算涌水量,当涌水量增大或突变时启动水泵运行,以减少突水事故的发生。
单台水泵自动启动过程:启动抽真空系统―检测真空度―启泵―检测水泵出水口压力―打开水泵出水口电动闸阀―停止抽真空系统。水泵系统采用真空泵或射流法抽真空:系统根据水位状态或者操作员命令启动相应设备进行抽真空工作。当真空压力达到要求后将自动启动水泵电机,然后打开水泵出水管路电动闸阀进行排水。若电动闸阀打开后一定时间内水泵压力未达到设定值(一般是因为水泵或上水管路漏气导致)系统将会自动停止水泵运行并关闭电动闸阀,同时报警。
单台水泵自动停止过程:水仓水位下限―关闭水泵出水口电动闸阀―停泵。水泵系统停止运行:当水仓水位达到低位时将先自动关闭排水管路电动闸阀,电动闸阀关闭到位后(若一定时间内未关到位则按故障方式停止)停止水泵电机。
三、PLC系统功能、特点
1、根据水仓水位自动控制排水泵启停;2、控制各泵轮流工作,使每台磨损程度均等;3、根据水仓水位、供电峰谷段时间划分等情况,合理调度水泵运行,以节省运行费用;4、检测水泵及其电机的工作参数,如:水泵流量、出入压力、电机定子温度及轴承温度、电机电流和功率等;5、根据水泵及电机的运行参数,测算水泵的运行效率,为水泵的维护保养提供科学依据;6、具有故障报警、自动保护等功能;7、具备就地手动控制、远方手动控制、自动控制等运行方式,控制方便、灵活。
PLC系统设计功能。检测水泵及其电机的工作参数,如:水泵流量、压力、轴温、压与流。根据水仓水位、供电峰谷段时间划分等情况,合理调度水泵运行,以节省运行费用。控制各泵轮流工作,使每台磨损程度均等。具有故障报警、自动保护等功能。
四、远程控制系统功能详述
1、数据采集。数据自动采集主要由PLC实现,PLC模拟量输入模块通过传感器连续检测水仓水位,采集电机电工参数、水泵轴温、电机温度、排水管流量等传感器与变送器,主要用于监测水泵、电机的运行状况,超限即报警,以避免水泵和电机损坏。PLC的数字量输入模块将各种开关量信号采集到PLC中作为逻辑处理的条件和依据,控制排水泵的启停。在数据采集过程中,模拟量信号的处理是将模拟信号变换成数字信号(A/D转换),其变换速度由采样定律确定。
2、自动轮换
本系统程序设计了多台泵自动轮换工作控制,控制程序将水泵启停次数及运行时间和管路使用次数及流量等参数自动记录并累计,系统根据这些运行参数按一定顺序自动启停水泵和相应管路,使各水泵及其管路的使用率分布均匀。当某台泵或所属阀门故障,系统自动发出声光报警,并在触摸屏上动态闪烁显示,记录事故,同时将故障泵或管路自动退出轮换工作,其余各泵和管路继续按既有顺序自动轮换工作,以达到有故障早发现、早处理。
3、自动控制
系统控制设计选用了德国西门子公司生产的S7--300型PLC为控制主机,该机为模块化结构,由PLC机架、CPU、数字量I/O、模拟量输入、电源、通讯等模块构成。PLC自动化控制。系统根据水仓水位的高低,合理调度水泵,自动准确发出启、停水泵的命令,控制多台水泵运行。为了保证井下安全生产,系统可靠运行,水位信号是水泵自动化一个非常重要的参数,因此,系统设置了两套水位传感器,模拟量和机械式液位传感器,两套传感器均设于水仓的排水配水仓内,PLC将接收到的模拟量水位信号分成若干个水位段,计算出单位时间内不同水位段水位的上升速率,从而判断矿井的涌水量,同时检测井下供电电流值,计算用电负荷率,系统根据矿井涌水量和电网负荷、供电部门所规定的平段、谷段、峰段供电电价时间段,以“避峰填谷”原则确定开、停水泵时间,从而合理地利用电网信息,提高矿井的电网运行质量。
4、动态显示。动态模拟显示选用德国西门子TP--270型触摸式工业图形显示器(触摸屏),系统通过图形动态显示水泵、真空泵、电磁阀和电动阀的运行状态,采用改变图形颜色和闪烁功能进行事故报警。直观地显示电磁阀和电动阀的开闭位置,实时显示水泵抽真空情况和压力值。用图形填充以及趋势图、棒状图和数字形式准确实时地显示水仓水位,并在启停水泵的水位段发出预警信号和低段、超低段、高段、超高段水位分段报警,用不同音响形式提醒工作人员注意。采用图形、趋势图和数字形式直观地显示管路的流量,对井下用电负荷的监测量、电机电工参数和水泵负荷、水泵轴温、电机温度等进行动态显示、 超限报警,自动记录故障类型、时间等历史数据,以提醒工作人员及时检修,避免水泵和电机损坏。
5、系统保护功能
超温保护:当轴承温度或定子温度超出允许值时,通过温度保护装置及PLC 实现超限报警。流量保护:如流量达不到正常值实现报警,具有通过流量保护装置使本台水泵停止运行,自动转换为启动另一台水泵的功能。电动机故障:利用PLC及触摸屏监视水泵电机过电流、漏电、低电压等电气故障时实现报警,具有参与控制功能。电动闸阀故障:由闸阀的限位、开度指示检测故障,并参与水泵的联锁控制。
6、检修运行方式:当该系统出现故障时,在不影响泵房设备的正常运行,避免影响生产的情况下将PLC控制柜的所有控制输出屏蔽,只保留显示功能,各水泵及其设备的操作均能在脱离PLC控制柜的前提下进行。
整个系统在正常运行过程中,不管处于何种工作方式,都可实时地将泵房现场的各种运行参数、设备工作状态通过光纤传送到上位计算机。
参考文献:
1、郝三宝.水泵远程控制系统.百度百科名片
2、曹俊义.基于PLC与GPRS实现深井的远程控制系统.大连华英自动化技术有限公司.2008. 11
3、李美霞.煤矿排水泵自动控制系统设计.中小企业管理与科技36期.2009
4、王凯 冯娟.基于CS1系列PLC实现的水泵轮值控制.世界电子元器件.2004.7.
5、丁治福 李旭鸣 商德勇 潘越 .基于PLC的煤矿主排水泵自动控制系统设计-煤矿机械.期刊论文1期.2010.
篇3
【关键词】远程控制 系统设计
一、 引言
安卓系统最初由Andy Rubin开发,是一种以Linux为基础的开源操作系统,目前应用于一些手持设备上,例如:手机,平板电脑等。2005年由Google公司,并联合多家相关领域的厂商组成OHA(Open Handset Alliance,开放手机联盟)对安卓系统进行后继的开发和推广工作。其英文名Android一词最早出现于法国作家利尔亚当的科幻小说《未来夏娃》中。他将外表像人的机器起名为Android。从安卓 1.5系统开始,采用甜点的名称作为系统版本的代号,并以26个英文字母为序,依次是:纸杯蛋糕Cupcake,甜甜圈Donut,松饼Eclair,冻酸奶Froyo,姜饼Gingerbread,蜂巢Honeycomb,冰激凌三明治Ice Cream Sandwich。
二、 安卓系统结构
(一)安卓系统架构
安卓系统以Linux系统为核心,使用Java作为主要编程语言,在NDK的支持下也可使用C/C++进行编程。从系统结构的角度看,安卓系统可分为4个层次:
1.内核:内核为上层提供安全、内存管理、进程管理等服务,同时也作为硬件层和系统上层软件之间的一个抽象层、桥梁通道。
2.函数库和运行环境:函数库提供了JAVA语言的部分功能。在库中提供的API能被安卓系统中的组件调用,通过应用程序框架为开发者进行支持。运行环境主要指的是安卓应用程序的运行环境,其作用相当于微软.NET架构下的 Frameworks。
3.应用程序框架:专门为应用程序的开发而设计的系统结构,安卓程序员通过框架得以直接访问核心应用程序,以及系统API。从而简化程序设计工作,提高编码效率,加强程序的可重用性。
4.应用程序集合:安卓系统自带的一系列核心应用程序集合,可提供综合数字服务的相关功能,支持邮件的发送和接受、提供收发SMS、MMS的相关服务、拥有内置的行事日历管理功能、www浏览功能、电话薄管理功能、基于GPS的Google Maps功能等。
(二) 安卓程序结构
目前谷歌公司所公布的安卓系统源代码包含以下内容:目标机代码,编译工具、虚拟运行环境。
三、 系统设计
系统的设计思路是在整个系统架构中中部署一台计算机,提供业务处理功能服务,与使用安卓系统的移动终端进行通信。智能终端设备作为管理其他设备的中控设备,提供管理界面和用户接口,支持远程控制、文件读写、指令反馈等功能。
系统中,计算机连接网络,所有的设备与计算机相连,它主要由在安卓系统的Activity中使用Bundle进行通信。使用安卓系统的移动终端设备进入系统后,由网络侦测机构(WIFI或射频设备)主动发现设备,并邀请设备连入网络,智能设备通过动态方式获取一个IP地址,并在计算机的服务器列表中搜索其它可用设备服务,发现设备后选择处于激活状态的可用服务,并与之进行交互。使用安卓系统的移动终端与计算机之间使用套接字进行通信,计算机与外部可控设备之间使用串口或总线进行通信。
终端设备通过点击触控的方式触发预设的命令集,通过套接字接口将命令集表示发送到计算机服务器端,服务器解析该命令集标识并转换成可控设备能够识别的汇编指令信号,发送给设备。
四、 系统实现
(一) 服务器端的设计
服务器端启动的时候,将设置一个广播地址段,利用此广播地址初始化套接字在,并对9432端口进行监听。当收到连接请求时,利用授权模块对连接请求的合法性进行验证,服务器端将会向客户端发送一个验证数据,并将线程设置为阻塞状态,等待客户端的响应。收到的客户端响应后,进行校验。根据校验结果决定是否连接或拒绝。连接成功后,服务器将开始接受并解析收到的命令集。
(二) 客户端的设计
系统中服务器与客户端利用Socket通过用户数据报(UDP)协议进行通信,传输速度快,无延迟。虽然UDP协议有数据报容易丢失、不能保证每个数据报准确无误地传到等问题,但对于运动体感的操作,用户的动作产生的数据是连续的,即使丢掉部分的数据报对用户体验也无大碍。
在确定移动通信传输协议的基础上,需要将移动设备的多点触摸功能和传感器功能融入到服务器强大的计算功能中,即实现信息空间和物理空间的融合,因此需要将移动设备发出的指令变成服务器能够识别的操作。客户端改变状态模式改变时,应该通知服务器端进行识别,这样才能进行正确的操作映射。
五、 结束语
经过在MOTO设备上的测试,客户端与服务器端的连接时延在10秒内,连接后的指令响应时间小于5秒,基本能够达到设计要求。系统在设计与实现中,已预置了与其他类型设备进行交互的接口,下一步将准备实现多种异构设备之间的远程交互。
参考文献:
[1]ITeye专栏.Android 源码结构. [EB/OL]. http:///blog/1090237.2011-11-21
篇4
关键词:多媒体教学;远程控制系统;
【中图分类号】TP308;TP872
随着计算机应用技术、网络技术以及多媒体技术的飞速发展,以计算机、投影机等多媒体教学设备为核心的多媒体教室越来越普及,为教学活动提供了先进的手段和全新的环境。同时,这些新技术的应用和多媒体设备的增加也给广大教员和教育技术工作者提出了新的挑战,为了有效利用、管理和维护现代化的教学设施,保证教学活动的顺利开展,我们对基于校园网的多媒体教学设备远程控制系统进行了理论研究和具体开发,并最终形成了一套实用性强、性价比高的软硬件产品,取得了较好的应用效果。
该系统选用多媒体计算机作为远程中央控制室的控制主机,利用现有的校园网络作为控制信息的传输通道,以IP控制模块为桥梁,将多媒体教室中教学设备的集中控制器连接到校园网,从而用基于控制主机—校园网—IP控制模块—集中控制器—多媒体教学设备(被控设备)这一技术方案实现了对多媒体教学设备群进行分布式、网络化远程控制的目的。
一、研制过程
整个系统的研制主要分为四个阶段进行:
(一)广泛开展调研,了解发展方向,掌握前沿技术
多媒体教学设施的建设与维护是电教管理的研究方向之一,国内外已取得了一定的研究成果,为了掌握当前发展方向和技术的新进展,使系统的研制能在已有经验的基础上有所突破和创新,项目组一方面在相关学科领域开展了文献调研,另一方面对市场上的现有产品进行考查,掌握了研究所需的第一手资料。
(二)认真分析需求,合理确定开发目标和技术方案
根据我们多年来在多媒教室管理和多媒体技术保障方面的成功经验和遇到的实际问题,组织大家对系统的应用需求展开讨论,确定了开发目标和技术方案。
本系统的主要目标是吸收自动控制领域多年来在远程控制与嵌入式系统方面的研究成果,将嵌入式微处理器技术和网络技术融合于多媒体教学设备自动控制系统中,实现一套成熟、可靠的网络中央控制系统,为实现更加科学、高效的管理提供一个良好的控制与管理平台。
根据总体设计,整个系统的控制分成两级:现场控制系统和远程控制系统。现场控制系统以多媒体集控器为核心、以多媒体教学设备为被控制对象组成一级控制系统。远程控制系统是以专用计算机为远程中央控制主机,以分布在不同教室里的多媒体集中控制器为桥梁,通过校园网对多媒体教学设备进行控制;它比现场控制系统优先级别高,可以通过相关操作使多媒体教学系统进入工作或关闭状态,并可查看多媒体教学设备内的相关设备的运行状态。
(三)明确技术难点,合力攻关,重点突破
根据所确定的技术方案,系统研发的难点主要集中在中央集控器和远程控制软件的开发两个方面。中央集控器的研制属于嵌入式系统范畴,主要在单片机上进行开发,对电子线路设计和单片机编程技能要求较高;远程控制软件主要集中在操作系统控制和网络通信编程方面。
在整个系统中,多媒体中央集控器处于核心位置,它的最大的特点就是让复杂繁琐的设备操作过程简单化,让使用者在使用各种设备的过程中轻松自如。中央集控器的开发可以说是整个系统研发的重中之重,项目组在攻关过程中对该组力量进行了加强,针对大家普遍缺少单片机开发经验的情况,组织人员到地方高校与公司学习,并要求芯片供应商提供一定的系统作参考,最终研制出了符合技术方案要求的中央集控器。
(四)广泛开展试用,及时发现问题,不断完善功能
系统研制过程中,项目组针对各个组成模块都进行了详细的实验与测试,确保了各模块的功能实现和运行稳定。在组装成原型系统后,首先在我院多媒体教室、学术报告厅、多功能会议室等多个教学场所进行了试验,并根据不同环境中暴露出的问题进行了反复测试,最后在集体分析的基础上进行改进,确保了系统的可靠性和通用性。
在对原型系统进行完善的基础上,通过两个学期的实际应用,教员反映通过多媒体集控器进行操作,各种按钮指示明确,操作简单明了,方便了授课过程中多媒体设备的使用。通过校园网和监控主机,教学保障值班人员对所有教室的设备运行情况了如指掌,并可协助教员进行远程控制,大大提高了保障工作的效率。
二、应用效果
在实际应用中,该系统表现出以下显著特点:
(一)可靠、稳定的硬件系统:处理器是整个系统的控制主体,处理器的处理水平和运行速度制约着整个系统运行的稳定性、可靠性和实时性。同时作为一款通用的网络远程控制系统,处理器必须具有较为低廉的价格,我们选择的芯片不仅有着较为强大的数据处理能力,同时具有稳定性好、体积小巧、价格低廉、技术资料支持较为丰富的优点。
(二)高性能的控制接口:本系统具有本地的串口通信接口和支持远程TCP/IP网络的接口,通过合理选择元器件和软件资源,解决了相关的技术和成本问题。
传统多媒体教室的中央控制系统都没有远程通讯接口,每个教室只能独立运行。通过开发具有网络接口功能的中央控制系统,使各教室成为网络上的一个节点,管理人员可以通过网络监测、管理多个由此套系统构建成的多媒体教室群,从而使系统具有远程监控的能力,可以大大减少管理人员的工作量。
(三)模块化设计:本系统从现代系统集成理论中发展了一套模块化设计思想,借鉴工业集散控制思想,设计了多个模块,用户可以根据具体需求构建自己的多媒体教学设备中央控制系统,既经济又实用。
(四)设备接口简单、统一:系统采用嵌入式组合结构,微处理器完成所有的功能,各种输入输出接口均采用标准接口,即使非专业人员也能轻松连接。
(五)控制界面直观:上位机软件界面风格友好,控制键盘全部采用中文及图标标识,美观简洁大方,每个按键都有相应的操作提示,操作轻松方便。
篇5
关键词:单片机;STC89C52;WIFI
中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2015)22-0130-02
Abstract: With the constantly development of the smartphone and the mobile communication technology, agricultural greenhouse can control various devices and collect data through application on android and 4G LTE. This is animportant aspect of accomplish the contact with the internet and intelligent agriculture. In the greenhouse, through the STC89C52 microcontroller to receive from the mobile terminal APP control instructions, to complete the greenhouse heating, ventilation , sprinkler and other kinds of action. To achieve the mobile terminal control of greenhouse. Besides, all kinds of greenhouse data can be collected into it, and then uploaded to the mobile terminal. This thesis mainly discussed based on microcontroller to accept mobile terminal instructions and in accordance with the instructions to control the operation of all kinds of external equipment, and return of sensor data to remote monitor and control system of greenhouse design.
Key words :single chip microcomputer; STC89C52; WIFI
1 总体设计方案
本系统主要包括温室控制APP,无线WIFI信号传输模块和主机控制模块三大部分。其中温室控制APP用于发出控制指令和显示温室环境参数,无线传输模块采用的是济南有人科技的USR-WIFI 232-S无线传输模块,用于通过WIFI接收来自手机端APP的指令,然后透明传输给主机。主机根据接收到的指令,经过译码之后,驱动相应的继电器控制设备的交流接触器动作,实现远程启动和关闭相关设备,从而实现温室大棚的远程智能控制,同时也可以将温室中的传感器采集到的数据回传给温室控制APP端显示。本文主要讨论基于单片机 STC89C52的主机控制模块系统设计。系统整体结构如图1所示。
2硬件系统及功能模块设计
2.1 主机控制模块
主机控制模块由主要由单片机STC89C52、设备控制用继电器、各种传感器及相关电路组成,主机控制模块通过P3.0和 P3.1与USRWIFI232-S无线通信模块串行通信,以便于手机端APP通信。传感器获取的环境参数直接输出数字化信息,传给单片机处理,根据内部初始化的温室控制的信息,运算之后,通过P2.0至P2.7输出控制动作,通过驱动三极管和继电器,进一步控制大电流的交流接触器动作。
主机控制模块负责接收无线传输模块传过来的指令信号,进行正确的译码之后,根据指令的信号直接驱动继电器,继而控制对应的交流接触器来控制温室中的各种机电设备工作;同时开始监控温室大棚的环境参数,一旦温度,湿度等环境参数达到预设的值,通过中断的形式,给MCU发送中断信号,切断参与此环境参数相关的机电设备工作,最终达到温室的自动控制。同时将传感器探测到的信息通过无线传输模块,传回给手机端APP,并在APP端显示目前设备的工作状态和相关的环境参数,使用户了解温室的最新状态。
2.1.1单片机模块
STC89C52是由STC公司生产的一款高性能、低功耗的8位微控制器。它在MCS-51的内核的基础上,进行了相应的增强,在性能和功能上有较大的提升。具有片内8k字节Flash、512字节RAM、4组8位双向I/O接口。低廉的价格和较强的性能使STC89C52称为自动控制中最常用的MCU之一。本系统仅使用1片STC89C52即可达到设计目标。
2.1.2本地设备驱动模块
鉴于温室控制的加热器,风机,卷帘电机等控制都是较大电流的设备,无法直接使用继电器控制,因此本地驱动模块使用分立元件的继电器作为初级控制,后端使用220或者380V的交流接触器,继而进一步控制各种大功率的设备。
2.1.3传感器模块
通过部署在大棚内的传感器模块采集数据,其中主要的温度和湿度数据采集使用AM2301数字温湿度传感器。它是一款具有数字校准输出的传感器,采用了独特的数字采集模块和新型温湿度采集传感技术,足以确保产品可靠性和稳定性,而且具有响应速度快、抗干扰能力强和极低的功耗的特点,目前成为各类温湿度传感器的首选,输出的数据直接交由单片机处理,确定是否开启通风或者加热,确保温室的基本温湿度在合适的范围,同时也将数据传回手机端APP显示,通知用户处理。
光照度传感器:采用基于ROHM的BH1750FVI芯片的光强度检测模块,使用较低的工作电压,内置16bitAD转换器,直接输出数字信号,进一步提高系统开发的速度,并且成本低廉,在温室环境中工作稳定。根据需要可以进一步接入其他类型的传感器。
2.2 USRwifi232-S通信模块
USR-WIFI232 系列产品是济南有人科技研发的一款用于实现串口到 WIFI 数据包的双向透明转发的无线数据传输模块。在模块内部完成协议转换,串口一侧串口数据透明传输,WIFI 网络一侧是 TCPIP数据包,通过简单设置即可指定工作细节,设置可以通过模块内部的网页进行,也可以通过串口使用 AT 指令进行,一次设置永久保存。用户无需关心具体细节,是一款使用简单,价格低廉的无线数据透明传输模块,广泛应用于嵌入式系统与无线TCP/IP 网络数据通讯。
3 系统程序设计
系统程序包括传感器数据采集程序和通讯解码程序两大部分。
3.1传感器数据采集程序
传感器数据采集的基本工作流程为:单片机上电时或者手机APP端发出读传感器数据指令时,循环扫描各个传感器的输出数据。在程序运行过程中,设定一定的检测周期,每个周期内当传感器触发且超出设定的温室环境参数范围时,单片机将采集到的数据封装好,通过无线传输模块发送给手机端APP显示。
3.2 通讯解码程序
由于温室中需要控制的设备较多,为每一套设备设置一套控制指令,则指令会相当复杂,为了降低与手机APP通信的数据流量和具有较好的可扩展性,在本机存储一张系统指令表,手机APP端只需要发送相应的指令代码,在本机只需要通过查找指令表即可解析指令的具体控制行为。从而简化单片机的控制方式,增强控制能力。
4 结束语
本文设计了一种基于单片机的温室远程智能控制系统,具备温室各种环境参数调节设备的远程控制和环境参数采集的功能。系统采用设备驱动和环境信息采集相结合,最大程度提高温室控制的精度和自动化程度。且系统整体成本较低,特别适合控制精度要求高的温室使用。
参考文献:
[1] 万军.基于单片机大棚温湿度远程监控的设计与实现[D].电子科技大学,2012.
篇6
关键词:Java;管理系统;远程控制
中图分类号:TP311文献标识码:A文章编号:1009-3044(2010)18-5115-03
The Research of Remote Control System Based on Java
XIONG Hai-yan1, HU Rong2
(1.The Food and Drug Administration of Jiangxi Province, NanChang 330029, China; 2.Nanchang Institute Of Technology, Nanchang 330099, China)
Abstract: The system adopts the Java network programming and graphic programming. In the process of research, the thesis united network programming and remote control theory together, which allows the system to achieve the following functions successfully: continuously obtaining the remote computer screen; uploading and downloading the document from the remote computer and the simulation of mouse and keyboard; turning off and restarting the computer.
Key words: Java; management system; remote control
1 概述
随着时代的进步,计算机在人们的生活中已经得到了普及,在生活的各个方面都可以看到计算机及网络的应用。网络技术的不断发展,也为远程控制技术的发展创造了条件。远程控制软件一般分两个部分:一部分是客户端程序Client,另一部分是服务器端程序Server,多数远程控制软件把被控端作为服务器,主控端作为客户端。考虑到在控制过程中,如果把主控端作为客户端向被控端发送TCP连接请求,容易被防火墙或者杀毒软件阻止,控制过程就不能成功进行。因此,本文将被控端设计为客户端,向主控端发送连接请求,建立连接后,主控端向被控端发送远程控制命令,控制被控端电脑中的各种应用程序运行,被控端对主控端发送来的命令进行处理,并将命令处理结果返回给主控端。远程控制软件顺应时展的需求,它实用、使用简便,是非常不错的软件。
远程控制是在网络上由一台电脑(主控端Remote)远距离去控制另一台电脑(被控端Host)的技术,这里的远程不是字面意思的远距离,一般指通过网络控制远端电脑,不过,大多数时候我们所说的远程控制往往指在局域网中的远程控制而言。
当操作者使用主控端电脑控制被控端电脑时,就好像坐在被控端电脑的屏幕前一样,可以启动被控端电脑的应用程序,可以使用被控端电脑的一些基本操作和命令。但是,需要弄清楚的是主控端电脑只是将键盘和鼠标的指令传送给远程电脑,同时将被控端电脑的屏幕画面通过通信线路回传过来。也就是说,我们控制被控端电脑进行操作似乎是在眼前的电脑上进行的,实质是在远程的电脑中实现的,不论打开文件,还是上网浏览、下载等都是存储在远程的被控端电脑中的。
2 系统关键技术
系统使用的关键技术就是Java网络编程和Java图形编程。用Java网络编程实现主控端和被控端的通讯(命令收发、数据传送),用Java图形编程完成主控端控制界面的编写。具体应用如下:
(1) 实现主控端(服务器)与被控端(客户端)之间的通讯。
用Java Socket来实现。
(2) 用Java采集事件,封装成消息,用于发送。
在主控端机器上采集事件(一般只不过是键盘和鼠标的事件),然后封装成消息类传输到被控端。
(3) 在被控端上重演主控端的动作事件。
在被控端运行client端,接收消息,如果主控端有请求操作的消息,用Robot截下当前屏幕,传给主控端,主控端显示被控端的屏幕,是一个位图;然后接收在这个位图上的鼠标事件和键盘事件,并把鼠标位置(位图上的坐标换算成对应的屏幕上的坐标)和键值送到被控端上,在被控端上重演同样的事件。
主控端包括的模块有:消息输入,命令处理结果显示模块,通信模块。消息输入模块负责将用户界面的事件传送到通信模块,通信模块将命令信息发送到被控端;被控端执行操作后返回的成功或失败信息交由主控端命令处理结果显示模块根据信息的格式进行显示。
被控端包括的模块有:通信模块,命令处理模块。被控端处于侦听状态,一旦接收到合法的连接请求,就开UDP端口,并开启命令接受线程,建立连接后,通过通信模块接收主控端发来的命令信息,经命令处理模块解释后,并将结果返回到主控端。
3 远程控制流程
被控端收到主控端的UDP命令:control:TCP Port,获得主控端开放的TCP端口号。成功连接主控端的TCP端口后,并从中读取事件对象,接着对事件对象进行类型判断,如果是键盘事件,就对键盘事件重演;如果是鼠标事件,就对鼠标事件重演。接着判定控制套接是否关闭,如果关闭,控制结束。否则返回继续读取事件。流程如图1所示。
4 远程屏幕控制的实现
命令处理的实现就是通过函数调用,调用各个命令处理类。在命令处理中,被控端执行以下操作:发送自己的状态信息给主控端;建立图象传送;开启控制命令套接字;文件上传;文件下载;执行DOS命令,获取执行结果和错误流。
开启屏幕监视线程:
public static void startGetScreen(ClientStatus clientstatus) throws MyException{
ServerSocket server=null;
try {
server = NewRadomSocket.openNewPort();
server.setSoTimeout(Parameter.TCP_TIME_OUT);//设置超时
clientstatus.sendMyOrder(OrderMap.toOrder(OrderMap.SCREEN_SHOW,server.getLocalPort()));//发送命令
Socket socket=server.accept(); //连接
tools.print(socket.getRemoteSocketAddress()+" 已经连接端口:"+socket.getLocalPort()+" 等待连接,进行图形传送");
//socket.getInputStream().read();
new GetImageThread(socket).start();//启动图象显示
} catch (Exception e) {
throw new MyException(e.toString());
}
}
实现屏幕控制要完成被控端发送屏幕截图和主控端接收图片的工作,该功能的实现中构造了两个类:SendImage Thread和GetImageThread,
SendImage Thread JavaBean 代码和说明如下:
/*被控端将Java屏幕"照相机"采集到的图片压缩为JPEG文件,发送到主控端*/
public class SendImageThread extends Thread{
……
public void run(){
int i=0;
OutputStream out=null;
JPEGImageEncoder encoder=null; //压缩为JPEG
try {out = client.getOutputStream(); //获得TCP套接字流
encoder=JPEGCodec.createJPEGEncoder(out);//将流压缩为JPEG对象流
} catch (IOException e1) {
e1.printStackTrace();
}
while(true){
image=impv.CopyScreen(); //截取屏幕图象
encoder.encode(image) ; //向网络写入JPEG图形对像
}
}
GetImage Thread JavaBean 代码和说明如下:
/*主控端接收JPEG文件,并在画布上显示*/
public class GetImageThread extends Thread{
……
public void run(){
BufferedImage image=null;
JPEGImageDecoder de=null;
InputStream in=null;
try {
socket.setReceiveBufferSize(1024); //设置接收缓冲
socket.setSoTimeout(60000); //设置TCP过期时间
in=socket.getInputStream(); //获取套接字输入流
de=JPEGCodec.createJPEGDecoder(in); //将输入流封装为JPEG对象流
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
int wrongtime=0;
while(true){
wrongtime++;
if(wrongtime>=200)break;
image=de.decodeAsBufferedImage(); //对JPEG对象解码,还原为BufferedImage图形对象
MainFrame.getInstance().ShowImage(image); //在控制窗口的画布上显示图象
}
}
5 小结
远程控制软件的编写采用成熟的套接字编程,实现了软件面向设备、面向功能量身定制。能连续获得被控端机器的屏幕变化;能对对方机器实现文件上传、下载;能远程控制对方机器;能重启,关闭对方计算机。
参考文献:
[1] 陈庆,飞,姚彪国. 基于Java技术的远程控制实验系统开发[J].西安工程大学学报,2008(2).
[2] Tal Liron .Remote-control Java[J]. , 2007(12).
[3] 施博学,王志良,刘冀伟. 基于RTP实现远程图像传输研究与实现[J].微机计算机,2005(2).
篇7
随着我国计算机和通信技术的快速发展,人们的生活水平有了质的飞跃,智能家居以其舒适、便利及智能的特点被广泛运用于现代家居系统设计中。本文 介绍了基于远程控制系统下智能家居开发与实现,分别从总体设计、硬件设计、软件设计多视角进行阐述,完善智能家居的远程控制。事实表明,远程控制系统下智能家居系统可靠便利,并且非常容易扩展。
【关键词】智能家居 远程控制 开发与实现
1 引言
现阶段智能家居在世界各地被广泛的提及,在中国更是得到了前所未有的发展,势必将成为未来家居装饰潮流上的一个大方向。在最开始追求家居的物理空间为目的的家居需求上,人们进一步关注的是安全舒适以及便利的居家环境,智能家居恰好可以满足这个特殊的需求。随着科技的进步,智能家居也不断的完善和强化,朝着无线技术,硬件性能提升,操作平台综合化,远程控制系统多样化上发展。
2 智能家居开发与实现总体设计
智能家居开发与实现总体设计可以从安防报警功能、远程控制功能、家电控制功能三个方面进行。智能家居系统结构示意图具体如下图1所示。
3 远程控制系统下智能家居开发与实现
3.1 硬件系统开发与实现
从上述智能家居系统结构示意图中可以看到,其结构可以划分为监控单元和数据通信单元。具体而言,监控单元是以微处理器为核心,开发板选定为三星S3C2440,物理结构上是由ARM9微处理器构成的,通过其内核输出32根地址线以及JTAG接口,然后再将16KB缓存连入到AMB9总线上。在安防系统功能设置上,可以在用户家中安置红外、门磁传感器、煤气传感器、烟气传感器等等,这些传感器信号是以外部中断的方式借助于S3C2440下的I/O端口进入到系统处理器中,处理器通过智能化读取红外、门磁传感器、煤气传感器、烟气传感器等等相关信号,以获取家居中的环境以及各项设备的工作状态。对于出现问题的环节,数据信息会及时反映出来,然后处理器发出各项针对性的指令,实现对突发事件的处理和控制,实现对家居环境和设备的监控和控制。例如关闭温度设定值下的空调开启与关闭、外来人员进入监控区的探查。此外,如果系统安装了摄像功能,还可以对家居环境进行现场拍摄,保存相应数据。
数据通信单元的核心是GSM无线网络通信模块,可以最大程度的实现处理器将家居环境状态以彩信或者是短信的形式告知用户。如果出现了突发事件,报警信号发送到用户手中时,还将向小区的物业中心和区域110发出紧急报警,减少用户的经济财产损失,实现用户远程控制的最大效率。
3.2 软件系统开发与实现
操作系统采用的是支持多种网络协议、开放性源码的嵌入方式LINUX,软件系统开发语言以C语言为主。基于智能家居控制系统功能性要求完成相关程序、系统的移植和裁剪工作,包括LINUX文件系统、嵌入式的操作系统内核、网管接口下的CGI程序、BOOT LOADER程序等等。其中BOOT LOADER程序选取的是三星SUPPER VIVI,内核为LINUX。
另外,软件系统模块的设计是根据智能家居的功能特点而出现的。具体的软件系统模块包括了上述总体说设计思路中的安防报警功能、远程控制功能、家电控制功能三大模块。安防报警功能模块的级别优先度最高,处于核心地位。远程控制功能模块设计的关键在于无线通信,本文采用的是在国内运用最广泛、可以根据特定用户提供不同种类的通信、是一种多业务系统的GSM通信。借助于GSM通信网络的短消息业务,控制系统可以最大规模的实现短消息远程报警以及远程控制。远程控制过程可以从以下流程反应出来:首先是通过GSM通信网络将用户短信发送到GSM接受设备,接收设备将用户短信的内容读取并且翻译。然后借助于串口输入到微控制器上,微控制器通过识别将用户家居的状态通过GSM接受设备再次以短消息的形式发送到用户手机上,从而完成整个远程控制。需要注意的是通过AT指令才能够实现通信以及调试功能,具体的代码可以从下面体现出来:
AT+CMGF=1 Enter// 其中短消息的格式需要调整为文本格式。
AT+CSCA=“***************” Enter// 中心号码的设置。
AT+CMGS=“***************” Enter// 此时需要输入用户的手机号码,将所要发送的短消息拷贝到缓冲区域中,通过串口功能发送缓冲区域短消息,结束标志以CTRL+Z显示。
AT+CMGR Enter// 读取短消息信息
AT+CMGL Enter// 输出预存短消息
4 结束语
随着社会的发展,智能家居将逐渐成为人们生活的重要组成部分,实现现代生活的智能化。本文介绍了基于远程控制系统下智能家居开发与实现,分别从总体设计、硬件设计、软件设计多视角进行阐述,完善智能家居的远程控制。不但能够实现智能控制的同时,还可以实现远程遥控的目的,改变传统智能家居监、控分离的局面。从另外一方面来讲,想要完全实现智能家居的智能化,其中许许多多的技术难关还有待于解决,特别是科技的发展水平,起着决定性的作用。因此,未来智能家居的发展还需要以科技作为支撑,依靠广大专业化的技术人员以及政府部门、企业的资金、设备的投入,才能够完全实现智能家居的现代化、全智能化,为人们的生活带来更大的便捷。
参考文献
[1]唐晓.智能家居网络系统的基本概念[J].家用电器,2011,12(03):58-59.
[2]曲文静.智能家居系统相关技术及发展趋势[J].计算机运用研究,2010,11(02):33-34.
[3]林旭东.基于GSM短信息的家居设施遥控检测系统设计[J].南京理工大学学报,2011,12(10):9-10.
[4]高小平.中国智能家居的现状及发展趋势研究[J].低压电器,2013,11(04):125-126.
[5]吴超,张鸿凯.智能家居及其发展研究[J].黑龙江科技信息,2011,9(11):43-44.
篇8
【关键词】皮带秤 发展史 传感器 数字传输 远程控制
皮带秤具有传输和称重两种主要功能,从上世纪50年代起电子皮带秤的出现,让皮带秤真正意义的投入到了工农业生产中,增加了人们劳作的效率,为工农业的发展贡献着巨大的力量。
一、皮带秤的发展历程
电子皮带秤是一种能够对固态散装物进行连续称重的计量传输设备。当固态物料通过输送皮带时,皮带秤就可以不间断的测量出输送皮带上通过物料的瞬时流量和累积流量。这种过程完全是连续和自动运行的,在称重输送过程中并不需要操作人员参与。
早在1908年,美国人赫尔伯特.梅里克利用家里废旧的皮带,用杠杆原理制造出了一台皮带能够传动的称重机器,那就是世界上第一台通过皮带和称重天平并且能传动固体的动态称重设备,这是人类史上第一台皮带秤。这个发明颠覆了那个时代对于固体和物料流量的测量方法。后来梅里克公司成立,开始生产皮带秤。大大帮助了人们的生产生活。
在上世纪50年代到60年代期间,皮带秤被广泛应用,代表了那个年代最先进的自动化机械,那时已经产生了电子皮带秤,取代了笨重且操作性危险的原始机械皮带秤。电子皮带秤分三个部分组成:传感器、秤架和二次仪表。
传感器可以感应皮带上经过的物料进行瞬间感应称重和位移感应称重,分别计算物料的瞬间流量和累计流量。当皮带的倾角是水平时,物料的瞬间流量就是称重传感器和位移传感器给出数据的乘积;如果皮带有倾斜角度,就要利用定位传感器进行角度上的修正,确定相对位置后再计算。
二次仪表是在数字式皮带秤出现之前,用来计算的设置。但是它的算法简单且单一,只有归零和计算重量与流速信号乘积的功能。目前的数字式计算不但可以正常运算还增加了温度补偿、数字滤波、模拟检定以及试验精确度和结果判定等等功能。这些都是应用于现代科技的智能软件,所以二次仪表虽然功能丰富计算更加智能,但是却并没有增加成本。
图1电子皮带秤的主要构成
我国从上世纪70年代末开始广泛应用电子皮带秤。由于我国地域辽阔、资源丰富,对电子皮带秤的需求也非常之高。仅仅在鞍钢一家,从原料码头到堆料场,就有超过20台电子皮带秤连续运行。但是说到技术科研方面,我国对于皮带秤的研究发展还很缓慢,很多厂家对于皮带秤的理解还十分有限。但是随着煤矿工业的特殊需求,我国近年来对于皮带秤的技术研究也有了明显进步,利用远程数控来运行电子皮带秤的技术也开始运作。
二、电子皮带秤远程控制系统
(1)现场积算器。现场积算器安装在秤体前端,通过它将重量信号滤波,速度信号通过模数转换后进入单片机,由单片机处理数据并计算出瞬间重量和流积量。通过通讯系统模块发送回控制室的显示仪器。这样在控制室就能整合数据并进行分析。积算器前置让称重传感器距离积算器只有2米左右的距离,所衰减自然降低许多。计算出来的瞬间重量和累计流量更加精准。另外由于积算器被前置到皮带秤旁,可以最快的得到累计重量和累计流量并存储,不会因为像传统皮带秤那样因为通讯故障或者电路短路而丢失数据。
(2)数字传输模块下的远程数字传输和普通电子传输。数字传输的主要设计就是模块式线路,采用数字模块后,远程控制下电子皮带秤的实力得到进一步优化。在传输方面,远程数字传输皮带秤可以在长距离传输过程中做到信号无衰减。这类似于目前的光纤网络技术,在对信号质量的保留度方面相当出色。并且远程数字传输方式提高了物料的计量精度,不会再有由于计算而流失的物料,降低了工业成本。传统电子皮带秤因为采用了模拟信号,所以皮带传输距离短,信号衰减大;在传输距离方面,远程数字传输可以做到至少1200m,最长10km的传输距离,照比传统皮带秤的300m有了质的飞跃;远程数字传输模式下,最大的优势就是“远程”二字,一般普通的通讯模块所能传输信号的距离都能达到千米以上,并且采用不同级别的通讯模块,传输距离也是不同的,因特网模块模式下的通讯距离可以任意设定,达到无限远程;传统皮带秤的积算模式由于积算过程延后,所以不如远程数字传输的现场积算更加精准,传统电子皮带秤的算法大大影响了计量数据的准确性;远程数字传输模式下,操作人员可以通过微型调试器进行现场动作,校秤很方便,但是传统电子皮带秤的校秤需要更多的人力进行合作,且很难达到校秤上的绝对精准;而在成本方面,由于远程数字传输技术采用了目前比较先进的数字模块和远程控制室计算机系统,它的成本自然要比传统电子皮带秤高许多。
电子皮带秤远程数字传输平台的构成,不同于传统电子皮带秤的控制结构,它拥有一个距离可以任意设定的远程控制室。
三、总结
中国作为一个世界工农业大国,工农业生产日益发达。大型电子皮带秤的远程控制系统满足了我国在这方面发展的高水平需求,实现了我国工农业生产向数字化发展的目标,对我国的国家经济意义重大。而且在节能减排的国策下,积极发展技术应用,合理优化能源使用也是国力强盛的根本之一。
参考文献:
[1]方原柏.电子皮带秤的现状和发展动向[J].衡器,2006.
篇9
引言
随着计算机视觉技术以及图像处理技术的不断发展,计算机视觉和视频检测技术已经广泛应用于工业控制、智能交通、设备制造等很多领域。传统的视频检测往往采用工控机作为其视频处理器来实现其功能。这种方法往往由于工控机处理速度的问题,无法实现对各个不同方向同时进行视频检测,而且由于视频检测处理过程需要占用大量的处理时间,因而无法实现实时的远程控制功能。
目前在远程控制和通信方面,基于DOS和Windows操作系统的通信平台得到普遍的引用,但是DOS操作系统作为单任务操作系统,无法实现多任务功能和实时处理的要求;而Windows操作系统作为视窗操作系统,其系统的稳定性和实时性也无法与实时多任务嵌入式操作相比拟。
本文提出一种以DSP作为视频检测处理芯片,以Linux为操作系统的嵌入式系统设计方法。
1 系统结构
本系统的开发主要包括视频检测卡和x86通信平台的设计2个部分。视频检测卡主要包括模拟图像采集、转换、DSP视频检测3个部分,每块交换参数检测卡扩充PCI总线接口,插在通信开发平台的PCI总线插口上,通过PCI总线同通信平台交换数据。通信平台处理多块交通参数检测卡的通信问题,将视频检测卡通过PCI总线传送过来的视频检测数据实时通过网络传送给控制中心。系统的功能方框图如图1所示。
根据系统设计要求,视频检测卡功能主要分为:模拟图像采集、模拟图像A/D转换、数据缓存以及DSP视频检测5个部分。视频检测卡流程如图2所示。
本系统采用Philips公司的SAA7111A来实现模拟图像A/D转换。该芯片可实现多路选通、锁相与时序、时钟产生与测试、ADC、亮色分离等功能。其输出可以具有如下格式:YUV 4:1:1(12bit)、YUV 4:2:2(16bit)、YUV 4:2:2(CCIR-656)(8bit)等。由于DSP处理芯片和SA7111A的时序不同,可以通过CPLD进行逻辑控制FIFO来完成数据缓存的功能。
DSP是实时信号处理的核心。本系统采用TI公司DSP芯片——TMS320C6211。该芯片属C6000的定点系列,C6211在这个系列中是性价比最高的一种。C6211处理器由3个主要部分组成:CPU内核、存储器和外设。集成外设包括EDMA控制器、外存储器接口(EMIF)、主机口(HPI)、多通道缓冲接口(McBSP)、定时器、中断选择子、JTAG接口、PowerDown逻辑以及PLL时钟发生器。通过EMIF接口扩充SDRAM,而PCI总线控制芯片的扩展通过HPI接口。
PCI总线的接口芯片PCI9050,主要包括PCI总线信号接口和本地总线(LOCAL BUS)信号。在硬件设计时,只需将本地总线信号的接口通过电平转换连接到DSP的HPI接口,同时扩展PCI接口就可以完成其硬件电路设计。
2 通信开发平台的嵌入式系统设计
通信开发平台以x86为核心器件,扩充PCI总线,通过Modem拨号,实现x86与Internet的连接。
2.1 PCI总线设备驱动
PCI设备有3种物理空间:配置空间、存储器空间和I/O空间。配置空间是长度为256字节的一段连接空间,空间的定义如图3所示。在配置空间中只读空间有设备标识、供应商代码、修改版本、分类代码以及头标类型。其中供应商代码用来标识设备供应商的代码;设备标识用来标识某一特殊的设备;修改版本标识设备的版本号;分类代码用来标识设备的种类;头标类型用来标识头类型以及是否为多功能设备。除供应商代码之外,其它字段的值由供应商分配。
命令字段寄存器用来提供设备响应的控制命令字;状态字段用来记录PCI总线相关事件(详细的命令控制和状态读取方法见参考文献4)。
基地址寄存器最重要的功能是分配PCI设备的系统地址空间。在基地址寄存器中,bit0用来标识是存储器空间还是I/O地址空间。基地址寄存器映射到存储器空间时bit0为“0”,映射到I/O地址空间时bit0为“1”。基地址空间中其它一些内容用来表示PCI设备地址空间映射到系统空间的起始物理地址。地址空间大小通过向基地址寄存器写全“1”,然后读取其基地址的值来得到。
PCI设备的驱动过程主要包括下面几个步骤。
首先,PCI设备的查找。在嵌入式操作系统中一般提供相应的API函数,在Linux操作系统中通过函数pcibios_find_device(PCI_VENDOR_ID,PCI_DEVICE,index,&bus,&devfn)可以找到供应商代码为PCI-ID,设备标识为PCI-DEVICE的第n(index+1)个设备,并且返回总线号和功能号,分别保存于bus和devfn中。
第2步,PCI设备的配置。通过操作系统提供的API函数访问PCI设备的配置空间,配置PCI设备基址寄存器的配置、中断配置、ROM基地址寄存器的配置等,这样可以得到PCI的存储器空间和I/O地址空闲映射,设备的中断号等。在Linux操作系统中,访问PCI设备配置空间的API函数有pcibios_write_config_byte、pcibios_read_config_byte等,它们分别完成对PCI设备配置空间的读写操作。
第3步,根据PCI设备的配置参数,对不同的设备编写初始化程序、中断服务程序以及对PCI设备存储空间的访问程序。
2.2 远程控制与通信链路的建立
与Internet连接的数据链路方式主要有Ethernet方式和串行通信方式。Ethernet连接方式是一种局域网的连接方式,广泛应用于本地计算机的连接。通过Modem进行拨号连接的串行通信方式,可以实现远距离的数据通信,下面详细介绍串行通信接口协议方式。
串行通信协议有SLIP、CSLIP以及PPP通信协议。SLIP和CSLIP提供一种简单的通过串行通信实现IP数据报封装方式,通过RS232串行接口和调试解调器接入Internet。但是这种简单的连接方式有很多缺陷,如每一端无法知道对方IP地址;数据帧中没有类型字段,也就是1条串行线路用于SLIP就不能同时使用其它协议;SLIP没有在数据帧中加上检验和,当SLIP传输的报文被线路噪声影响发生错误时,无法在数据链路层检测出来,只能通过上层协议发现。
PPP(Point to Point Protocal,点对点协议)修改了SLIP协议中的缺陷。PPP中包含3个部分:在串行链路上封装IP数据报的方法;建立、配置及测试数据链路的链路控制协议(LCP);不同网络层协议的网络控制协议(NCP)。PPP相对于SLIP来说具有很多优势;支持循环冗余检测、支持通信双方进行IP地址动态协商、对TCP和IP报文进行压缩、认证协议支持(CHAP和PAP)等。图4为PPP数据帧的格式。
PPP的实现可以通过2个后台任务来完成。协议控制任务和写任务。协议控制任务控制各种PPP的控制协议,包括LCP、NCP、CHAP和PAP。它用来处理连接的建立、连接方式的协商、连接用户的认证以及连接中止。写任务用来控制PPP设备的数据发送。数据报的发送过程,就是通过写任务往串行接口设备写数据的过程,当有数据报准备就绪,PPP驱动通过信号灯激活写任务,使之完成对串行接口设备的数据发送过程。PPP接收端程序通过在串行通信设备驱动中加入“hook”程序来实现。在串行通信设备接收到1个数据之后,中行设备的中断服务程序(ISR)调用PPP的ISR。当1个正确的PPP数据帧接收之后,PPP的ISR通过调度程序调用PPP输入程序,然后PPP输入程序从串行设备的数据缓存中将整个PPP数据帧读出,根据PPP的数据帧规则进行处理,也就是分别放入IP输入队列或者协议控制任务的输入队列。
PPP现在已经广泛为各种ISP(Internet Sever Provider)接受,而Linux操作系统下完全支持PPP协议。在Linux下网络配置过程中,通过1个Modem建立与ISP的物理上的连接,然后在控制面板(Control Panel)里面选择Netowrks Configuration。在接口(Interface)里面加入PPP设备,填入ISP电话号码、用户以及密码,同时将本地IP和远端IP设置为0.0.0.0,修改/ETC/PPP/OPTION,加上DEFAULTROUE,由ISP提供缺省路由,这样就完成了设备的PPP数据链路设置过程,可以通过Internet实现远程控制。
结束语
该设计方法已成功应用于智能交换系统的交通参数检测系统中。在该系统中,采用4块DSP视频检测卡实现4个不同路面区域的交通参数检测,同时采用Linux作为通信平台的操作系统;通过PPP协议建立与监控中心的连接,实现监控中心对各个视频检测卡的远程控制。
篇10
1远程控制系统模型设计
1.1远程控制系统网络架构随着Internet技术的不断发展,互联网应用范围日益广泛,并且互联网的安全性问题、数据传输的实时性问题也得到了很好的解决,使得各种不同的信号都能保质保量地在互联网上传送。再者,现在数控设备的可控性、开放性越来越好,可以用不同的方式来控制设备的运作。本系统的网络体系结构如图2所示。系统采用B/S(浏览器/服务器)网络模式。服务器采用Windows系统自带的IIS服务器。远程控制客户端由浏览器组成,它们负责与运动控制卡的数据接口,并将参数按一定的协议通过网络传递给后端的服务器进行处理。服务器端有专门处理控制参数的服务程序,服务程序根据控制参数调用动态链接库驱动设备运动。同时服务器端根据服务程序从运动控制卡取得设备的各种状态参数并反馈到客户端,因此客户端能很方便地采集数据和监测设备。
1.2系统工作流程用户在浏览器中输入Web服务器的地址,Web服务器将用Flash制作的控制台用浏览器的形式显示到客户端,客户端根据XML配置文件连接到执行服务器。用户设定好所需参数后提交给应用服务器,应用服务器直接和客户端浏览器建立连接,将运动控制器状态参数传送到浏览器中。当用户发送运动命令时,执行服务器将加工任务映射为运动控制器的数控内核API进行调用,驱动运动控制器实现用户所设定的运动。
2Web远程控制系统的软件设计
2.1远程数据传送技术Internet环境下的“WWW”以“请求-响应”的方式进行工作。客户端浏览器只有不断地向Web服务器发送请求,才能进行数据更新,因而具有被动性和滞后性,无法及时获取远程设备的实时状态信息,而且当网页中仅有部分数据发生了变化,Web服务器也必须重新发送整张网页,加重了Web服务器的负担,降低了数据传输的效率。为此,必须引入数据传送技术,以实现客户端浏览器中网页的自动局部更新。引入数据传送技术后,当远程设备的数据发生变化时或者按照一定的采样周期,服务器可主动向客户端浏览器发送以XML格式封装的仅包含远程设备状态信息的数据,客户端浏览器根据所接收到的数据对网页进行局部更新。
2.2用户端程序设计用户端程序主要是开发Web嵌入式数据接收程序,采用兼容性、跨平台性好的FlashApplication嵌入网页中来实现数据的传送和接收。Flash中内建的XMLSocket对象允许基于FlashApplication的客户端数据接收程序与远程设备上的数据推送程序之间建立基于Socket的连接,并通过该连接进行双向的无限制数据交换。FlashApplication在客户端浏览器中通过XML-Socket向远程设备上的数据推送程序发出连接请求,在与远程设备上的数据推送程序建立连接后,FlashApplication就能够自动接收来自远程设备以XML格式封装的数据,并从中分析出所需信息来刷新浏览器中的网页。当用户提交控制参数后,必须对用户的参数进行XML封装,再传到服务程序中解析。图4是软件的登录界面,登录后可以实现对设备的简单控制以及对各轴运动进行监测。
2.3服务器端程序设计服务器端的程序用C#编写,主要实现以下功能:a.建立线程监听和处理用户端的请求。b.接收和解析客户端传送过来的参数,并根据参数调用动态链接库函数驱动设备运转。c.当驱动设备工作后,启动监测线程,监测机器各轴的状态,并把状态、限位等状态参数封装传送到客户端。用户打开浏览器对机器进行远程操作时,服务程序创建一个缓冲区用来接收用户封装的数据,然后取得封装数据首节点的第一个子级,通过节点关系可以一级级地解析出子节点的内容。所有的请求数据都采用这种解析的方法处理。服务程序不断地从设备中取得状态参数,并把参数封装传送到用户浏览器端。由于采用了XML数据封装与解析技术,避免了客户端网页无休止地刷新。
3实现对终端设备的远程控制
在深圳地铁公司运营总部综合监控实验室,运行远程控制系统的客户端程序,通过Internet网络成功实现对快速成形机各轴的移动控制及坐标位置反馈。
4结束语