基于FPGA的LED双轴旋转显示设计*
2015-12-22郑凌晨汤勇明
姜 勖,许 䶮,郑凌晨,汤勇明*
(1.东南大学电子科学与工程学院,南京210096;2.东南大学信息科学与工程学院,南京210096)
JIANGXu1,XU Yan2,ZHENGLingchen1,TANGYongming1*
(1.School of Electronic Science and Engineering,Southeast University,Nanjing 210096,China;2.School of Information Scienceand Engineering,Southeast University,Nanjing 210096,China)
显示设备在各种系统中占有重要的地位,其中,旋转LED显示屏以其新颖、成本低、可视视角达360°等优点得到了迅速的发展[1]。目前,旋转显示的常用方案是高速扫描处于快速旋转中的二维LED阵列[2],通过控制发光二极管的亮灭来显示文字、图片、动画、视频等信息[3-4]。本系统来源于学科竞赛项目[5],设计了一种新型LED旋转显示方案,仅使用3个全彩LED作为发光器件,通过两个转轴的同时旋转,以FPGA开发板平台作为系统主控,利用视觉暂留原理实现三维球面显示。
1 机械结构设计
作品利用两个相互垂直的转轴和3个全彩LED,通过控制两个电机的转速和LED亮灭周期,实现3个LED的双轴旋转,在空间中展现出绚丽的图案。
电机A的转轴与y轴方向平行,电机B的转轴与z轴方向平行。通过控制两电机的转速和LED灯的亮灭和色调,可实现多种炫彩图案的显示。控制信号经由12路的两个导电滑环A、B传递。
系统各部件的详细信息如表1所示。
表1 各部件详细参数信息
作品机械结构设计如图1所示。
图1 机械结构设计图
2 视觉暂留原理模型建立及仿真验证
2.1 原理介绍
视觉是在人眼晶状体成像后,由感光细胞将光信号转换为神经电流,传回大脑形成的。感光所依赖的感光色素的形成需要一定时间,光对视网膜所产生的视觉在光停止作用后,仍会保留一段时间,这种现象称为视觉暂留[3]。
目前,常见的LED显示都是采用扫描方式,通过控制不同时间段,让不同LED轮流点亮,根据视觉暂留原理,当扫描帧频达到24 Hz以上时,人眼便感觉不到扫描过程,即当LED刷新足够快时,人眼能看见一幅稳定图像[6-7]。
2.2 模型建立及验证
以图2所示的旋转中心点为坐标原点建立坐标系。
在不失一般性的情况下,仅讨论一个LED的运动特性,并以此推广到3个LED。
在图2的柱面坐标系中,每个LED的位置可以由(ri,φi,θi)唯一确定:
图2 坐标系的建立
其中:
用来仿真LED灯的亮灭情况,period定义为LED灯的亮灭周期,high定义为一个亮灭周期内灯亮的时间长度。
通过选择合理的时间t来仿真人眼视觉暂留时间,同时选择合理的vφ,vθ仿真LED绕两垂直转轴旋转的速度,由MATLAB得到仿真图像[8]。图3给出了其中三幅不同(vφ,vθ,period,high)组合的仿真图像,这3种以及其他图案在后续实际设计中也被证明是可以实现的。
图3 部分仿真图案
3 系统介绍
系统的总体功能如图4所示。
图4 系统功能图
系统以FPGA为控制平台,已设计有3个模式:自动工作模式、红外遥控模式、游戏互动模式。
自动工作模式:按照预先设定好图案,系统自动切换,通过AD采样及信号处理,使图案随着音乐的节奏的变化而变化。
红外遥控模式:用户可以使用遥控器实时控制系统的开启、停止以及图案变更,实现人机交互。
游戏互动模式:通过外部调节旋钮,改变电机转速、LED亮度和闪烁频率,用户可自行定制图案,增加用户体验感和趣味性。
4 硬件设计
4.1 控制平台
系统采用Xilinx的Basys2 FPGA开发板作为主控部分。
Basys2开发板采用Spartan3E-CP132芯片,内置18 bit乘法器,集成了大量I/O端口和FPGA的常规可编程逻辑单元电路,具有高速运算能力,满足系统所需资源要求。
4.2 LED 驱动模块
LED驱动采用TI公司具有12路通道,16 bit增强型PWM控制的RGB-LED驱动器TLC5971,其驱动电流达60mA/channel,且具有65536阶色度调制,完全可以满足设计需求。
使用该驱动芯片,仅使用两个I/O管脚,即可通过FPGA时序编程,构建移位寄存器,经9个通道的输出对3个RGB-LED进行相应的控制。
4.3 AD 模块
图5 TLC5971应用电路图[9]
系统有两部分需要AD转换,一部分是音频信号采集,以使显示图案受外部音频信号控制;另一部分是手动调节旋钮端电压采集,即通过对电位器分压电路电压值的采样,实现外部手动控制信号的输入,经过FPGA分析处理后控制两个电机的转速、LED的闪烁频率和亮度,实现游戏互动模式中的人机交互。
为配合以上功能的实现,我们采用多片TI公司的TLV1572 AD转换芯片,使用FPGA配合相应时序,对转换后的数字信号进行后续处理。
4.4 红外遥控模块
红外遥控技术具有体积小、功耗低、功能强、成本低等特点,其广泛应用于家用电器、工业设备等领域。红外遥控系统分为发射部分和接收部分,其信息传输的编码方式主要分为NEC码和RC5码[10]。本系统采用HX1838宽电压一体红外接收头作为模块主体,使用NEC编码方式,FPGA配合相应的时序,对红外信号进行解码。
红外遥控模块的引入,实现了良好的人机交互,方便用户对系统模式的切换。
5 软件设计
系统采用FPGA硬件编程的形式,主要利用状态机和分层设计的设计方法[11-12],实现全部功能。
5.1 顶层状态机
系统的整体状态机示意图如图6所示。
状态机各状态名称解释如下:
(1)APP_MOD:自动工作模式;
(2)DIS_MOD:红外遥控模式;
(3)GAME_MOD:游戏互动模式;
(4)dis_mod0~dis_mod6:红外遥控模式的6个子模式;
(5)app_mod0~app_mod4:自动工作模式的6个子模式。
用户仅需要通过红外遥控器相应按键,即可实现各状态之间的切换。
图6 系统状态机示意图
5.2 中间层算法实现部分
系统中间层部分,是对各种不同图案的算法设计部分。根据当前时刻上层状态机的状态码,选择不同图案的算法实现。
图案算法核心思想主要有以下几个方面:
(1)控制电机A、电机B的转速。
(2)控制3个RGB-LED的亮灭和亮灭周期。
(3)控制3个RGB-LED的颜色。
通过对以上3个方面的合理调配,并将控制信号传给下边的驱动层,即可实现不同炫彩图案的显示。
5.3 底层电机驱动及LED驱动部分
为节约FPGA资源以及规范设计过程,我们将底层驱动部分与上层算法部分分开。
驱动部分仅根据上层算法传递进来的控制信号,改变向电机传输的PWM占空比和LED驱动芯片移位寄存器中的内容,实现机械结构的运转和LED亮灭的变换,从而最终实现三维球面图案的显示。
5.4 其他外设部分
其他外设主要包括红外遥控解码部分、AD采样处理部分。
红外遥控解码部分对外部控制信号进行解码,确定系统的工作模式,从而根据工作模式的不同调用不同的功能模块。此外,在红外遥控模式下,该部分还对用户的交互操作进行解码,实现图案的变更等功能。
AD采样处理部分仅在自动工作模式和游戏互动模式时有效。该部分以1.25 Msample/s的采样速率持续对外部音频信号、电位器分压信号进行采样,并将转换结果存在寄存器中,供其他控制模块读取,实现自动工作和游戏互动等功能。
5.5 系统控制流程图
系统的控制流程图如图7所示。通过处理分析用户发出的红外控制信号,进入3种不同的工作模式,并输出相应的电机和LED控制信号。
图7 系统控制流程图
图8 实现效果图
图9 系统实物图
6 总结
系统最终能实现自动工作模式、红外遥控模式、游戏互动模式等多种模式功能,通过FPGA控制3个RGB-LED绕两正交轴旋转实现绚丽的三维显示效果,用户可以通过使用红外遥控器进行模式转换,也可以通过手动调节任意改变图案,实现实时图像变换。
本设计提出了一种全新的旋转LED显示思路,在给用户带来视觉体验的同时,也实现了良好的人机交互,同时具有一定的娱乐性和应用前景。
[1] 邱元瑞,温坚,刘路平,等.基于TLC5947的旋转LED屏显示控制器设计[J].单片机与嵌入式系统应用,2012,12(3):33-36.
[2] 林远芳,刘向东,刘旭,等.基于二维旋转屏的体三维显示系统像素属性分析[J].光子学报,2004,33(4):476-480.
[3] 胡阳.基于视觉暂留的动态扫描LED旋转屏[J].现代电子技术,2012,35(5):186 -188.
[4] 邓宏贵,李志坚,谢素霞,等.机械扫描式平面LED显示屏的设计[J].液晶与显示,2009,24(3):419-422.
[5] 康志强,汪佳,汤勇明.基于FPGA的3D光立方设计[J].电子器件,2012,35(6):683 -686.
[6] 邓宏贵,李志坚,吴让亮,等.基于步进电机细分驱动技术的旋转 LED 显示屏设计[J].液晶与显示,2008,23(5):595-598.
[7] 郝国法,杨姣.LED大屏幕控制电路设计方案研究[J].电视技术,2006,12(11):94 -96.
[8] 王正林,刘明.精通MATLAB7[M].北京:电子工业出版社,2006:301-323.
[9] 德州仪器.TLC5971 datasheet[EB/OL].[2012-9].http://www.ti.com.cn/product/cn/tlc5971.
[10]欧阳.基于Android平台的智能家居红外控制系统的研究[D].电子科技大学,2012.
[11]夏宇闻.Verilog数字系统设计教程[M].2版.北京:北京航空航天大学出版社,2008:156-193.
[12]Palnitkar S.Verilog HDL数字设计与综合[M].2版.夏宇闻,胡燕祥,刁岚松,等译.北京:电子工业出版社,2009:78-111.