综合布线V4.docx

上传人:b****6 文档编号:7386644 上传时间:2023-05-11 格式:DOCX 页数:14 大小:534.99KB
下载 相关 举报
综合布线V4.docx_第1页
第1页 / 共14页
综合布线V4.docx_第2页
第2页 / 共14页
综合布线V4.docx_第3页
第3页 / 共14页
综合布线V4.docx_第4页
第4页 / 共14页
综合布线V4.docx_第5页
第5页 / 共14页
综合布线V4.docx_第6页
第6页 / 共14页
综合布线V4.docx_第7页
第7页 / 共14页
综合布线V4.docx_第8页
第8页 / 共14页
综合布线V4.docx_第9页
第9页 / 共14页
综合布线V4.docx_第10页
第10页 / 共14页
综合布线V4.docx_第11页
第11页 / 共14页
综合布线V4.docx_第12页
第12页 / 共14页
综合布线V4.docx_第13页
第13页 / 共14页
综合布线V4.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

综合布线V4.docx

《综合布线V4.docx》由会员分享,可在线阅读,更多相关《综合布线V4.docx(14页珍藏版)》请在冰点文库上搜索。

综合布线V4.docx

综合布线V4

信电学院

电子信息工程专业CDIO三级项目

项目设计说明书

(2013/2014学年第二学期)

项目名称:

基于单片机活动门控制系统的实现

——上位机设计

专业班级:

学生姓名:

学号:

指导教师:

设计周数:

2周

设计成绩:

2014年6月25日

1项目概述

1.1引言

“活动门”是统称,泛指可以左右或者上下平衡活动自由打开的门,有手控开关活动门,红外感应活动门,声音感应活动门等,它们在我们的日常生活中扮演着重要的角色,为我们的生活带来了极大的便利。

因此设计一套安全实用的活动门系统是当今社会的发展趋势。

1.2开发环境

本系统是基于51单片机控制的活动门控制系统,通过改变引脚的正负电位控制直流电机的正反转,从而实现活动门的开关;本系统的上位机是Web版管理界面通过串行口传输信令完成对单片机的控制,最终实现活动门的开关。

2需求分析

2.1目标

⑴系统分析与设计:

对系统进行调研,详细分析系统,设计出基于单片机的活动门控制系统的技术方案;

⑵设计实现系统的关系技术:

电机驱动、门限电路、软件控制;

⑶系统电路的设计与实现:

器件选择、地址分配和硬件连接;

⑷系统软件的设计与实现:

单片机代码的实现,计算机控制代码的实现;

⑸系统调试:

调试串口、调试按键、调试驱动;

⑹系统联调。

2.2技术要求

⑴实现活动门的开关动作:

在单片机的作用下,通过活动门上安装的激光对射,控制步进电机的正反转从而实现活动门的开关动作,当活动门接触到物体时,通过接触开关可以实现活动门的暂停动作;

⑵实现上位机软件控制活动门:

利用计算机的软件实现对活动门的开关动作(即单片机与上位机的通信,完成对活动门的正确控制),计算机软件即可以向下位机发送信令,也可以收到下位机反馈的信息,从而可以通过上位机软件了解到活动门的状态;

⑶使用单一供电电源,控制电机使用步进电机,活动门必须安装接触开关,实现门的自动控制。

3设计过程

3.1系统分析与设计

3.1.1系统分析

要想实现单片机控制活动门的开关,从理论上分析,最简单的方法就是通过单片机的外接引脚给直流电机进行供电,采用PWM技术控制直流电机的转速,并且通过不断的改变两个引脚的正负极性来实现直流电机的正反转,从而实现活动门的开关。

为了实现活动门的便捷安全操作,通过PC上位机来显示活动门的工作状态,PC上位机的显示界面可以显示活动门是处于开启状态还是闭合状态,极大地提高了管理者的操作,便于工作人员及时了解活动门的工作信息,也提高了工作人员的工作效率,实现了现代工业的自动化与便利性。

3.1.2技术方案

用户通过软件界面直接控制活动门的开关。

控制界面和单片机相当于是上、下位机的关系。

控制界面通过串口通信接受来至下位机数据并且可以对数据进行保存。

3.1.3相关技术

⑴单片机与PC机串口通讯

51单片机有一个全双工的串行通讯口,所以单片机和电脑之间可以方便地进行串口通讯。

进行串行通讯时要满足一定的条件,比如电脑的串口是RS232电平的,而单片机的串口是TTL电平的,两者之间必须有一个电平转换电路,我们采用了专用芯片MAX232进行转换,我们采用了三线制连接串口,也就是说和电脑的9针串口只连接其中的3根线:

第5脚的GND、第2脚的RXD、第3脚的TXD。

这是最简单的连接方法,但是对我们来说已经足够使用了,电路如下图所示,MAX232的第10脚和单片机的11脚连接,第9脚和单片机的10脚连接,第15脚和单片机的20脚连接。

全双工的串行通讯口原理图如图1所示:

图1全双工的串行通讯口原理图

为了保证异步串行通信主、从机之间的同步,除了要有前面的通信数据格式外,还必须要求主、从机的发送和接收时钟具有相同的周期,既相同的波特率。

为了保证同步,除了格式与周期外,还需解决的一个基本问题是主、从机必须按照统一的电气和物理接口标准来连接,如信号电平、信号定义与电缆特性等都必须按照统一的标准。

如果主从机之间的电气和物理接口标准不一致,一定要进行电气和物理接口的转换。

最典型的是51单片机与PC机串口连接时,前者是TTL(5V)电平,后者是RS—232(15V)电平,必须进行电平转换,如图2、图3所示。

TTL电平的“1”和“0”分别为2.4和0.4V,因此需外接电路实现电平转换。

传输线驱动器MC148和传输线接收器MC1489可实现这种转换。

图2MC148

图3MC1489

⑵SCI串行通信接口

51单片机串行通信接口(SCI)是一个标准的通用异步接收/发送(UART)通信接口。

它的接收器和发送器都是双缓冲的。

51单片机串行通信接口(SCI)有自已的使能和中断位,它们可以半双工或全双工方式工作。

为了保证数据的完整性,串行通信接口对接收的数据进行间断检测、奇偶性、超时和帧错误的检查。

位速率(波特率)可通过一个16位的比特率选择寄存器进行编程,因此,可以有超过65000种不同的速率。

SCI模块是一个8位片内外设,通过DSP的16位外部数据总线的低8位与外部设备通信。

⑶RS232通讯原理

串行端口的本质功能是作为CPU和串行设备间的编码转换器。

当数据从CPU经过串行端口发送出去时,字节数据转换为串行的位。

在接收数据时,串行的位被转换为字节数据。

串口是计算机上一种非常通用设备通信的协议(不要与通用串行总线UniversalSerialBus或者USB混淆)。

大多数计算机包含两个基于RS232的串口。

串口同时也是仪器仪表设备通用的通信协议;很多GPIB兼容的设备也带有RS-232口。

同时,串口通信协议也可以用于获取远程采集设备的数据。

串口通信的概念非常简单,串口按位(bit)发送和接收字节。

尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。

它很简单并且能够实现远距离通信。

比如IEEE488定义并行通行状态时,规定设备线总常不得超过20米,并且任意两个设备间的长度不得超过2米;而对于串口而言,长度可达1200米。

典型地,串口用于ASCII码字符的传输。

通信使用3根线完成:

a地址线、b发送、c接收。

由于串口通信是异步的,端口能够在一根线上发送数据同时在另一根线上接收数据。

其他线用于握手,但是不是必须的。

串口通信最重要的参数是波特率、数据位、停止位和奇偶校验。

对于两个进行通行的端口,这些参数必须匹配:

①波特率:

这是一个衡量通信速度的参数。

它表示每秒钟传送的bit的个数。

②数据位:

这是衡量通信中实际数据位的参数。

③停止位:

用于表示单个包的最后一位。

典型的值为1,1.5和2位。

④奇偶校验位:

在串口通信中一种简单的检错方式。

有四种检错方式:

偶、奇、高和低。

3.2单片机程序设计

单片机的程序完成两个功能,首先是监测活动门开关状态,并以此为依据输出活动门的控制指令。

3.2.1程序流程图

外部中断零程序Int的流程图如图4:

图4外部中断零程序Int的流程图

3.3Web界面设计

Web界面完成两个功能,首先是控制单片机的工作状态,从而控制活动门开关状态,并以此为依据输出单片机的控制指令。

3.3.1Web界面结构

该网站系统主要由三部分组成:

首页,联系我们,关于系统三部分组成。

⑴首页模块主要有:

网站标题,网站导航和网站内容三部分内容。

①网站标题:

网站标题是“活动门管理系统”是通过Ps以及Css完成的,是该系统的正式名称。

②网站导航:

网站导航由首页,关于系统,联系我们三部分组成,通过导航栏,用户可以更加方便的操作并且了解本款系统。

③网站内容:

网站内容主要是系统与单片机进行串口通信的信令按钮,用户可以通过点击页面上的按钮,实现活动门的开关和暂停。

除此之外,页面内容还包括一些系统下位机的硬件简介,首页页面布局如图5。

图5Web界面结构图

⑵关于本系统模块主要是开发者对本系统的一些必要的介绍,方便用户的使用。

⑶联系我们模块主要是用于用户有难以解决的问题的时候,或者对本系统有不清楚的地方可以联系系统开发者。

3.3.2主要代码

⑴主程序接受信令代码:

case3:

//远程开门

if(touchSwitch&&uartFlag)

{

motorRun(0);

}

Else

{

uartFlag=0;

}

if(flag)

{

motorRun(0x00);

flag=0;

}

break;

case4:

//远程关门

if(touchSwitch&&uartFlag)

{

motorRun

(1);

}

Else

{

uartFlag=0;

}

if(flag)

{

motorRun(0x01);

flag=1;

uartFlag=1;

step=0;

}

break;

⑵调用Js库主要代码:

$(document).ready(function(){

varTop=-200;

varTime=1500;

functionmove(){

$("#box").animate({"margin-top":

Top},Time);

Top+=-200;

if(Top<=-800)

{

Top=0;

Time=700;

}

else{

Time=1500;

}

}

setInterval(move,5000);})

⑶串口通信主要代码:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Linq;

usingSystem.Web;

usingSystem.Web.UI;

usingSystem.Web.UI.WebControls;

usingSystem.Data;

usingSystem.Text;

usingSystem.Data.SqlClient;

usingSystem.Threading;//线?

程ì定¨时骸?

usingSystem.Runtime.InteropServices;

usingSystem.ComponentModel;

usingSystem.Drawing;

namespaceHDMKZ

{

publicpartialclassForm1:

Form

{

publicForm1()

{

InitializeComponent();

}

privatevoidForm1_Load(objectsender,EventArgse)

{

comboBox1.SelectedIndex=0;

}

byte[]Dout=newbyte[1];

byte[]Din=newbyte[1];

 privatevoidbutton1_Click(objectsender,EventArgse)

{

if(serialPort1.IsOpen)

{

serialPort1.Close();

button1.Text="关闭串口";

textBox1.Text="串口未打开,不可以进行串口通信!

";

listBox1.Items.Add("初始化失败,禁止可以进行通信!

");

}

else

{

try

{

textBox3.Text="9600bps";

textBox4.Text="8";

textBox6.Text="0";

serialPort1.PortName=(String)comboBox1.SelectedItem;

serialPort1.BaudRate=9600;

serialPort1.DataBits=8;

serialPort1.StopBits=StopBits.One;

serialPort1.Parity=Parity.None;

serialPort1.RtsEnable=true;

serialPort1.Open();

button1.Text="打开串口";

textBox1.Text="串口已打开,可以进行串口通信!

";

listBox1.Items.Add("初始化成功,可以进行通信!

");

}

catch

{

MessageBox.Show("串口未打开!

","出错啦!

",MessageBoxButtons.OK,MessageBoxIcon.Error);

}

}

}

privatevoidlistBox1_SelectedIndexChanged(objectsender,EventArgse)

{

}

privatevoidbutton2_Click(objectsender,EventArgse)

{

try

{

if(serialPort1.IsOpen)

{

Dout[0]=10;

this.serialPort1.Write(Dout,0,Dout.Length);

listBox1.Items.Add("已发送控制信号使电机正转!

");

}

}

catch

{

MessageBox.Show("发送命令失败!

","出错啦!

",MessageBoxButtons.OK,MessageBoxIcon.Error);

}

}

privatevoidbutton3_Click(objectsender,EventArgse)

{

try

{

if(serialPort1.IsOpen)

{

Dout[0]=01;

this.serialPort1.Write(Dout,0,Dout.Length);

listBox1.Items.Add("已发送控制信号使电机正转!

");

}

}

catch

{

MessageBox.Show("发送命令失败!

","出错啦!

",MessageBoxButtons.OK,MessageBoxIcon.Error);

}

}

privatevoidserialPort1_DataReceived_1(objectsender,SerialDataReceivedEventArgse)

{

Control.CheckForIllegalCrossThreadCalls=false;//不使用委托

stringstr="";

str=serialPort1.ReadExisting();

switch(str)

{

case"01":

listBox1.Items.Add("电机反转,门为关闭状态!

");

break;

case"10":

listBox1.Items.Add("电机正转,门为打开状态!

");

break;

default:

listBox1.Items.Add("接收数据失败,无法知道电机工作状态!

");

break;

}

}

}

}

⑶导航栏主要代码:

  • 首页
  • target="blank">关于我们

  • target="blank">联系我们

direction="left"scrolldelay="10">

 

4项目设计总结

通过对该项目—“基于单片机活动门的设计”的学习,收获很多。

首先是更加熟练的掌握了三个实用的软件Visio和EdrawMax和PhotoShop,在完成该项目之前,对Visio的学习不是很熟练,但是通过本次对“基于单片机活动门的设计”,使我对该软件以及以及一些快捷键的使用有了更熟练的操作;在制作结构框图的时候使用的是EdrawMax刚开始对这个软件不是很熟悉,于是便开始学习这个软件,虽然刚开始很陌生,制作图形很困难,但是对于一些不知道的功能通过XX查阅相关资料,教学视频,我逐一了解了软件中一些陌生单词代表的意思与功能。

每当掌握一些知识感觉很兴奋,感觉很充实!

最大的感触就是不要怕不会,下决心努力学就可以学好的!

其次是在编写设计方案时,一定要有耐心,要细心。

要不断地完善不足,例如在Web管理系统界面时,怎么设计更美观,怎么设计更节约网络流量都需要不断的调整;除此之外,在设计Web管理系统界面每个子模块时,一定要注意一些小的细节,也许一个小的错误都会给整个工程带来巨大影响,给用户带来很大的不便。

收获是做任何事要有谨慎的态度,要养成良好的习惯,有耐心,有信心!

然后是完成一个优秀的项目它需要多人的帮助,要虚心请教,遇到不懂的一起研究,把自己的收获与其他人分享,只有谦虚学习,相互取长补短,才能高效率的完成每一项任务。

收获虚心向他人请教,合作很快乐,收获会更多!

最后是在完成每一个项目之前都要有合理的规划,要把整体的框架构建出来,只有有了努力的方向才能少走弯路,高效的完成任务,例如在完成“基于单片机活动门的设计”这个方案之前,要把基本的制作流程罗列出来,然后再进行认真的准备,把每一个流程认真细致的完成。

这样完成一个项目会更有条理,更节省时间。

收获:

做每件事都要有一个初步的规划,有个方向,然后细心去完成!

参考文献:

[1]周元一.电机与电气控制.机械工业出版社.2006.8

[2]汤天浩.电机与拖动基础.机械工业出版社.2004.7

[3]曹克澄.单片机原理及应用.机械工业出版社.2005.

[4]孙家启等编著.VisualBasic程序设计教程.合肥:

安徽大学出版社,2005

[5]靳达编著.单片机应用系统开发实例导航.北京:

人民邮电出版社,2003

[6]南建辉、熊鸣、王军茹.MCS-51单片机原理及应用实例.清华大学出版社,2004

[7]万福君.单片微机原理系统设计与开发应用.中国科学出版社,1995

[8]张友德、赵志英等.单片机原理应用与实验.上海复旦大学出版社,1992

[9]基于单片机活动门控制系统的设计与实现XX文库

[10]基于单片机活动门控制系统的设计与实现XX文库

项目设计

评语

项目设计

成绩

指导教师

(签字)

年月日

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 幼儿教育 > 幼儿读物

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

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