欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    项目十 基于WSN技术的智能仓储环境监测与智能控制系统设计与实现Word格式文档下载.docx

    • 资源ID:7276429       资源大小:287.99KB        全文页数:102页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    项目十 基于WSN技术的智能仓储环境监测与智能控制系统设计与实现Word格式文档下载.docx

    1、using System.Data.SqlClient; 添加变量 private string str; private SqlCommand sqlcom; private SqlConnection conn;在构造函数中写入连接数据库方法/ / 连接数据库的方法 / public DBConnection() /定义了要连接的数据库的位置,数据库的名称,登录帐号和密码 this.str = Server=localhost;DataBase=SmartShelfD;uid=sa;pwd=123; this.conn = new SqlConnection(str); this.sqlc

    2、om = new SqlCommand(); this.sqlcom.Connection = this.conn; this.conn.Open(); 上边定义了两个全局变量,分变是字符型str,变量量为数据库连接字符串内容:Server表示正在访问的数据库服务器名称,其格式是“计算机名实例名”,如果是本地的数据库服务器并且使用的是SQL Server的默认实例名,则可以使用(Local)或.来表示。DataBase表示数据库名称,即该项目所要连接的数据库名;Uid表示数据库服务器的登录名称;Pwd表示数据库服务器的密码。返回数据连接方法 / 返回数据连接方法returns public S

    3、qlConnection GetConnection() return this.conn;10.2.2 DBOperate.cs类该类的作用是对程序中的要用到的对数据库的操作进行统一,涉及到对数据库的操作时,如对数据库的增删改操作,都可以直接调用该类,相应的方法。传入相应的参数即可。添加引用using System.Data;定义变量SqlCommand sqlcom;SqlConnection conn;默认构造方法 / 构造函数param name=dbc/param public DBOperate(DBConnection dbc) sqlcom = new SqlCommand()

    4、; sqlcom.Connection = dbc.GetConnection();编写执行方法 / 执行sql语句sql public void ExecuteSQL(string sql) this.sqlcom.CommandText = sql; try this.sqlcom.ExecuteNonQuery(); catch / 获取数据表格的方法sql语句 public DataTable GetDataTable(string sql) SqlDataAdapter sda = new SqlDataAdapter(this.sqlcom); DataSet ds = new D

    5、ataSet(); DataTable dt = new DataTable(); sda.Fill(ds); dt = ds.Tables0; catch return dt; / 执行SQL语句,获取string类型数据SQL语句获取到的string类型数据 public string GetString(string sql) string resultStr = resultStr = this.sqlcom.ExecuteScalar().ToString(); catch (SqlException e) finally this.sqlcom.Dispose(); return

    6、resultStr; public int GetInt(string sql) int resultInt = 0; resultInt = Convert.ToInt32(this.sqlcom.ExecuteScalar().ToString(); System.Windows.Forms.MessageBox.Show(e.Message); return resultInt;本资源是基于SQL Server开发的,所以可以使用using指令可以引用SQL Server 专用的.NET数据库提供者:提取数据库中数据的4步:1) 连接数据源2) 打开连接3) 发出一个SQL查询命令4)

    7、执行命令语句SqlConnection是一个用于SQL .NET数据提供者的连接对象名称,表示 SQL Server 数据库的一个打开的连接。SqlConnection 对象表示与 SQL Server 数据源的一个唯一的会话。对于客户端/服务器数据库系统,它等效于到服务器的网络连接。SqlConnection 与 SqlDataAdapter 和 SqlCommand 一起使用,可以在连接 Microsoft SQL Server 数据库时提高性能。DataBase=AccessControl;Server=localost,表示正在访问的SQL Server名称,其格式是“计算机名实例名”

    8、。计算机名(localhost)是一个非常方便的SQL Server简短名称,它表示运行在当前机器上的服务器实例。DataBase=AccessControl,指定数据库的名称。pwd=123,表示登录数据库的用户名和密码,这是SQL Server和Windows的标准内置安全。this.conn.Open();打开数据库的连接。CommandText属性获取或设置要对数据源执行的 SQL 语句或存储过程。ExecuteNonQuery ()方法,对连接执行 SQL 语句并返回受影响的行数。SqlDataAdapter 类表示用于填充 DataSet 和更新 SQL Server 数据库的一组

    9、数据命令和一个数据库连接。SqlDataAdapter 是 DataSet 和 SQL Server 之间的桥接器,用于检索和保存数据。DataSet 是 ADO.NET 结构的主要组件,它是从数据源中检索到的数据在内存中的缓存。DataSet 由一组 DataTable 对象组成。try-catch 语句由一个 try 块后跟一个或多个 catch 子句构成,这些子句指定不同的异常处理程序。try 块包含可能导致异常的保护代码。该块一直执行到引发异常或成功完成为止。例如,下列强制转换 null 对象的尝试引发 NullReferenceException 异常:object o2 = nul

    10、l;try int i2 = (int)o2; /错误10.2.3 ObjCargoNode.cs类该类是对节点信息与数据库中的进行操作进行的修改。节点加入网络后,段地址会存储到数据库中。对当前节点的识别也需要读取数据库中已输入的节点信息。添加命名空间private int cargo; private string iEEEAddress; private string shortAddress; private int nodeType;构造函数 public ObjCargoNode() public ObjCargoNode(int cargo) this.cargo = cargo;

    11、 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 = Convert.ToInt32(rowCargo.ToString(); this.iEEEAddress = rowIEEEAddress.ToString(); this.shortAddress = rowShortAddr

    12、ess this.nodeType = Convert.ToInt32(rowNodeType属性public int Cargo get return this.cargo; public string IEEEAddress return this.iEEEAddress; public string ShortAddress return this.shortAddress; set this.shortAddress = value; public int NodeType return this.nodeType;方法public void Insert() Program.dbo.

    13、ExecuteSQL(string.Format(update CargoNode set ShortAddress= where IEEEAddress=1, this.shortAddress, this.iEEEAddress);10.3功能设计与实现该部分实训内容主要是通过程序和wsn的网关进行通信,这里我们需要学习关于wsn网关通信的相关应用。该模块程序中的代码,在后面会分解出来应用。向窗体中添加一个TabControl控件,在TabPages属性添加6个成员。控件Name属性Text属性UseVisualStyleBackColor属性TabPagetpConnect建立连接Tru

    14、etpPingPing指令tpConfigReadConfig_Read指令tpConfigWriteConfig_Write指令tpSensorReadSensor_Read指令tpSensorWriteSensor_Write指令10.3.1创建建立连接1、建立连接TabPage窗体属性,窗体如图10-5所示。 图10-5 Zigbee节点连接实验图向窗体添加1个SplitContainer控件,2个GroudBox控件,8个Label控件,9个TextBox控件,4个Button控件。更改窗体和控件属性:2、设置窗体属性窗体StartPosition属性MaximizeBox属性Mini

    15、mizeBox属性FormBorderStyle属性frmGoodsOutCenterParentFalseFixedSingleZigbee节点连接实验3、设置Lable控件属性T1通道SocketLablelblIPAddressT1IP地址lblPortT1端口号lblAppIDT1AppIDlblPasswordT1PasswordT2通道SocketlblIPAddressT2lblPortT2lblAppIDT2lblPasswordT24、设置TextBox属性TextBoxtxtIPAddressT1192.168.1.230txtPortT14000txtAppIDT1100

    16、1txtPasswordT1KingvczigvinetxtIPAddressT2txtPortT2txtAppIDT2txtPasswordT25、设置显示信息内容的TextBox属性Dock属性Multiline属性ReadOnle属性ScorllBars属性txtMessageConnectFillVertical6、设置GroupBox控件属性GroupBoxgbSocket_T1gbSocket_T27、设置Button按钮事件ButtonbtnConnectSocketT1SocketT1连接btnConnectT1T1通道连接btnConnectSocketT2SocketT2连

    17、接btnConnectT2T2通道连接8、窗体后台代码:1) 定义变量 /定义一个函数结构的委托 private delegate void ShowMessageDel(TextBox txt, string msg); private delegate void ShowMessageDelOfTempLabel(Label lbl, string value); /实例化T1数据包消息类 private GRIP_Message messageT1 = new GRIP_Message(); /实例化T2数据包消息类 private GRIP_Message messageT2 = ne

    18、w GRIP_Message(); /定义T1Socket通讯接口 private Socket socketT1; /定义T2Socket通讯接口 private Socket socketT2; /定义T1通道流水号 private UInt16 sequenceIDT1; /定义T2通道流水号 private UInt16 sequenceIDT2; private int time; /定义一个线程 private Thread thread; /sessionID为连接后网关随机分配的一个标识ID private string sessionID = 2) 构造函数 public f

    19、rmZigBee() InitializeComponent();3) 编写方法Socket发送消息方法 / Socket发送消息方法msgSend要发送的字节数组socketSocket实例lenSend已发送的长度 private void SendMsg(byte msgSend, Socket socket, int lenSend) /需对发送的字节长度有明确认识,发送一段字节后需要加上该段字节的长度 while (lenSend msgSend.Length) lenSend += socket.Send(msgSend, lenSend, msgSend.Length - len

    20、Send, SocketFlags.None);Socket接收信息的方法 / / Socket接收消息方法msgRecv要接收的字节数组lenRecv已接收的长度 private void RecvMsg(byte msgRecv, Socket socket, int lenRecv) while (lenRecv msgRecv.Length) lenRecv += socket.Receive(msgRecv, lenRecv, msgRecv.Length - lenRecv, SocketFlags.None);在控件中显示信息的方法/ / 在控件中显示消息的方法txtmsg pr

    21、ivate void ShowMessage(TextBox txt, string msg) if (txt.InvokeRequired) ShowMessageDel smd = new ShowMessageDel(ShowMessage); txt.Invoke(smd, txt, msg); else txt.Text += rn【 + DateTime.Now.ToString(yyyy-MM-dd hh-mm-ss) + 】 + msg;在Label控件中显示消息的方法 / 在Label控件中显示消息的方法lbl控件名称value要显示的值 private void ShowTempValue(Label lbl, string value) if (lbl.InvokeRequired) ShowMessageDelOfTempLabel smd = new ShowMessageDelOfTempLabel(ShowTempValue); lbl.Invoke(smd, lbl, value); lbl.Text = value;线程方法summ


    注意事项

    本文(项目十 基于WSN技术的智能仓储环境监测与智能控制系统设计与实现Word格式文档下载.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开