2021/4/221答辩人:毛友导师:郝允慧讲师专业:测控技术与仪器学院:信息工程学院2021/4/222系统组成设计本系统的目的为了快速处理编码器输出信号,直观的显示测量结果。输出信号号通过电平转换以后输入计算机,计算机处理以后的信号则应由显示装置显示结果。系统主要由显示电路、储存电路、键盘电路、CPU控制电路、数字量输出、数据采集电路六部分组成。2021/4/223电平转换电路的选择选择MAX232驱动器/接收器,MAX232只要单一的+5V电源电压就可以工作。该器件内有一个电源电压变换器,可以把输入的+5V电源电压变成为产生RS-232C输入电压所需的电压。由于所有的RS-232应用中几乎都需要线驱动器和接收器,MAX232把接收器和驱动器包含在一个封装中。在RS-232C的不同应用场合又需要不同数目的驱动器和接收器,为了减少器件的数量,MAXIM提供RS-232C驱动器/接收器不同的各种型号,给使用提供了极大方便。2021/4/224上位机与下位机通讯的方案的选择串行通信:通信的发送方和接收方之间数据信息在单根数据线上传输,以每次一个二进制的0、1为最小单位逐位进行传输。串行数据传送所具有的特点是,数据传送按位顺序进行,最少只需要一根传输线即可完成,比并行通信节省传输线。串行通信与并行通信相比,还有比较显著的特点:传输距离长,可以从几米到几千米;在长距离内,串行数据传送速率会比并行数据传送速率快;串行通信的通信时钟频率比较容易提高;串行通信的抗干扰能力十分强,其信号间的互相干扰可以完全忽略。但是就传送速度来说,串行通信比并行通信慢得多,并行通信时间为T,则串行时间为NT。正是由于串行通信的接线少、成本低,因此它在数据采集和控制系统中得到广泛应用。下图为串行通讯。2021/4/225绝对式光电编码器控制系统结构图PC(上位机)89c51(下位机)MAX488执行文件由绝对编码器等构成的反馈系统2021/4/226单片机复位电路AT89C51复位是单片机的初始化操作,只需给AT89C51单片机的复位引脚RST加上大于2个机器周期(即24个时钟振荡周期)的高电平就可使AT89C51单片机复位。除了进入系统的正常初始化之外,当程序运行出错(如程序跑飞)或操作错误使系统处于锁死状态时,也需按复位键让RST脚置高电平,使AT89C51单片机摆脱“跑飞”或“锁死”状态而重新启动。下图为按键电平复位和按键脉冲复位。2021/4/227外部I/O口的扩展在AT89C51应用系统中,单片机本身提供给用户使用的输入、输出口线并不多,只有P1口和部分的P3口线。因此,在大部分AT89C51单片机应用系统设计中都不可避免的要进行I/O口的扩展。由于AT89C51的外部数据存储器RAM和I/O口是统一编址的,因此用户可以把外部64K字节的数据存储器RAM空间的一部分作为扩展外围的I/O的地址空间。这样,单片机就可以像访问外部RAM存储器那样访问外部接口芯片,对其进行读和写操作。在本系统中,选用的是Intel公司的可编程外围并行接口8255A芯片进行I/O扩展接口的。8255A是Intel公司生产的可编程输入输出接口芯片,它具有3个8位并行I/O口,具有三种工作方式,可通过程序改变功能,因而灵活方便,通用性强,可作为单片机与多种外围设备连接时的中间接口电路。8255A的引脚如图所示。8255A共有40个引脚,采用双列直插式封装。2021/4/228AT89C51单片机与8255A的接口电路原理图2021/4/229光电编码器与单片机接口电路绝对式光电旋转编码器内部集成了RS-422差分线路驱动器和接收器,其数据传输符合EIARS-422标准,该协议规定数据信号用差分传输方式。由于单片机的I/口采用TTL电平,故选用MAX488芯片实现TTL电平与编码器采用的RS-422电平之间的转换。MAX488由+5V电压供电,是一种适用于R422和RS-485的低功率收发器。由于绝对编码器可以以标准逻辑电平输出数字编码,因此只要把绝对编码器的输出直接接到AT89C51单片机的输入输出口就可以。系统扩展了一块8255A芯片,所以可以直接将绝对编码器的输出线接到8255A的PA口和PB口。这样初始化8255A的PA口、PB口为输入口之后,就可以从8255A的PA口、PB口中读入瞬时的角度位置值。电路如图所示:2021/4/2210看门狗电路系统在工业环境下运行时,抗干扰能力是评价其性能的一个重要指标。看门狗电路是自行监测系统运行的重要保证,本系统用Xicor公司的X25045芯片将EEPROM、看门狗定时器、电压监控三种功能集中到单个芯片内,大大简化了硬件设计,提高了系统的可靠性。X25045与单片机接口如图所示。2021/4/2211键盘电路轻触式的机械开关是一种较长使用并且成本低廉的开关,在没有被按下是,其内部的电路结构是断开的,不能到点,而当它被按下时,其等效的开关就被接通,从而实现了电路的导通。另外,由于机械式开关内部由于有一个弹性部件,所以在按动的时候会伴随一系列的抖动过程,这个抖动过程会给逻辑判断带来极大的干扰,所以在程序构建上通常会对按键进行消抖处理,通常较为常用的是延时消抖,即通过一定的延时将抖动阶段避开,过了这段时间再对电平进行判断,这样就能使系统得到必要的保障,下图为本系统的按键输入电路配置图:2021/4/2212主程序设计2021/4/2213数据处理程序的实现在对数据进行处理时,要实现一下4点:·将9位格雷码转换成9位自然的二进制码;·将9位自然二进制码转换为对应的十进制数,并分别表示角度的分和秒;·二进制数转换为BCD码;·BCD码转换为七段显示码;2021/4/2214二进制数转换为压缩BCD码2021/4/2215单片机通讯软件设计由于AT89C51单片机的P3.0和P3.1是其内部集成串口模块的RXD和TXD引脚,所以采用这两个管脚实现和PC机的通信。在本系统中,将串口的起始位设置为1,数据位设定为8,停止位设定为1,波特率设定为4800,本系统选用的晶振为11.0592MHz的晶振,因为这种频率的晶振能够准确的实现4800的波特率。2021/4/2216实验结果分析1.检测条件在测试时,选择了在室温、湿度小于65%的条件下进行测试,本系统的测试步骤非常简单,只需要给系统开机即可实现系统的性能检测。2.检测结果下表为测试各种测试条件下得出的实际测量值、理想值和两者之间的误差值。3.检测优点本文设计的智能测角系统具有检测效率高、速度快等特点,精度满足了预期的设计目标,并且通过多次的实验验证,仪器的性能十分稳定,实现了高度智能化的概念。输出二进制实际测量值理想值误差000000000000000000142′42′0011111111179°40′180°20′10000000180°180°0111111111359°40′360°20′2021/4/2217