ImageVerifierCode 换一换
格式:DOCX , 页数:40 ,大小:1.53MB ,
资源ID:23779396      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/23779396.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(计算机控制工程大型实验位置监控系统.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

计算机控制工程大型实验位置监控系统.docx

1、计算机控制工程大型实验位置监控系统实验一 位置监控系统一. 实验目的 通过本实验了解GPS位置监控的工作原理,了解GIS相关知识,掌握并应用数据库以及WEB相关知识,熟练运用VC+串口通信。二. 实验内容1. 开发虚拟GPS接受/发送机; 2. 在数据库中存储位置信息; 3. 设计串口程序接受并解析GPS信息; 4. 在监控界面显示GPS信息的位置。三. 实验环境1. Microsoft Visual C+ 6.0;2. VSPD 6.9虚拟串口软件;3. MySQL或者Sql Server数据库。4. Eclipse+JDK+Tomcat;四. 系统原理框图五. 实验步骤1. 安装mysql

2、数据库; MySQL是一个关系型数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性,在WEB应用方面 MySQL 是最好的关系数据库管理系统应用软件之一。(1)、首先单击MySQL5.5.21的安装文件,出现该数据库的安装向导界面,单击“next”继续安装,如图所示:(2)、在打开的窗口中,选择接受安装协议,单击“next”继续安装,如图所示:(3)、在出现选择安装类型的窗口中,有“typical(默认)”、“Complete(完全)”、“Custom(用户自定义)”三个选项,我们选择“Custom”,因为通过自定义可以更加的让我

3、们去熟悉它的安装过程,单击“next”继续安装,如图所示:(4)、在出现自定义安装界面中选择mysql数据库的安装路径,这里我设置的是“d:Program FileMySQL”,单击“next”继续安装,如图所示:(5)、接下来进入到准备安装的界面,首先确认一下先前的设置,如果有误,按“back”返回,没有错误,单击“Install”按钮继续安装,如图所示:(6)、单击“Install”按钮之后出现如下正在安装的界面,经过很少的时间,MySQL数据库安装完成,出现完成MySQL安装的界面,如图所示:这个界面单击“next”就行。注意要选择上边的“Launch the MySQL Instanc

4、e Configuration Wizard”选项,这是启动MySQL的配置,单击“Finish”按钮,进入到配置界面。(7)、MySQL数据库的安装十分简单,关键是安装完成之后的配置,单击完成之后出现如下的配置界面向导,单击“next”进行配置,如图所示:(8)、在打开的配置类型窗口中选择配置的方式,“Detailed Configuration(手动精确配置)”、“Standard Configuration(标准配置)”,为了熟悉过程,我们选择“Detailed Configuration(手动精确配置)”,单击“next”继续,如图所示:(9)、在出现的窗口中,选择服务器的类型,“De

5、veloper Machine(开发测试类)”、“Server Machine(服务器类型)”、“Dedicated MySQL Server Machine(专门的数据库服务器)”,我们仅仅是用来学习和测试,默认就行,单击“next”继续,如图所示:(10)、在出现的配置界面中选择mysql数据库的用途,“Multifunctional Database(通用多功能型)”、“Transactional Database Only(服务器类型)”、“Non-Transactional Database Only(非事务处理型)”,这里我选择的是第一项,通用安装,单击“next”继续配置,如图所

6、示:(11)、在出现的界面中,进行对InnoDB Tablespace进行配置,就是为InnoDB 数据库文件选择一个存储空间,如果修改了,要记住位置,重装的时候要选择一样的地方,否则可能会造成数据库损坏,当然,对数据库做个备份就没问题了,如图所示:(12)、在打开的页面中,选择mysql的访问量,同时连接的数目,“Decision Support(DSS)/OLAP(20个左右)”、“Online Transaction Processing(OLTP)(500个左右)”、“Manual Setting(手动设置,设置为15个)这里选择手动设置,单击“next”继续,如图所示:(13)、在打

7、开的页面中设置是否启用TCP/IP连接,设定端口,如果不启用,就只能在自己的机器上访问mysql数据库了,这也是连接java的操作,默认的端口是3306,并启用严格的语法设置,单击“next”继续,如图所示:(14)、在打开的字符编码的页面中,设置mysql要使用的字符编码,第一个是西文编码,第二个是多字节的通用utf8编码,第三个是手动,我们选择utf-8或者是gbk,单击“next”,继续配置,如图所示:(15)、在打开的页面中选择是否将mysql安装为windows服务,还可以指定Service Name(服务标识名称),是否将mysql的bin目录加入到Windows PATH(加入后

8、,就可以直接使用bin下的文件,而不用指出目录名,比如连接,“mysql u username p password;”就可以了,单击“next”继续配置,如图所示:(16)、在打开的页面中设置是否要修改默认root用户(超级管理员)的密码(默认为空),“New root password”,如果要修改,就在此填入新密码,并启用root远程访问的功能,不要创建匿名用户,单击“next”继续配置,如图所示:(17)、到这里所有的配置操作都已经完成,单击Execute按钮执行配置,如图所示:(18)、过了几分钟,出现如下的提示界面就代表MySQL配置已经结束了,并提示了成功的信息。(19)、在服务

9、中将mysql数据库启动,并在命令窗口中输入“mysql h localhost u root -p”,接着在出现的提示中输入用户的密码,如图所示:从图中可以看到mysql数据库在启动之后,成功的登录了,在此我们可以对数据库进行操作了。具体步骤也可参考此链接:2. 在数据库中存储模拟的GPS位置信息可以使用mysql可视化工具进行建表和存储数据(这里不做介绍),主要介绍下使用命令行进行建表和存储数据,在运行中输入cmd打开命令行;在命令窗口中输入“mysql h localhost u root -p”,接着在出现的提示中输入用户的密码,如图所示:从图中可以看到mysql数据库在启动之后,成功

10、的登录了;然后输入use mydb;使用创建的mydb数据库;输入show tables;语句,查看数据库中所有表信息;创建一张表名为GPS含有一个ID和一个GPS字段的表,如图所示:再创建一张表名为savegps,含有ID和GPS两个字段的表,如图所示:在GPS表中存入三组数据,30.2263817373,120.0299807650;29.5149540000,120.9003580000;40.0069050000,116.3350970000如图所示: 至此,模拟的GPS数据已经存入数据库中。3. 安装配置对应的mysql数据源:我们这边提供的mysql数据库版本为5.5.20,对应可

11、用的数据源为MyOBDC-3.51.11-2win1.exe;这个数据源为32位数据源;32位系统可以直接在控制面板-管理工具-ODBC数据源中配置,64位系统若在控制面板中找不到32位的ODBC数据源则在C:WindowsSysWOW64中打开odbcad32.exe进行配置;打开ODBC数据源到系统DSN中点击添加选中MySQL ODBC 3.51 Driver,再点击完成填写完对应信息后,点击ok;保存设置此时,数据源就添加完成。4. 开发模拟GPS获取发送机如图在VC6.0环境下创建对话框程序,界面设计可以参考图中所示,含有GPS获取按钮和GPS发送按钮,还有定时发送功能,还有一些串口

12、通信按钮可以参考TTY发送/接受程序,这里主要讲VC+从数据库中获取信息和把信息存储到数据库中。本例中VC+运用ADO技术实现对数据库的访问,以连接MySQL数据库为例。1) 初始化ADO在应用程序的文件stdafx.h中加入如下语句:/加入ADO支持库#import C:Program FilesCommon FilesSystemadomsado15.dll no_namespace rename(EOF,adoEOF) 2) 创建ADO与数据库源的连接 为了实现ADO与数据库的连接,我们首先要在程序APP类CGET_DATAApp的头文件GET_DATA.h中,添加如下的三个智能指针变量

13、。 _RecordsetPtr m_pRecordset; _CommandPtr m_pCommand; _ConnectionPtr m_pConnection; 然后,在应用程序类InitInstance成员函数中初始化OLE/COM库环境,创建ADO连接等操作。 m_pConnection-Open(DSN=mysql;Server=localhost;DATABASE=mydb,root,adModeUnknown); 这个语句为连接数据库的语句,内容和配置数据源时的信息对应上,DSN为数据源名,Server为服务器名,可以是IP地址(这里是本地数据库),DATABASE为关联的数据

14、库名,后面两个为用户名和密码。 在GET_DATADlg.h中添加三个指针类型的成员变量: _RecordsetPtr m_pRecordset; _CommandPtr m_pCommand; _ConnectionPtr m_pConnection;在GET_DATADlg.cpp文件中添加代码。在#endif下面添加如下代码:externCGET_DATAApptheApp;/在此引用应用类中的theApp来获取库连接指针CString DisplayGps; /两个全局变量int RT;双击获取GPS按钮,在按钮上添加以下函数: 设置定时发送按钮,首先在CGET_DATADlg类向导中

15、添加WM_TIMER函数在函数中添加代码:在定时发送和关闭定时发送按钮中添加代码:编译执行点击获取GPS按钮可以从数据库中获取GPS信息显示在编辑框中,如图所示:5. 设计制作串口通信接受程序,接受GPS信息并存储到数据库中。 设计界面供参考如图所示:ADO的基本配置如2中所述,然后在ReceiveGps.cpp中添加返回类型为_RecordsetPtr的成员变量ExcuteCommandADO(CString strSQL),编写函数代码。在串口通信函数OnOnCommMscomm()中添加一下代码void CReceiveGpsDlg:OnOnCommMscomm() / TODO: Ad

16、d your control notification handler code here int iLast = 0; / 接受字符个数 CString strDis, strTemp,GpsInfo; VARIANT input1; /定义VARIANT类型变量 BYTE rxdata2048; /定义存放二进制数据的数组 COleSafeArray safearray1; /定义COleSafeArray类的实例 UpdateData(true); switch(m_Comm.GetCommEvent() case 2: while(m_Comm.GetInBufferCount()iL

17、ast) iLast=m_Comm.GetInBufferCount(); Sleep(100); /收到iLast个字符 /读取输入缓冲区数据 input1=m_Comm.GetInput(); /将VARAIANT变量赋值给COleSafeArray类的实例 safearray1=input1; /使用COleSafeArray类的成员函数获取数据长度 long len1=safearray1.GetOneDimSize(); for(long k=0;k0) for(int i=0;iparameter.length;i+) pt.setString(i+1, parameteri);

18、int enter=0; enter=pt.executeUpdate(); if(enter=1) flag=true; catch (Exception e) / TODO: handle exception e.printStackTrace(); finally closemysql(); return flag; /* * category 数据库数据查询 * param sql String 数据库查询语句 * param parameter String 数据库查询约束条件 * return lists List返回一个List的对象 */ public List SelectD

19、ata(String sql,String parameter) List lists=new ArrayList(); try conn=DBConnection.getConnection(); pt=conn.prepareStatement(sql); if(parameter!=null¶meter.length0) for(int i=0;iparameter.length;i+) pt.setString(i+1, parameteri); rs=pt.executeQuery(); ResultSetMetaData rsm=rs.getMetaData(); whil

20、e(rs.next() Map map=new HashMap(); for(int i=0;irsm.getColumnCount();i+) map.put(i, rs.getString(i+1); lists.add(map); catch (SQLException e) / TODO Auto-generated catch block e.printStackTrace(); finally closemysql(); return lists; /* * category 数据库数据查询 * param sql String 数据库查询语句 * param parameter

21、String 数据库查询约束条件 * return lists List返回一个List的对象 */ public List SelectDataInt(String sql,Integer parameter) List lists=new ArrayList(); try conn=DBConnection.getConnection(); pt=conn.prepareStatement(sql); if(parameter!=null¶meter.length0) for(int i=0;iparameter.length;i+) pt.setInt(i+1, parameteri); rs=pt.executeQuery(); ResultSetMetaData rsm=rs.getMetaData(); while(rs.next() Map map=new HashMap(); for(int i=0;irsm.getColumnCount();i+) map.put(i, rs.getString(i+1); lists.add(map); catch (SQLException e) / TODO Auto-generated catch block e.printStackTrace(); finally closemysq

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1