- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
学士学位设计(论文)中期报告物联网工程学院通信工程1101颜 心学号:0702110115一、毕业论文(设计)计划进度安排第1-2周:根据课题要求收集资料、查阅相关文献资料、确定总体方案,完成开题报告,并完成相关外文文献的翻译; 第3-6周:确定具体方案,学习和掌握数据库等相关知识,以为软件的各模块的设计做准备; 第7-10周:进行显示和控制界面布局的设计、数据存储程序,数据通信协议等的设计; 第11-14周:对照设计要求调试性能,利用串口调试助手和虚拟串口添加软件; 第15-16周:完成毕业论文,准备答辩。二、已完成情况、存在的主要问题及拟解决措施1.毕业设计题目:基于工控机的多路数据采集系统软件平台开发;2.毕业设计要求:用多个RS485串口与对应的下位机相连,实现对应下位机模块温度、湿度信息向PC机的发送,并把接收到的信息存储在数据库中以待查询。该方案采用多个RS485串口作为PC上位机和下位机之间的通信媒介,主要采集两个大棚内的温度和湿度信息。其中,每个大棚都有1个温度模块、4个湿度模块和1个控制模块。1)温度模块总共有8个传感器,轮次发送每个传感器的温度信息;2)每个湿度模块也有8个传感器,轮次发送每个湿度传感器的湿度信息。这些信息都有具体的帧格式,且具体的温度和湿度采用4位16进制数的格式。上位机程序,每当对应串口的缓存区出现数据,都会读取数据,然后清空缓存区,并将数据显示到对应的TextBox中,同时存放到数据库对应的表中。本程序采用VS2010编程环境,使用C#.NET语言设计和SQL Server 2008数据库存储数据。1)串口通信程序模块:首先添加SerialPort控件serialPort1.Open(); //打开对应串口private void serialPort1_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e) //触发串口读取缓存区数据 { data = serialPort1.ReadExisting();this.Invoke(new EventHandler(DisplayText_1)); //调用显示函数 } 2) 数据显示程序模块 private void DisplayText_2(object sender,EventArgs e) //显示函数 { char[] data1 = data.ToCharArray(); //字符串转换成字符数组 string str1 = data.Substring(8, 2); //取子串 string str2 = data.Substring(10, 2); string data2 = str2 + str1; //字符串连接 int temp1 = Convert.ToInt32(data2, 16); data2 = Convert.ToString(temp1, 10); //类型转换 decimal temp2 = Convert.ToDecimal(data2) / 10; string strAnalysisTime = DateTime.Now.ToString(); ADD(1,1,Convert.ToInt32(data.Substring(5,2)),temp2,strAnalysisTime); //调用数据库存储程序 string x = temp2.ToString(); switch (data1[7]) //具体显示 { case 1: textBox2_1.Text = x; break; case 2: textBox2_2.Text = x; break; case 3: textBox2_3.Text = x; break; case 4: textBox2_4.Text = x; break; case 5: textBox2_5.Text = x; break; case 6: textBox2_6.Text = x; break; case 7: textBox2_7.Text = x; break; case 8: textBox2_8.Text = x; break; } }3) 数据库存储程序模块string constr = server=MrYan-PC;database=First_Db;uid=sa;pwd=*******; private void ADD(int a, int b, decimal c,string d) //数据库添加数据函数 { SqlConnection conn = new SqlConnection(constr); //建立数据库连接实例
原创力文档


文档评论(0)