家庭灯控系统的研制毕业论文(编辑修改稿)内容摘要:

序接收信号,而过分提升时钟频率将难以让数据传送的时序与时钟合拍,布线长度稍有差异,数据就会以与时钟不同的时序送达,另外,提升时钟频率还容易引起信号线间的相互干扰,导致传输错误。 因此,并行方式难以实现高速化。 从制造成本的角度来说,增加位宽无疑会导致主板和扩充板上的布线数目随之增加,成本随之攀升。 串行通信 串行通信是指 使用一条数据线,将数据一位一位地依次传输, 先由具有几位总线的计算机内的发送设备,将几位并行数据经并 串转换硬件转换成串行方式,再逐位经 传输线到达接收站的设备中,并在接收端将数据从串行方式重新转换成并行方式,以供接收方使用。 传输的每一位数据占据一个固定的时间长度,其只需要少数几条线就可以在系统间交换信息。 串行数据传输的速度要比并行传输慢得多, 适用于计算机与计算机、计算机与外设之间的远距离通信, 对于覆盖面极其广 阔的公用电话系统来说具有更大的现实意义。 这种方法的优点是 通信成本也较低,只需一个信道 ,而且 支持长距离传输。 第 3 页 共 46 页 串行数据通信的方向性结构有三种,即单工、半双工和全双工。 缺点: 数据传输速度低。 在串行口传送 1 位的时间内, 并行口可以传送一个字节。 当并行口完成单词 “advanced”的传送任务时,串行口中仅传送了这个单词的首字母 “a”。 通信的选择 通过以上对两种通信方式的对比知道,在本设计中采用串行通信已经足以满足要求,因此我 们选择了串行通信的标准。 串行数据在传输线上的形式和标准 串行数据在传输时通常采用调幅( AM)和调频( FM)两种方式传送数字信息。 远程通信时,发送的数字信息,如 二进制数据,首先要调制成模拟信息。 ⑴ 调幅方式 第 4 页 共 46 页 幅度调制是用某种电平或电流来表示逻辑“ 1”,称为传号( mark);而用另一种电平或电流来表示逻辑“ 0”,称为空号( space)。 出现在传输线上的 mark/space 的 串行数据形式如图 所示。 图 mark/space 串行数据 使用 mark/space 形式通常有四种标准, TTL 标准、 RS232 标准、 20mA 电流环标准和60mA 电流环标准。 ① TTL 标准:用 +5V 电平表示逻辑“ 1”;用 0V 电平表示逻辑“ 0”,这里采用的是正逻辑。 ② RS232 标准:用 5V— 15V 之间的任意电平表示逻辑“ 1” ;用 +5V — +15V 电平表示逻辑“ 0”,这里采用的是负逻辑。 ③ 20mA 电流环标准。 线路中存在 20mA 电流表示逻辑 1,不存在 20mA 电流表示逻辑 0。 ④ 60mA 电流环标准。 线路中存在 60mA 电流表示逻辑 1,不存在 60mA 电流表示逻辑 0。 ⑵ 调频方式 频率调制方式是用两种不同的频率分别表示二进制中的逻辑 1 和逻辑 0,通常使用曼彻斯特编码标准和堪萨斯城标准。 ① 曼彻斯特编码标准,它的数据形式如图 所示。 这种标准兼有电平变化和频率变化来表示二进制数的 0和 1。 从图中可看出。 每当出现一个新的二进制位时,就有一个电平跳变。 如果该位是逻辑 1,则在中间还有一个电平跳变;而逻辑 0仅有位边沿跳变。 所以逻辑 1的频率比逻辑 0的频率大一 倍。 曼彻斯特编码标准通常用在两台计算机之间的同步通信。 图 曼彻斯特编码 标准 ② 堪萨斯城标 准,它的数据形式如图 所示。 它用频率为 1200Hz 中的 4个周期表示逻辑 0;而用频率为 2400Hz 中的 8个周期表示逻辑 1。 第 5 页 共 46 页 图 堪萨斯城标准 串行通信的 数据传输率 数据传输率是指单位时间内传输的信息量,可用比特率和波特率来表示。 ⑴比特率:比特率是指每秒传输的二进制位数,用 bps ( bit/s)表示。 ⑵ 波特率,波特率是指每秒传输的符号数,若每个符号所含的信息量为 1 比特,则波特率等于比特率。 在计算机中,一个符号的含义为高低电平,它们分别代表逻辑“ 1”和逻辑“ 0”,所以每个符号 所含的信息量刚好为 1 比特,因此在计算机通信中,常将比特率称为波特率,即: 1 波特( B) = 1 比特( bit) = 1 位 /秒( 1bps) 例如 :电传打字机最快传输率为每秒 10 个字符 /秒,每个字符包含 11 个二进制位 ,则数据传输率为 :11位 /字符 10 个字符 /秒 =110 位 /秒 =110 波特( Baud)计算机中常用的波特率是: 1 300、600、 1200、 2400、 4800、 9600、 19200、 28800、 33600,目前最高可达 56Kbps. ⑶ 位时间 Td 位时间是指传送一 个二进制位所需时间,用 Td 表示。 Td = 1/波特率 = 1/B 例如: B=110 波特 /秒 , 则 Td = 1/110 ≈。 串行通信的 发送时钟和接收时钟 在串行通信中,二进制数据以数字信号的信号形式出现 ,不论是发送还是接收,都必须有时钟信号对传送的数据进行定位。 在 TTL 标准表示的二进制数中,传输线上高电平表示二进制 1,低电平表示二进制 0,且每一位持续时间是固定的,由发送时钟和接收时钟的频率决定。 ⑴ 发送时钟 第 6 页 共 46 页 发送数据时,先将要发送的数据送入移位寄存 器,然后在发送时钟的控制下,将该并行数据逐位移位输出。 通常是在发送时钟的下降沿将移位寄存器中的数据串行输出,每个数据位的时间间隔由发送时钟的周期来划分。 ⑵ 接收时钟 在接收串行数据时,接收时钟的上升沿对接收数据采样,进行数据位检测,并将其移入接收器的移位寄存器中,最后组成并行数据输出。 ⑶ 波特率因子 接收时钟和发送时钟与波特率有如下关系: F = n B 这里 F 是发送时钟或接收时钟的频率。 B 是数据传输的波特率; n 称为波特率因子。 设发送或接收时钟的周期为 Tc,频率为 F的位传 输时间为 Td,则: Tc = 1/F , Td = 1/B 得到: Tc = Td /n 在实际串行通信中,波特率因子可以设定。 在异步传送时, n = 1, 16, 64,实际常采用 n = 16,即发送或接收时钟的频率要比数据传送的波特率高 n倍。 在同步通信时,波特率因子 n 必须等于 1。 异步通信协议 串行异步通信时的数据格式 异步方式通信 ASYNC( Asynchronous Data Communication) ,又称起止式异步通信,是计算机通信中最常用的数据信息传输方式。 它是以字符为单 位进行传输的,字符之间没有固定的时间间隔要求,而每个字符中的各位则以固定的时间传送。 收、发双方取得同步的方法是采用在字符格式中设置起始位和停止位。 在一个有效字符正式发送前,发送器先发送一个起始位,然后发送有效字符位,在字符结束时再发送一个停止位,起始位至停止位构成一帧。 串行异步传输时的数据格式如 图 所示。 图 串行异步数据格式 从图中可以看到以下几点: ⑴ 起始位:起始位必须是持续一个比特时间的逻辑“ 0”电平,标志传送一个字符的开始。 ⑵ 数据位:数据位为 58位,它紧跟在起始位之后,是被传送字符的有效数据位。 传送时先传送字符的低位,后传送字符的高位。 数据位究竟是几位,可由硬件或软件来设定。 第 7 页 共 46 页 ⑶ 奇偶位:奇偶校验位仅占一位,用于进行奇校验或偶校验,也可以不设奇偶位。 ⑷ 停止位:停止位为 1位、 位或 2位,可有软件设定。 它一定是逻辑“ 1”电平,标志着传送一个字符的结束。 ⑸ 空闲位:空闲位表示线路处于空闲状态,此时线路上为逻辑“ 1”电平。 空闲位可以没有,此时异步传送的效率为最高。 串行异步通信时的数据接收 串行异 步通信时,接收方不断地检测或监视串行输入线上的电平变化,当检测到有效起始位出现时,便知道接着是有效字符位的到来,并开始接收有效字符,当检测到停止位时,就知道传输的字符结束了。 经过一段随机时间间隔之后,又进行下一个字符的传送过程。 通常接收端的采样时钟周期要比传输字符的位周期短,常用的采样时钟频率为位频率的 16 倍,采取这种措施是为了提高抗干扰能力,参看图 所示。 图 采样时钟周期 从图中可知,传输字符的位周期 Td等于采样时钟周期 Tc 的 16 倍。 接收器的采样时钟的每个上升沿对输入 信号进行采样,检验接收数据线上的低电平是否保持 8或 9 个连续的时钟周期,以确定传输线上的低电平是否是真的起始位。 这样就可以避免噪声干扰引起的误操作,从而删除假的起始位。 相当精确地确定起始位的中间点,从而提供一个时间基准,从这个基准开始,每隔 16 个 Tc 对其余数据位采样,以确保传输数据的正确性。 接收端为实现采样数据的基准,可以执行以下步骤: ⑴ 在接收端设置一采样时钟频率计数器,当检测到起始位下降沿时,将其清零,并开始对采样时钟计数,即每来一个时钟,计数器加 1。 ⑵ 当计数器计到 8时,表示已到达起始位的中 间位置,此时采样值为 0,说明是真正的起始位,同时将计数器清零;若采样值不为 0,则说明一开始检测到的下降沿不是真正的起始位前沿,而是一次干扰,此次检测应作废,计数器清零,并重新开始检测起始位。 第 8 页 共 46 页 ⑶ 检测到真正的起始位后,计数器清零,以后每次计到 16 时,便采样收到的信号波形(即每一位的中间),将采到的数值暂存起来,同时将计数器清零,重新计数,直至最后的停止位被采样。 ⑷ 如果停止位采样正确(为 1),则字符被接收,并由暂存器装入寄存器。 若停止位采样值为 0,说明同步或传输有问题,此次采样所得字符作废 ,不被接收。 第 9 页 共 46 页 2 灯控系统 的总体设计 家庭灯控 系统一般应用于小范围区域, 机与机之间没有主从之分, 属于一个典型的小范围内的分布式应用。 针对这一特点,我们设计为 各机即为主机也可为从机的 结构,各机 之间的通信采用标准的 RS485 总线,可以满足在 1200 米的范围内实现 各机间的 通信。 家庭 概况 假如我们在一个房间或者一层楼中,想控制其它房间或者其它楼层的照明灯的亮灭情况,我们可以通过控制板首先按下所要选择的房间或者楼层,然后控制板上就会显示你所选房间或者楼层的 照明灯的亮灭情况,接着根据需要按下各个灯的亮灭控制键,每次按下那就的灯就会由亮到灭或者由灭到亮,并且每次按下控制板都会将灯的状态送回所选择的房间或者楼层,从而达到控制的目的。 家庭最多可以有八个房间或者楼层,每个房间或者楼层中有八个照明灯和一个控制板,而各个控制板是互相通信的,可以互相进行通信控制。 无主从机的通信 系统解决方案 每个单片机中的程序都是一样的,平时都处于接收信息的状态,一旦有 按键按下则调用相应的处理程序进行相应的选择房间或者照明灯的状态处理。 当接收到信息时则进行中断,然后判断是否是 选择本机的地址,是则进行相应的标志设定,不是则返回主程序中继续侦听总线信息。 灯控 系统的总体结构 图 中 各机都挂接 485 总线上平时都处于侦听状态,随时等待其它机的呼叫。 图 总体结构图 在 RS485 总线上,同一时刻,只能有一个机 间的 通信, RS485 通信的可靠性从软件RS485 1 号机 2 号机 3 号机 第 10 页 共 46 页 通信协议上要做处理,硬件上也要做相应的可靠性设计。 单个控制板的总体原理图 图 2. 总体 原理 图 按键 主控制器 控制 输出 RS485 器件 状态显示 第 11 页 共 46 页 3 系统 的硬件设计 主要元 器件的选取 主控制器的选择 硬件设计过程中控制器是系统的核心部分,它能够控制系统的信号的采集及处理功能,它的性能的好坏决定着系统设计的成败与否,因此 ,必须对 主控制器从功能和应用性能进行选择。 可选用控制器主要有 FPGA、 PLC、单片机两类, 它们各有自己的有缺点。 方案一:采用 FPGA 为系统的控制器, FPGA 可以实现各种复杂的逻辑功能,模块大,密度高,它将所有器件集成在一块芯片上,减少了体积,提高了稳定性,并且可应用 EDA软件仿真、调试,易于进行功能控制。 FPGA 采用并行的输入输出方式,提高了系统的 处理速度,适合作为大规模实时系统的控制核心。 但是由于本设计对数据处理的时间要求不高, FPGA 的高速处理的优势得不到充分体现,并且由于其集成度高,使其成本偏高,同时由于芯片的引脚较多,实物硬件电路板布线复杂,加重了电路设计和实际焊接的工作。 方案二: 可编程控制器 ( PLC)是专为在工业环境应用而设计的。 它采用一类可编程的存储器,、用于其内部存储程序,执行逻辑运算,顺序控制,定时,计数与算术操作等面向用户的指令,并通过数字或模拟式输入、输出控制各种类型的机械或生产过程。 它的主要功能是逻辑控制、定时控制、计数控制、 步进控制、 PID 控制、数据控制、通信和联网等。 因此它的 抗 干 扰能力强,工作可靠,但其无法读取外部存储器的数据。 而 本 课题家庭 照明控制系统要实现对照明的人性化管理,也就是根据人的控制输入出现相应的照明场景和自动执行相应控制输出相结合,具备很大的灵活性。 方便修改相应的场景参数,易于功能扩展,还可以与其它 控制模块 进行通 信。 方案二:采用 AT89S51 单片机 作为 控制 系统的方案。 单片机算术运算功能强,软件编程灵活、自由度大,可用软件编程实现各种算法和逻辑控制。 由于其功耗低、体积小、技术成熟和成本低等优点,各个领域应用广泛。 并且,由于芯片引脚少,在硬件很容易实现。 AT89S51单片机自身带资源有两个定时器, 2 个外部中断,和一格串行通信中断。 综合上述 三 种方案, 方案一和二功能强大、控制编成复杂且成本较高,与 方案 三对比,方案三硬件简单、灵活度大、成本较低,而且就目前所要设计的系统, AT89S51 单片机自带功能基本都能满足设计需求。 由于单片机技术在各个领域得到越来越广泛的应用,世界上许多集成电路生产厂家相继推出了各种类型的单片机。 而 单片机的设计在满足。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。