WSN技术的智能仓储环境监测与智能控制系统设计与实[67页].docx
《WSN技术的智能仓储环境监测与智能控制系统设计与实[67页].docx》由会员分享,可在线阅读,更多相关《WSN技术的智能仓储环境监测与智能控制系统设计与实[67页].docx(67页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、最新资料推荐项目十 基于WSN技术的智能仓储环境监测与智能控制系统设计与实现一、教学目标1、 掌握WSN网关通信的相关应用。2、 掌握WSN实现了信息的采集、信息传输和信息处理模式。3、 掌握WSN实现仓储环境监控智能化技术方法。二、教学内容10.1设备简介10.1.1 WSN网关图10-1 WSN网关图 供电电源:DC5V,信号获取接口:USB,上位机通信接口:以太网口,操作系统:Linux。网关通过USB与协调器连接,并通过协调器与各Zigbee节点进行信号通讯。10.1.2协调器图10-2 协调器图供电方式:USB供电。该设备为网关与各传感器节点的中继,负责转发Zigbee信号。10.1
2、.3温湿度传感器模块图10-3 温湿度传感模块图供电方式:DC5V,通讯协议:Zigbee。集成模块:温湿度传感器。该节点可采集温湿度数据,并通过Zigbee协议传输到网关,上位机通过访问网关获取温湿度数据。10.1.4电磁继电器模块图10-4电磁继电器模块图供电方式:DC5V,继电器控制路数:4路,与网关通信协议:Zigbee。该继电器可控制四路电源,在京胜世纪的实验台中,控制了两路灯光、一路风扇和一路电磁门。10.2类的设计与实现在本部分实训中我们要用到数据库来存储当前各个节点的信息,以面向对象的思想为例,我们需要先编写几对数据库操作的基础类和将节点信息保存的对象类。10.2.1 DBCo
3、nnection.cs类这个类文件是要对数据库进行连接操作,登录到本地的数据库。引用命名空间。该命名空间是SQL Server.NET数据提供者,是SQL Server专用的内置.NET提供者,引用该命名空间后就可以获得最好的性能和对基础功能的最直接访问。using System.Data.SqlClient; 添加变量 private string str; private SqlCommand sqlcom; private SqlConnection conn;在构造函数中写入连接数据库方法/ / 连接数据库的方法 / public DBConnection() /定义了要连接的数据库的
4、位置,数据库的名称,登录帐号和密码 this.str = Server=localhost;DataBase=SmartShelfD;uid=sa;pwd=123; this.conn = new SqlConnection(str); this.sqlcom = new SqlCommand(); this.sqlcom.Connection = this.conn; this.conn.Open(); 上边定义了两个全局变量,分变是字符型str,变量量为数据库连接字符串内容:Server表示正在访问的数据库服务器名称,其格式是“计算机名实例名”,如果是本地的数据库服务器并且使用的是SQL
5、Server的默认实例名,则可以使用(Local)或.来表示。DataBase表示数据库名称,即该项目所要连接的数据库名;Uid表示数据库服务器的登录名称;Pwd表示数据库服务器的密码。返回数据连接方法/ / 返回数据连接方法 / / public SqlConnection GetConnection() return this.conn; 10.2.2 DBOperate.cs类该类的作用是对程序中的要用到的对数据库的操作进行统一,涉及到对数据库的操作时,如对数据库的增删改操作,都可以直接调用该类,相应的方法。传入相应的参数即可。添加引用using System.Data.SqlClien
6、t;using System.Data;定义变量SqlCommand sqlcom;SqlConnection conn;默认构造方法 / / 构造函数 / / public DBOperate(DBConnection dbc) sqlcom = new SqlCommand(); sqlcom.Connection = dbc.GetConnection(); 编写执行方法/ / 执行sql语句 / / public void ExecuteSQL(string sql) this.sqlcom.CommandText = sql; try this.sqlcom.ExecuteNonQu
7、ery(); catch / / 获取数据表格的方法 / / / sql语句 public DataTable GetDataTable(string sql) this.sqlcom.CommandText = sql; SqlDataAdapter sda = new SqlDataAdapter(this.sqlcom); DataSet ds = new DataSet(); DataTable dt = new DataTable(); try sda.Fill(ds); dt = ds.Tables0; catch return dt; / / 执行SQL语句,获取string类型
8、数据 / / SQL语句 / 获取到的string类型数据 public string GetString(string sql) string resultStr = ; this.sqlcom.CommandText = sql; try resultStr = this.sqlcom.ExecuteScalar().ToString(); catch (SqlException e) finally this.sqlcom.Dispose(); return resultStr; public int GetInt(string sql) int resultInt = 0; this.
9、sqlcom.CommandText = sql; try resultInt = Convert.ToInt32(this.sqlcom.ExecuteScalar().ToString(); catch (SqlException e) System.Windows.Forms.MessageBox.Show(e.Message); finally this.sqlcom.Dispose(); return resultInt; 本资源是基于SQL Server开发的,所以可以使用using指令可以引用SQL Server 专用的.NET数据库提供者:using System.Data.S
10、qlClient;提取数据库中数据的4步:1) 连接数据源2) 打开连接3) 发出一个SQL查询命令4) 执行命令语句SqlConnection是一个用于SQL .NET数据提供者的连接对象名称,表示 SQL Server 数据库的一个打开的连接。SqlConnection 对象表示与 SQL Server 数据源的一个唯一的会话。对于客户端/服务器数据库系统,它等效于到服务器的网络连接。SqlConnection 与 SqlDataAdapter 和 SqlCommand 一起使用,可以在连接 Microsoft SQL Server 数据库时提高性能。Server=localhost;Da
11、taBase=AccessControl;uid=sa;pwd=123Server=localost,表示正在访问的SQL Server名称,其格式是“计算机名实例名”。计算机名(localhost)是一个非常方便的SQL Server简短名称,它表示运行在当前机器上的服务器实例。DataBase=AccessControl,指定数据库的名称。uid=sa;pwd=123,表示登录数据库的用户名和密码,这是SQL Server和Windows的标准内置安全。this.conn.Open();打开数据库的连接。CommandText属性获取或设置要对数据源执行的 SQL 语句或存储过程。Exec
12、uteNonQuery ()方法,对连接执行 SQL 语句并返回受影响的行数。SqlDataAdapter 类表示用于填充 DataSet 和更新 SQL Server 数据库的一组数据命令和一个数据库连接。SqlDataAdapter 是 DataSet 和 SQL Server 之间的桥接器,用于检索和保存数据。DataSet 是 ADO.NET 结构的主要组件,它是从数据源中检索到的数据在内存中的缓存。DataSet 由一组 DataTable 对象组成。try-catch 语句由一个 try 块后跟一个或多个 catch 子句构成,这些子句指定不同的异常处理程序。try 块包含可能导致
13、异常的保护代码。该块一直执行到引发异常或成功完成为止。例如,下列强制转换 null 对象的尝试引发 NullReferenceException 异常:object o2 = null;try int i2 = (int)o2; /错误10.2.3 ObjCargoNode.cs类该类是对节点信息与数据库中的进行操作进行的修改。节点加入网络后,段地址会存储到数据库中。对当前节点的识别也需要读取数据库中已输入的节点信息。添加命名空间using System.Data;定义变量private int cargo; private string iEEEAddress; private string
14、 shortAddress; private int nodeType;构造函数 public ObjCargoNode() public ObjCargoNode(int cargo) this.cargo = cargo; DataTable dtb = Program.dbo.GetDataTable(string.Format(select Cargo,IEEEAddress,ShortAddress,NodeType from CargoNode where Cargo=0 , this.cargo); DataRow row = dtb.Rows0; this.cargo = Co
15、nvert.ToInt32(rowCargo.ToString(); this.iEEEAddress = rowIEEEAddress.ToString(); this.shortAddress = rowShortAddress.ToString(); this.nodeType = Convert.ToInt32(rowNodeType.ToString(); 属性public int Cargo get return this.cargo; public string IEEEAddress get return this.iEEEAddress; public string Shor
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 67页 WSN 技术 智能 仓储 环境监测 控制系统 设计 67
限制150内