新闻中心

EEPW首页>嵌入式系统>设计应用> 简易自动控制原理实验系统设计

简易自动控制原理实验系统设计

作者: 时间:2016-11-30 来源:网络 收藏

图3 采样电路原理图

  由于ATmega16 内部ADC 为八选一数据通道,在具体实现某路数据采集时就必须更改多工选择寄存器ADMUX 的数值。为能随时更改通道,本设计采用主从方式,通过上位机发送给ATmega16 的数值来改变通道。同时,在串行接口接收中断后,通过接收的数值的编码也可用来改变ADC 相邻两次转换之间的延时值,从而达到改变转换速率的效果。本系统采用0 - 7 为通道选项,当数据大于7 时为更改采样速率值。当数据更改操作完成后程序立即返回主程序,此时ADC 转换由新的参数运行。

  2. 3 下位机软件设计

  下位机软件包括信号发生器软件和数据采集软件两部分。信号发生器采用AT89S52 型单片机加AD9833 型的DDS 芯片构成,软件编程使用环境为Keil uVision 4.数据采集模块采用ATmega16 型单片机构成,软件编程使用环境为AVR GCC 和AVR studio 4.下位机软件设计的关键是能使程序能即时完成数据的接收和发送,同时保证数据的准确,为此,系统采用中断响应的方式完成串行数据接收,同时完成ADC 转换以及数据的发送。下位机程序分为主程序、串行接收中断和ADC 转换完成中断三部分,其流程图如图4 所示。在主程序中主要完成串口和ADC 寄存器的初始化,初始化完成后启动片内ADC 的第一次转换,随即系统进入等待中断状态,若接收到停止信号,系统马上停止。当系统响应到串行接收数据中断,通过接收的数值对ADC 转换的通道和采集速度进行相应的修改,当修改完成后立即返回主程序。当ADC 每次转换完成相应标志位置位,程序跳转到ADC 转换并完成中断运行。此时系统读取转换的数值并处理,随即通过串口将该数据发送给上位机。当串口数据发送完成后起动延时; 另外当延时完成后,系统将ADC 转换起动标志位置位,然后进行下一次转换。下位机程序运行的整个过程中,系统通过中断方式完成,具有响应及时、提高单片机处理内部和外部事件能力的优点。

图4 下位机程序流程图  2. 4 上位机前面板设计

  系统采用LabVIEW 开发平台制作上位机软件,即在PC 机上设计出虚拟示波器。系统虚拟示波器上位机软件界面如图5 所示。从图5 可知,上位机具有串口参数调节、数据波形显示、数据存储、数据回放、以及采样通道及速率选择等功能。虚拟示波器在波形显示过程中,用户可根据个人喜好对曲线颜色、数据采集速率和通道等参数的进行设置。同时在实验过程中,可以点击波形存储按钮对接收到的数据以TXT 或其他格式的文件存储在PC 机硬盘或其他外部磁盘中。用户可根据需要随时通过数据回放按钮选择文件查看数据波形或者将数据文件提供给Matlab 和Exel 等数据处理软件进行分析处理,使用非常灵活方便。



关键词:自动控制AT89S5

评论


技术专区

关闭