基于FPGA/MCU的光电式滚转角测量仪
[09-12 18:32:07] 来源:http://www.88dzw.com EDA/PLD 阅读:8711次
文章摘要:系统软件设计基于FPGA/MCU的光电式滚转角测量仪软件流程如图11所示。光敏接收模块g1-g37接收到红外光信号,经过光电转换及信号调理之后将高电平送至FPGA上各相关引脚,FPGA以固定频率对A1-A37各引脚进行扫描,扫描频率通过对有源晶振的输入频率进行分频得到,如果扫描到仅有一个引脚是高电平,则说明只有该引脚对应的光敏接收模块收到光信号,滚转体此时刚好旋转到某已知角度,通过FPGA控制LED显示模块输出该角度,并通过串口将滚转角度值传送给上位机。但如果有两路引脚都为高电平,那么FPGA首先判断该由哪片MCU对这些信号进行处理,随后通知该MCU进行AD转换并确定滚转角度,比如A5、A6均
基于FPGA/MCU的光电式滚转角测量仪,标签:eda技术,eda技术实用教程,http://www.88dzw.com系统软件设计
基于FPGA/MCU的光电式滚转角测量仪软件流程如图11所示。光敏接收模块g1-g37接收到红外光信号,经过光电转换及信号调理之后将高电平送至FPGA上各相关引脚,FPGA以固定频率对A1-A37各引脚进行扫描,扫描频率通过对有源晶振的输入频率进行分频得到,如果扫描到仅有一个引脚是高电平,则说明只有该引脚对应的光敏接收模块收到光信号,滚转体此时刚好旋转到某已知角度,通过FPGA控制LED显示模块输出该角度,并通过串口将滚转角度值传送给上位机。但如果有两路引脚都为高电平,那么FPGA首先判断该由哪片MCU对这些信号进行处理,随后通知该MCU进行AD转换并确定滚转角度,比如A5、A6均为高电平,则FPGA以串口通讯方式通知MCU A对A5、A6进行AD转换,转换结果A5的信号幅值为2.50V,A6的信号幅值为3V,已知A5对应的滚转角为40度,A6对应的滚转角为50度,则此时的滚转角度为40+[2.5/(2.5+3.0)](50-40)=44.55度,MCU再通过串口把信息反馈给FPGA。还有可能出现3路或者3路以上的引脚为高电平的情况,此时应调节光敏接收模块的初级运放信号放大倍数,尽量减少MCU处理的模拟信号数量,然后通过比较将幅值较小的信号忽略,仅保留最大的两路信号,随后处理方式同上。
FPGA采用VHDL语言进行编程,其串口程序包括串口发送、串口接收与时钟分频三个模块,分别与上位机及两片MCU进行通信,通信波特率为标准的9600b/s,数据位为8位,不带校验位。MCU采用汇编语言编程,C8051F310可通过修改相关寄存器值非常灵活的对片内ADC模块、串口模块进行操作,ADC采用单端输入方式,以MCU供电电压为参考电压,通过向AD0BUSY位写1启动AD转换。
结语
本文设计的基于FPGA/MCU的光电式滚转角测量仪实际运行情况良好,在实验室环境中能较为准确的测量出弹体滚转角度,达到预定要求,此外还可通过增加光敏接收模块或采用红外激光器来进一步提高测量精度。
《基于FPGA/MCU的光电式滚转角测量仪》相关文章
- › 基于FPGA的单片彩色LCD投影机设计
- › 256级灰度LED点阵屏显示原理及基于FPGA的电路设计
- › 基于FPGA的LCD%26amp;VGA控制器设计
- › 基于FPGA的信道化接收机
- › 基于FPGA和SMT387的SAR数据采集与存储系统
- › 基于FPGA的栈空间管理器的研究和设计
- 在百度中搜索相关文章:基于FPGA/MCU的光电式滚转角测量仪
- 在谷歌中搜索相关文章:基于FPGA/MCU的光电式滚转角测量仪
- 在soso中搜索相关文章:基于FPGA/MCU的光电式滚转角测量仪
- 在搜狗中搜索相关文章:基于FPGA/MCU的光电式滚转角测量仪